scirs2_integrate/dae/methods/mod.rs
1//! Methods for solving Differential Algebraic Equations (DAEs)
2//!
3//! This module provides the implementation of numerical methods for solving DAE systems.
4//! The methods are organized based on the type of DAE system they are designed to solve:
5//! - Backward Differentiation Formula (BDF) methods for stiff DAEs
6//! - Specialized methods for semi-explicit DAEs
7//! - Specialized methods for fully implicit DAEs
8//! - Index reduction techniques combined with BDF methods for higher-index DAEs
9//! - Krylov subspace methods for large DAE systems
10//! - Block-structured preconditioners for improving Krylov method performance
11
12// BDF methods for DAE systems
13pub mod bdf_dae;
14
15// Index reduction BDF methods for higher-index DAEs
16pub mod index_reduction_bdf;
17
18// Krylov subspace methods for large DAE systems
19pub mod krylov_dae;
20
21// Block-structured preconditioners for DAE systems
22pub mod block_precond;
23
24// Re-export main solver functions
25pub use self::bdf_dae::{bdf_implicit_dae, bdf_semi_explicit_dae};
26pub use self::index_reduction_bdf::{bdf_implicit_with_index_reduction, bdf_with_index_reduction};
27pub use self::krylov_dae::{krylov_bdf_implicit_dae, krylov_bdf_semi_explicit_dae};
28
29// Re-export preconditioner creation functions
30pub use self::block_precond::{
31 create_block_ilu_preconditioner, create_block_jacobi_preconditioner,
32};