///|
/// Return the legacy isothermal pressure field.
pub fn Lattice::pressure_field(self : Lattice) -> Field2D {
self.density_field().map((_, _, rho) => rho / 3.0)
}
///|
/// Return the centered divergence of a legacy velocity field.
pub fn Lattice::divergence_field(self : Lattice) -> Field2D {
let result = Field2D::new(size=self.size)
for y in 0.. Field2D {
let result = Field2D::new(size=self.size)
for y in 0.. Double {
self.divergence_field().absolute_integral() /
self.fluid_count().max(1).to_double()
}
///|
/// Return the legacy pressure range.
pub fn Lattice::pressure_range(self : Lattice) -> (Double, Double) {
let stats = self
.pressure_field()
.statistics_masked(mask=self.domain_mask(), include_solid=false)
(stats.minimum, stats.maximum)
}
///|
/// Return the maximum legacy strain rate.
pub fn Lattice::maximum_strain_rate(self : Lattice) -> Double {
self.strain_rate_field().statistics().maximum
}
///|
/// Return the maximum legacy pressure.
pub fn Lattice::maximum_pressure(self : Lattice) -> Double {
self.pressure_field().statistics().maximum
}
///|
/// Return the mean legacy pressure.
pub fn Lattice::mean_pressure(self : Lattice) -> Double {
self
.pressure_field()
.statistics_masked(mask=self.domain_mask(), include_solid=false).mean
}