"""Empirical parameter database for the MERCURIAL framework.
This file contains all literature‑driven and physically justified parameters
for neural models (Wilson‑Cowan, Jansen‑Rit, Hopf, Kuramoto, Hebbian),
sensory transduction (photoreceptor, hair cell), quantum field propagation,
entanglement, and the core Priorities 1‑4 (thermodynamics, pattern formation,
impression formation, LADDER coupling, branch decoherence).
"""
from dataclasses import dataclass
from typing import Any, Dict
# ============================================================================
# Neural models (Wilson‑Cowan, Jansen‑Rit, Hopf, Kuramoto, Hebbian)
# ============================================================================
[docs]
@dataclass
class WilsonCowanParams:
"""Literature‑sourced Wilson‑Cowan parameters."""
tau_e: float = 0.0025 # s
tau_i: float = 0.00375 # s
a_e: float = 1.5
a_i: float = 1.5
mu_e: float = 3.0
mu_i: float = 3.0
w_ee: float = 16.0
w_ie: float = 12.0
w_ei: float = 15.0
w_ii: float = 3.0
sigma_e: float = 5e-5
sigma_i: float = 5e-5
[docs]
@dataclass
class JansenRitParams:
"""Literature‑sourced Jansen‑Rit parameters."""
a: float = 100.0 # s⁻¹ (τₑ = 1/a = 0.01 s)
b: float = 50.0 # s⁻¹ (τᵢ = 1/b = 0.02 s)
A: float = 3.25 # mV
B: float = 22.0 # mV
C: float = 135.0
C1: float = 135.0
C2: float = 108.0 # 0.8 * C
C3: float = 33.75 # 0.25 * C
C4: float = 33.75 # 0.25 * C
e0: float = 5.0 # s⁻¹
v0: float = 6.0 # mV
r: float = 0.56 # mV⁻¹
[docs]
@dataclass
class HopfParams:
"""Parameters for Hopf oscillator (frequency bands)."""
alpha_rest: float = -0.1
alpha_active: float = 0.1
beta: float = 1.0
omega_alpha: float = 2 * 3.141592653589793 * 10.0 # rad/s
omega_beta: float = 2 * 3.141592653589793 * 20.0
omega_gamma: float = 2 * 3.141592653589793 * 40.0
sigma: float = 0.05
[docs]
@dataclass
class KuramotoParams:
"""Parameters for Kuramoto oscillator."""
coupling_weak: float = 0.1
coupling_moderate: float = 0.5
coupling_strong: float = 0.9
phase_noise: float = 0.05
[docs]
@dataclass
class HebbianParams:
"""Parameters for Hebbian plasticity."""
learning_rate: float = 0.001
decay: float = 0.2
stdp_ltp_rate: float = 0.001
stdp_ltd_rate: float = 0.001
stdp_tau_plus: float = 0.020 # s
stdp_tau_minus: float = 0.020 # s
# ============================================================================
# Sensory transduction
# ============================================================================
[docs]
@dataclass
class PhotoreceptorParams:
"""Naka‑Rushton photoreceptor model parameters."""
R_max: float = 100.0 # Hz
I50: float = 100.0 # cd/m²
n: float = 1.0
tau_p: float = 0.020 # s
alpha_adapt: float = 0.1 # s⁻¹
[docs]
@dataclass
class HairCellParams:
"""Hair cell Boltzmann transduction parameters."""
g_max: float = 5e-9 # S
z: float = 0.2 # pN⁻¹
x0: float = 0.0 # nm
tau_fast: float = 0.002 # s
tau_slow: float = 0.050 # s
# ============================================================================
# Quantum field propagation (QFT)
# ============================================================================
[docs]
@dataclass
class QFTParams:
"""Parameters for Klein‑Gordon and Dirac field solvers."""
mass_scalar: float = 0.5 # natural units
mass_dirac: float = 0.5 # natural units
dx: float = 0.05 # spatial step (natural units)
courant_factor: float = 0.707 # 1/√2 for 2D stability
# ============================================================================
# Additional realism enhancements (2D neural fields, FDTD, pattern completion,
# entanglement)
# ============================================================================
[docs]
@dataclass
class NeuralFieldParams:
"""2D neural field lateral connectivity parameters."""
A_e: float = 1.0
sigma_e: float = 0.5 # mm
A_i: float = 0.8
sigma_i: float = 1.5 # mm
dx: float = 0.5 # mm (cortical column spacing)
[docs]
@dataclass
class FDTDParams:
"""Biological tissue dielectric properties for FDTD."""
tissue_type: str = "gray_matter"
frequency: float = 1e9 # Hz
eps_r_gray: float = 52.0
sigma_gray: float = 0.98 # S/m
eps_r_white: float = 38.0
sigma_white: float = 0.60 # S/m
[docs]
@dataclass
class PatternCompletionParams:
"""Olfactory/gustatory network parameters."""
n_glomeruli: int = 8000 # human young adult
n_mitral_cells: int = 40000
n_piriform_neurons: int = 20000000 # estimated human
tau_a: float = 0.020 # s (neural time constant)
pattern_sparsity: float = 0.1
learning_rate: float = 0.001
[docs]
@dataclass
class EntanglementParams:
"""Quantum optical parameters for entanglement measures."""
squeezing_r: float = 0.5
squeezing_theta: float = 0.0
thermal_nbar: float = 0.05
coherence_length: float = 1.0
# ============================================================================
# Priorities 1‑4: Thermodynamics, pattern formation, impression formation,
# LADDER coupling, branch decoherence
# ============================================================================
[docs]
@dataclass
class ThermodynamicParams:
"""Parameters for free energy and entropy (Priority 1)."""
T_eff: float = 1.0 # dimensionless
k_eff: float = 1.0 # dimensionless
eta: float = 0.01 # learning rate (temperature)
gamma0: float = 0.001 # s⁻¹ (base decay rate)
[docs]
@dataclass
class ImpressionParams:
"""Memory consolidation and emotional parameters (Priority 3)."""
eta_STP: float = 0.1
eta_LTP: float = 0.02 # s⁻¹
gamma_forget: float = 0.001 # s⁻¹
kappa_emo: float = 2.0
beta_rep: float = 0.5
[docs]
@dataclass
class LadderCouplingParams:
"""Cross‑level coupling (LADDER) parameters (Priority 4)."""
K0: float = 0.1
l_decay: float = 1.0 # level units
L_min: int = 7
L_max: int = 10
[docs]
@dataclass
class DecoherenceParams:
"""Branch decoherence parameters (Priority 4)."""
gamma_dec0: float = 0.1 # s⁻¹
kappa_env: float = 0.01
theta_branch: float = 0.7
# ============================================================================
# Helper functions
# ============================================================================
[docs]
def get_all_parameters() -> Dict[str, Any]:
"""Return all empirical parameters as a dictionary."""
return {
"wilson_cowan": WilsonCowanParams().__dict__,
"jansen_rit": JansenRitParams().__dict__,
"hopf": HopfParams().__dict__,
"kuramoto": KuramotoParams().__dict__,
"hebbian": HebbianParams().__dict__,
"photoreceptor": PhotoreceptorParams().__dict__,
"hair_cell": HairCellParams().__dict__,
"qft": QFTParams().__dict__,
"neural_field": NeuralFieldParams().__dict__,
"fdtd": FDTDParams().__dict__,
"pattern_completion": PatternCompletionParams().__dict__,
"entanglement": EntanglementParams().__dict__,
"thermodynamic": ThermodynamicParams().__dict__,
"pattern_formation": PatternFormationParams().__dict__,
"impression": ImpressionParams().__dict__,
"ladder_coupling": LadderCouplingParams().__dict__,
"decoherence": DecoherenceParams().__dict__,
}