MindCopy — Software Platform for Biologically Realistic Neural Network Modeling

MindCopy — a software platform for biologically realistic neural network simulation

Date: June 23, 2026 Author: Feshin V. A.


Abstract

MindCopy is an integrated software platform for building, visualizing, and simulating biologically realistic neural networks with compartmental (segmental) morphology. The platform includes the computational core (BioNeuronCore), a visual modeling environment (BioNeuronStudio), a plugin development toolkit (BioNeuronSDK), and an automated testing platform (StudioTestBench). It supports CPU and GPU execution (Intel SYCL/oneAPI DPC++), the BION v6 binary format, 121 types of transmembrane modifiers, a library of 224 neuron types (24 tadpole Xenopus laevis + 200 human), 14 neurotransmitters, 5 ions, and 36 nuclear regulation genes. All ionic currents are computed using the Goldman-Hodgkin-Katz (GHK) formalism. The system provides a complete cycle: from embryonic connectome development to behavioral responses (chemotaxis, phototaxis, audiotaxis, vestibular reflexes, electro-/magnetoreception).

Keywords: computational neuroscience, compartmental modeling, GHK formalism, GPU simulation, SYCL, neural network, connectome, tadpole, CPG, neuromodulation, STDP, BION format.


1. Introduction

Modern computational neuroscience requires tools capable of simulating networks of thousands of neurons with detailed biophysics of each segment, while preserving interactive visualization and experimental protocoling. The MindCopy platform was created to fill this gap — it combines a high-performance simulation core, a scientific GUI, and a plugin ecosystem into a unified environment.

1.1. Motivation

Most existing simulators (NEURON, NEST, Brian) are oriented either toward detailed modeling of single neurons or toward large-scale networks with simplified dynamics. MindCopy occupies an intermediate niche: a full biophysical segmental model with 121 types of ion channels/receptors/pumps on networks of up to 10⁴ neurons and 10⁵ segments with interactive 3D visualization.

1.2. Platform Components

Component Version Purpose
BioNeuronCore v0.19.3 Computational core: C++17 + SYCL 2020, GHK currents, diffusion, plasticity, IPC daemon, batch mode
BioNeuronStudio v0.38.4 GUI: OpenGL 3.3 + Dear ImGui, 3D viewport, graphs, experiment recording, IPC client
BioNeuronSDK v0.6.0 Plugin toolkit: plugin-devkit.h, dispatch generator, CMake modules
BioNeuronOrchestrator v0.4.0 Distributed computing: REST API, parameter sweep, evolution, screening, ontogenesis, volunteer dashboard
StudioTestBench v0.3.1 Automated testing: 350+ tests, fuzzing, valgrind
examples 16 educational experiments (.bexp) with trilingual READMEs (RU+EN+ZH)

2. System Architecture

2.1. Architecture Schematic

BioNeuronStudio (GUI, OpenGL 3.3, Dear ImGui)
    │  simulation_core_api.h — opaque C API (void*) or IPC transport
    ▼
BioNeuronCore (libbiocore_gcc.a / libbiocore_gpu_backend.so / biocore-daemon --batch)
    │  plugin-devkit.h — loading .so plugins via dlopen
    ▼
BioNeuronSDK (generators, templates, CMake modules)

BioNeuronOrchestrator (REST API, parameter sweep, evolution, screening, ontogenesis, leaderboard)
    │  distributed computing management (6 stages)
    ▼
BioNeuronAgent (client agent on compute nodes)

Key architectural principle — complete isolation of types between Studio and Core. Studio never includes Core headers directly; all interaction is through simulation_core_api.h, which exposes only opaque pointers (void*) and accessor functions. This prevents binary coupling and enables independent evolution of both projects.

2.2. Computational Core (BioNeuronCore)

Language: C++17 + SYCL 2020 (Intel oneAPI DPC++) Build: GCC (CPU, libbiocore_gcc.a) and Intel DPC++ (GPU, libbiocore_gpu_backend.so) Data model: POD (Plain Old Data), #pragma pack(1), fixed arrays — GPU/USM compatibility

Simulation Cycle (5 Steps per Tick)

Each call to run_tick(dt) executes five sequential steps with explicit q.wait() barriers:

  1. Modifier currentsI_buffer per-segment (CPU or GPU dispatch)
  2. Axial currents through IntraConnection → atomic accumulation in I_buffer 2.5. Intersegmental diffusion: ions, neurotransmitters, ATP, temperature, transcription signal — Fick's law, O(N_conn), CPU
  3. Synaptic currents: spike → release → modulation → post-response → clearance
  4. Membrane potential update: V_m += I_buffer / C_m · dt, reset I_buffer

Dual CPU/GPU Dispatcher

  • CPU: function pointer table modifier_current_table[128], loaded from .so plugins via dlopen. Does not require Core recompilation when adding modifiers.
  • GPU: switch-statement over 121 cases (SYCL does not support function pointers). Requires recompilation.
  • Fallback chain: CPU path → plugin table → biological fallback (compiled switch).

BION v6 Format

Binary neural network format. Packed structures with #pragma pack(1):

Structure Size Purpose
NetworkHeader 84 bytes Version, element counts, v5+: num_nuclei
Segment 988 bytes Geometry, V_m, 5+5 ions, 14 NTs, 16 modifiers, ATP
Modifier 44 bytes Type, density, state[8], flags
Synapse 824 bytes pre/post ID, receptors, cleft_nt[14], weight, delay
Nucleus 332 bytes 36 genes (gene_activity + protein_level), v5→v6 migration
IntraConnection 12 bytes Segment-to-segment
Neuron 24 bytes Identifier, flags
ConsolidationEvent 36 bytes Consolidation data

Backward compatibility: v3→v4→v5→v6 with on-the-fly migration at load time.

2.3. Graphical Studio (BioNeuronStudio)

Frameworks: OpenGL 3.3 Core, Dear ImGui (docking), ImGuizmo, ImPlot Language: C++17 Localization: Russian, English, Chinese (i18n JSON)

Main Panels and Windows

Component Functionality
3D viewport Orbital camera, capped cylinders + end discs, frustum-joints (smoothing transitions between segments of different radii), ray-cast selection, ImGuizmo (translate/rotate), spike highlighting
Assembly panel Segment creation (soma, dendrite, axon, bouton, spine), network templates, CPG template
Properties panel V_m, geometry, modifiers, synaptic receptors, connected segments
Network hierarchy Tree: Network → Neurons → Segments → Modifiers + Synapses, context menus, drag-and-drop
Plots (ImPlot) V_m, ions, spike raster, ionic/synaptic currents, ring buffer 10000 points, CSV export
Specimens panel Tadpole generation (7 Roberts 2014 rules), ontogenesis, sensory layer, 3D body
Converter SWC→BION, morphology metrics, segment length configuration
Cell library 224 neuron types with preset biophysical profiles
Stimulation I_clamp, voltage clamp, ramp, ionic/ligand injections
Probes Cannulae and electrodes: recording/stimulation/injection, 3D visualization
Experiments Recording/playback in .bexp (JSON header + binary frames), browser, player
NeuroML NeuroML v2 import/export: cell/morphology, biophysicalProperties, projection
Histology 3 modes (actual/minimalistic/biological 1:1), N/C ratio from morphology, nucleoli, Nissl substance, 4 stains
Video recording AVI: uncompressed / MJPEG, asynchronous frame generation
Updates Online check via API (AES-256-GCM) + local source (.deb/.rpm/.AppImage/.so)

Simulation Bridge (SimulationBridge)

  • Three modes: CPU (static link), GPU (dlopen), IPC (Unix socket/TCP to daemon)
  • Thread safety: mutex, snapshot copying into NetworkSnapshot for GUI
  • Checkpoints: save/load simulation state
  • USM pointers: GPU Unified Shared Memory accessible from CPU without changes
  • Multi-session: session isolation via SessionContext, independent simulations on GPU

2.4. Distributed Computing Orchestrator (BioNeuronOrchestrator)

HTTP server (libmicrohttpd) + client agent (libcurl). Provides distributed task execution across multiple compute nodes. Implemented as 6 sequential stages, each with full test coverage.

Orchestrator Architecture

  • Orchestrator Server (C++17, libmicrohttpd): REST API, priority task queue, persistence via MySQL/MariaDB (IDatabase+MockDatabase for testing without a DB)
  • BioNeuron Agent: lightweight client on compute nodes, receives tasks, launches Core daemon in batch mode (--batch --load-bion --ticks --params-json --seed), reports results
  • Cryptography: AES-256-GCM encryption, ECDSA-P256 signature, PBKDF2 key derivation (OpenSSL)
  • Validation: JSON parser with range checks, hex validation (SHA-256), URL and path verification
  • Logging: rotation by size (10 MB) and file count (5), macros OLOG_INFO/WARN/ERROR, format [timestamp] [LEVEL] message
  • Dashboard: dynamic node and task tables from DB, status badges, auto-refresh

Stage 1: Parameter Sweep (batch mode)

Parametric sweep: one BION network × N parameter combinations. The orchestrator generates sub_jobs by enumerating values (linear and logarithmic scale), agents receive .bion + params_json → Core daemon in batch mode → .bexp + metrics. Core daemon supports --batch, --params-json, --seed, --bexp-output. IPC message MSG_RUN_TASK_PARAMS (0x090A).

Stage 2: Memory Check + Tiered Execution

Before assigning a task, the node's capabilities (RAM, GPU memory, CPU cores) are verified against the task requirements. The agent reads /proc/meminfo → registers NodeCapabilities. Core supports mmap allocation (MAP_PRIVATE | MAP_ANONYMOUS) with madvise hints and HOT/WARM/COLD segment classification (shadow validation: tiered execution disabled by default, all computations — full biophysical tick).

Stage 3: Duplication + Validation

Each sub_job is assigned to 2 independent agents. Results are compared by metrics (mean V_m across populations, spike count, synchrony index) with a 0.1% tolerance. On divergence, a third agent is assigned — majority vote. Statuses: TASK_PARTIALLY_VALIDATED → TASK_FULLY_VALIDATED / TASK_DIVERGENT.

Stage 4: Evolutionary Optimization + Virtual Screening

Genetic algorithm (tournament selection, single-point crossover, Gaussian mutation, elite 10%, tournament size 3, early-stop convergence) over the network parameter space. Virtual screening of compound libraries — each molecule → sub_job → ranking by efficacy score.

Stage 5: Ontogenesis + Connectome Exploration

Long tasks with checkpoints. Core: MSG_CHECKPOINT_AND_CONTINUE (0x0804), graceful shutdown (SIGTERM → checkpoint → exit(75)). Ontogenesis: 4-stage chain (EARLY_TAILBUD → … → FREE_SWIMMING). Connectome: LHS sampling (Latin Hypercube Sampling) of the synaptic matrix.

Stage 6: Volunteer Dashboard

Public leaderboard (GET /api/v1/leaderboard?limit=100), personal volunteer statistics, points system (base_points = ticks/1000 × capability_multiplier), badges: "First Contribution", "10 Tasks", "100K Ticks", "1M Ticks", "Validated", "Ontogeny Pioneer", "Evolution Master", "7-Day Streak". Trilingual interface (RU+EN+ZH).

API

POST   /api/v1/node/register        — register node with capabilities
POST   /api/v1/task/claim           — request sub_job
POST   /api/v1/task/result          — submit result with metrics
POST   /api/v1/task/heartbeat       — heartbeat with CPU/GPU/memory metrics
GET    /api/v1/task/status/:id      — task status
POST   /api/v1/task/create_sweep    — create parameter sweep
POST   /api/v1/task/create_evolution — create evolutionary run
POST   /api/v1/task/create_screening — create virtual screening
POST   /api/v1/task/create_experiment — create experiment (.bexp)
GET    /api/v1/leaderboard          — leaderboard (public)
GET    /api/v1/volunteer/:id/stats   — volunteer statistics (public)

2.5. Plugin Toolkit (BioNeuronSDK)

  • plugin-devkit.h — self-contained header (POD types, constants, API, macros, helpers)
  • biocore-gen-dispatch.py — Python generator for GPU/SYCL dispatch code from .desc descriptors
  • biocore-plugin.cmake — CMake module for building .so plugins (GCC) and dispatch generation
  • User-defined types: IDs 121–127 (built-in: 0–120)
  • Dual dispatcher: CPU via function pointers from .so, GPU via compiled switch

2.6. Testing Platform (StudioTestBench)

350+ tests: unit (Core 32/32), integration (Orch 16/16, SDK 6/6), component (Studio 214), E2E, regression, smoke, performance, security (fuzzing), chaos, visual regression. 70 JSON parser + logging tests. 7 daemon multi-threaded isolation tests (daemon multi-session validation). Valgrind validation (0 errors). MockDatabase for orchestrator testing without MySQL. Full run: ~30 minutes.


3. Biophysical Model

3.1. Segmental-Compartmental Architecture

Each neuron is represented as a chain of independent electrical compartments (segments), connected by intracellular links (IntraConnection). A segment of 988 bytes contains:

  • Geometry: position (x, y, z), length, radius → membrane area → capacitance (C_m = 0.01 pF/µm²)
  • Electrical: V_m (mV), I_buffer
  • Ion concentrations: 5 intracellular + 5 extracellular (Na⁺, K⁺, Ca²⁺, Cl⁻, Mg²⁺)
  • Neurotransmitters: 14 types in the extracellular space (cleft)
  • Modifiers: up to 16 transmembrane proteins per segment
  • Metabolism: ATP, temperature
  • Plasticity: transcription_signal (CREB-dependent)

3.2. Hybrid HH+GHK: gate kinetics — Hodgkin-Huxley, current — Goldman-Hodgkin-Katz

The MindCopy platform employs a hybrid approach, separating the gating mechanism kinetics from the ionic current equation:

  • Gate kinetics (Hodgkin-Huxley, HH): activation (m) and inactivation (h) variables are described by first-order differential equations: \[\frac{dm}{dt} = \alpha_m(V) \cdot (1 - m) - \beta_m(V) \cdot m, \quad \frac{dh}{dt} = \alpha_h(V) \cdot (1 - h) - \beta_h(V) \cdot h\] where α(V) and β(V) are voltage-dependent transition rates between states. HH kinetics is implemented in 59 built-in plugins (hh_biological.cpp).

  • Current equation (Goldman-Hodgkin-Katz, GHK): instead of the classical linear approximation I = g·(V − E_rev), the electro-diffusion GHK equation is used: \[I_{ion} = P_{ion} \cdot m^p \cdot h^q \cdot z^2 \cdot \frac{VF^2}{RT} \cdot \frac{[ion]_i - [ion]_o \cdot e^{-zVF/RT}}{1 - e^{-zVF/RT}}\] where P_ion is the maximum permeability, z is the valence, F is the Faraday constant, R is the gas constant, T is the temperature.

Fundamental difference from classical HH: in the standard Hodgkin-Huxley model, the reversal potential E_rev is set to a constant (e.g., E_Na = +50 mV), and the current is computed as I = g_max · m³h · (V − E_rev). This approximation is valid only at constant ion concentrations. In MindCopy, E_rev is never set to a constant — it is computed dynamically from the actual intra- and extracellular concentrations using the Nernst equation: \[E_{rev} = \frac{RT}{zF} \ln\frac{[ion]_o}{[ion]_i}\]

Thus, HH answers "when it opens", GHK answers "how much passes". This is particularly critical for Ca²⁺ and Mg²⁺, whose concentrations change by orders of magnitude during a simulation.

Advantages of the hybrid approach: - Automatic reversal potential: E_rev is recalculated each tick from current concentrations - Direct ion movement: Ca²⁺, Mg²⁺ enter/exit proportionally to the GHK current, changing intracellular concentrations - Secondary effects: accumulation of K⁺ in the cleft or depletion of Ca²⁺ from the ER changes the driving force of subsequent currents - Thermodynamic consistency: the GHK equation is derived from the Nernst-Planck equation, not postulated

All 121 modifier types have been migrated to GHK (v0.15.0). There are no hardcoded E_rev in the system.

3.3. Diffusion (Fick's Law)

Intersegmental diffusion for ions, neurotransmitters, and metabolites:

\[J = -D \cdot \frac{A}{L} \cdot \Delta C\]

where D is the diffusion coefficient (Stokes-Einstein: D = kT/(6πηr)), A/L is the geometric factor of the segment, ΔC is the concentration gradient.

3.4. Synaptic Transmission

  • Chemical synapses: presynaptic spike → neurotransmitter release into the cleft (cleft_nt[NT]) → activation of postsynaptic receptors → postsynaptic current → clearance (tau_clearance)
  • Electrical synapses (gap junctions): V_j-gate (Boltzmann) + Ca²⁺/CaM-gate (Hill), connexin-36 (MOD_CONNEXIN_CX36)
  • Presynaptic modulators: 12 types, GPCR cascades, modulation of release probability
  • Probabilistic release: xorshift32, seed = synapse_id ⊕ tick ⊕ (V_m · 1000)

3.5. Molecular Plasticity

  • STDP (Spike-Timing-Dependent Plasticity): CaMKII (LTP) / Calcineurin (LTD) — calcium coincidence detector
  • BCM rule: sliding threshold θ_m (Ca²⁺-dependent)
  • PP1/DARPP-32: dopamine-dependent modulation of plasticity (D1→PKA→inhibit PP1→LTP↑)
  • Consolidation: MAPK/ERK, IKK/NF-kB, mTORC1, protein synthesis, Cofilin (actin remodeling), MMP-9 (ECM degradation) — 6 events
  • Gene expression: 36 genes, transcription factors → channels, BION v6

3.6. Homeostasis

  • PMCA: Ca²⁺-ATPase of the plasma membrane
  • NCX: Na⁺/Ca²⁺ exchanger (3:1 stoichiometry)
  • KCC2: K⁺-Cl⁻ cotransporter (stage-dependent)
  • Na/K-ATPase: 3Na⁺/2K⁺, gradient maintenance
  • Ca²⁺-buffer: parvalbumin-like (fast/slow pools)

4. Modifier Catalog (121 types)

Group 1: Basic (0–7)

Ionotropic channels (Na/K, Ca, Cl), metabotropic GPCR, myelin, synaptic release, physical sensor, Na/K pump.

Group 2: Ionotropic Receptors (8–16)

AMPA, NMDA, kainate, GABA-A, glycine, nicotinic, 5-HT3, P2X, TRPV1.

Group 3: Metabotropic Gi/o (17–40) — 24 types

GABA-B, 5-HT1(A/B/D/F), D2/D3/D4, M2/M4, A1/A3, mGluR(2/3/4/6/7/8), α2, CB1/CB2, H3, MT1/MT2. Inhibitory: ↓cAMP, ↑K⁺ conductance (GIRK), ↓Ca²⁺ currents.

Group 4: Metabotropic Gs (41–51) — 11 types

5-HT(4/6/7), D1/D5, A2A/A2B, β1/β2, H2, TAAR1. Excitatory: ↑cAMP → PKA → ↑Ca²⁺/Na⁺ currents.

Group 5: Metabotropic Gq/11 (52–62) — 11 types

5-HT2(A/B/C), α1A/α1B, M1/M3/M5, mGluR1/mGluR5, H1. Excitatory: ↑IP3/DAG → ↑Ca²⁺ (from ER) + ↑PKC.

Group 6: Neuroblox-Compatible (63–79) — 17 types

Extended biophysical models: MoradiFullNMDAR, AMPA-STA, D1/D2 MSN modulators, α7-nAChR (Markov), TRPM4 (I_CAN), muscarinic (I_NCM), Destexhe oscillators (AMPA/NMDA/GABA-A/GABA-B), MsnNMDAR/AMPAR, mitochondrial ATP, thermal, CREB transcription.

Group 7: Generic (80–81) — 2 types

Parametric: state[] specifies V₁/₂, k, τ, g (voltage-dependent) or EC₅₀, g, τ (ligand-dependent). Import from NeuroML.

Group 8: Molecular STDP (82–86) — 5 types

CaMKII, Calcineurin, Cav1.x L-type, Kv4.2 A-type K⁺, eCB synthesis (2-AG).

Group 9: Consolidation (87–92) — 6 types

MAPK/ERK, IKK/NF-kB, mTORC1, protein synthesis, Cofilin, MMP-9.

Group 10: Sensors and CPG (93–95) — 3 types

Post-inhibitory rebound (PIR), hunger sensor (ATP), photoreceptor (pineal).

Group 11: PIR Subtypes (96–97) — 2 types

Cav3.x T-type Ca²⁺, HCN Ih.

Group 12: Homeostasis (98–102) — 5 types

PMCA, NCX, KCC2, Ca²⁺ leak, Ca²⁺ buffer.

Group 13: Rhythmogenesis and Specialized Channels (103–120) — 18 types

SK, BK, NaP, Kir, K2P, olfactory receptor, Kir4.1 glial, glial Na/K-ATPase, thermal noise (Johnson-Nyquist), Kv7 M-current, PP1/DARPP-32, Connexin-36, vibration sensor, otolith hair cell, semicircular canal, ampullary electroreceptor, magnetite mechanoreceptor, cryptochrome magnetic sensor.


5. Neurotransmitters (14 types)

ID Name Type
0 Glutamate Excitatory
1 GABA Inhibitory
2 Dopamine Neuromodulator
3 Serotonin (5-HT) Neuromodulator
4 Acetylcholine Excitatory/modulator
5 Adenosine Neuromodulator
6 Noradrenaline Neuromodulator
7 Glycine Inhibitory
8 Histamine Neuromodulator
9 Endocannabinoid Retrograde
10 ATP Neuromodulator
11 Melatonin Neuromodulator
12 Mg²⁺ NMDA blocker
13 Nicotine nAChR agonist

6. Ions (5 types)

Na⁺, K⁺, Ca²⁺, Cl⁻, Mg²⁺. Each segment tracks intra- and extracellular concentrations. Diffusion between segments. Ionic currents via GHK automatically update concentrations.


7. Neuron Library (224 types)

7.1. Tadpole Xenopus laevis (24 types)

Sensory (8): RB (Rohon-Beard, tactile), PINEAL (photoreceptor), LL (lateral line, flow), ORN (olfactory), AUDITORY_SENSOR (vibration), OTOLITH (gravity), SEMICIRCULAR (angular acceleration), ELECTRORECEPTOR (E-field).

Interneurons (7): dIN (descending, CPG rhythm driver), cIN (commissural, cross-inhibition), aIN (ascending, GABAergic), dlc_MHR (brainstem, locomotor drive), TECTUM (visual integration), DS_IN (direction-selective lateral inhibition), SER (orexinergic, seeking).

Motor (1): mn (motoneuron).

Command (1): AVOID (reticulospinal escape, Mauthner-like).

Modulatory (1): HYPOTHALAMIC (interoceptive, hunger).

Glia (2): GLIA_RADIAL (radial, K⁺ buffer), Ependymal cell.

Additional (4): Kolmer-Agduhr cell (CSF-c), Skin touch receptor, Muscle spindle afferent, MAGNETORECEPTOR.

7.2. Human (200 types by category)

Category Count Key representatives
Cerebral cortex 14 Pyramidal (L2/3, L5, L6), interneurons (PV, SST, VIP), stellate, fusiform
Cerebellum 12 Purkinje, granule, Golgi, basket, stellate, deep cerebellar nuclei
Hippocampus/Entorhinal cortex/Subiculum 9 Pyramidal CA1/CA3, granule DG, interneurons, subicular
Thalamus 8 Relay (LGN, MGN, VPL/VPM), reticular, intralaminar
Basal ganglia 7 MSN D1/D2 (medium spiny), cholinergic, PV interneurons
Brainstem 17 Monoaminergic (D RN, 5-HT RN, LC NE), reticular formation, raphe nuclei, PAG
Cranial nerves 11 III (oculomotor), V (trigeminal), VII (facial), VIII (vestibulocochlear), X (vagus)
Spinal cord 14 α-motoneurons, γ-motoneurons, interneurons (Ia, Ib, II), Renshaw
Retina 15 Photoreceptors (rods, L/M/S cones), bipolar (ON/OFF), ganglion (midget, parasol, ipRGC), horizontal, amacrine
Olfactory bulb 4 Mitral, granule, periglomerular
Hypothalamus 14 Orexin, MCH, vasopressin, oxytocin, GnRH, TRH, CRH, somatostatin, dopaminergic TIDA
Amygdala 3 Pyramidal BLA, central CeA
Limbic system 4 Nucleus accumbens (NAc MSN), septal, cingulate cortex
Glia 11 Astrocytes, oligodendrocytes, microglia, NG2⁺ precursors, ependymocytes, radial glia, Muller glia, Bergmann glia
Autonomic/Enteric 8 Sympathetic/parasympathetic pre-/postganglionic, enteric (Auerbach/Meissner plexus)
Auditory/Vestibular 10 Hair cells (cochlea, sacculus, utricle), spiral ganglion, Scarpa ganglion
Sensory 8 Nociceptors, thermoreceptors, mechanoreceptors (Merkel, Meissner, Ruffini, Pacini), proprioceptors
Metabolic/Endocrine 9 Pancreatic β-cells, α-cells, melatonin (pinealocytes), thyrocytes, adrenocorticocytes
Pituitary 5 Gonadotrophs, lactotrophs, somatotrophs, corticotrophs, thyrotrophs
Vascular 2 Endothelial, smooth muscle
Neuromodulatory 5+ Dopaminergic (SNc, VTA), serotonergic (Raphe), noradrenergic (LC), cholinergic (BF), histaminergic (TMN)
Striatum 5 MSN D1 direct pathway, MSN D2 indirect pathway, FSI, ChAT, Pvalb
Diencephalon 3 Epithalamus (habenula), subthalamus

8. Tadpole Connectome: in silico Embryogenesis

Implemented 7 rules of Roberts (Roberts et al., 2014) for generating the connectome of the Xenopus laevis tadpole (4 stages: EARLY_TAILBUD → LATE_TAILBUD → HATCHING → FREE_SWIMMING):

  1. Neuron differentiation: soma at a specified dorsoventral/rostral position
  2. Axon growth: directed growth with environmental barriers
  3. Axon branching: probabilistic, depends on neuron type
  4. Synapse formation: spontaneous + probabilistic matrix 10×10
  5. CPG circuit: guaranteed cross-inhibitory connections (cIN↔dIN glycine + GABA-B), asymmetric kickstart
  6. Glia: radial glia, syncytium, K⁺ spatial buffering (Kir4.1)
  7. STDP/consolidation: plasticity assignment, reinforcement of functional connections

Network parameters at the FREE_SWIMMING stage: ~238 neurons, ~5000 segments, ~28000 connections, ~7400 synapses.


9. Behavioral Taxes

9.1. Chemotaxis

SER neuron (orexinergic) + ORN → klinotaxis (swim_phase → nostril_offset ±40%). Concentration gradient → CPG asymmetry → turn toward source.

9.2. Phototaxis

TECTUM → AVOID (GABA, w=3.0, avoidance inhibition). Shadow → TECTUM drops → AVOID disinhibited → C-turn. AVOID → contra-dIN (AMPA, w=2.0) + AVOID → ipsi-cIN (AMPA, w=1.5).

9.3. Audiotaxis

AUDITORY_SENSOR=15, MOD_VIBRATION_SENSOR=115. Vibration/sound → mechanotransduction → CPG asymmetry.

9.4. Vestibular Apparatus

OTOLITH=16 (gravity + linear acceleration), SEMICIRCULAR=17 (angular acceleration). MET channels → Ca²⁺ adaptation.

9.5. Electroreception

MOD_ELECTRORECEPTOR_AMPULLARY=118: ampullae of Lorenzini, gel channel, low-pass filter, E-field.

9.6. Magnetoreception

MOD_MAGNETITE_MECHANORECEPTOR=119 (Fe₃O₄ chains → torque → MET) + MOD_CRYPTOCHROME_MAGNETIC=120 (Cry4, radical pairs, light-dependent).


10. Educational Experiments

The platform includes a package of 16 educational experiments in .bexp format, distributed across three levels:

Bachelor (4): action_potential (action potential — HH Na⁺/K⁺ channels, threshold, refractoriness), passive_cable (passive cable — λ and τ, signal attenuation), synaptic_integration (synaptic integration — EPSP/IPSP, temporal and spatial summation), lateral_inhibition (lateral inhibition — GABA-A, contrast enhancement).

Master (8): motion_detection (motion detection — delayed inhibition), direction_selective (directional selectivity — Barlow-Levick DS), cpg_rhythm (CPG rhythm — half-center, GABA-B/Glycine), working_memory (working memory — mutual inhibition), receptive_field (receptive field — center-surround), stdp_ltp (STDP long-term potentiation — CaMKII), stdp_ltd (STDP long-term depression — Calcineurin), stdp_learning (STDP learning — noisy input, synaptic competition).

Doctoral (4): epileptiform (epileptiform activity — ↑[K⁺]ₒ + GABA-A block), pharmacology (pharmacology — channel blockers and agonists), homeostatic_plasticity (homeostatic plasticity — PMCA/NCX/KCC2, sliding BCM threshold), bifurcations (bifurcations — bifurcation of neuronal dynamics under g_Na variation).

Each experiment is accompanied by a README in three languages (Russian, English, Chinese) with a theoretical introduction, a description of biophysical mechanisms, and a step-by-step protocol. All experiments are performed without surrogates — via the full biophysical tick core_run_tick_impl (HH gate kinetics + GHK currents + diffusion + plasticity).


11. Glossary

BION (Binary Neuronal Object Notation) — binary file format for storing neural networks. Compact representation with #pragma pack(1). Version 6.

CPG (Central Pattern Generator) — a central rhythm generator. A neural circuit producing a rhythmic motor pattern (swimming) without sensory feedback.

GHK (Goldman-Hodgkin-Katz) — formalism for computing ionic currents across a membrane. Accounts for actual ion concentrations, valence, and temperature. Replaces the simplified I = g·(V − E_rev).

HH (Hodgkin-Huxley) — kinetic model of voltage-dependent gating of ion channels. Gate variables m (activation), h (inactivation) are described by first-order differential equations. In MindCopy, HH kinetics determines "when the channel is open" (m^p · h^q), while the ionic current itself is computed via the GHK equation, not the classical I = g·(V − E_rev). Hybrid HH+GHK: kinetics from HH, conductance from GHK.

Modifier — a transmembrane protein added to a segment. It can be an ion channel, receptor, pump, exchanger, sensor, or signaling cascade component. Specified by type (0–120) and density (density ∈ [0,1]). Structure size: 44 bytes.

Neurotransmitter — a chemical substance in the synaptic cleft that activates postsynaptic receptors. 14 types: glutamate, GABA, dopamine, serotonin, acetylcholine, adenosine, noradrenaline, glycine, histamine, endocannabinoid, ATP, melatonin, Mg²⁺, nicotine.

Segment — an electrical compartment of a neuron. A cylinder with length and radius. Can be a soma, dendrite, axon, presynaptic specialization (bouton), or postsynaptic specialization (spine). The basic unit of simulation. 988 bytes.

Synapse — a contact between segments (chemical, electrical). Chemical synapses pass through PRE/POSTSYNAPSE specializations (bouton → spine). 824 bytes.

STDP (Spike-Timing-Dependent Plasticity) — plasticity dependent on the temporal order of spikes. Pre-before-post → LTP (CaMKII); post-before-pre → LTD (Calcineurin).

PIR (Post-Inhibitory Rebound) — post-inhibitory rebound. After strong hyperpolarization, T-type Ca²⁺ channels (Cav3.x) de-inactivate and open, producing a depolarizing "rebound".

IntraConnection — an intracellular connection between two segments of a single neuron. Transmits axial currents.

SYCL — a cross-platform standard for parallel programming (Khronos Group). MindCopy uses the Intel oneAPI DPC++ implementation for GPU acceleration.

USM (Unified Shared Memory) — unified CPU/GPU memory in SYCL. Pointers are accessible from both devices without explicit copying.

.bexp — binary experiment recording format. JSON header (metadata, probe configuration) + binary frames (per-segment V_m, ions, NTs).

.desc — JSON plugin descriptor. Contains id, name, category, description, release (presynaptic modulator flag).

POD (Plain Old Data) — a data structure without virtual functions, pointers, or dynamic memory. Compatible with SYCL/USM and FPGA HLS.


12. Technical Specifications

Parameter Value
Core language C++17 + SYCL 2020
Studio language C++17
Graphics OpenGL 3.3 Core, Dear ImGui (docking), ImGuizmo, ImPlot
Build CMake, GCC (CPU), Intel DPC++ (GPU)
Platform Linux x86-64
GPU Intel GPU (Intel oneAPI), NVIDIA/AMD support via SYCL
FPGA Compatibility with Vitis HLS (POD, no new/malloc, minimal branching)
Localization Russian, English, 中文 (i18n JSON)
Comments In Russian, identifiers — English
Network format BION v6 (binary, #pragma pack(1))
Experiment format .bexp (JSON + binary frames)
NeuroML v2 import/export
SWC Import/export (ASCII, 7 columns)
Video AVI (uncompressed / MJPEG), asynchronous generation
Updates HTTPS API + AES-256-GCM + local .deb/.rpm/.AppImage/.so
Testing 350+ tests (Core 32, Orch 16, SDK 6, Studio 214, remainder — TestBench), Valgrind 0, fuzzing, CI
Batch mode Core daemon –batch: headless simulation without GUI, –params-json, –seed, –bexp-output
Checkpoints Auto-save every N ticks, –resume-from, graceful shutdown (SIGTERM)
Experiments 16 educational .bexp (Bachelor/Master/Doctoral), README in RU+EN+ZH
Distributed computing 6 stages: sweep, memory, validation, evolution, ontogenesis, dashboard
Licensing ECDSA-P256 offline key + online verification (AES-256-GCM)

13. Conclusion

The MindCopy platform provides a complete toolkit for computational neuroscience — from molecular mechanisms (HH gate kinetics, GHK currents, STDP, gene expression) to behavioral responses (taxes) in a single integrated environment. The modular architecture (Core ↔ Studio ↔ SDK ↔ Orchestrator) enables independent development of the computational core, graphical interface, plugin ecosystem, and distributed computing infrastructure.

The 6-stage distributed architecture (parameter sweep, memory check, duplication with validation, evolutionary optimization, ontogenesis with checkpoints, volunteer dashboard) enables scaling simulations across many compute nodes — from volunteers' home PCs to server clusters. The package of 16 educational experiments with trilingual documentation (RU+EN+ZH) provides a smooth entry point into the platform — from basic neuroscience concepts to advanced research protocols.

224 neuron types, 121 modifiers, 14 neurotransmitters, 36 genes, and 5 ions provide detailed biophysical modeling, validated by Valgrind analysis (0 memory errors) and 350+ automated tests. All computations go through a full biophysical tick: HH kinetics determines "when the channel is open", the GHK equation — "how many ions pass through", without surrogates or simplified conductance models.

The system is designed with future expansion in mind: GPU/SYCL — for high-performance computing, POD structures — for FPGA HLS, SDK — for a plugin developer community, BION v6 — for long-term binary compatibility, the .bexp format — for reproducible experiments.


2026 Krasnodar, Russia

Cell Library

Converter

3D Tadpole