Approximation of the sample paths of the Stochastic Landau-Lifshitz-Gilbert equation from dynamic micromagnetics.
-
Clone the repo:
git clone <git@github.com:andreascaglioni/stochastic-llg-equation.git>
-
Install dependencies:
-
The finite elements computations are run with dolfin-x, the Python interface to Fenics-x. See their website for installation instructions (Conda environment recommended): https://fenicsproject.org/download/
-
Running the code requires several basic Python dependencies:
pip install -r requirements.txt
-
-
Optionally, you can install ParaView to visualize the solutions from the examples stored in .xdmf files. Find more instructions on their website: https://www.paraview.org/
Run the examples from the root directory of the project with
python3 examples/example_<name>.pyRead the documentation at: https://andreascaglioni.github.io/stochllg/
-
Implementation of the Tangent Plane Scheme (TPS) as in the publication:
Akrivis G., Feischl M., Kovács B. and Lubich C.; (2021). Higher-order linearly implicit full discretization of the Landau–Lifshitz–Gilbert equation. Math. Comp., 90, 995-1038. DOI: 10.1090/mcom/3597
In particular, the tangent plane constraint is implemented in a ``weak'' L2 sense and both the BDF time stepping and finite elements space discretizations are high-order.
-
Lévy-Ciesielski parametrization of the Brownian motion: Given n i.i.d. samples of the standard normal distribution, generate a sample path in time.
-
Structured, modular implementation of the Tangent Plane Scheme, split into sub-functions as well as several supporting functions such as computation of the error, computation of the inf-sup constant, exporting solutions to .XDMF files.
-
Examples and documentation: Several examples illustrate the use of the library, including good practices e.g. defining the data a separate file, commenting the code. Functions, especially in src/, are thoroughly documented (Google style).
-
Future additions:
- Unit testing with Pytest,
- Documentation,
- High order version of the TPS,
- More examples (external magnetic field, hysteresis, Skyrmions, ...),
- Autormated Testing with GitHub Actions
Contributions are welcome! Please get in touch (see Contact).
Distributed under the MIT License. See LICENSE for more information.
If you have any questions, suggestions or comments, please get in touch with me: Andrea Scaglioni andreascaglioni.net/contacts
