Skip to main content

Module assembly

Module assembly 

Source
Expand description

BEM matrix assembly

This module provides three methods for assembling BEM systems:

  • tbem - Traditional BEM with O(N²) dense matrix (always available)
  • slfmm - Single-Level Fast Multipole Method (requires native or wasm feature)
  • mlfmm - Multi-Level Fast Multipole Method

For small problems (N < 1000), TBEM is usually fastest. For larger problems, FMM methods provide O(N log N) or O(N) scaling.

§WASM Compatibility

With the wasm feature, all assembly methods are available including SLFMM. Parallel processing is provided via wasm-bindgen-rayon (Web Workers).

Re-exports§

pub use mlfmm::MlfmmSystem;
pub use mlfmm::build_cluster_tree;
pub use mlfmm::build_mlfmm_system;
pub use slfmm::SlfmmSystem;
pub use slfmm::build_slfmm_system;
pub use sparse::BlockedCsr;
pub use sparse::CsrBuilder;
pub use sparse::CsrMatrix;
pub use tbem::TbemSystem;
pub use tbem::apply_row_sum_correction;
pub use tbem::build_tbem_system;
pub use tbem::build_tbem_system_corrected;
pub use tbem::build_tbem_system_scaled;
pub use tbem::build_tbem_system_with_beta;

Modules§

mlfmm
Multi-Level Fast Multipole Method (MLFMM) assembly
slfmm
Single-Level Fast Multipole Method (SLFMM) assembly
sparse
Sparse matrix structures (CSR format)
tbem
Traditional BEM (O(N²) dense matrix) assembly