Investigate performance of InterferenceFunction2DParaCrystal::interference1D method
|Status:||New||Start date:||18 Dec 2017|
Simulation using interference function of 2D para crystal is quite popular among users, however the performance is quite poor.
For the moment 90% of execution time of standard GUI example "Interference function of 2D para crystal" is spend inside
The most of the time where is inside
line 237: tmp = std::pow(fp, n);
Replacing tmp with tmp=0.0 makes simulation 5 times faster (but of course all para2D related functional tests fails with significant difference).
Replacement of std::pow(fp, n) with std::exp(n*std::log(fp)) only makes simulation 50% slower.