[][src]Struct salva2d::solver::IISPHSolver

pub struct IISPHSolver<N: RealField, KernelDensity: Kernel = CubicSplineKernel, KernelGradient: Kernel = CubicSplineKernel> {
    pub min_pressure_iter: usize,
    pub max_pressure_iter: usize,
    pub max_density_error: N,
    // some fields omitted
}

A IISPH (Implicit Incompressible 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: N

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.

Methods

impl<N, KernelDensity, KernelGradient> IISPHSolver<N, KernelDensity, KernelGradient> where
    N: RealField,
    KernelDensity: Kernel,
    KernelGradient: Kernel
[src]

pub fn new() -> Self[src]

Initialize a new IISPH pressure solver.

Trait Implementations

impl<N, KernelDensity, KernelGradient> PressureSolver<N> for IISPHSolver<N, KernelDensity, KernelGradient> where
    N: RealField,
    KernelDensity: Kernel,
    KernelGradient: Kernel
[src]

Auto Trait Implementations

impl<N, KernelDensity, KernelGradient> RefUnwindSafe for IISPHSolver<N, KernelDensity, KernelGradient> where
    KernelDensity: RefUnwindSafe,
    KernelGradient: RefUnwindSafe,
    N: RefUnwindSafe + Scalar

impl<N, KernelDensity, KernelGradient> Send for IISPHSolver<N, KernelDensity, KernelGradient> where
    N: Scalar

impl<N, KernelDensity, KernelGradient> Sync for IISPHSolver<N, KernelDensity, KernelGradient> where
    N: Scalar

impl<N, KernelDensity, KernelGradient> Unpin for IISPHSolver<N, KernelDensity, KernelGradient> where
    KernelDensity: Unpin,
    KernelGradient: Unpin,
    N: Scalar + Unpin

impl<N, KernelDensity, KernelGradient> UnwindSafe for IISPHSolver<N, KernelDensity, KernelGradient> where
    KernelDensity: UnwindSafe,
    KernelGradient: UnwindSafe,
    N: Scalar + UnwindSafe

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>,