5#ifndef OAKFIELD_DIVERGENCE_H
6#define OAKFIELD_DIVERGENCE_H
19#define SIM_DIVERGENCE_AXIS_AUTO ((size_t)SIZE_MAX)
SimResult sim_divergence_update(struct SimContext *context, size_t operator_index, const SimDivergenceOperatorConfig *config)
Replace the configuration of a registered divergence operator.
SimResult sim_add_divergence_operator(struct SimContext *context, const SimDivergenceOperatorConfig *config, size_t *out_index)
Register a finite-difference divergence operator.
SimResult sim_divergence_config(struct SimContext *context, size_t operator_index, SimDivergenceOperatorConfig *out_config)
Copy the current divergence configuration from a registered operator.
SimDivergenceStencil
Finite-difference stencils available for divergence derivatives.
Definition divergence.h:24
@ SIM_DIVERGENCE_STENCIL_BACKWARD_1
Definition divergence.h:28
@ SIM_DIVERGENCE_STENCIL_BACKWARD_2
Definition divergence.h:30
@ SIM_DIVERGENCE_STENCIL_CENTRAL_4
Definition divergence.h:26
@ SIM_DIVERGENCE_STENCIL_CENTRAL_2
Definition divergence.h:25
@ SIM_DIVERGENCE_STENCIL_FORWARD_1
Definition divergence.h:27
@ SIM_DIVERGENCE_STENCIL_FORWARD_2
Definition divergence.h:29
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
SimIRBoundaryPolicy
Boundary handling policy for differential operators.
Definition kernel_ir.h:82
Declarative complex-first operator splitting (substep expansion at plan time).
Simulation runtime state.
Definition sim_context.h:70
Configuration for a finite-difference vector divergence operator.
Definition divergence.h:36
size_t axis_x
Definition divergence.h:42
double spacing_y
Definition divergence.h:41
bool accumulate
Definition divergence.h:46
SimIRBoundaryPolicy boundary
Definition divergence.h:45
size_t axis_y
Definition divergence.h:43
SimDivergenceStencil stencil
Definition divergence.h:44
bool scale_by_dt
Definition divergence.h:47
double spacing_x
Definition divergence.h:40
size_t input_field_x
Definition divergence.h:37
size_t input_field_y
Definition divergence.h:38
size_t output_field
Definition divergence.h:39