autosim.simulations.spatiotemporal.gray_scott

autosim.simulations.spatiotemporal.gray_scott#

Gray-Scott reaction-diffusion simulator.

simulate_spectral_gray_scott(params, *, return_timeseries, n, L, T, dt, snapshot_dt, initial_condition, gaussian_spec, n_fourier_modes, dealias, random_seed=None)[source]#

Simulate Gray-Scott dynamics using a spectral ETDRK4 discretization.

The solver uses periodic boundary conditions on a square domain, pseudospectral evaluation of nonlinear terms, and optional 2/3-rule dealiasing.

Parameters:
Return type:

tuple[ndarray, ndarray]

class GrayScott(parameters_range=None, output_names=None, return_timeseries=False, log_level='progress_bar', n=128, L=2.0, T=10000.0, dt=1.0, snapshot_dt=10.0, initial_condition='gaussians', initial_gaussian_spec=None, n_fourier_modes=32, dealias=True, random_seed=None, pattern=None, fixed_parameters_given_pattern=True, min_std=None)[source]#

Bases: SpatioTemporalSimulator

Spectral Gray-Scott simulator based on danfortunato/spectral-gray-scott.

The model evolves two chemical concentrations \(u\) and \(v\):

\[\begin{split}\begin{aligned} \partial_t u &= \delta_u \nabla^2 u - uv^2 + F(1 - u), \\ \partial_t v &= \delta_v \nabla^2 v + uv^2 - (F + k)v. \end{aligned}\end{split}\]

Pattern presets choose fixed or ranged values for \(F\) and \(k\); diffusion coefficients are controlled by \(\delta_u\) and \(\delta_v\).

Parameters:
forward_samples_spatiotemporal(n, random_seed=None, ensure_exact_n=False)[source]#

Run multiple trajectories and return [batch, time, x, y, channels] data.

Parameters:
  • n (int)

  • random_seed (int | None)

  • ensure_exact_n (bool)

Return type:

dict