Skip to main content

spintronics/material/
mod.rs

1//! Material properties for spintronics simulations
2//!
3//! This module provides material parameters for various spintronic systems:
4//!
5//! - **Ferromagnets**: YIG, Permalloy, CoFeB, CoFe, Fe, Co, Ni
6//! - **Antiferromagnets**: NiO, MnF₂, FeF₂, Cr₂O₃
7//! - **Topological Insulators**: Bi₂Se₃, Bi₂Te₃, Sb₂Te₃
8//! - **Weyl Semimetals**: TaAs, NbAs, MoTe₂
9//! - **2D Magnets**: CrI₃, Fe₃GeTe₂, MnBi₂Te₄
10//! - **Interfaces**: Spin mixing conductance for various FM/NM interfaces
11//!
12//! # Quick Start
13//!
14//! ```rust
15//! use spintronics::material::prelude::*;
16//!
17//! let yig = Ferromagnet::yig();
18//! let interface = SpinInterface::yig_pt();
19//! let ti = TopologicalInsulator::bi2se3();
20//! ```
21
22pub mod antiferromagnet;
23pub mod defects;
24pub mod disorder;
25pub mod ferromagnet;
26pub mod interface;
27pub mod magnetic_2d;
28pub mod multilayer;
29pub mod prelude;
30pub mod random_anisotropy;
31pub mod temperature;
32pub mod topological;
33pub mod traits;
34pub mod weyl;
35
36pub use antiferromagnet::{AfmStructure, Antiferromagnet};
37pub use defects::{DefectCollection, DefectSite, DefectType, DepinningParams, GrainBoundary};
38pub use disorder::{
39    DisorderConfig, DisorderType, GradedInterface, GradingLaw, GrainStructure,
40    RandomAnisotropyModel, RandomFieldDisorder, SurfaceRoughness, Xorshift64,
41};
42pub use ferromagnet::Ferromagnet;
43pub use interface::SpinInterface;
44pub use magnetic_2d::{Magnetic2D, MagneticOrdering};
45pub use multilayer::{MagneticMultilayer, MultilayerType, SpacerLayer};
46pub use random_anisotropy::{RandomAnisotropy, RandomAnisotropyDistribution};
47pub use temperature::ThermalFerromagnet;
48pub use topological::{surface_spin_texture, TopologicalClass, TopologicalInsulator};
49pub use traits::{
50    InterfaceMaterial, MagneticMaterial, SpinChargeConverter, TemperatureDependent,
51    TopologicalMaterial,
52};
53pub use weyl::{MagneticState, WeylSemimetal, WeylType};