Module splashsurf_lib::density_map [−][src]
Expand description
Computation of sparse density maps (evaluation of particle densities and mapping onto sparse grids)
This module provides functions for the computation of per-particle densities and the discretization of the resulting fluid density field by mapping onto a discrete background grid.
Currently, only sparse density maps are implemented.
Sparse density maps
The DensityMap
stores fluid density values for each point of an implicit background grid
where the density is not trivially zero. This is the case for all points that are inside or at
least within some tolerance to the compact support radius of a particle.
In case of a sparse density map, the values are stored in a hashmap. The keys are so called
“flat point indices”. These are computed from the background grid point coordinates (i,j,k)
analogous to multidimensional array index flattening. That means for a grid with dimensions
[n_x, n_y, n_z]
, the flat point index is given by the expression i*n_x + j*n_y + k*n_z
.
For these point index operations, the UniformGrid
is used.
Note that all density mapping functions always use the global background grid for flat point indices, even if the density map is only generated for a smaller subdomain.
Enums
A sparse density map
Errors that can occur during generation of the density map
Functions
Computes the individual densities of particles using a standard SPH sum
Computes the individual densities of particles inplace using a standard SPH sum
Computes a sparse density map for the fluid based on the specified background grid
Computes the individual densities of particles using a standard SPH sum, multi-threaded implementation
Computes a sparse density map for the fluid based on the specified background grid, multi-threaded implementation
Computes the individual densities of particles using a standard SPH sum, sequential implementation
Computes a sparse density map for the fluid based on the specified background grid, sequential implementation
Computes a sparse density map for the fluid restricted to the specified subdomain
Converts a sparse density map (based on the implicit background grid) to a sparse hexahedral mesh with explicit coordinates for the cells’ vertices.