NativeSolver
experimental.network_dynamics.solvers.NativeSolver(
block_size=None,
recompute_coupling_per_stage=False,
grad_horizon=None,
)Base class for Network Dynamics native solvers.
Solvers integrate only the dynamics state. Coupling state management happens outside the solver in the scan loop.
The dynamics_fn passed to step() should already have coupling computation bundled in via closure, so the solver only needs to worry about time integration of the dynamics state.
Methods
| Name | Description |
|---|---|
| step | Single integration step for dynamics state. |
step
experimental.network_dynamics.solvers.NativeSolver.step(
dynamics_fn,
t,
state,
dt,
params,
noise_sample=0.0,
)Single integration step for dynamics state.
Args: dynamics_fn: Dynamics function (t, state, params) -> (derivatives, auxiliaries) Coupling is already computed inside via closure t: Current time state: Network state array [n_states, n_nodes] dt: Time step params: Parameters (params.dynamics, etc.) noise_sample: Scaled noise for SDEs [n_states, n_nodes] Default 0.0 for deterministic systems
Returns: Tuple of (next_state, auxiliaries): - next_state: Updated network state array [n_states, n_nodes] - auxiliaries: Auxiliary variables array [n_auxiliaries, n_nodes] Empty array if no auxiliaries