mindflow.cfd.RunTime
- class mindflow.cfd.RunTime(config, mesh_info, material)[source]
Simulation run time controller.
- Parameters
config (dict) – The dict of parameters.
mesh_info (MeshInfo) – The information of the compute mesh.
material (Material) – The fluid material model.
- Supported Platforms:
GPU
Examples
>>> from mindflow import cfd >>> config = {'mesh': {'dim': 1, 'nx': 100, 'gamma': 1.4, 'x_range': [0, 1], 'pad_size': 3}, ... 'material': {'type': 'IdealGas', 'heat_ratio': 1.4, 'specific_heat_ratio': 1.4, ... 'specific_gas_constant': 1.0}, 'runtime': {'CFL': 0.9, 'current_time': 0.0, 'end_time': 0.2}, ... 'integrator': {'type': 'RungeKutta3'}, 'space_solver': {'is_convective_flux': True, ... 'convective_flux': {'reconstructor': 'WENO5', 'riemann_computer': 'Rusanov'}, ... 'is_viscous_flux': False}, 'boundary_conditions': {'x_min': {'type': 'Neumann'}, ... 'x_max': {'type': 'Neumann'}}} >>> s = cfd.Simulator(config) >>> r = cfd.RunTime(c, s.mesh_info, s.material)
- advance()[source]
Simulation advance according to the timestep.
- Raises
NotImplementedError – If timestep is invalid.
- compute_timestep(pri_var)[source]
Computes the physical time step size.
- Parameters
pri_var (Tensor) – The primitive variables.
- time_loop(pri_var)[source]
Weather to continue the simulation. When current time reaches end time or
NAN
value detected, return False.- Parameters
pri_var (Tensor) – The primitive variables.
- Returns
Bool. Weather to continue the simulation.
- Raises
ValueError – If pri_var has
NAN
values.