{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "49917aec",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-19T08:11:56.609716Z",
     "iopub.status.busy": "2026-06-19T08:11:56.609334Z",
     "iopub.status.idle": "2026-06-19T08:12:01.979732Z",
     "shell.execute_reply": "2026-06-19T08:12:01.978939Z"
    },
    "tags": [
     "remove-cell"
    ]
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.\n"
     ]
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "import brainmass\n",
    "import brainstate\n",
    "import brainunit as u\n",
    "import jax.numpy as jnp\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "brainstate.random.seed(0)\n",
    "brainstate.environ.set(dt=0.1 * u.ms)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8940c6c4",
   "metadata": {},
   "source": [
    "# Wong-Wang Decision Model\n",
    "\n",
    "The **(reduced) Wong-Wang model** is a two-variable attractor network for two-alternative perceptual decision making. The state variables $S_1, S_2$ are the NMDA gating fractions of two competing, mutually inhibiting selective populations. Stimulus *coherence* biases the inputs toward one population; recurrent excitation and cross-inhibition then drive a winner-take-all transition to one of two stable attractors (the 'decision').\n",
    "\n",
    "**Reference:** Wong & Wang (2006), *A recurrent network mechanism of time integration in perceptual decisions*, Journal of Neuroscience 26(4):1314-1328."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8aea3f8d",
   "metadata": {},
   "source": [
    "## Build the model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5936dd9b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-19T08:12:01.982610Z",
     "iopub.status.busy": "2026-06-19T08:12:01.982098Z",
     "iopub.status.idle": "2026-06-19T08:12:02.002832Z",
     "shell.execute_reply": "2026-06-19T08:12:02.001995Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "WongWangStep(\n",
       "  in_size=(1,),\n",
       "  out_size=(1,),\n",
       "  tau_S=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.1, \"s\")\n",
       "  ),\n",
       "  gamma=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Array(0.641, dtype=float32)\n",
       "  ),\n",
       "  a=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(270., \"Hz / nA\")\n",
       "  ),\n",
       "  theta=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.31, \"nA\")\n",
       "  ),\n",
       "  J_N11=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.2609, \"nA\")\n",
       "  ),\n",
       "  J_N22=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.2609, \"nA\")\n",
       "  ),\n",
       "  J_N12=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.0497, \"nA\")\n",
       "  ),\n",
       "  J_N21=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.0497, \"nA\")\n",
       "  ),\n",
       "  J_A_ext=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.0002243, \"nC\")\n",
       "  ),\n",
       "  mu_0=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(30., \"Hz\")\n",
       "  ),\n",
       "  I_0=Const(\n",
       "    fit=False,\n",
       "    t=IdentityT(),\n",
       "    reg=None,\n",
       "    val=Quantity(0.3255, \"nA\")\n",
       "  )\n",
       ")"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "node = brainmass.WongWangStep(in_size=1)\n",
    "node"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bea015fc",
   "metadata": {},
   "source": [
    "## Run a simulation\n",
    "\n",
    "A positive `coherence` biases the evidence toward population 1. We watch the two gating variables compete."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "7cc09bea",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-19T08:12:02.004726Z",
     "iopub.status.busy": "2026-06-19T08:12:02.004526Z",
     "iopub.status.idle": "2026-06-19T08:12:02.142501Z",
     "shell.execute_reply": "2026-06-19T08:12:02.141768Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(4000, 1)"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sim = brainmass.Simulator(node, dt=0.5 * u.ms)\n",
    "res = sim.run(2000. * u.ms, inputs=lambda i, t: 25.6,\n",
    "              monitors=['S1', 'S2'])\n",
    "res['S1'].shape"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8dbb1a70",
   "metadata": {},
   "source": [
    "## Visualize\n",
    "\n",
    "The winning population's gating variable rises to a high stable value while the loser is suppressed — a categorical decision."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "c079600a",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-19T08:12:02.144350Z",
     "iopub.status.busy": "2026-06-19T08:12:02.144205Z",
     "iopub.status.idle": "2026-06-19T08:12:02.270956Z",
     "shell.execute_reply": "2026-06-19T08:12:02.269964Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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ZqximLUg5aEJfAIYERFRvtja2hZ5TCWVbkxVFqQ8zpZPACMiIiIyCYZZC2LPLBEREZFpMVVZ0H8PTWDPLBEREZEpMMxaUNq/j7N1YM8sERERkUkwVVkQe2aJiIiITIth1oIMU3OxZ5aIiIjINJiqLMjw0AT2zBIRERGZBsOsBfGhCURERESmxVRlQXycLREREZFpMcxaEHtmiYiIiEyLqcqClNkMeAMYERERkUkwVVnQgwxDzyyHGRARERGZAsOsBaUr88zytBMRERGZAlOVBRmGGWgZZomIiIhMgqnKgtIZZomIiIhMiqnKQvR6QaZeAABaW552IiIiIlNgqrKQ9Cy98n8d55klIiIiMgmGWQsxjJcF2DNLREREZCpMVRaS/kiYtbfVWLElRERERKUHw6yFGIYZaO1soNEwzBIRERGZAsOshShzzHKIAREREZHJMFlZCKflIiIiIjI9JisLYZglIiIiMj0mKwtJy8wCwDBLREREZEpMVhai9MxyzCwRERGRyTBZWUhaFocZEBEREZkak5WFKLMZMMwSERERmQyTlYXwBjAiIiIi02OyspD/wqytlVtCREREVHowzFqI8gQw3gBGREREZDJMVhbCMbNEREREpsdkZSEcM0tERERkekxWFsJhBkRERESmx2RlIWkZfAIYERERkakxWVkIH5pAREREZHpMVhbCMbNEREREpsdkZSGczYCIiIjI9JisLIQ9s0RERESmx2RlIZzNgIiIiMj0mKwshMMMiIiIiEyPycpCOMyAiIiIyPSYrCwknVNzEREREZkck5WFpGUYxszaWrklRERERKUHw6yF8KEJRERERKbHZGUhHDNLREREZHpMVhaSnpkFgFNzEREREZlSsUhWixYtQkBAABwcHBAcHIwjR47kWHfFihVo06YNPDw84OHhgdDQ0FzrFxeGG8B09sXilBMRERGVClZPVl9//TXGjRuHqVOn4vjx42jYsCHCwsIQHx9vtP6+ffvQr18/7N27F1FRUfDz80PHjh1x/fp1C7e8YJRhBuyZJSIiIjIZjYiINRsQHByMZs2aYeHChQAAvV4PPz8/jBw5Em+//Xae62dlZcHDwwMLFy7EgAED8qyfnJwMNzc3JCUlwdXVtcjtz6/G03fiTkoGdo1ti+reLhbbLxEREVFJU5C8ZtVuwvT0dBw7dgyhoaFKmY2NDUJD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fPNNVKxYEWXKlEFwcDD27dtnnQMlIjIh9swSERUT8+fPx19//YV69eph+vTpAIBTp05lq5eSkoLPPvsMGzZswN27d9GrVy/07NkT7u7u2LZtGy5duoTevXujVatWCA8PBwCMGDECp0+fxoYNG+Dr64tNmzahU6dO+PPPP1G9enWLHicRkSkxzBIRFRNubm7QarVwcnJShhacPXs2W72MjAwsWbIEgYGBAIA+ffrgiy++QFxcHJydnVGnTh106NABe/fuRXh4OGJiYhAZGYmYmBj4+voCAN58801s374dkZGRmDlzpuUOkojIxBhmiYhKGCcnJyXIAoC3tzcCAgLg7OysKouPjwcA/Pnnn8jKykKNGjVU20lLS0O5cuUs02giIjNhmCUiKmHs7e1VX2s0GqNler0eAHDv3j3Y2tri2LFjsLW1VdV7NAATEZVEDLNERMWIVqtV3bhlCo0bN0ZWVhbi4+PRpk0bk26biMjaOJsBEVExEhAQgF9//RVXrlzBzZs3ld7VoqhRowZeeOEFDBgwAN999x0uX76MI0eOYNasWdi6dasJWk1EZD0Ms0RExcibb74JW1tb1KlTB15eXoiJiTHJdiMjIzFgwACMHz8eNWvWRI8ePfDbb7+hcuXKJtk+EZG18AlgRERERFRisWeWiIiIiEoshlkiIiIiKrEYZomIiIioxGKYJSIiIqISi2GWiIiIiEoshlkiIiIiKrEYZomIiIioxGKYJSIiIqISi2GWiIiIiEoshlkiIiIiKrEYZomIiIioxPr/haK9kduWyBoAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "brainmass.viz.plot_timeseries(\n",
    "    jnp.concatenate([res['S1'], res['S2']], axis=1), ts=res['ts'],\n",
    "    labels=['S1 (pop 1)', 'S2 (pop 2)'], ax=ax)\n",
    "ax.set_title('Wong-Wang decision dynamics (coherence = +25.6%)')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "41d4c033",
   "metadata": {},
   "source": [
    "## Try it: vary the stimulus coherence\n",
    "\n",
    "Stronger coherence speeds and sharpens the decision; near-zero coherence makes the outcome slow and noise-sensitive."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "a2e15088",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-19T08:12:02.273074Z",
     "iopub.status.busy": "2026-06-19T08:12:02.272848Z",
     "iopub.status.idle": "2026-06-19T08:12:02.687512Z",
     "shell.execute_reply": "2026-06-19T08:12:02.686402Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "for coh in [0.0, 12.8, 51.2]:\n",
    "    m = brainmass.WongWangStep(in_size=1)\n",
    "    r = brainmass.Simulator(m, dt=0.5 * u.ms).run(\n",
    "        2000. * u.ms, inputs=lambda i, t, c=coh: c, monitors=['S1'])\n",
    "    ax.plot(u.get_magnitude(r['ts']), u.get_magnitude(r['S1'])[:, 0],\n",
    "            label=f'coherence = {coh}%')\n",
    "ax.set_xlabel('time (ms)'); ax.set_ylabel('S1'); ax.legend()\n",
    "ax.set_title('Coherence sweep')\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.13.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
