Significant Performance Increase
Ptera Software's unsteady solver is now over three times faster!
The performance increase is because of three changes:
- I vectorized all the computationally expensive functions and methods.
- I used just-in-time (JIT) compilation and parallelization with Numba to streamline the bottlenecks. Thank you to Stack Overflow user Jérôme Richard for his help with this part!
- I switched from copying objects with the Copy module to the Pickle module.
In addition to the performance increase, I also added more documentation and reformatted some messy previous work. Also, now the unsteady solver can automatically calculate the appropriate time step length. The unsteady solver also has a default value for the number of flapping cycles to iterate through.
For the next release, I hope to further increase the performance by utilizing symmetry to reduce the required computations.