{
 "cells": [
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "# Quantity\n",
    "\n",
    "[![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/chaobrain/brainunit/blob/master/docs/physical_units/quantity.ipynb)\n",
    "[![Open in Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/chaobrain/brainunit/blob/master/docs/physical_units/quantity.ipynb)"
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit generates standard names for units, combining the unit name (e.g. \"siemens\") with a prefixes (e.g. \"m\"), and also generates squared and cubed versions by appending a number. For example, the units \"msiemens\", \"siemens2\", \"usiemens3\" are all predefined. You can import these units from the package `brainunit` – accordingly, an `from brainunit import *` will result in everything being imported.\n\nWe recommend importing only the units you need, to have a cleaner namespace. For example, `import brainunit as u` and then using `u.msiemens` instead of `msiemens`."
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "import brainunit as u",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "In the underlying design, Quantity consists of two attributes (mantissa and unit), and the specific value it represents is calculated by the formula below:\n",
    "\n",
    "$$\n",
    "\\mathrm{value} = \\mathrm{mantissa} \\times \\mathrm{unit.base} ^ \\mathrm{unit.scale} * \\text{dimension}, \n",
    "$$\n",
    "\n",
    "where `unit.base` is the base for this unit (as the base of the exponent) and `unit.scale` is the scale for this unit (as the integer exponent of base)\n",
    "\n",
    "\n",
    "A quantity is equivalent to the scientific notation of \n",
    "\n",
    "$$\n",
    "\\mathrm{mantissa} \\times \\mathrm{base}^\\mathrm{scale}\n",
    "$$\n",
    "\n",
    "For example, ``5 * ms`` is equivalent to ``5 * 10^-3 * s = 5 * 0.001 * s = 0.005 * s``.   \n"
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "You can generate a physical quantity by multiplying a scalar or ndarray with its physical unit:"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": [
    "tau = 20 * u.ms\n",
    "tau"
   ],
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": [
    "rates = [10, 20, 30] * u.Hz\n",
    "rates"
   ],
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": [
    "rates = [[10, 20, 30], [20, 30, 40]] * u.Hz\n",
    "rates"
   ],
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit will check the consistency of operations on units and raise an error for dimensionality mismatches:"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": [
    "try:\n",
    "    tau += 1  # ms? second?\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": [
    "try:\n",
    "    3 * u.kgram + 3 * u.amp\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## Creating Quantity Instances"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Creating a Quantity object can be accomplished in several ways, categorized based on the type of input used. Here, we present the methods grouped by their input types and characteristics for better clarity."
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "import jax.numpy as jnp",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "### Scalar and Array Multiplication\n",
    "- Multiplying a Scalar with a Unit"
   ]
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "5 * u.ms",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Multiplying a Jax nunmpy value type with a Unit:"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "jnp.float64(5) * u.ms",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Multiplying a Jax numpy array with a Unit:"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "jnp.array([1, 2, 3]) * u.ms",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Multiplying a List with a Unit:"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "[1, 2, 3] * u.ms",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "### Direct Quantity Creation"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Creating a Quantity Directly with a Value"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity(5)",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Creating a Quantity Directly with a Value and Unit"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity(5, unit=u.ms)",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Creating a Quantity with a Jax numpy Array of Values and a Unit"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity(jnp.array([1, 2, 3]), unit=u.ms)",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Creating a Quantity with a List of Values and a Unit"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity([1, 2, 3], unit=u.ms)",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Creating a Quantity with a List of Quantities"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity([500 * u.ms, 1 * u.second])",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "- Using the with_units Method"
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity.with_unit(jnp.array([0.5, 1]), unit=u.second)",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "### Unitless Quantity\n",
    "Quantities can be unitless, which means they have no units. If there is no unit provided, the quantity is assumed to be unitless. The following are examples of creating unitless quantities:"
   ]
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity([1, 2, 3])",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity(jnp.array([1, 2, 3]))",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "code",
   "source": "u.Quantity([])",
   "outputs": [],
   "execution_count": null
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "### Illegal Quantity Creation\n",
    "The following are examples of illegal quantity creation:"
   ]
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:20.706686200Z",
     "start_time": "2026-03-04T13:57:20.617942200Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    u.Quantity([500 * u.ms, 1])\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "All elements must have the same units, but got [Unit(\"ms\"), Unit(\"1\")]\n"
     ]
    }
   ],
   "execution_count": 21
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:20.729202900Z",
     "start_time": "2026-03-04T13:57:20.713872600Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    u.Quantity([\"some\", \"nonsense\"])\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Value 'some' with dtype <U4 is not a valid JAX array type. Only arrays of numeric types are supported by JAX.\n"
     ]
    }
   ],
   "execution_count": 22
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:20.837859900Z",
     "start_time": "2026-03-04T13:57:20.767921500Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    u.Quantity([500 * u.ms, 1 * u.volt])\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "All elements must have the same units, but got [Unit(\"ms\"), Unit(\"V\")]\n"
     ]
    }
   ],
   "execution_count": 23
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "### Creating Functions\n",
    "You can create functions that return quantities. The following are examples of creating functions that return quantities:"
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "#### `brainunit.math.array` & `brainunit.math.asarray`\n",
    "Convert the input to a quantity or array.\n",
    "\n",
    "  If unit is provided, the input will be checked whether it has the same unit as the provided unit.\n",
    "  (If they have same unit but different scale, the input will be converted to the provided unit.)\n",
    "  If unit is not provided, the input will be converted to an array.\n"
   ]
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:20.906281400Z",
     "start_time": "2026-03-04T13:57:20.850744Z"
    }
   },
   "cell_type": "code",
   "source": "u.math.asarray([1, 2, 3])                       # return a jax.Array",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Array([1, 2, 3], dtype=int32)"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 24
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:20.989212400Z",
     "start_time": "2026-03-04T13:57:20.911141300Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# check if the input has the same unit as the provided unit\n",
    "u.math.asarray([1, 2, 3] * u.second, unit=u.second)    # return a Quantity"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([1 2 3], \"s\")"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 25
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.124557Z",
     "start_time": "2026-03-04T13:57:20.990814100Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# Same unit, but different scale\n",
    "u.math.asarray([1, 2, 3] * u.msecond, unit=u.second)    # return a Quantity"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([0.001 0.002 0.003], \"s\")"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 26
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.205743300Z",
     "start_time": "2026-03-04T13:57:21.158161400Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# fails because the input has a different unit\n",
    "try:\n",
    "    u.math.asarray([1 * u.second, 2 * u.second], unit=u.ampere)\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Cannot convert to a unit with different dimensions. (units are s and A).\n"
     ]
    }
   ],
   "execution_count": 27
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "#### More Functions\n",
    "Other functions that can be used to create quantities are:\n",
    "- `brainunit.math.arange`\n",
    "- `brainunit.math.array_spilt`\n",
    "- `brainunit.math.linespace`\n",
    "- `brainunit.math.logspace`\n",
    "- `brainunit.math.meshgrid`\n",
    "- `brainunit.math.vandermode`\n",
    "- Can use with Quantity\n",
    "  - `brainunit.math.full`\n",
    "  - `brainunit.math.empty`\n",
    "  - `brainunit.math.ones`\n",
    "  - `brainunit.math.zeros`\n",
    "  - `brainunit.math.full_like`\n",
    "  - `brainunit.math.empty_like`\n",
    "  - `brainunit.math.ones_like`\n",
    "  - `brainunit.math.zeros_like`\n",
    "  - `brainunit.math.fill_diagonal`\n",
    "- Can use with unit keyword\n",
    "  - `brainunit.math.eye`\n",
    "  - `brainunit.math.identity`\n",
    "  - `brainunit.math.tri`\n",
    "  - `brainunit.math.diag`\n",
    "  - `brainunit.math.tril`\n",
    "  - `brainunit.math.triu`\n",
    "\n",
    "See the [Array Creation Documentation](https://brainunit.readthedocs.io/mathematical_functions/array_creation.html) for more information."
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "## Converting to Different Units\n",
    "\n",
    "You can convert a quantity to a different unit using the `to_decimal` method. The following are examples of converting quantities to different units:"
   ]
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.266323500Z",
     "start_time": "2026-03-04T13:57:21.210643500Z"
    }
   },
   "cell_type": "code",
   "source": [
    "q = (1, 2, 3) * u.second\n",
    "q"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([1 2 3], \"s\")"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 28
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.325302100Z",
     "start_time": "2026-03-04T13:57:21.266323500Z"
    }
   },
   "cell_type": "code",
   "source": "q.to_decimal(u.msecond)",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Array([1000., 2000., 3000.], dtype=float32, weak_type=True)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 29
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit will check the consistency of operations on units and raise an error for dimensionality mismatches:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.386233700Z",
     "start_time": "2026-03-04T13:57:21.326838300Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    q.to_decimal(u.ampere)\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Cannot convert to the decimal number using a unit with different dimensions. (units are s and A).\n"
     ]
    }
   ],
   "execution_count": 30
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## Attributes of a Quantity"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "The important attributes of a `Quantity` object are:\n",
    "- `mantissa`: the mantissa of the quantity\n",
    "- `unit`: the unit of the quantity\n",
    "- `dim`: the dimension of the unit of the quantity\n",
    "- `ndim`: the number of dimensions of quantity's value\n",
    "- `shape`: the shape of the quantity's value\n",
    "- `size`: the size of the quantity's value\n",
    "- `dtype`: the dtype of the quantity's value"
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "### An example"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.559508100Z",
     "start_time": "2026-03-04T13:57:21.386233700Z"
    }
   },
   "cell_type": "code",
   "source": [
    "rates = [[10., 20., 30.], [20., 30., 40.]] * u.Hz\n",
    "rates"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[10. 20. 30.]\n",
       "          [20. 30. 40.]], \"Hz\")"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 31
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.635383500Z",
     "start_time": "2026-03-04T13:57:21.561042400Z"
    }
   },
   "cell_type": "code",
   "source": "rates.mantissa",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Array([[10., 20., 30.],\n",
       "       [20., 30., 40.]], dtype=float32)"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 32
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.693358800Z",
     "start_time": "2026-03-04T13:57:21.639053Z"
    }
   },
   "cell_type": "code",
   "source": "rates.dim",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "second ** -1"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 33
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.748393500Z",
     "start_time": "2026-03-04T13:57:21.696464300Z"
    }
   },
   "cell_type": "code",
   "source": "rates.ndim, rates.shape, rates.size, rates.dtype",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, (2, 3), 6, dtype('float32'))"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 34
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## Arithmetic Functions"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Like Numpy and Jax numpy, arithmetic operators on arrays apply elementwise."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:21.911861400Z",
     "start_time": "2026-03-04T13:57:21.754577700Z"
    }
   },
   "cell_type": "code",
   "source": [
    "a = [20, 30, 40, 50] * u.mV\n",
    "b = jnp.arange(4) * u.mV\n",
    "b"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([0 1 2 3], \"mV\")"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 35
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "### Addition and Subtraction"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Addition and subtraction of quantities need to have the same units and keep the units in the result."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.054431800Z",
     "start_time": "2026-03-04T13:57:21.952739Z"
    }
   },
   "cell_type": "code",
   "source": [
    "c = a - b\n",
    "c"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([20 29 38 47], \"mV\")"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 36
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.148730200Z",
     "start_time": "2026-03-04T13:57:22.055386700Z"
    }
   },
   "cell_type": "code",
   "source": "c + b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([20 30 40 50], \"mV\")"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 37
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "### Multiplication and Division"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Multiplication and division of quantities multiply and divide the values and add and subtract the dimensions of the units."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.333955400Z",
     "start_time": "2026-03-04T13:57:22.192900500Z"
    }
   },
   "cell_type": "code",
   "source": [
    "A = jnp.array([[1, 2], [3, 4]]) * u.mV\n",
    "B = jnp.array([[5, 6], [7, 8]]) * u.mV\n",
    "\n",
    "A, B"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(Quantity([[1 2]\n",
       "           [3 4]], \"mV\"),\n",
       " Quantity([[5 6]\n",
       "           [7 8]], \"mV\"))"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 38
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.432000100Z",
     "start_time": "2026-03-04T13:57:22.335961Z"
    }
   },
   "cell_type": "code",
   "source": "A * B # element-wise multiplication",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[ 5 12]\n",
       "          [21 32]], \"mV^2\")"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 39
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.574695500Z",
     "start_time": "2026-03-04T13:57:22.480198200Z"
    }
   },
   "cell_type": "code",
   "source": "A @ B # matrix multiplication",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[19 22]\n",
       "          [43 50]], \"mV^2\")"
      ]
     },
     "execution_count": 40,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 40
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.659269Z",
     "start_time": "2026-03-04T13:57:22.575709100Z"
    }
   },
   "cell_type": "code",
   "source": "A.dot(B) # matrix multiplication",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[19 22]\n",
       "          [43 50]], \"mV^2\")"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 41
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.764257900Z",
     "start_time": "2026-03-04T13:57:22.662367Z"
    }
   },
   "cell_type": "code",
   "source": "A / 2 # divide by a scalar",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[0.5 1. ]\n",
       "          [1.5 2. ]], \"mV\")"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 42
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "if the unit of result is unitless, the unit is removed and returned as jax.Array"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.849798700Z",
     "start_time": "2026-03-04T13:57:22.800448900Z"
    }
   },
   "cell_type": "code",
   "source": "A / (2 * u.mV) # divide by a quantity, return jax array",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Array([[0.5, 1. ],\n",
       "       [1.5, 2. ]], dtype=float32)"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 43
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:22.944400900Z",
     "start_time": "2026-03-04T13:57:22.886361900Z"
    }
   },
   "cell_type": "code",
   "source": "A / (2 * u.mA) # divide by a quantity, return quantity",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[0.5 1. ]\n",
       "          [1.5 2. ]], \"mV / mA\")"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 44
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "### Power"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "The power operator raises the value of the quantity to the power of the scalar, and multiplies the unit by the scalar."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.013065300Z",
     "start_time": "2026-03-04T13:57:22.946799100Z"
    }
   },
   "cell_type": "code",
   "source": "A",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[1 2]\n",
       "          [3 4]], \"mV\")"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 45
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.118486200Z",
     "start_time": "2026-03-04T13:57:23.016218800Z"
    }
   },
   "cell_type": "code",
   "source": "A ** 2 # element-wise power",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[ 1  4]\n",
       "          [ 9 16]], \"mV^2\")"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 46
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## Built-in Functions"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "brainunit provides a number of built-in functions in `Quantity` class to perform operations on quantities. These functions are:\n",
    "- unary operations\n",
    "    - positive(+)\n",
    "    - negative(-)\n",
    "    - absolute(abs)\n",
    "    - invert(~)\n",
    "- logical operations\n",
    "    - all\n",
    "    - any\n",
    "- shape operations\n",
    "    - reshape\n",
    "    - resize\n",
    "    - squeeze\n",
    "    - unsqueeze\n",
    "    - spilt\n",
    "    - swapaxes\n",
    "    - transpose\n",
    "    - ravel\n",
    "    - take\n",
    "    - repeat\n",
    "    - diagonal\n",
    "    - trace\n",
    "- mathematical functions\n",
    "    - nonzero\n",
    "    - argmax\n",
    "    - argmin\n",
    "    - argsort\n",
    "    - var\n",
    "    - round\n",
    "    - std\n",
    "    - sum\n",
    "    - cumsum\n",
    "    - cumprod\n",
    "    - max\n",
    "    - mean\n",
    "    - min\n",
    "    - ptp\n",
    "    - clip\n",
    "    - conj\n",
    "    - dot\n",
    "    - fill\n",
    "    - item\n",
    "    - prod\n",
    "    - clamp\n",
    "    - sort\n",
    "\n",
    "For more details on these functions, refer to the [documentation](https://brainunit.readthedocs.io/brainunit/apis/generated/brainunit.Quantity.html)."
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "## Indexing, Slicing and Iterating"
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "One-dimensional Quantity can be indexed, sliced and iterated over, much like lists and other Python sequences."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.271820900Z",
     "start_time": "2026-03-04T13:57:23.121605900Z"
    }
   },
   "cell_type": "code",
   "source": [
    "a = jnp.arange(10) ** 3 * u.mV\n",
    "a"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([  0   1   8  27  64 125 216 343 512 729], \"mV\")"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 47
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.372543Z",
     "start_time": "2026-03-04T13:57:23.272971300Z"
    }
   },
   "cell_type": "code",
   "source": "a[2]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(8, \"mV\")"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 48
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.456966100Z",
     "start_time": "2026-03-04T13:57:23.372543Z"
    }
   },
   "cell_type": "code",
   "source": "a[2:5]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 8 27 64], \"mV\")"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 49
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Only same dimension Quantity can be set to a slice of a Quantity."
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.655403800Z",
     "start_time": "2026-03-04T13:57:23.458511700Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# equivalent to a[0:6:2] = 1000;\n",
    "# from start to position 6, exclusive, set every 2nd element to 1000\n",
    "a[:6:2] = 1000 * u.mV\n",
    "a"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([1000    1 1000   27 1000  125  216  343  512  729], \"mV\")"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 50
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.724320800Z",
     "start_time": "2026-03-04T13:57:23.659225Z"
    }
   },
   "cell_type": "code",
   "source": "a[::-1] # reversed a",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 729  512  343  216  125 1000   27 1000    1 1000], \"mV\")"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 51
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.803681800Z",
     "start_time": "2026-03-04T13:57:23.724320800Z"
    }
   },
   "cell_type": "code",
   "source": [
    "for i in a:\n",
    "    print(i**(1 / 3.))"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "10.000001 mV^0.3333333333333333\n",
      "1. mV^0.3333333333333333\n",
      "10.000001 mV^0.3333333333333333\n",
      "3. mV^0.3333333333333333\n",
      "10.000001 mV^0.3333333333333333\n",
      "5.0000005 mV^0.3333333333333333\n",
      "6.0000005 mV^0.3333333333333333\n",
      "7.0000005 mV^0.3333333333333333\n",
      "8.000001 mV^0.3333333333333333\n",
      "9.000001 mV^0.3333333333333333\n"
     ]
    }
   ],
   "execution_count": 52
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Multidimensional Quantity can have one index per axis. These indices are given in a tuple separated by commas:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:23.963428Z",
     "start_time": "2026-03-04T13:57:23.803681800Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def f(x, y):\n",
    "    return 10 * x + y\n",
    "b = jnp.fromfunction(f, (5, 4), dtype=jnp.int32) * u.mV\n",
    "b"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[ 0  1  2  3]\n",
       "          [10 11 12 13]\n",
       "          [20 21 22 23]\n",
       "          [30 31 32 33]\n",
       "          [40 41 42 43]], \"mV\")"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 53
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.027364500Z",
     "start_time": "2026-03-04T13:57:23.964560Z"
    }
   },
   "cell_type": "code",
   "source": "b[2, 3]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(23, \"mV\")"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 54
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.123154900Z",
     "start_time": "2026-03-04T13:57:24.029080100Z"
    }
   },
   "cell_type": "code",
   "source": "b[0:5, 1]  # each row in the second column of b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 1 11 21 31 41], \"mV\")"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 55
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.165321400Z",
     "start_time": "2026-03-04T13:57:24.124697100Z"
    }
   },
   "cell_type": "code",
   "source": "b[:, 1]  # equivalent to the previous example",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 1 11 21 31 41], \"mV\")"
      ]
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 56
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.287167600Z",
     "start_time": "2026-03-04T13:57:24.200656300Z"
    }
   },
   "cell_type": "code",
   "source": "b[1:3, :]  # each column in the second and third row of b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[10 11 12 13]\n",
       "          [20 21 22 23]], \"mV\")"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 57
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "When fewer indices are provided than the number of axes, the missing indices are considered complete slices:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.411553600Z",
     "start_time": "2026-03-04T13:57:24.316880100Z"
    }
   },
   "cell_type": "code",
   "source": "b[-1]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([40 41 42 43], \"mV\")"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 58
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "The expression within brackets in b[i] is treated as an i followed by as many instances of : as needed to represent the remaining axes. NumPy also allows you to write this using dots as b[i, ...].\n",
    "\n",
    "The dots (...) represent as many colons as needed to produce a complete indexing tuple. For example, if x is a Quantity with 5 axes, then\n",
    "- x[1, 2, ...] is equivalent to x[1, 2, :, :, :],\n",
    "- x[..., 3] to x[:, :, :, :, 3] and\n",
    "- x[4, ..., 5, :] to x[4, :, :, 5, :]."
   ]
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.526771600Z",
     "start_time": "2026-03-04T13:57:24.456646500Z"
    }
   },
   "cell_type": "code",
   "source": [
    "c = jnp.array([[[0, 1, 2], [10, 12, 13]], [[100, 101, 102], [110, 112, 113]]]) * u.mV # a 3D array (two stacked 2D arrays)\n",
    "c.shape"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, 2, 3)"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 59
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.601541600Z",
     "start_time": "2026-03-04T13:57:24.528233100Z"
    }
   },
   "cell_type": "code",
   "source": "c[1, ...] # same as c[1, :, :] or c[1]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[100 101 102]\n",
       "          [110 112 113]], \"mV\")"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 60
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.685217900Z",
     "start_time": "2026-03-04T13:57:24.603834200Z"
    }
   },
   "cell_type": "code",
   "source": "c[..., 2] # same as c[:, :, 2]",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([[  2  13]\n",
       "          [102 113]], \"mV\")"
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 61
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Iterating over multidimensional Quantity is done with respect to the first axis:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.755107400Z",
     "start_time": "2026-03-04T13:57:24.687401800Z"
    }
   },
   "cell_type": "code",
   "source": [
    "for row in b:\n",
    "    print(row)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0 1 2 3] mV\n",
      "[10 11 12 13] mV\n",
      "[20 21 22 23] mV\n",
      "[30 31 32 33] mV\n",
      "[40 41 42 43] mV\n"
     ]
    }
   ],
   "execution_count": 62
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "## Operating on Subsets\n",
    "\n",
    "`.at` method can be used to operate on a subset of the Quantity. The following are examples of operating on subsets of a Quantity:"
   ]
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.846323800Z",
     "start_time": "2026-03-04T13:57:24.757258200Z"
    }
   },
   "cell_type": "code",
   "source": [
    "q = jnp.arange(5.0) * u.mV\n",
    "q"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([0. 1. 2. 3. 4.], \"mV\")"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 63
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:24.973396700Z",
     "start_time": "2026-03-04T13:57:24.847892300Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[2].add(10 * u.mV)",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 0.  1. 12.  3.  4.], \"mV\")"
      ]
     },
     "execution_count": 64,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 64
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.025929100Z",
     "start_time": "2026-03-04T13:57:24.975042300Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[10].add(10 * u.mV)  # out-of-bounds indices are ignored",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([0. 1. 2. 3. 4.], \"mV\")"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 65
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.098012700Z",
     "start_time": "2026-03-04T13:57:25.026434300Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[20].add(10 * u.mV, mode='clip') # out-of-bounds indices are clipped",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity([ 0.  1.  2.  3. 14.], \"mV\")"
      ]
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 66
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.170035200Z",
     "start_time": "2026-03-04T13:57:25.102260700Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[2].get()",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(2., \"mV\")"
      ]
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 67
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.247504100Z",
     "start_time": "2026-03-04T13:57:25.173070400Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[20].get()  # out-of-bounds indices clipped",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(4., \"mV\")"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 68
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.318896800Z",
     "start_time": "2026-03-04T13:57:25.248722200Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[20].get(mode='fill')  # out-of-bounds indices filled with NaN",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(nan, \"mV\")"
      ]
     },
     "execution_count": 69,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 69
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit will check the consistency of operations on units and raise an error for dimensionality mismatches:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.370245400Z",
     "start_time": "2026-03-04T13:57:25.320502800Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    q.at[2].add(10)\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Cannot convert to a unit with different dimensions. (units are 1 and mV).\n"
     ]
    }
   ],
   "execution_count": 70
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit also allows customized fill values for the `at` method:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.468467900Z",
     "start_time": "2026-03-04T13:57:25.378102200Z"
    }
   },
   "cell_type": "code",
   "source": "q.at[20].get(mode='fill', fill_value=-1 * u.mV)  # custom fill value",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Quantity(-1., \"mV\")"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 71
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.514768900Z",
     "start_time": "2026-03-04T13:57:25.470026400Z"
    }
   },
   "cell_type": "code",
   "source": [
    "try:\n",
    "    q.at[20].get(mode='fill', fill_value=-1)\n",
    "except Exception as e:\n",
    "    print(e)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Cannot convert to a unit with different dimensions. (units are 1 and mV).\n"
     ]
    }
   ],
   "execution_count": 72
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "## Plotting Quantities\n",
    "\n",
    "`Quantity` objects can be conveniently plotted using [Matplotlib](https://matplotlib.org/). This feature will be turned on automatically if Matplotlib is installed. The following are examples of plotting quantities:"
   ]
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "Then `Quantity` objects can be passed to matplotlib plotting functions. The axis labels are automatically labeled with the unit of the quantity:\n"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.705823200Z",
     "start_time": "2026-03-04T13:57:25.515883900Z"
    }
   },
   "cell_type": "code",
   "source": "from matplotlib import pyplot as plt\n\nplt.figure()\nplt.plot([1, 2, 3] * u.meter)",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x25a27ffa0c0>]"
      ]
     },
     "execution_count": 73,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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M7d1JbZLIMvH92N4RGiNfA0RERG5Mpd6G3xwcDBZWVlltmVlZeHn54ePjw/u7u64u7uXOyY4OPiSz2u1WrFarTWS+X8FNPTin2N71fjXERERkctzqTNAffr0Yc2aNWW2rVq1ij59+gDg5eXFNddcU2aM3W5nzZo1jjEiIiIiphagvLw80tLSSEtLAy68zT0tLY3Dhw8DF5am7rvvPsf4P/3pTxw8eJAnn3yS3bt38/e//51Fixbx2GOPOcZMnDiRf/zjH3zwwQfs2rWLhx9+mPz8fB544IFanZuIiIg4L1OXwH766ScGDBjguD9x4kQAxo4dy/z588nIyHCUIYDw8HC++OILHnvsMWbPnk3Lli355z//yeDBgx1jRo0axcmTJ5k6dSqZmZlERkayYsWKiy6MFhERkfrLaT4HyJnU5OcAiYiISM2os58DJCIiIlIdVIBERESk3lEBEhERkXpHBUhERETqHRUgERERqXdUgERERKTeUQESERGRekcFSEREROodFSARERGpd1zqr8HXll8+HNtms5mcRERERCrql9ftivyRCxWgcuTm5gIQFhZmchIRERGprNzcXPz9/S87Rn8LrBx2u53jx4/j6+uLxWKp1ue22WyEhYVx5MiROvl3xjQ/11fX56j5ub66PkfNr+oMwyA3N5fQ0FDc3C5/lY/OAJXDzc2Nli1b1ujX8PPzq5Pf2L/Q/FxfXZ+j5uf66vocNb+qudKZn1/oImgRERGpd1SAREREpN5RAaplVquVadOmYbVazY5SIzQ/11fX56j5ub66PkfNr3boImgRERGpd3QGSEREROodFSARERGpd1SAREREpN5RARIREZF6RwXoKs2bN482bdrg7e1NTEwMmzZtuuz4xYsX07lzZ7y9venRowdffvllmccNw2Dq1KmEhITg4+NDbGws+/btq8kpXFZl5vePf/yDG264gSZNmtCkSRNiY2MvGn///fdjsVjK3IYMGVLT07isysxx/vz5F+X39vYuM8aVj2H//v0vmp/FYmHYsGGOMc50DNetW8fw4cMJDQ3FYrGwdOnSK+6TnJxMdHQ0VquV9u3bM3/+/IvGVPbnuiZVdo6fffYZAwcOpHnz5vj5+dGnTx9WrlxZZsyzzz570THs3LlzDc7i0io7v+Tk5HK/RzMzM8uMc5ZjWNn5lffzZbFY6Natm2OMMx2/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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 73
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:25.850656400Z",
     "start_time": "2026-03-04T13:57:25.707072700Z"
    }
   },
   "cell_type": "code",
   "source": "plt.plot([1, 2, 3] * u.meter, [1, 2, 3] * u.second)",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x25a3163c7a0>]"
      ]
     },
     "execution_count": 74,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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jIxkwYIFrFq1innz5pGWlka/fv3Izc01MWnVBAUFMX/+fD777DM+++wzQkJC6N+/P8nJyQD17vidOXOGr776iocffrjCdns9hjabjQkTJnDLLbfQrVu3K4670uvw52P083/t7ThWdX6/9Je//IXg4OAKP1CGDh3KRx99xLp163j11VdZv349w4YNo6ysrDaiV0lV59epUyfef/99li9fzj//+U9sNht9+vTh1KlTgP0eP6jeMdy6dSu7d+++7HVoT8dw165dNGrUCE9PT/70pz+xdOlSunTpUulYe3r96bfBS61ITExk2rRpLF++vMI1MsOGDSv//x49ehAZGUnr1q1ZvHgxDz30kBlRq6xTp0506tSp/H6fPn04cuQIb775Jv/4xz9MTFY7PvzwQxo3bkxMTEyF7fZ6DOPi4ti9e7dp1yPVturMb/r06SxatIikpKQKFwqPGTOm/P+7d+9Ojx49aNeuHUlJSQwcOLBGc1dVVecXFRVV4exCnz59uOGGG/jb3/7GSy+9VNsxr0t1juF7771H9+7duemmmypst6dj2KlTJ1JTU8nOzubTTz9l3LhxrF+//oolyF7oDFAdCgwMJDMzs8K2zMxMfH198fb2plmzZri6ulY6JjAwsC6jXpdFixbx8MMPs3jx4stOdf5S48aN6dixI4cPH66jdDXrpptuKs9eX44f/PQujPfff5/77rsPDw+Pq461h2MYHx/PihUr+Pbbb2nZsuVVx17pdfjzMfr5v/Z0HK9lfj97/fXXmT59Ol9//TU9evS46ti2bdvSrFkz045hdeb3M3d3dyIiIsqz2+Pxg+rNMT8/n0WLFlXpHxZmHkMPDw/at29Pr169SEhIICwsjFmzZlU61p5efypAdSgqKop169ZV2LZmzZryf814eHjQq1evCmNsNhvr1q274nqqvVm4cCEPPvggCxcurPCWzSvJy8vjyJEjBAUF1UG6mpeamlqevT4cv5+tX7+ew4cPV+kvXjOPoWEYxMfHs3TpUr755htCQ0N/dZ9fex2GhoYSGBhYYUxOTg5btmyp8+NYnfnBT++ieemll1i1ahU33njjr44/deoUFy5cqPNjWN35/aeysjJ27dpVnt2ejh9c3xyXLFlCUVERv//97391rFnHsDI2m42ioqJKH7Or11+NXlLtZHJzc42UlBQjJSXFAIyZM2caKSkpxvHjxw3DMIxJkyYZ9913X/n4o0ePGg0aNDCefvppY9++fcbcuXMNV1dXY9WqVeVjFi1aZHh6ehoLFiww9u7da/zhD38wGjdubGRkZNj9/D7++GPDzc3NmDt3rpGenl5+y8rKKh/z5JNPGklJSUZaWprx/fffG9HR0UazZs2Ms2fP2v383nzzTWPZsmXGoUOHjF27dhmPP/644eLiYqxdu7Z8jD0dP8O49jn+7Pe//70RGRlZ6XPa0zF89NFHDavVaiQlJVX4nisoKCgfc9999xmTJk0qv//9998bbm5uxuuvv27s27fPmDp1quHu7m7s2rWrfMz06dONxo0bG8uXLzd27txpjBw50ggNDTUuXbpk9/ObPn264eHhYXz66acV9snNzTUM46fviaeeesrYtGmTkZaWZqxdu9bo2bOn0aFDB6OwsNDu5zdt2jRj9erVxpEjR4zt27cbY8aMMby8vIw9e/aUj7GX42cY1Zvjz/r27WuMHj36su32dAwnTZpkrF+/3khLSzN27txpTJo0ybBYLMbXX39tGIZ9v/5UgK7Dz2+L/uVt3LhxhmH89DbF22677bJ9wsPDDQ8PD6Nt27bGBx98cNnzvv3220arVq0MDw8P46abbjI2b95c+5OpxLXO77bbbrvqeMP46W3/QUFBhoeHh9GiRQtj9OjRxuHDh+t2Yv/nWuf36quvGu3atTO8vLwMPz8/o3///sY333xz2fPay/EzjOp9j2ZlZRne3t7GO++8U+lz2tMxrGxuQIXX1W233Vbhe9AwDGPx4sVGx44dDQ8PD6Nr167Gl19+WeFxm81mPP/880ZAQIDh6elpDBw40Dhw4EAdzKii6syvdevWle4zdepUwzAMo6CgwBg8eLDRvHlzw93d3WjdurXxyCOPmFLSqzO/CRMmlL++AgICjDvuuMNITk6u8Lz2cvwMo/rfo/v37zeA8iLxn+zpGP7Xf/2X0bp1a8PDw8No3ry5MXDgwAqZ7fn1ZzEMw6ihk0kiIiIiDkHXAImIiIjTUQESERERp6MCJCIiIk5HBUhEREScjgqQiIiIOB0VIBEREXE6KkAiIiLidFSARERExOmoAImIiIjTUQESERERp6MCJCIiIk5HBUhE6rX+/fszfvx4JkyYQJMmTQgICODvf/87+fn5PPjgg/j4+NC+fXu++uors6OKSB1SARKReu/DDz+kWbNmbN26lfHjx/Poo48yatQo+vTpQ3JyMoMHD+a+++6joKDA7KgiUkf02+BFpF7r378/ZWVlfPfddwCUlZVhtVq58847+eijjwDIyMggKCiITZs2cfPNN5sZV0TqiM4AiUi916NHj/L/d3V1pWnTpnTv3r18W0BAAABnz56t82wiYg4VIBGp99zd3Svct1gsFbZZLBYAbDZbneYSEfOoAImIiIjTUQESERERp6MCJCIiIk5H7wITERERp6MzQCIiIuJ0VIBERETE6agAiYiIiNNRARIRERGnowIkIiIiTkcFSERERJyOCpCIiIg4HRUgERERcToqQCIiIuJ0VIBERETE6agAiYiIiNP5X1LmQokiF9e/AAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 74
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "brainunit also supports plotting different scales of quantities with same unit on the same axis:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:26.079913500Z",
     "start_time": "2026-03-04T13:57:25.852227Z"
    }
   },
   "cell_type": "code",
   "source": "plt.plot([101, 125, 150] * u.ms, [101, 125, 150] * u.cmeter)\nplt.plot([0.1, 0.15, 0.2] * u.second, [111, 135, 160] * u.cmeter)",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x25a3384ebd0>]"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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EREREWdQ2BERERGPprAjIiIiHs3SCcqu4tdpS2obISIi4j5+/d6+3PRjhR0gMzMTQG0jRERE3FBmZibBwcGXXK+7sQCHw8HJkyepVq0aNpvNafvNyMigXr16HDt2THd5lTMd64qh41wxdJwrho5zxSjP42wYBpmZmURERGC3X3pmjs7sAHa7nbp165bb/tWSouLoWFcMHeeKoeNcMXScK0Z5Hec/O6PzK01QFhEREY+msCMiIiIeTWGnHPn5+fH888/j5+dndSkeT8e6Yug4Vwwd54qh41wxXOE4a4KyiIiIeDSd2RERERGPprAjIiIiHk1hR0RERDyawo6IiIh4NIWdMli/fj19+/YlIiICm83GokWLSqw3DIPJkydTp04dAgICiI2NZf/+/SW2SU1NJS4ujqCgIEJCQhg6dChZWVkV+Clc358d54KCAiZMmEDr1q2pWrUqERER/PWvf+XkyZMl9qHjfHmX+/v8W48++ig2m4233367xHId58srzXHes2cPd955J8HBwVStWpWOHTty9OjR4vW5ubk8/vjjhIWFERgYyIABAzh9+nQFfgrXd7njnJWVRXx8PHXr1iUgIIAWLVowe/bsEtvoOF/e1KlT6dixI9WqVaNWrVr069ePvXv3ltimNMfx6NGj9OnThypVqlCrVi3GjRtHYWGh0+tV2CmD7OxsoqKimDlz5kXXv/baa0yfPp3Zs2ezZcsWqlatSo8ePcjNzS3eJi4ujl27drFy5UqWLFnC+vXrGTZsWEV9BLfwZ8f5woULJCYmMmnSJBITE1mwYAF79+7lzjvvLLGdjvPlXe7v868WLlzI5s2biYiI+MM6HefLu9xxPnjwIJ07d6ZZs2asXbuWHTt2MGnSJPz9/Yu3eeqpp1i8eDGff/4569at4+TJk/Tv37+iPoJbuNxxHj16NMuXL2fevHns2bOHUaNGER8fz5dfflm8jY7z5a1bt47HH3+czZs3s3LlSgoKCujevTvZ2dnF21zuOBYVFdGnTx/y8/PZuHEjH3/8MR999BGTJ092fsGGXBXAWLhwYfHY4XAY4eHhxuuvv168LC0tzfDz8zM+/fRTwzAMY/fu3QZgbN26tXibZcuWGTabzThx4kSF1e5Ofn+cL+b77783AOPIkSOGYeg4l8WljvPx48eNa665xti5c6dRv35946233ipep+N85S52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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 75
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "It is not allowed to plot quantities with different units on the same axis:"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2026-03-04T13:57:26.202350Z",
     "start_time": "2026-03-04T13:57:26.081447900Z"
    }
   },
   "cell_type": "code",
   "source": "try:\n    plt.plot([101, 125, 150] * u.ms, [101, 125, 150] * u.cmeter)\n    plt.plot([0.1, 0.15, 0.2] * u.second, [111, 135, 160] * u.cmeter)\n    plt.plot([0.1, 0.15, 0.2] * u.second, [131, 155, 180] * u.mA)\nexcept Exception as e:\n    print(e)",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Failed to convert value(s) to axis units: Quantity([131 155 180], \"mA\")\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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EREREWdQ2BERERGPprAjIiIiHs3SCcqu4tdpS2obISIi4j5+/d6+3PRjhR0gMzMTQG0jRERE3FBmZibBwcGXXK+7sQCHw8HJkyepVq0aNpvNafvNyMigXr16HDt2THd5lTMd64qh41wxdJwrho5zxSjP42wYBpmZmURERGC3X3pmjs7sAHa7nbp165bb/tWSouLoWFcMHeeKoeNcMXScK0Z5Hec/O6PzK01QFhEREY+msCMiIiIeTWGnHPn5+fH888/j5+dndSkeT8e6Yug4Vwwd54qh41wxXOE4a4KyiIiIeDSd2RERERGPprAjIiIiHk1hR0RERDyawo6IiIh4NIWdMli/fj19+/YlIiICm83GokWLSqw3DIPJkydTp04dAgICiI2NZf/+/SW2SU1NJS4ujqCgIEJCQhg6dChZWVkV+Clc358d54KCAiZMmEDr1q2pWrUqERER/PWvf+XkyZMl9qHjfHmX+/v8W48++ig2m4233367xHId58srzXHes2cPd955J8HBwVStWpWOHTty9OjR4vW5ubk8/vjjhIWFERgYyIABAzh9+nQFfgrXd7njnJWVRXx8PHXr1iUgIIAWLVowe/bsEtvoOF/e1KlT6dixI9WqVaNWrVr069ePvXv3ltimNMfx6NGj9OnThypVqlCrVi3GjRtHYWGh0+tV2CmD7OxsoqKimDlz5kXXv/baa0yfPp3Zs2ezZcsWqlatSo8ePcjNzS3eJi4ujl27drFy5UqWLFnC+vXrGTZsWEV9BLfwZ8f5woULJCYmMmnSJBITE1mwYAF79+7lzjvvLLGdjvPlXe7v868WLlzI5s2biYiI+MM6HefLu9xxPnjwIJ07d6ZZs2asXbuWHTt2MGnSJPz9/Yu3eeqpp1i8eDGff/4569at4+TJk/Tv37+iPoJbuNxxHj16NMuXL2fevHns2bOHUaNGER8fz5dfflm8jY7z5a1bt47HH3+czZs3s3LlSgoKCujevTvZ2dnF21zuOBYVFdGnTx/y8/PZuHEjH3/8MR999BGTJ092fsGGXBXAWLhwYfHY4XAY4eHhxuuvv168LC0tzfDz8zM+/fRTwzAMY/fu3QZgbN26tXibZcuWGTabzThx4kSF1e5Ofn+cL+b77783AOPIkSOGYeg4l8WljvPx48eNa665xti5c6dRv35946233ipep+N85S52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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 76
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "brainpy-dev",
   "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.10.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
