nexus_mpm2d 0.5.0

Cross-platform 2D GPU-accelerated MPM physics.
//! Core MPM solver algorithms and GPU kernels.

pub use boundary_condition::{BoundaryCondition, GpuMaterials};
pub use g2p::WgG2P;
pub use g2p_cdf::WgG2PCdf;
pub use grid_update::WgGridUpdate;
pub use grid_update_cdf::WgGridUpdateCdf;
pub use p2g::WgP2G;
pub use p2g_cdf::WgP2GCdf;
pub use params::{GpuSimulationParams, SimulationParams};
pub use particle::*;
pub use particle_model::*;
pub use particle_update::WgParticleUpdate;
pub use rigid_integrate::{GpuImpulses, WgIntegrateBodies};
pub use rigid_particle_update::WgRigidParticleUpdate;
pub use timestep_bound::WgTimestepBounds;

pub use crate::mpm_shaders::solver::p2g::IntegerImpulse;
pub use crate::mpm_shaders::solver::timestep_bound::GpuTimestepBounds;

mod boundary_condition;
mod g2p;
mod g2p_cdf;
mod grid_update;
mod grid_update_cdf;
mod p2g;
mod p2g_cdf;
mod params;
mod particle;
mod particle_model;
mod particle_update;
pub mod prep_readback;
mod rigid_integrate;
mod rigid_particle_update;
mod timestep_bound;