[−][src]Struct salva2d::solver::DFSPHSolver
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]
KernelDensity: Kernel,
KernelGradient: Kernel,
Trait Implementations
impl<KernelDensity, KernelGradient> PressureSolver for DFSPHSolver<KernelDensity, KernelGradient> where
KernelDensity: Kernel,
KernelGradient: Kernel,
[src]
KernelDensity: Kernel,
KernelGradient: Kernel,
fn init_with_fluids(&mut self, fluids: &[Fluid])
[src]
fn init_with_boundaries(&mut self, _boundaries: &[Boundary])
[src]
fn predict_advection(
&mut self,
timestep: &TimestepManager,
kernel_radius: Real,
contact_manager: &ContactManager,
gravity: &Vector<Real>,
fluids: &mut [Fluid],
boundaries: &[Boundary]
)
[src]
&mut self,
timestep: &TimestepManager,
kernel_radius: Real,
contact_manager: &ContactManager,
gravity: &Vector<Real>,
fluids: &mut [Fluid],
boundaries: &[Boundary]
)
fn evaluate_kernels(
&mut self,
kernel_radius: Real,
contact_manager: &mut ContactManager,
fluids: &[Fluid],
boundaries: &[Boundary]
)
[src]
&mut self,
kernel_radius: Real,
contact_manager: &mut ContactManager,
fluids: &[Fluid],
boundaries: &[Boundary]
)
fn compute_densities(
&mut self,
contact_manager: &ContactManager,
fluids: &[Fluid],
boundaries: &mut [Boundary]
)
[src]
&mut self,
contact_manager: &ContactManager,
fluids: &[Fluid],
boundaries: &mut [Boundary]
)
fn step(
&mut self,
counters: &mut Counters,
timestep: &mut TimestepManager,
gravity: &Vector<Real>,
contact_manager: &mut ContactManager,
kernel_radius: Real,
fluids: &mut [Fluid],
boundaries: &[Boundary]
)
[src]
&mut self,
counters: &mut Counters,
timestep: &mut TimestepManager,
gravity: &Vector<Real>,
contact_manager: &mut ContactManager,
kernel_radius: Real,
fluids: &mut [Fluid],
boundaries: &[Boundary]
)
Auto Trait Implementations
impl<KernelDensity, KernelGradient> RefUnwindSafe for DFSPHSolver<KernelDensity, KernelGradient> where
KernelDensity: RefUnwindSafe,
KernelGradient: RefUnwindSafe,
[src]
KernelDensity: RefUnwindSafe,
KernelGradient: RefUnwindSafe,
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]
KernelDensity: Unpin,
KernelGradient: Unpin,
impl<KernelDensity, KernelGradient> UnwindSafe for DFSPHSolver<KernelDensity, KernelGradient> where
KernelDensity: UnwindSafe,
KernelGradient: UnwindSafe,
[src]
KernelDensity: UnwindSafe,
KernelGradient: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
pub fn is_in_subset(&self) -> bool
pub fn to_subset_unchecked(&self) -> SS
pub fn from_subset(element: &SS) -> SP
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,