mercurial.core.coupled_fields module

Kuramoto‑coupled 2D neural fields for cross‑modal binding (Section 21).

class mercurial.core.coupled_fields.CoupledNeuralFields(nx: int, ny: int, dx: float = 0.5, field_A_params: dict | None = None, field_B_params: dict | None = None, coupling_strength_AB: float = 0.1, coupling_strength_BA: float = 0.1, kernel_ee: MexicanHatKernel | None = None, kernel_ie: MexicanHatKernel | None = None)[source]

Bases: object

Two 2D neural fields (e.g., visual and auditory) coupled via Kuramoto cross‑field phase synchrony.

Methods

get_order_parameters()

Return (R_A, Ψ_A, R_B, Ψ_B).

step(dt[, P_ext_A, Q_ext_A, P_ext_B, Q_ext_B])

Evolve both fields by one time step with cross‑field coupling.

__init__(nx: int, ny: int, dx: float = 0.5, field_A_params: dict | None = None, field_B_params: dict | None = None, coupling_strength_AB: float = 0.1, coupling_strength_BA: float = 0.1, kernel_ee: MexicanHatKernel | None = None, kernel_ie: MexicanHatKernel | None = None)[source]
Parameters:
nx, nyint

Grid dimensions.

dxfloat

Spatial step (mm).

field_A_params, field_B_paramsdict, optional

Parameters for WilsonCowanPopulation (per point).

coupling_strength_AB, coupling_strength_BAfloat

κ_AB, κ_BA.

kernel_ee, kernel_ieMexicanHatKernel, optional

If None, defaults use empirical values.

get_order_parameters() Tuple[float, float, float, float][source]

Return (R_A, Ψ_A, R_B, Ψ_B).

step(dt: float, P_ext_A: ndarray | None = None, Q_ext_A: ndarray | None = None, P_ext_B: ndarray | None = None, Q_ext_B: ndarray | None = None) None[source]

Evolve both fields by one time step with cross‑field coupling.