Skip to content

novaphy.generate_fluid_block

Generate initial particle positions for a FluidBlockDef.

def generate_fluid_block(block_def: FluidBlockDef) -> list[Vector3]

Returns a list of particle positions sampled at block_def.particle_spacing within [block_def.lower, block_def.upper]. Convert it with np.asarray(positions, dtype=np.float32) when an (N, 3) array is needed.

Example

import numpy as np
import novaphy

block = novaphy.FluidBlockDef()
block.lower = np.array([0, 0, 0])
block.upper = np.array([1, 1, 1])
block.particle_spacing = 0.05

positions = novaphy.generate_fluid_block(block)

See Also