As described in #1 (comment) , one should be able to restrict atoms movement along a submanifold, e.g. certain atoms are allowed to slide on a surface.
Currently atoms are either completely clamped or not.
Possible implementation directions include:
- Using constraints in
OptimizationFunction (see docs).
- Using optimization on manifolds: Manopt.jl.