Skip to content

Commit 0469cb7

Browse files
committed
Update readme
1 parent 5264f33 commit 0469cb7

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

splashsurf_lib/README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,15 @@ For each of the features, `splashsurf_lib` re-exports the corresponding dependen
3737

3838
Currently, only one method based on a "spatial hashing" strategy is implemented.
3939

40+
`TODO: This section is missing a description of the domain decomposition for more efficient parallelization`
41+
4042
**Short summary**: The fluid density is evaluated or mapped onto a sparse grid using spatial hashing in the support radius of each fluid particle. This implies that memory is only allocated in areas where the fluid density is non-zero. This is in contrast to a naive approach where the marching cubes background grid is allocated for the whole domain. Finally, the marching cubes reconstruction is performed only in those grid cells where an edge crosses the surface threshold. Cells completely in the interior of the fluid are skipped in the marching cubes phase.
4143

4244
**Individual steps**:
4345
1. Construct a "virtual background grid" with the desired resolution of the marching cubes algorithm. In the end, the procedure will place a single surface mesh vertex on each edge of this virtual grid, where the fluid surface crosses the edge (or rather, where the fluid density crosses the specified threshold). Virtual means that no storage is actually allocated for this grid yet; only its topology is used implicitly later.
4446
2. Compute the density of each fluid particle
45-
- Perform a neighborhood search
46-
- Per particle, evaluate an SPH sum over the neighbors to compute its density (based on input parameters of kernel radius and particle rest mass)
47+
- Perform a neighborhood search
48+
- Per particle, evaluate an SPH sum over the neighbors to compute its density (based on input parameters of kernel radius and particle rest mass)
4749
3. Optional: filter out (or rather mask as inactive) single particles if the user provided a "splash detection radius". This is done by performing an additional neighborhood search using this splash detection radius instead of the kernel radius.
4850
4. Compute a "sparse density map": a map from the index of a vertex of the virtual background grid to the corresponding fluid density value. The map will only contain entries for vertices where the fluid density is non-zero. Construction of the map:
4951
- Iterate over all active particles

0 commit comments

Comments
 (0)