Expand description
§volterra-solver
Nematohydrodynamics solvers for active nematics on Cartesian grids and Riemannian 2-manifolds.
§Modules
| Symbol | Function |
|---|---|
ActiveNematicEngine | Operator-split active nematic engine on 2-manifolds |
NematicField2D | Complex nematic field (Section<2> wrapper) |
StokesSolver | Trait with stream-function and Killing backends |
molecular_field | Landau-de Gennes H = -δF/δQ |
beris_edwards_rhs | Full ∂_t Q RHS (dry active model) |
EulerIntegrator | First-order Euler time step |
RK4Integrator | Fourth-order Runge-Kutta time step |
k0_convolution | K₀ Bessel kernel convolution for ℳ_SM (Component 2) |
scan_defects | Holonomy-based defect detection (wraps cartan-geo) |
DefectInfo | Position, charge, and frame of a detected disclination |
§Physics: dry active nematic (Component 1)
The governing equation is:
∂_t Q = Γ_r · H_active
H_active = K_r ∇²Q + (ζ_eff/2 - a) Q - 2c tr(Q²) Qwhere a = a_landau (negative for the ordered phase), c = c_landau > 0,
and ζ_eff/2 - a is the effective linear driving.
When ζ_eff > 2|a| (equivalently a_eff < 0) the system enters the active
turbulent phase with dense defects.
Including flow (optional):
∂_t Q = -u·∇Q + S(W,Q) + Γ_r H_activewhere the co-rotation/strain term is S(W,Q) = λ(QW + WQ) - (QΩ + ΩQ).
§Physics: transfer map ℳ_SM (Component 2)
The orientational transfer to the lyotropic lipid phase is:
Q^lip(x) = ℳ_SM(Q^rot)(x)
= ∫ K₀(|x-x'|/ξ_l) Q^rot(x') d²x' / (2π ξ_l²)where K₀ is the modified Bessel function of the second kind, order 0,
and ξ_l is the lipid coupling length. This is computed by k0_convolution.
§References
- Beris, A. N. & Edwards, B. J. (1994). Thermodynamics of Flowing Systems.
- Doostmohammadi, A. et al. (2018). “Active nematics.” Nature Commun. 9, 3246.
- Giomi, L. (2015). “Geometry and topology of turbulence in active nematics.” Phys. Rev. X 5, 031003.
Re-exports§
pub use mol_field_3d::molecular_field_3d;pub use mol_field_3d::molecular_field_3d_par;pub use mol_field_3d::euler_step_fused_par;pub use mol_field_3d::co_rotation_3d;pub use beris_3d::beris_edwards_rhs_3d;pub use beris_3d::beris_edwards_rhs_3d_par_dry;pub use beris_3d::euler_step_par;pub use beris_3d::EulerIntegrator3D;pub use beris_3d::RK4Integrator3D;pub use stokes_3d::stokes_solve_3d;pub use ch_3d::ch_step_etd_3d;pub use defects_3d::scan_defects_3d;pub use defects_3d::track_defect_events;pub use runner_3d::run_dry_active_nematic_3d;pub use runner_3d::run_bech_3d;pub use runner_3d::SnapStats3D;pub use runner_3d::BechStats3D;pub use gauss_bonnet_3d::gauss_bonnet_chi;pub use runner_dec::run_dry_active_nematic_dec;pub use runner_dec::SnapStatsDec;pub use runner_dec_wet::run_wet_active_nematic_dec;pub use engine::NematicEngine;pub use engine::EngineStats;pub use nematic_field_2d::NematicField2D;pub use stokes_trait::StokesSolver;pub use stokes_trait::StokesBackend;pub use stokes_trait::FlowField;pub use stokes_trait::KillingOperatorSolver;pub use stokes_trait::StreamFunctionStokes;pub use active_nematic_engine::ActiveNematicEngine;pub use active_nematic_engine::EngineParams;pub use active_nematic_engine::StepDiagnostics;
Modules§
- active_
nematic_ engine - Active nematic engine on Riemannian 2-manifolds.
- beris_
3d - Beris-Edwards RHS and time integrators for 3D active nematics.
- ch_3d
- ETD (exponential time differencing) integrator for the Cahn-Hilliard equation on a 3D periodic grid.
- defects_
3d - 3-D disclination detection and event tracking.
- engine
- Unified active nematohydrodynamics engine on Riemannian 2-manifolds.
- gauss_
bonnet_ 3d - Gauss-Bonnet Euler characteristic observable for the phi_l isosurface.
- mol_
field_ 3d - Molecular field and co-rotation term for 3D active nematics.
- nematic_
field_ 2d - Complex nematic field on 2-manifolds.
- runner_
3d - High-level 3D simulation runners for dry active nematic and BECH (Beris-Edwards + Cahn-Hilliard) models.
- runner_
dec - Dry active nematic runner on 2D DEC meshes.
- runner_
dec_ wet - Wet active nematic runner on 2D DEC meshes.
- stokes_
3d - Spectral Stokes solver for active nematics on a 3D periodic grid.
- stokes_
trait - Stokes solver trait and backends for active nematic simulations.
Structs§
- Bech
Stats - Statistics collected at each snapshot during a BECH run.
- Defect
Info - Information about a detected topological disclination.
- Euler
Integrator - First-order forward Euler integrator.
- RK4Integrator
- Fourth-order Runge-Kutta integrator (RK4).
- Snap
Stats - Statistics collected at each snapshot during an active nematic run.
Functions§
- beris_
edwards_ rhs - Compute
dQ/dtfrom the Beris-Edwards equation. - ch_
chemical_ potential - Compute the Cahn-Hilliard chemical potential μ_l at each vertex.
- ch_
step_ etd - Advance the lipid volume fraction φ_l by one time step using an Exponential Time Differencing (ETD1) scheme.
- corotation_
strain - Compute the co-rotation–strain coupling
S(W, Q)at each vertex. - defect_
count - Count +1/2 and -1/2 disclinations detected in the field.
- k0_
convolution - Compute the orientational transfer map
ℳ_SM(Q^rot)via K₀ convolution. - molecular_
field - Compute the active molecular field
H_active = -δF_active/δQat each vertex. - run_
active_ nematic_ hydro - Run the active nematic simulation with full hydrodynamic coupling.
- run_
bech - Run the full Beris-Edwards-Cahn-Hilliard (BECH) simulation.
- run_
dry_ active_ nematic - Run the dry active nematic simulation.
- scan_
defects - Detect topological defects in a 2D Q-tensor field using holonomy.
- stokes_
solve - Solve the 2D incompressible Stokes equation for the active velocity field.