Classes refactoring
·
678 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
VTK
s should be in a separated library rather than in thedriver
class - 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