-
Notifications
You must be signed in to change notification settings - Fork 170
Description
GFN-FF hessian calculation currently cannot be parallelized due to structure specific data stored inside the calculator, which requires all consumers of the calculator to make it mutable (intent(inout)
).
To mitigate this issue special care has to been taken for the GFN-FF leading to code duplication in the hessian module to avoid parallelizing and breaking calculations with the GFN-FF.
Describe the solution you'd like
Remove any structure specific data from the calculator and move it to the restart data type instead. Make sure all consumers of the calculator can again use it as immutable (intent(in)
)
Describe alternatives you've considered
Deepcopy the GFN-FF calculator for each thread in the hessian calculation. This is not the preferred solution, since the calculator, especially for GFN-FF can become quite large.