Skip to main content

Dyna: X-ray magnetic reflectivity simulation

Project description

Maintenance made-with-python GIT Python 3.10

This is Dyna development files for the 4.09 version

"Dynamic x-ray reflectivity off- or on-resonant regime for isotropic, magnetic and anisotropic (multi)layer simulations and refinements Program"

About The Project

Dyna is a simulation program for reflectivity and transmittance of x-rays and optics, aimed at determining structural, magnetic and electronic stackings in ultrathin multilayers.

Among so many programs in the field, Dyna has several specificities : it includes anomalous, magnetic and anisotropic components in the index of refraction; it simulates reflectivities either versus angle, or versus x-ray energy, with arbitrary incident and out-going polarizations; it simulates Kerr and Faraday spectra, and transmittance through thin layers.

All the simulations can be simultaneously fitted against one model.

The program integrates a toolbox to create charge and magnetic factors from tables.

Dyna was also designed for pedagogical aims, making easy to slide parameters for on-the-fly effects.

Dyna is an on-going free and open-source project, under Python + Qt, or Matlab environments. Dyna can also be freely downloaded, and support is offered to users upon reasonable request.

Copyright Institut Neel, CNRS, Grenoble, France

Project Collaborators:

Questions to:

Stéphane Grenier, stephane.grenier@neel.cnrs.fr

Installation

pip install dyna

Development install

git clone https://gitlab.com/dynadevgroup/Dyna cd Dyna pip install -e . dyna

Features

  • magnetic-sensitive susceptibility, arbitrary magnetic moment direction described by Euler angles, with the limitation of neglictible spin-orbit coupling in the valence states
  • anisotropic susceptibility, in the limitation of an uniaxial symmetry along the depth of the film, for the simulation of oriented molecules or orbitally ordered films (not in python code yet)
  • structural and magnetic sensitive transmittance.
  • Angular/Q scans
  • Energy spectra at fix angle or fix Q
  • Polarization Analysis, in and out
  • Refinement in user-defined interval, with limits on parameters, and constrains between parameters
  • Multifit : one system is refined by simultaneous simulations of various data (angle and energy scans, of any polarization, energy or angle configurations).
  • Calculates Scattering Factors from Tables
  • Calculates Kerr MO rotation and ellipticities, providing that the angles are small, validity to be checked case by case
  • (Python Only) Scriptable
  • (Matlab only) Genetic Algorithm (requires Optimization Toolbox)

Testing

Integration tests are to be found in the tests folder. Testing is done with pytest, it needs packages listed in tests/requirements_tests.txt. Mainly : pytest, pytest-qt and pytest-env. To launch all integration tests first activate the Dyna's python environement and then in the terminal do:

pytest tests/

These tests mimic common user actions on the interface in order to check a basic minimum viability. As not all functionality is available, some tests have been written but are set to be skipped.

Documentations:

https://pydyna.readthedocs.io

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dynaref-6.1.0.tar.gz (39.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dynaref-6.1.0-py3-none-any.whl (39.8 MB view details)

Uploaded Python 3

File details

Details for the file dynaref-6.1.0.tar.gz.

File metadata

  • Download URL: dynaref-6.1.0.tar.gz
  • Upload date:
  • Size: 39.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for dynaref-6.1.0.tar.gz
Algorithm Hash digest
SHA256 644c9d17898bfe9142f559702da0d44542e51f4176dcc6d954351bbf6f78406f
MD5 29386732e6e008067a5f73221ef85d59
BLAKE2b-256 b608005d9177dd129e235e7130c00bdb1158b1bfd1ec5358135c5e5f7a05a4ab

See more details on using hashes here.

File details

Details for the file dynaref-6.1.0-py3-none-any.whl.

File metadata

  • Download URL: dynaref-6.1.0-py3-none-any.whl
  • Upload date:
  • Size: 39.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for dynaref-6.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6b460146cbbd63e6fdd1da60435b8b111a90fbb114c90457a6393533a1c1f1fb
MD5 2a556fc64fbc45a5d943f6c3daa6d60b
BLAKE2b-256 26a58199e4683b675f1b355dcb2f47f1244917d3101480080e2c46d3bb7bf959

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page