| Abstract Interface | Location | Description |
|---|---|---|
| apply_BC | m_base_case | Applies case-specific pre-correction to the velocity fields before pressure correction |
| define_BC | m_base_case | Applies case-specific boundary conditions |
| fft_backward | m_poisson_fft | |
| fft_forward | m_poisson_fft | |
| fft_postprocess | m_poisson_fft | |
| finalise_iface | m_turbine_model | |
| forcings | m_base_case | Applies case-specific or model related forcings after transeq |
| init_iface | m_turbine_model | Set up turbine geometry/state (read config files, place actuator points, build smearing kernels, ...). Called once after the solver exists. The model caches whatever context it needs (backend, mesh, host_allocator) so the per-step hooks below take only fields. |
| initial_conditions | m_base_case | Sets case-specific initial conditions |
| poisson_solver | m_solver | |
| postprocess | m_base_case | Triggers case-specific postprocessings at user specified intervals |
| project_forces_iface | m_turbine_model | Sample the velocity field at the actuator points and accumulate the turbine momentum source into the RHS fields du, dv, dw. Uses the backend/mesh cached at init. |
| read | m_config | Assigns the member variables either from a file or text source. |
| read_checkpoint_iface | m_checkpoint_state | |
| setup_output_iface | m_turbine_model | |
| stepper_func | m_time_integrator | |
| transport_equation | m_solver | |
| update_iface | m_turbine_model | Advance the turbine internal state (blade kinematics, rotor speed, velocity filtering) by one step. Called once per substep before project_forces. |
| write_checkpoint_iface | m_checkpoint_state | |
| write_output_iface | m_turbine_model | Write per-turbine diagnostics (power, thrust, loads). |