Classes refactoring
·
700 commits
to master
since this release
This new 2.0 release comes with a major refactoring of the old Sim and llg classes. Now Sim is properly used as a class to keep most of the simulation and material parameters. The integrators no longer derive from the llg class but from a new driver class. In the common folder we moved to different _base classes, common methods for both atomistic and micromagnetic simulations, avoiding code repetition. Most of the methods have also been documented. Regarding the driver classes, it now stores all of the LLG related parameters (alpha, gama, etc).
This version also integrates the new NEBM code that uses Geodesic distances.
There are still things that need to be improved:
- Functions like saving
VTKs should be in a separated library rather than in thedriverclass - Better and updated documentation for the new classes and Fidimag structure
- A plan to easily allow new integrators to be added to the code
- Revision/test of the stochastic methods
- Merge integrators into a common class since the main difference between the atomistic and micromagnetic codes comes from the field classes