[][src]Struct salva2d::solver::DFSPHSolver

pub struct DFSPHSolver<KernelDensity: Kernel = CubicSplineKernel, KernelGradient: Kernel = CubicSplineKernel> {
    pub min_pressure_iter: usize,
    pub max_pressure_iter: usize,
    pub max_density_error: Real,
    pub min_divergence_iter: usize,
    pub max_divergence_iter: usize,
    pub max_divergence_error: Real,
    // some fields omitted
}

A DFSPH (Divergence Free Smoothed Particle Hydrodynamics) pressure solver.

Fields

min_pressure_iter: usize

Minimum number of iterations that must be executed for pressure resolution.

max_pressure_iter: usize

Maximum number of iterations that must be executed for pressure resolution.

max_density_error: Real

Maximum acceptable density error (in percents).

The pressure solver will continue iterating until the density error drops bellow this threshold, or until the maximum number of pressure iterations is reached.

min_divergence_iter: usize

Minimum number of iterations that must be executed for divergence resolution.

max_divergence_iter: usize

Maximum number of iterations that must be executed for divergence resolution.

max_divergence_error: Real

Maximum acceptable divergence error (in percents).

The pressure solver will continue iterating until the divergence error drops bellow this threshold, or until the maximum number of pressure iterations is reached.

Implementations

impl<KernelDensity, KernelGradient> DFSPHSolver<KernelDensity, KernelGradient> where
    KernelDensity: Kernel,
    KernelGradient: Kernel
[src]

pub fn new() -> Self[src]

Initialize a new DFSPH pressure solver.

Trait Implementations

impl<KernelDensity, KernelGradient> PressureSolver for DFSPHSolver<KernelDensity, KernelGradient> where
    KernelDensity: Kernel,
    KernelGradient: Kernel
[src]

Auto Trait Implementations

impl<KernelDensity, KernelGradient> RefUnwindSafe for DFSPHSolver<KernelDensity, KernelGradient> where
    KernelDensity: RefUnwindSafe,
    KernelGradient: RefUnwindSafe
[src]

impl<KernelDensity, KernelGradient> Send for DFSPHSolver<KernelDensity, KernelGradient>[src]

impl<KernelDensity, KernelGradient> Sync for DFSPHSolver<KernelDensity, KernelGradient>[src]

impl<KernelDensity, KernelGradient> Unpin for DFSPHSolver<KernelDensity, KernelGradient> where
    KernelDensity: Unpin,
    KernelGradient: Unpin
[src]

impl<KernelDensity, KernelGradient> UnwindSafe for DFSPHSolver<KernelDensity, KernelGradient> where
    KernelDensity: UnwindSafe,
    KernelGradient: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,