{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "2ee1d062", "metadata": {}, "outputs": [], "source": [ "# This code is written by Nooshin Abdollahi\n", "# Information about this code:\n", "# - Motor axons are not included\n", "# - there are not transverse connections between Boundary and Boundary" ] }, { "cell_type": "code", "execution_count": 2, "id": "af4c646e", "metadata": {}, "outputs": [], "source": [ "# show the time of execution\n", "from datetime import datetime\n", "start_time = datetime.now()\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "493e7e8a", "metadata": {}, "outputs": [], "source": [ "from neuron import h\n", "import netpyne \n", "from netpyne import specs, sim \n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from typing import Tuple, List\n", "import math\n", "import sys\n", "\n", "\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 4, "id": "d05a8722", "metadata": {}, "outputs": [], "source": [ "# Import nesseccery files from Matlab\n", "\n", "R = np.loadtxt(\"R.txt\") # All axons with different radius\n", "G = np.loadtxt(\"G.txt\") # Axon's groups\n", "C = np.loadtxt(\"C.txt\") # Coordinates of each axon (x,y)\n", "neighboringAxon = np.loadtxt(\"neighboringAxon.txt\")\n", "dist = np.loadtxt(\"dist.txt\") \n", "dist_edge = np.loadtxt(\"Distance_edge.txt\") \n", "AVE_area_around_axon = np.loadtxt(\"Ave_area_around_axon.txt\")\n", "\n", "unique_radius = np.loadtxt(\"unique_radius.txt\") # including different types\n", "Number_of_nodes = np.loadtxt(\"Number_of_nodes.txt\") # Number of nodes for the specified axon total length\n", "\n", "parameters = np.loadtxt(\"parameters.txt\") \n", "\n", "# importing all the connections\n", "import scipy.io as io\n", "\n", "for i in range(1,2):\n", " for j in range(1,2):\n", " if j>=i:\n", " l = [i, j]\n", " z = ''.join([str(n) for n in l])\n", " Input = io.loadmat('Connect_types_{}.mat'.format(z) , squeeze_me=True) \n", " I = Input['SAVE']; \n", " locals()[\"Connect_types_\"+str(z)]=[]\n", " for v in range(len(I)):\n", " D = I[v].strip() \n", " locals()[\"Connect_types_\"+str(z)].append(D) \n", "\n", "\n", "# Boundary connections\n", "for i in range(1,2):\n", " Input = io.loadmat('Boundary_to_{}.mat'.format(i) , squeeze_me=True) \n", " I = Input['SAVE']; \n", " locals()[\"Boundary_to_\"+str(i)]=[]\n", " for v in range(len(I)):\n", " D = I[v].strip() \n", " locals()[\"Boundary_to_\"+str(i)].append(D) \n", " \n", "\n", "\n", "#\n", "Boundary_coordinates = np.loadtxt(\"Boundary_coordinates.txt\")\n", "Boundary_neighboring = np.loadtxt(\"Boundary_neighboring.txt\")\n", "Boundary_dist = np.loadtxt(\"Boundary_dist.txt\") \n", "\n", "\n", "############## importing files related to transverse resistance (Rg) and Areas\n", "\n", "for i in range(1,2):\n", " for j in range(1,2):\n", " if j>=i:\n", " l = [i, j]\n", " z = ''.join([str(n) for n in l])\n", " Input = np.loadtxt('Rg_{}.txt'.format(z) ) \n", " locals()[\"Rg_\"+str(z)]=Input\n", " \n", "\n", "\n", " \n", "for i in range(1,2):\n", " Input = np.loadtxt('Boundary_Rg_{}.txt'.format(i) ) \n", " locals()[\"Boundary_Rg_\"+str(i)]=Input\n", "\n", " \n", " \n", " \n", " \n", "for i in range(1,2):\n", " for j in range(1,2):\n", " if j>i:\n", " l = [i, j]\n", " z = ''.join([str(n) for n in l])\n", " Input = np.loadtxt('Areas_{}.txt'.format(z) ) \n", " locals()[\"Areas_\"+str(z)]=Input\n", " \n", " \n", " \n", " \n" ] }, { "cell_type": "code", "execution_count": 5, "id": "cf1c9f69", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\t1 \n", "\t1 \n" ] } ], "source": [ "# Network parameters\n", "netParams = specs.NetParams()\n", "\n", "netParams.sizeX=3000\n", "netParams.sizeY=3000\n", "netParams.sizeZ=3000\n", "\n", "\n", "################################# Importing Axons(including C fibers and the others) and Boundary ####################################\n", "\n", "netParams.importCellParams(\n", " cellInstance=True,\n", " label='Boundary', \n", " conds={'cellType': 'Boundary', 'cellModel': 'Boundary'},\n", " fileName='Boundarycable.hoc', \n", " cellName='Boundary', \n", " importSynMechs=True) ;\n", "\n", "\n", "\n", "\n", "# Myelinated axons have different types (i.e. diameters)\n", "# How many types... do I have? print(len(unique_radius)-1), -1 because the first eleman is for C fiber\n", "# each type is a specific diameter\n", "\n", "netParams.importCellParams(\n", " cellInstance=True,\n", " label='type1', \n", " conds={'cellType': 'type1', 'cellModel': 'type1'},\n", " fileName='type1.hoc', \n", " cellName='type1', \n", " importSynMechs=True) ;\n", "\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "d5ef8f97", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4\n" ] } ], "source": [ "###################################### Locating each axon in specific (x,y) #################################################\n", "\n", "\n", "\n", "netParams.popParams[\"Axon0\"] = {\n", " 'cellType': 'type1', \n", " 'numCells':1 , \n", " 'cellModel': 'type1', \n", " 'xRange':[C[0][0], C[0][0]], \n", " 'yRange':[0, 0], \n", " 'zRange':[C[0][1], C[0][1]]} \n", "\n", "netParams.popParams[\"Axon1\"] = {\n", " 'cellType': 'type1', \n", " 'numCells':1 , \n", " 'cellModel': 'type1', \n", " 'xRange':[C[1][0], C[1][0]], \n", " 'yRange':[0, 0], \n", " 'zRange':[C[1][1], C[1][1]]}\n", " \n", " \n", " \n", " \n", " \n", "########################################### Locating Boundary Cables ########################################################\n", "\n", "\n", "\n", " \n", "netParams.popParams[\"Boundary0\"] = {\n", " 'cellType': 'Boundary', \n", " 'numCells':1 , \n", " 'cellModel': 'Boundary', \n", " 'xRange':[Boundary_coordinates[0][0], Boundary_coordinates[0][0]], \n", " 'yRange':[0, 0], \n", " 'zRange':[Boundary_coordinates[0][1], Boundary_coordinates[0][1]]} \n", "\n", "\n", " \n", " \n", "netParams.popParams[\"Boundary1\"] = {\n", " 'cellType': 'Boundary', \n", " 'numCells':1 , \n", " 'cellModel': 'Boundary', \n", " 'xRange':[Boundary_coordinates[1][0], Boundary_coordinates[1][0]], \n", " 'yRange':[0, 0], \n", " 'zRange':[Boundary_coordinates[1][1], Boundary_coordinates[1][1]]} \n", "\n", " \n", " \n", "\n", "# in Total, how many Cells does Netpyne generate? Length(R)+len(Boundary_coordinates)\n", "print(len(R)+len(Boundary_coordinates))\n", "\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "4adc83be", "metadata": {}, "outputs": [], "source": [ "################################################### Stimulation ############################################################\n", "# Which group of axons do you want to stimulate?\n", "# Group1: motor axons Group2: C fibers Group3: Adelta Group4: Abeta\n", "\n", "\n", "#netParams.stimSourceParams['Input1'] = {'type': 'IClamp', 'del': 1, 'dur': 0.1, 'amp': 0.4}\n", "netParams.stimSourceParams['Input1'] = {'type': 'VClamp', 'dur': [1, 0.02, 0], 'amp':[-80, 0, 0]}\n", "\n", " \n", "netParams.stimTargetParams['Input1->Stim_1'] = {'source': 'Input1', 'sec':'node_0', 'loc': 0.5, 'conds': {'pop':\"Axon0\"}} \n", "#netParams.stimTargetParams['Input1->Stim_2'] = {'source': 'Input1', 'sec':'node_0', 'loc': 0.5, 'conds': {'pop':\"Axon1\"}} \n", "\n", "\n", "\n", "\n", "XG1 = 1e-9 # 1e-9: disconnect from ground 1e9: Connect to ground\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "90a2f08b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Start time: 2023-01-12 00:32:43.600120\n", "\n", "Creating network of 4 cell populations on 1 hosts...\n", " Number of cells on node 0: 4 \n", " Done; cell creation time = 0.39 s.\n", "Making connections...\n", " Number of connections on node 0: 0 \n", " Done; cell connection time = 0.00 s.\n", "Adding stims...\n", " Number of stims on node 0: 1 \n", " Done; cell stims creation time = 0.00 s.\n", "Recording 6 traces of 2 types on node 0\n" ] } ], "source": [ "simConfig = specs.SimConfig()\n", "simConfig.hParams = {'celsius': 37 }\n", "\n", "simConfig.dt = 0.005 # Internal integration timestep to use default is 0.025\n", "simConfig.duration = 6\n", "simConfig.recordStim = True\n", "simConfig.recordStep = 0.005 # Step size in ms to save data (e.g. V traces, LFP, etc) default is 0.1\n", "#simConfig.cache_efficient = True\n", "#simConfig.cvode_active = True\n", "# simConfig.cvode_atol=0.0001\n", "# simConfig.cvode_rtol=0.0001\n", "\n", "\n", "simConfig.recordTraces = {'V_node_0' :{'sec':'node_0','loc':0.5,'var':'v'}}\n", "simConfig.analysis['plotTraces'] = {'include': ['allCells']} # ['Axon0','Axon1']\n", "\n", "simConfig.analysis['plot2Dnet'] = True\n", "simConfig.analysis['plot2Dnet'] = {'include': ['allCells'], 'view': 'xz'}\n", "\n", "\n", "\n", "#simConfig.recordLFP = [[56.39,-4000,51.74]] # Determine the location of the LFP electrode\n", "\n", "\n", "\n", "\n", "\n", "\n", "sim.create(netParams, simConfig)\n", "\n", "\n" ] }, { "cell_type": "markdown", "id": "9045099d", "metadata": {}, "source": [ "### xraxial and transverese conductances" ] }, { "cell_type": "code", "execution_count": 9, "id": "41af5705", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.1\n", "95769.75706051444\n", "0.1\n", "95769.75706051444\n" ] } ], "source": [ "# Since by default Netpyne does not insert the parameters of the extracellular mechanism, I insert them in this section\n", "# this section includes \"longitudinal\" resistivities (i.e. xraxial)\n", "\n", "#Total_Length=10000\n", "\n", "number_boundary = 4000 #Total_Length/Section_Length \n", "number_boundary = int(number_boundary)\n", "\n", "\n", "\n", "\n", "\n", "rhoa=0.7e6 \n", "mycm=0.1 \n", "mygm=0.001 \n", "\n", "space_p1=0.002 \n", "space_p2=0.004\n", "space_i=0.004\n", "\n", "\n", "\n", "\n", "############################# For Boundary Cables #################################################\n", "\n", "# soma section is just for LFP recording, LFP in Netpyne does not work if at least one section is not called soma \n", "\n", "\n", "for j in range(len(R),len(R)+len(Boundary_coordinates)):\n", " \n", " S = sim.net.cells[j].secs[\"soma\"][\"hObj\"] \n", " for seg in S:\n", " seg.xraxial[0] = 1e9\n", " seg.xraxial[1] = 1e9\n", " seg.xg[0] = 1e9\n", " seg.xg[1] = 1e9\n", " seg.xc[0] = 0\n", " seg.xc[1] = 0\n", "\n", "\n", " for i in range(number_boundary): \n", " S = sim.net.cells[j].secs[\"section_%s\" %i][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = 1e9\n", " seg.xraxial[1] = 1e9\n", " seg.xg[0] = 1e9\n", " seg.xg[1] = 1e9\n", " seg.xc[0] = 0\n", " seg.xc[1] = 0\n", " \n", " \n", "\n", " \n", "############################## For myelinated sensory axons ##################################### \n", "\n", "\n", "rho2 = 1211 * 1e-6 # Mohm-cm\n", "\n", "\n", "\n", "\n", "for j in range(len(R)):\n", " if G[j]!=2: # if it is not a C fiber \n", " x = np.where(unique_radius == R[j]) \n", " x = int(x[0])\n", " nodes = Number_of_nodes\n", " nodes=int(nodes)\n", " \n", " \n", " nl = parameters[4]\n", " nodeD = parameters[1]\n", " paraD1 = nodeD\n", " axonD = parameters[0]\n", " paraD2 = axonD\n", " \n", " Rpn0 = (rhoa*.01)/((math.pi)*((((nodeD/2)+space_p1)**2)-((nodeD/2)**2)))\n", " Rpn1 = (rhoa*.01)/((math.pi)*((((paraD1/2)+space_p1)**2)-((paraD1/2)**2)))\n", " Rpn2 = (rhoa*.01)/((math.pi)*((((paraD2/2)+space_p2)**2)-((paraD2/2)**2)))\n", " Rpx = (rhoa*.01)/((math.pi)*((((axonD/2)+space_i)**2)-((axonD/2)**2)))\n", " \n", " \n", " ################### xraxial[1]\n", " \n", " radi = R[j]\n", " \n", " AVE = (AVE_area_around_axon[j]+0) /2\n", " \n", " xr = rho2 / ((math.pi)*(((radi+AVE)**2) - (radi**2)) * 1e-8) # Mohm/cm\n", " \n", " xr = xr /1\n", " \n", " print(AVE_area_around_axon[j]+0)\n", " print(xr)\n", " \n", " ##################\n", " \n", " \n", " \n", "\n", " S = sim.net.cells[j].secs[\"soma\"][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = Rpn1\n", " seg.xraxial[1] = xr \n", " seg.xg[0] = mygm/(nl*2)\n", " seg.xg[1] = XG1 # disconnect from ground\n", " seg.xc[0] = mycm/(nl*2)\n", " seg.xc[1] = 0\n", "\n", " \n", " for i in range(nodes):\n", " S = sim.net.cells[j].secs[\"node_%s\" %i][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = Rpn0\n", " seg.xraxial[1] = xr\n", " seg.xg[0] = 7.08e+04 ###########1e6\n", " seg.xg[1] = XG1\n", " seg.xc[0] = 0\n", " seg.xc[1] = 0\n", "\n", "\n", " for i in range(2*nodes):\n", " S = sim.net.cells[j].secs[\"MYSA_%s\" %i][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = Rpn1\n", " seg.xraxial[1] = xr\n", " seg.xg[0] = mygm/(nl*2)\n", " seg.xg[1] = XG1\n", " seg.xc[0] = mycm/(nl*2)\n", " seg.xc[1] = 0\n", " \n", "# if j==0:\n", "# seg.xraxial[0] = Rpn1*2\n", " \n", " \n", " \n", "\n", "\n", " for i in range(10*nodes):\n", " S = sim.net.cells[j].secs[\"FLUT_%s\" %i][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = Rpn2\n", " seg.xraxial[1] = xr\n", " seg.xg[0] = mygm/(nl*2)\n", " seg.xg[1] = XG1\n", " seg.xc[0] = mycm/(nl*2)\n", " seg.xc[1] = 0 \n", " \n", "\n", "\n", " for i in range(40*nodes):\n", " S = sim.net.cells[j].secs[\"STIN_%s\" %i][\"hObj\"]\n", " for seg in S:\n", " seg.xraxial[0] = Rpx\n", " seg.xraxial[1] = xr\n", " seg.xg[0] = mygm/(nl*2)\n", " seg.xg[1] = XG1\n", " seg.xc[0] = mycm/(nl*2)\n", " seg.xc[1] = 0\n", " \n", " \n", " \n", " \n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 10, "id": "afaf323f", "metadata": {}, "outputs": [], "source": [ "\n", "##############################This section is about transverse connections between axons #####################################\n", "# *** If you do not want to include ephaptic interaction, do not run this section\n", "# To model ephaptic effect, \"LinearMechanism\" in NEURON is used.\n", "\n", "\n", "\n", "rho = 1211 * 10000 # ohm-micron\n", "\n", "count = 0\n", "\n", "for i in range(len(R)): \n", "\n", " \n", " for j in range(len(R)): \n", " \n", " if neighboringAxon[i][j]==1:\n", " \n", "\n", " a1 = np.where(unique_radius == R[i]) # find type of R[i]\n", " a1 = a1[0][0]+1\n", " a2 = np.where(unique_radius == R[j]) # find type of R[j]\n", " a2 = a2[0][0]+1\n", "\n", "\n", " NSEG = 0\n", "\n", "\n", "\n", " if a1==a2:\n", " SEC = locals()[\"Connect_types_\"+str(a1)+str(a1)]\n", " RG = locals()[\"Rg_\"+str(a1)+str(a1)]\n", " area = (math.pi)*(parameters[1])*(np.ones((len(RG),1))) # micron^2\n", " area = area * 1e-8 #cm^2\n", " b1=i\n", " b2=j\n", " if a1==0:\n", " area = (math.pi)*0.8*10*(np.ones((len(RG),1))) # micron^2\n", " area = area * 1e-8 #cm^2\n", " \n", " \n", "\n", " if a1<a2:\n", " SEC = locals()[\"Connect_types_\"+str(a1)+str(a2)]\n", " RG = locals()[\"Rg_\"+str(a1)+str(a2)]\n", " b1=i\n", " b2=j\n", " if a1==0:\n", " area = (math.pi)*(parameters[a2][1])*(np.ones((len(RG),1)))\n", " area = area * 1e-8 #cm^2\n", " b1=j\n", " b2=i\n", " \n", " else:\n", " area = locals()[\"Areas_\"+str(a1)+str(a2)]\n", " area = area[ : , np.newaxis]\n", " area = area * 1e-8\n", " \n", " \n", "\n", " if a1>a2:\n", " SEC = locals()[\"Connect_types_\"+str(a2)+str(a1)]\n", " RG = locals()[\"Rg_\"+str(a2)+str(a1)]\n", " b1=j\n", " b2=i\n", " if a2==0:\n", " area = (math.pi)*(parameters[a1][1])*(np.ones((len(RG),1)))\n", " area = area * 1e-8 #cm^2\n", " b1=i\n", " b2=j\n", " \n", " else:\n", " area = locals()[\"Areas_\"+str(a2)+str(a1)]\n", " area = area[ : , np.newaxis]\n", " area = area * 1e-8\n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", " locals()[\"sl\"+str(count)] = h.SectionList()\n", "\n", " for z1 in range(int(len(SEC)/2)): \n", "\n", " S = sim.net.cells[b1].secs[SEC[z1]][\"hObj\"]\n", " NSEG=NSEG+S.nseg\n", " locals()[\"sl\"+str(count)].append(S)\n", "\n", " for z2 in range(int(len(SEC)/2),int(len(SEC))):\n", "\n", " S = sim.net.cells[b2].secs[SEC[z2]][\"hObj\"]\n", " locals()[\"sl\"+str(count)].append(S) \n", " \n", " \n", "\n", " nsegs=int(NSEG)\n", "\n", " locals()[\"gmat\"+str(count)] =h.Matrix(2*nsegs, 2*nsegs)\n", " locals()[\"cmat\"+str(count)] =h.Matrix(2*nsegs, 2*nsegs)\n", " locals()[\"bvec\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"xl\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"layer\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"layer\"+str(count)].fill(2) # connect layer 2\n", " locals()[\"e\"+str(count)] = h.Vector(2*nsegs)\n", "\n", " for z3 in range(2*nsegs):\n", " locals()[\"xl\"+str(count)][z3] = 0.5\n", " \n", " \n", " \n", " \n", " \n", " \n", " d = dist_edge[i][j] + 0 #dist[i][j]\n", " rd = rho*d\n", " s = ((unique_radius*2)+(unique_radius*2))/2\n", " locals()[\"RG\"+str(count)] = np.array(RG)*s\n", " locals()[\"Resistance\"+str(count)] = rd/locals()[\"RG\"+str(count)]\n", " locals()[\"Conductance\"+str(count)]=[]\n", " for z4 in range(len(locals()[\"Resistance\"+str(count)])):\n", " locals()[\"Conductance\"+str(count)].append(1/(locals()[\"Resistance\"+str(count)][z4]*area[z4]))\n", " \n", "\n", " \n", " for z5 in range(0,nsegs,1):\n", "\n", " locals()[\"gmat\"+str(count)].setval(z5, z5, locals()[\"Conductance\"+str(count)][z5][0] )\n", " locals()[\"gmat\"+str(count)].setval(z5, nsegs+z5, -locals()[\"Conductance\"+str(count)][z5][0])\n", " locals()[\"gmat\"+str(count)].setval(nsegs+z5, z5, -locals()[\"Conductance\"+str(count)][z5][0])\n", " locals()[\"gmat\"+str(count)].setval(nsegs+z5, nsegs+z5, locals()[\"Conductance\"+str(count)][z5][0])\n", " \n", " \n", " locals()[\"GMAT\"+str(i)+str(j)] = locals()[\"gmat\"+str(count)]\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "# geA= 1000\n", " \n", "# for z5 in range(0,nsegs,1):\n", "# locals()[\"gmat\"+str(count)].setval(z5, z5, geA)\n", "# locals()[\"gmat\"+str(count)].setval(z5, nsegs+z5, -geA)\n", "# locals()[\"gmat\"+str(count)].setval(nsegs+z5, z5, -geA)\n", "# locals()[\"gmat\"+str(count)].setval(nsegs+z5, nsegs+z5, geA)\n", "\n", "\n", "\n", "\n", " locals()[\"lm\"+str(count)] = h.LinearMechanism(locals()[\"cmat\"+str(count)], locals()[\"gmat\"+str(count)], locals()[\"e\"+str(count)], locals()[\"bvec\"+str(count)], locals()[\"sl\"+str(count)], locals()[\"xl\"+str(count)], locals()[\"layer\"+str(count)])\n", "\n", " count=count+1\n", " \n", " SEC.clear\n", " del RG\n", " del area\n", " \n", " \n", "\n", " \n", "#print(count) \n", " \n", " \n" ] }, { "cell_type": "code", "execution_count": 11, "id": "63e6e52d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SectionList[2]\n" ] } ], "source": [ "print(sl0)" ] }, { "cell_type": "code", "execution_count": 12, "id": "b71ff07f", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3.54e+04\n", " -3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -7.08e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7.08e+04 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3.54e+04 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3.54e+04\n" ] } ], "source": [ "K = GMAT01.printf() \n", "#GMAT01[1][1].printf()\n" ] }, { "cell_type": "code", "execution_count": 13, "id": "9f7204b0", "metadata": {}, "outputs": [], "source": [ " \n", " \n", " \n", "############################### Transverse connections between Boundary cables and Axons ######################################\n", "\n", "\n", "rho = 1.136e5 * 10000 * 4.7e-4 * 10000 # ohm-micron^2\n", "\n", "\n", "\n", "rows = len(Boundary_neighboring)\n", "\n", "for i in range(rows):\n", " \n", " for j in range(len(R)):\n", " \n", " if Boundary_neighboring[i][j]==1:\n", " \n", " NSEG = 0\n", "\n", " a2 = np.where(unique_radius == R[j]) # find type \n", " a2 = a2[0][0]+1\n", " \n", " Boundary_RG = locals()[\"Boundary_Rg_\"+str(a2)]\n", " area = (math.pi)*(parameters[1])*(np.ones((len(Boundary_RG),1)))\n", " area = area * 1e-8 #cm^2\n", " \n", "\n", " SEC = locals()[\"Boundary_to_\"+str(a2)]\n", "\n", "\n", " locals()[\"sl\"+str(count)] = h.SectionList()\n", "\n", " for z1 in range(int(len(SEC)/2)): \n", "\n", " S = sim.net.cells[j].secs[SEC[z1]][\"hObj\"]\n", " NSEG=NSEG+S.nseg\n", " locals()[\"sl\"+str(count)].append(S)\n", "\n", " for z2 in range(int(len(SEC)/2),int(len(SEC))):\n", "\n", " S = sim.net.cells[len(R)+i].secs[SEC[z2]][\"hObj\"]\n", " locals()[\"sl\"+str(count)].append(S) \n", "\n", "\n", "\n", "\n", " nsegs=int(NSEG)\n", "\n", " locals()[\"gmat\"+str(count)] =h.Matrix(2*nsegs, 2*nsegs)\n", " locals()[\"cmat\"+str(count)] =h.Matrix(2*nsegs, 2*nsegs)\n", " locals()[\"bvec\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"xl\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"layer\"+str(count)] =h.Vector(2*nsegs)\n", " locals()[\"layer\"+str(count)].fill(2) # connect layer 2\n", " locals()[\"e\"+str(count)] = h.Vector(2*nsegs)\n", "\n", " for z3 in range(2*nsegs):\n", " locals()[\"xl\"+str(count)][z3] = 0.5\n", "\n", "\n", " \n", " \n", " rd = rho\n", " s = (unique_radius*2)\n", " locals()[\"Boundary_RG\"+str(count)] = np.array(Boundary_RG)*s\n", " locals()[\"Resistance\"+str(count)] = rd/locals()[\"Boundary_RG\"+str(count)]\n", " locals()[\"Conductance\"+str(count)]=[]\n", " for z4 in range(len(locals()[\"Resistance\"+str(count)])):\n", " locals()[\"Conductance\"+str(count)].append(1/(locals()[\"Resistance\"+str(count)][z4]*area[z4]))\n", "\n", " \n", " for z5 in range(0,nsegs,1):\n", "\n", " locals()[\"gmat\"+str(count)].setval(z5, z5, locals()[\"Conductance\"+str(count)][z5][0] * 1)\n", " locals()[\"gmat\"+str(count)].setval(z5, nsegs+z5, - locals()[\"Conductance\"+str(count)][z5][0] * 1)\n", " locals()[\"gmat\"+str(count)].setval(nsegs+z5, z5, - locals()[\"Conductance\"+str(count)][z5][0] * 1)\n", " locals()[\"gmat\"+str(count)].setval(nsegs+z5, nsegs+z5, locals()[\"Conductance\"+str(count)][z5][0] * 1)\n", " \n", " \n", " \n", " locals()[\"GMAT_BOUNDARY\"+str(i)+str(j)] = locals()[\"gmat\"+str(count)]\n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", "# geB= 1\n", " \n", "# for z6 in range(0,nsegs,1):\n", "\n", "# locals()[\"gmat\"+str(count)].setval(z6, z6, geB)\n", "# locals()[\"gmat\"+str(count)].setval(z6, nsegs+z6, -geB)\n", "# locals()[\"gmat\"+str(count)].setval(nsegs+z6, z6, -geB)\n", "# locals()[\"gmat\"+str(count)].setval(nsegs+z6, nsegs+z6, geB)\n", "\n", "\n", "\n", "\n", " locals()[\"lm\"+str(count)] = h.LinearMechanism(locals()[\"cmat\"+str(count)], locals()[\"gmat\"+str(count)], locals()[\"e\"+str(count)], locals()[\"bvec\"+str(count)], locals()[\"sl\"+str(count)], locals()[\"xl\"+str(count)], locals()[\"layer\"+str(count)])\n", "\n", " count=count+1\n", " \n", " \n", " SEC.clear\n", " del Boundary_RG\n", " del area\n", " \n", " \n", " \n", " \n", " \n", "\n", "#print(count) \n", " \n", " \n", " \n", "# from IPython.display import clear_output\n", "\n", "# clear_output(wait=True)\n", "\n", "\n", " \n", "#gmat0.printf() \n", "\n", "# for sec in sl0:\n", "# print(sec)" ] }, { "cell_type": "code", "execution_count": 14, "id": "2f2f0781", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(R)" ] }, { "cell_type": "code", "execution_count": 15, "id": "7808a6c6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8.03 \n", " -8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -16.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16.1 0 \n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -8.03 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8.03 \n" ] }, { "data": { "text/plain": [ "0.0" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "GMAT_BOUNDARY00.printf() " ] }, { "cell_type": "markdown", "id": "b2a6c256", "metadata": {}, "source": [ "#### Recordings" ] }, { "cell_type": "code", "execution_count": 16, "id": "e9456377", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Vector[638]" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_05_v\"+str(i1)] = sim.net.cells[0].secs[\"MYSA_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_v_05_MYSA\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_v_05_MYSA\"+str(i1)].record(locals()[\"Abeta0_05_v\"+str(i1)](0.5)._ref_v)\n", "\n", " \n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_1_v\"+str(i1)] = sim.net.cells[0].secs[\"MYSA_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_v_1_MYSA\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_v_1_MYSA\"+str(i1)].record(locals()[\"Abeta0_1_v\"+str(i1)](1)._ref_v)\n", "\n", " \n", " \n", " \n", "\n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_0_v\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_v_0_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_v_0_node\"+str(i1)].record(locals()[\"Abeta0_0_v\"+str(i1)](0)._ref_v)\n", "\n", "\n", "\n", "\n", "\n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_05_v\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_v_05_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_v_05_node\"+str(i1)].record(locals()[\"Abeta0_05_v\"+str(i1)](0.5)._ref_v)\n", "\n", "\n", " \n", "\n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_1_v\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_v_1_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_v_1_node\"+str(i1)].record(locals()[\"Abeta0_1_v\"+str(i1)](1)._ref_v) \n", " \n", " \n", " \n", " \n", " \n", "\n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_icap\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_icap_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_icap_node\"+str(i1)].record(locals()[\"Abeta0_icap\"+str(i1)](0.5)._ref_i_cap) \n", " \n", " \n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_ina\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_ina_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_ina_node\"+str(i1)].record(locals()[\"Abeta0_ina\"+str(i1)](0.5)._ref_ina_axnode) \n", " \n", "\n", "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_il\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_il_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_il_node\"+str(i1)].record(locals()[\"Abeta0_il\"+str(i1)](0.5)._ref_il_axnode) \n", " \n", " \n", " \n", "for i3 in range(29,31):\n", "\n", " locals()[\"Abeta0_MYSA_i\"+str(i3)] = sim.net.cells[0].secs[\"MYSA_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_icap_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_icap_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_i\"+str(i3)](0.5)._ref_i_cap)\n", " locals()[\"Abeta0_il_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_il_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_i\"+str(i3)](0.5)._ref_i_pas) \n", " \n", " \n", "\n", "for i3 in range(579,621):\n", "\n", " locals()[\"Abeta0_i\"+str(i3)] = sim.net.cells[0].secs[\"STIN_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_icap_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_icap_STIN\"+str(i3)].record(locals()[\"Abeta0_i\"+str(i3)](0.5)._ref_i_cap)\n", " locals()[\"Abeta0_il_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_il_STIN\"+str(i3)].record(locals()[\"Abeta0_i\"+str(i3)](0.5)._ref_i_pas) \n", " \n", " \n", " \n", "for i3 in range(145,155):\n", "\n", " locals()[\"Abeta0_FLUT_i\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_icap_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_icap_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_i\"+str(i3)](0.5)._ref_i_cap)\n", " locals()[\"Abeta0_il_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_il_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_i\"+str(i3)](0.5)._ref_i_pas) \n", " \n", "\n", " \n", "#####\n", " \n", "for i3 in range(579,621):\n", "\n", " locals()[\"Abeta0_vext0\"+str(i3)] = sim.net.cells[0].secs[\"STIN_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext0_05_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_05_STIN\"+str(i3)].record(locals()[\"Abeta0_vext0\"+str(i3)](0.5)._ref_vext[0])\n", " locals()[\"Abeta0_vext0_1_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_1_STIN\"+str(i3)].record(locals()[\"Abeta0_vext0\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", " \n", " \n", "for i3 in range(145,155):\n", "\n", " locals()[\"Abeta0_FLUT_vext0\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext0_05_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_05_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_vext0\"+str(i3)](0.5)._ref_vext[0])\n", " locals()[\"Abeta0_vext0_1_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_1_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_vext0\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", " \n", "for i3 in range(29,31):\n", "\n", " locals()[\"Abeta0_MYSA_vext0\"+str(i3)] = sim.net.cells[0].secs[\"MYSA_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext0_0_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_0_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext0\"+str(i3)](0)._ref_vext[0])\n", " locals()[\"Abeta0_vext0_05_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_05_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext0\"+str(i3)](0.5)._ref_vext[0])\n", " locals()[\"Abeta0_vext0_1_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_1_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext0\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", "for i3 in range(15,16):\n", "\n", " locals()[\"Abeta0_node_vext0\"+str(i3)] = sim.net.cells[0].secs[\"node_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext0_05_node\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_05_node\"+str(i3)].record(locals()[\"Abeta0_node_vext0\"+str(i3)](0.5)._ref_vext[0])\n", "\n", " \n", "for i3 in range(15,16):\n", "\n", " locals()[\"Abeta0_node_vext0\"+str(i3)] = sim.net.cells[0].secs[\"node_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext0_1_node\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext0_1_node\"+str(i3)].record(locals()[\"Abeta0_node_vext0\"+str(i3)](1)._ref_vext[0])\n", " \n", " \n", " \n", "#####\n", "\n", "\n", " \n", "for i3 in range(579,621):\n", "\n", " locals()[\"Abeta0_vext1\"+str(i3)] = sim.net.cells[0].secs[\"STIN_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext1_05_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_05_STIN\"+str(i3)].record(locals()[\"Abeta0_vext1\"+str(i3)](0.5)._ref_vext[1])\n", " locals()[\"Abeta0_vext1_1_STIN\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_1_STIN\"+str(i3)].record(locals()[\"Abeta0_vext1\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", " \n", " \n", "for i3 in range(145,155):\n", "\n", " locals()[\"Abeta0_FLUT_vext1\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext1_05_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_05_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_vext1\"+str(i3)](0.5)._ref_vext[1])\n", " locals()[\"Abeta0_vext1_1_FLUT\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_1_FLUT\"+str(i3)].record(locals()[\"Abeta0_FLUT_vext1\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", " \n", "for i3 in range(29,31):\n", "\n", " locals()[\"Abeta0_MYSA_vext1\"+str(i3)] = sim.net.cells[0].secs[\"MYSA_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext1_0_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_0_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext1\"+str(i3)](0)._ref_vext[1])\n", " locals()[\"Abeta0_vext1_05_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_05_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext1\"+str(i3)](0.5)._ref_vext[1])\n", " locals()[\"Abeta0_vext1_1_MYSA\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_1_MYSA\"+str(i3)].record(locals()[\"Abeta0_MYSA_vext1\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", "for i3 in range(15,16):\n", "\n", " locals()[\"Abeta0_node_vext1\"+str(i3)] = sim.net.cells[0].secs[\"node_%s\"%i3][\"hObj\"]\n", " locals()[\"Abeta0_vext1_05_node\"+str(i3)] = h.Vector()\n", " locals()[\"Abeta0_vext1_05_node\"+str(i3)].record(locals()[\"Abeta0_node_vext1\"+str(i3)](0.5)._ref_vext[1])\n", "\n", " \n", " \n", " \n", " \n", "i8=1663 \n", "locals()[\"v1Mext\"+str(i8)] = sim.net.cells[2].secs[\"section_1663\"][\"hObj\"]\n", "locals()[\"boundary0_vext1_section\"+str(i8)] = h.Vector()\n", "locals()[\"boundary0_vext1_section\"+str(i8)].record(locals()[\"v1Mext\"+str(i8)](0.5)._ref_vext[1]) \n", "\n", "\n", "\n", "\n", "i8=15 \n", "locals()[\"vext\"+str(i8)] = sim.net.cells[1].secs[\"node_15\"][\"hObj\"]\n", "locals()[\"Abeta1_vext1_05_node\"+str(i8)] = h.Vector()\n", "locals()[\"Abeta1_vext1_05_node\"+str(i8)].record(locals()[\"vext\"+str(i8)](0.5)._ref_vext[1]) \n", "\n", "\n", "i8=15 \n", "locals()[\"vext\"+str(i8)] = sim.net.cells[0].secs[\"node_15\"][\"hObj\"]\n", "locals()[\"Abeta0_vext1_1_node\"+str(i8)] = h.Vector()\n", "locals()[\"Abeta0_vext1_1_node\"+str(i8)].record(locals()[\"vext\"+str(i8)](1)._ref_vext[1]) \n", "\n" ] }, { "cell_type": "code", "execution_count": 17, "id": "5360fb79", "metadata": {}, "outputs": [], "source": [ "for i1 in range(36):\n", "\n", " locals()[\"Abeta0_imembrane\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", " locals()[\"Abeta0_imembrane_node\"+str(i1)] = h.Vector()\n", " locals()[\"Abeta0_imembrane_node\"+str(i1)].record(locals()[\"Abeta0_imembrane\"+str(i1)](0.5)._ref_i_membrane)\n", " \n", " \n", " \n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_icap\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_icap_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_icap_node\"+str(i1)].record(locals()[\"Abeta0_icap\"+str(i1)](0.5)._ref_i_cap) \n", " \n", "\n", " \n", " \n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_ik\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_ik_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_ik_node\"+str(i1)].record(locals()[\"Abeta0_ik\"+str(i1)](0.5)._ref_ik_axnode) \n", " \n", " \n", " \n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_il\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_il_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_il_node\"+str(i1)].record(locals()[\"Abeta0_il\"+str(i1)](0.5)._ref_il_axnode) \n", " \n", " \n", "\n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_ina\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_ina_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_ina_node\"+str(i1)].record(locals()[\"Abeta0_ina\"+str(i1)](0.5)._ref_ina_axnode) \n", " \n", " \n", " \n", " \n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_inap\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_inap_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_inap_node\"+str(i1)].record(locals()[\"Abeta0_inap\"+str(i1)](0.5)._ref_inap_axnode) \n", " \n", " " ] }, { "cell_type": "code", "execution_count": 18, "id": "ca5603a0", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "Vector[676]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# ## Recording v and vext[0], Abeta\n", "\n", "# ###################################################### Abeta0\n", "\n", "\n", "# for i1 in range(36):\n", "\n", "# locals()[\"Abeta0_v\"+str(i1)] = sim.net.cells[0].secs[\"node_%s\"%i1][\"hObj\"]\n", "# locals()[\"Abeta0_v_node\"+str(i1)] = h.Vector()\n", "# locals()[\"Abeta0_v_node\"+str(i1)].record(locals()[\"Abeta0_v\"+str(i1)](0.5)._ref_v)\n", "\n", "\n", "# # for i2 in range(36):\n", "\n", "# # locals()[\"Abeta0_vex\"+str(i2)] = sim.net.cells[0].secs[\"node_%s\"%i2][\"hObj\"]\n", "# # locals()[\"Abeta0_vext0_05_node\"+str(i2)] = h.Vector()\n", "# # locals()[\"Abeta0_vext0_05_node\"+str(i2)].record(locals()[\"Abeta0_vex\"+str(i2)](0.5)._ref_vext[0])\n", "\n", " \n", "# ################################################################################################## \n", " \n", "# for i2 in range(36):\n", "\n", "# locals()[\"Abeta0_vex\"+str(i2)] = sim.net.cells[0].secs[\"node_%s\"%i2][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_node05\"+str(i2)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_node05\"+str(i2)].record(locals()[\"Abeta0_vex\"+str(i2)](0.5)._ref_vext[0])\n", "\n", "\n", "# for ii2 in range(36):\n", "\n", "# locals()[\"Abeta0_vex\"+str(ii2)] = sim.net.cells[0].secs[\"node_%s\"%ii2][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_node1\"+str(ii2)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_node1\"+str(ii2)].record(locals()[\"Abeta0_vex\"+str(ii2)](1)._ref_vext[0]) \n", " \n", " \n", "# for ij2 in range(36):\n", "\n", "# locals()[\"Abeta0_vex\"+str(ij2)] = sim.net.cells[0].secs[\"node_%s\"%ij2][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_node0\"+str(ij2)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_node0\"+str(ij2)].record(locals()[\"Abeta0_vex\"+str(ij2)](0)._ref_vext[0]) \n", " \n", " \n", "# for i3 in range(36):\n", "\n", "# locals()[\"Abeta0_vex1\"+str(i3)] = sim.net.cells[0].secs[\"node_%s\"%i3][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_node05\"+str(i3)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_node05\"+str(i3)].record(locals()[\"Abeta0_vex1\"+str(i3)](0.5)._ref_vext[1]) \n", " \n", " \n", " \n", " \n", "# for i5 in range(36):\n", "\n", "# locals()[\"Abeta0_vexx\"+str(i5)] = sim.net.cells[0].secs[\"node_%s\"%i5][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_node0\"+str(i5)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_node0\"+str(i5)].record(locals()[\"Abeta0_vexx\"+str(i5)](0)._ref_vext[1])\n", " \n", "\n", " \n", "# for i6 in range(36):\n", "\n", "# locals()[\"Abeta0_vexg\"+str(i6)] = sim.net.cells[0].secs[\"node_%s\"%i6][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_node1\"+str(i6)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_node1\"+str(i6)].record(locals()[\"Abeta0_vexg\"+str(i6)](1)._ref_vext[1])\n", " \n", " \n", " \n", " \n", "\n", "# for i4 in range(36):\n", "\n", "# locals()[\"Abeta1_vex\"+str(i4)] = sim.net.cells[1].secs[\"node_%s\"%i4][\"hObj\"]\n", "# locals()[\"Abeta1_vext1_node05\"+str(i4)] = h.Vector()\n", "# locals()[\"Abeta1_vext1_node05\"+str(i4)].record(locals()[\"Abeta1_vex\"+str(i4)](0.5)._ref_vext[1])\n", "\n", " \n", "\n", "# i8=1663 \n", "# locals()[\"v1Mext\"+str(i8)] = sim.net.cells[2].secs[\"section_1663\"][\"hObj\"]\n", "# locals()[\"boundary0_vext1_section\"+str(i8)] = h.Vector()\n", "# locals()[\"boundary0_vext1_section\"+str(i8)].record(locals()[\"v1Mext\"+str(i8)](0.5)._ref_vext[1]) \n", "\n", "\n", "\n", "\n", "\n", "i9=30 \n", "locals()[\"v00Mext\"+str(i9)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "locals()[\"MYSA30_v_05_\"] = h.Vector()\n", "locals()[\"MYSA30_v_05_\"].record(locals()[\"v00Mext\"+str(i9)](0.5)._ref_v) \n", "\n", "\n", "# i9=30 \n", "# locals()[\"v20Mext\"+str(i9)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "# locals()[\"MYSA30_vext0_05_\"] = h.Vector()\n", "# locals()[\"MYSA30_vext0_05_\"].record(locals()[\"v20Mext\"+str(i9)](0.5)._ref_vext[0]) \n", "\n", "\n", "\n", "\n", "# i9=30 \n", "# locals()[\"v0Mext\"+str(i9)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "# locals()[\"MYSA30_vext0_1_\"] = h.Vector()\n", "# locals()[\"MYSA30_vext0_1_\"].record(locals()[\"v0Mext\"+str(i9)](1)._ref_vext[0]) \n", "\n", "\n", "\n", "\n", "\n", "# i1=30 \n", "# locals()[\"v1Mext\"+str(i1)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "# locals()[\"MYSA30_vext1_0_\"] = h.Vector()\n", "# locals()[\"MYSA30_vext1_0_\"].record(locals()[\"v1Mext\"+str(i1)](0)._ref_vext[1]) \n", "\n", "\n", "\n", "# i1=30 \n", "# locals()[\"v1Mext\"+str(i1)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "# locals()[\"MYSA30_vext1_05_\"] = h.Vector()\n", "# locals()[\"MYSA30_vext1_05_\"].record(locals()[\"v1Mext\"+str(i1)](0.5)._ref_vext[1]) \n", "\n", "\n", "\n", "\n", "# i1=30 \n", "# locals()[\"v1Mext\"+str(i1)] = sim.net.cells[0].secs[\"MYSA_30\"][\"hObj\"]\n", "# locals()[\"MYSA30_vext1_1_\"] = h.Vector()\n", "# locals()[\"MYSA30_vext1_1_\"].record(locals()[\"v1Mext\"+str(i1)](1)._ref_vext[1]) \n", "\n", "\n", " \n", "# i2=150 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT150_vext0_05_\"] = h.Vector()\n", "# locals()[\"FLUT150_vext0_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[0]) \n", "\n", "# i3=150 \n", "# locals()[\"v13F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT150_vext0_1_\"] = h.Vector()\n", "# locals()[\"FLUT150_vext0_1_\"].record(locals()[\"v13F\"+str(i3)](1)._ref_vext[0]) \n", "\n", " \n", "# i2=151 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT151_vext0_05_\"] = h.Vector()\n", "# locals()[\"FLUT151_vext0_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[0]) \n", "\n", "# i3=151 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT151_vext0_1_\"] = h.Vector()\n", "# locals()[\"FLUT151_vext0_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[0]) \n", "\n", " \n", "# i2=152 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT152_vext0_05_\"] = h.Vector()\n", "# locals()[\"FLUT152_vext0_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[0]) \n", "\n", "# i3=152 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT152_vext0_1_\"] = h.Vector()\n", "# locals()[\"FLUT152_vext0_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", "# i2=153 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT153_vext0_05_\"] = h.Vector()\n", "# locals()[\"FLUT153_vext0_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[0]) \n", "\n", "# i3=153 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT153_vext0_1_\"] = h.Vector()\n", "# locals()[\"FLUT153_vext0_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", " \n", "# i2=154 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT154_vext0_05_\"] = h.Vector()\n", "# locals()[\"FLUT154_vext0_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[0]) \n", "\n", "# i3=154 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT154_vext0_1_\"] = h.Vector()\n", "# locals()[\"FLUT154_vext0_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[0]) \n", " \n", " \n", "# ################# \n", "\n", " \n", "# i2=150 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT150_vext1_05_\"] = h.Vector()\n", "# locals()[\"FLUT150_vext1_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[1]) \n", "\n", "# i3=150 \n", "# locals()[\"v13F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT150_vext1_1_\"] = h.Vector()\n", "# locals()[\"FLUT150_vext1_1_\"].record(locals()[\"v13F\"+str(i3)](1)._ref_vext[1]) \n", "\n", " \n", "# i2=151 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT151_vext1_05_\"] = h.Vector()\n", "# locals()[\"FLUT151_vext1_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[1]) \n", "\n", "# i3=151 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT151_vext1_1_\"] = h.Vector()\n", "# locals()[\"FLUT151_vext1_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[1]) \n", "\n", " \n", "# i2=152 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT152_vext1_05_\"] = h.Vector()\n", "# locals()[\"FLUT152_vext1_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[1]) \n", "\n", "# i3=152 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT152_vext1_1_\"] = h.Vector()\n", "# locals()[\"FLUT152_vext1_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", "# i2=153 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT153_vext1_05_\"] = h.Vector()\n", "# locals()[\"FLUT153_vext1_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[1]) \n", "\n", "# i3=153 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT153_vext1_1_\"] = h.Vector()\n", "# locals()[\"FLUT153_vext1_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", " \n", "# i2=154 \n", "# locals()[\"v1F\"+str(i2)] = sim.net.cells[0].secs[\"FLUT_%s\"%i2][\"hObj\"]\n", "# locals()[\"FLUT154_vext1_05_\"] = h.Vector()\n", "# locals()[\"FLUT154_vext1_05_\"].record(locals()[\"v1F\"+str(i2)](0.5)._ref_vext[1]) \n", "\n", "# i3=154 \n", "# locals()[\"v1F\"+str(i3)] = sim.net.cells[0].secs[\"FLUT_%s\"%i3][\"hObj\"]\n", "# locals()[\"FLUT154_vext1_1_\"] = h.Vector()\n", "# locals()[\"FLUT154_vext1_1_\"].record(locals()[\"v1F\"+str(i3)](1)._ref_vext[1]) \n", " \n", " \n", " \n", "# ###################################\n", " \n", " \n", " \n", " \n", "# for ii3 in range(600,640):\n", "\n", "# locals()[\"Abeta0_vexe\"+str(ii3)] = sim.net.cells[0].secs[\"STIN_%s\"%ii3][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_STIN05_\"+str(ii3)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_STIN05_\"+str(ii3)].record(locals()[\"Abeta0_vexe\"+str(ii3)](0.5)._ref_vext[0])\n", "# locals()[\"Abeta0_vext0_STIN1_\"+str(ii3)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_STIN1_\"+str(ii3)].record(locals()[\"Abeta0_vexe\"+str(ii3)](1)._ref_vext[0]) \n", " \n", " \n", " \n", "# for ii3 in range(600,640):\n", "\n", "# locals()[\"Abeta0_vexe1\"+str(ii3)] = sim.net.cells[0].secs[\"STIN_%s\"%ii3][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_STIN05_\"+str(ii3)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_STIN05_\"+str(ii3)].record(locals()[\"Abeta0_vexe1\"+str(ii3)](0.5)._ref_vext[1])\n", "# locals()[\"Abeta0_vext1_STIN1_\"+str(ii3)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_STIN1_\"+str(ii3)].record(locals()[\"Abeta0_vexe1\"+str(ii3)](1)._ref_vext[1]) \n", " \n", " \n", " \n", " \n", " \n", "# for ii3 in range(36*2):\n", "\n", "# locals()[\"Abeta0_vexe\"+str(ii3)] = sim.net.cells[0].secs[\"MYSA_%s\"%ii3][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_MYSA05\"+str(ii3)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_MYSA05\"+str(ii3)].record(locals()[\"Abeta0_vexe\"+str(ii3)](0.5)._ref_vext[0])\n", " \n", " \n", "# for ii4 in range(36*2):\n", "\n", "# locals()[\"Abeta0_vexxx\"+str(ii4)] = sim.net.cells[0].secs[\"MYSA_%s\"%ii4][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_MYSA05\"+str(ii4)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_MYSA05\"+str(ii4)].record(locals()[\"Abeta0_vexxx\"+str(ii4)](0.5)._ref_vext[1])\n", " \n", " \n", " \n", "# for i3 in range(0,36*2):\n", " \n", "# locals()[\"Abeta_v0Mext\"+str(i3)] = sim.net.cells[0].secs[\"MYSA_%s\"%i3][\"hObj\"]\n", "# locals()[\"Abeta0_vext0_MYSA\"+str(i3)] = h.Vector()\n", "# locals()[\"Abeta0_vext0_MYSA\"+str(i3)].record(locals()[\"Abeta_v0Mext\"+str(i3)](0.5)._ref_vext[0])\n", " \n", " \n", " \n", "# for i3 in range(0,36*2):\n", " \n", "# locals()[\"Abeta_v1Mext\"+str(i3)] = sim.net.cells[0].secs[\"MYSA_%s\"%i3][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_MYSA\"+str(i3)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_MYSA\"+str(i3)].record(locals()[\"Abeta_v1Mext\"+str(i3)](0.5)._ref_vext[1]) \n", "\n", "\n", "# i3=1663 \n", "# locals()[\"v1Mext\"+str(i3)] = sim.net.cells[2].secs[\"section_1663\"][\"hObj\"]\n", "# locals()[\"boundary0_vext1_section\"+str(i3)] = h.Vector()\n", "# locals()[\"boundary0_vext1_section\"+str(i3)].record(locals()[\"v1Mext\"+str(i3)](0.5)._ref_vext[1]) \n", "\n", "\n", " \n", "# for i4 in range(12):\n", "\n", "# locals()[\"Abeta1_vext1\"+str(i4)] = sim.net.cells[1].secs[\"node_%s\"%i4][\"hObj\"]\n", "# locals()[\"Abeta1_vext1_node\"+str(i4)] = h.Vector()\n", "# locals()[\"Abeta1_vext1_node\"+str(i4)].record(locals()[\"Abeta1_vext1\"+str(i4)](0.5)._ref_vext[1]) \n", " \n", " \n", " \n", "# locals()[\"Abeta_vSext\"+str(220)] = sim.net.cells[0].secs[\"STIN_220\"][\"hObj\"]\n", "# locals()[\"Abeta0_vext1_STIN\"+str(220)] = h.Vector()\n", "# locals()[\"Abeta0_vext1_STIN\"+str(220)].record(locals()[\"Abeta_vSext\"+str(220)](0.5)._ref_vext[1]) \n", " \n", "# locals()[\"Abeta_v\"+str(220)] = sim.net.cells[0].secs[\"STIN_220\"][\"hObj\"]\n", "# locals()[\"Abeta0_v_STIN\"+str(220)] = h.Vector()\n", "# locals()[\"Abeta0_v_STIN\"+str(220)].record(locals()[\"Abeta_v\"+str(220)](0.5)._ref_v) \n", " \n", " \n", " \n", "t = h.Vector()\n", "t.record(h._ref_t)" ] }, { "cell_type": "markdown", "id": "d83f15db", "metadata": {}, "source": [ "#### Simulate and Analyze" ] }, { "cell_type": "code", "execution_count": 19, "id": "cd6d9f09", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Running simulation for 6.0 ms...\n", " Done; run time = 109.39 s; real-time ratio: 0.00.\n", "\n", "Gathering data...\n", " Done; gather time = 0.57 s.\n", "\n", "Analyzing...\n", " Cells: 4\n", " Connections: 0 (0.00 per cell)\n", " Spikes: 1 (41.67 Hz)\n", " Simulated time: 0.0 s; 1 workers\n", " Run time: 109.39 s\n", " Done; saving time = 0.00 s.\n", "Plotting recorded cell traces ... cell\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 720x576 with 1 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 720x576 with 1 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "text/plain": [ "<Figure size 720x576 with 0 Axes>" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "<Figure size 720x576 with 0 Axes>" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Plotting 2D representation of network cell locations and connections...\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAz8AAAK/CAYAAABHknMvAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5uElEQVR4nO3de5idZX3o/d89M5lkkskRQk4GEkggIiEHRrpbDgaoO8DbrWAUOYdXkJOlFE8BXxVFEaW7bL0o4MYKRcAALYggtWgLVfBlV0JoCFEhFMGEHAghIZNMZpKZufcfSTBiQgbIrDXJ/flc11xkrfWs5/7Nksh853nWs1LOOQAAAHZ3NdUeAAAAoBLEDwAAUATxAwAAFEH8AAAARRA/AABAEeqqPcCb2XPPPfOYMWOqPQYAALuxJ5544pWc89DtPT537tzpdXV1l+ech4eDBz1ZR0Q82t7e/vFDDjlkw7Y26NHxM2bMmJgzZ061xwAAYDeWUnpxe4/NnTt3eu/evf9uzJgxGxoaGlbV1NT4nJgeqrOzM7344ouHr169+oKI+Na2tlGuAACwHXV1dZePGTNmQ79+/dYLn56tpqYmjxw5cm1tbe1Z292mgvMAAMAuJec8vKGhobXac9A19fX1G3POA7f3uPgBAIDtq3HEZ9eRUop4k8YRPwAAQBHEDwAAUATxAwAAu7hDDz30gAEDBkxev3596u61nnnmmfo/+ZM/2b+hoWHK2LFj33Pvvff27+41dxbxAwAAu7Bnnnmm/oknnmhMKcXs2bMHdfd6H/3oR/edOHFiy4oVK/7z8ssvf+mMM87Yb8mSJT36I3S2ED8AALAL+853vrPHpEmT1n3kIx955dZbb90jIqK1tTVNmDDhwCuvvHKviIj29vaYOnXqhE9/+tMjIiLmzp3b59BDDz2gf//+k8eNG/ee22+//fUrpM2YMWPMGWecsfe0adPG9evXb8rBBx88YcGCBb0jIp566qnev/rVr/r+zd/8zZLGxsZ81llnrd5///3X33bbbYOr8b2/VbtEoQEAQE9w25wlo5e+1ta3O9cYMbB3y+lNIxd1dfu77rprjwsvvHD5YYcdtu6oo46asGjRorrRo0e333rrrc8fc8wxE4477rg1d95556COjo74+te/vrStrS2dcMIJ40499dRXfv7znz/7k5/8pPGUU04Zd9BBB/1q0qRJbRER991335B777332cMPP7xlxowZY2fNmjXqRz/60fP/+Z//2fCud72rbfDgwZ1b1n/Pe96zfsGCBX2647XY2Rz5AQCAXdSDDz7YuGTJkvqZM2euOuKII1pGjx7ddtNNNw2JiHjve9/beskllyydMWPGfjfccMPw22677bd1dXXx8MMP92tpaam98sorl/Xp0yd/4AMfaD766KNX33LLLXts2e+xxx676qijjmrp1atXnHbaaa8uWLCgISKiubm5pn///h1bzzBw4MCOtWvX1lb2O397HPkBAIAueitHZCrh5ptv3uPwww9fM2LEiPaIiBkzZrw6e/bsPS+//PKXIyLOP//8lV//+tdHTZ8+fdXEiRPbIiIWLVrUa/jw4Rtqa3/fK6NHj96wZMmSXltuDxs2bOOWP/fr16+zpaWlNiKif//+nW8MnTVr1tQ0Njb+QRD1VOIHAAB2QWvXrk0PPPDA4I6OjrTnnntOiojYsGFDam5urn3sscca/vRP/3T92WefvfdRRx21+pFHHhnw4IMPNk6fPn3t6NGjNy5btqy+o6MjtgTQokWL6sePH9+2ozUnT568fvHixb1XrVpVs+XUtwULFvQ96aSTXu3Wb3YncdobAADsgm6//fbBNTU1MW/evAVz585dMHfu3AVPP/3004cccsjam266aY/rrrtuyPz58/veeeedL1x11VWLzjnnnDGvvfZazbRp09Y1NDR0fOELXxje1taWfvSjH/V/6KGHBp1xxhk7DJiDDz64bcKECS2zZs0a2dLSkr73ve8NeuaZZxpOP/30VZX4nt8pR34AAGAXdNttt+1x0kknvTJ+/PgNW99//vnnv3zuuefuO2DAgI677rpr4cCBAzvPP//8V++///5B55133ug77rjjxR/84AfPXXDBBftce+21w/faa6+NN9xww2+nTJnS2pV177rrrufPOOOMsUOGDJkyfPjwDbfeeut/jRw5sr17vsudK+Wcqz3DdjU1NeU5c+ZUewwAAHZjKaUncs5N23ps3rx5L0yaNOmVSs/E2zdv3rw9J02aNGZbjzntDQAAKIL4AQAAiiB+AACAIogfAACgCOIHAAAogvgBAACKIH4AAIAiiB8AAKAIddUeoCfJOceyNRti/caOGDagd/Srr632SAAAu73c2RYb182LiBS9+k2KVFNf7ZHYTYmfzX6zfF18/4mlsbatPWpqUrR35Jjyrv5x8tQR0bvOATIAgJ0t5xzrFn8j1i66aqt7UzTu/cXoN+qSSClVbbZdzaGHHnrAb37zm4bly5fPa2hoyN251sUXXzzyxz/+8aDnn3++4a/+6q+WXnPNNUu6c72dqWI/1aeUhqSUfpBSWpdSejGldGql1t6R51a0xP/+/xfFqy0bY0NHjtaNndHemePJxc1x7c9/F525W//9AQAoUvOLX4zm330lcsearb5ei+YXvxBrf/fVao+3y3jmmWfqn3jiicaUUsyePXtQd683bty4tq9+9auL3/e+963u7rV2tkoe0rguIjZExLCIOC0ibkgpvaeC62/X3fOWx8aOPw6c9s4cS9e0xrMvt1RhKgCA3Vdn++pYt/h/RnRu4+eszpZYu/iq6Gxvrvxgu6DvfOc7e0yaNGndRz7ykVduvfXWPSIiWltb04QJEw688sor94qIaG9vj6lTp0749Kc/PSIiYu7cuX0OPfTQA/r37z953Lhx77n99tsHbtnfjBkzxpxxxhl7T5s2bVy/fv2mHHzwwRMWLFjQe8vjF1100cqTTjppTWNjY2elv9d3qiKnvaWU+kXEjIg4KOe8NiIeTSndFxFnRMSllZhhe1o2dMSS11q3+3hbe44nFr0WE4b1q+BUAAC7t7ZVP4lU0ytyx7Z/DkupV2x47aHos8cHKzzZm1v97MdGt697um93rlHX76CWQfvftKir29911117XHjhhcsPO+ywdUcdddSERYsW1Y0ePbr91ltvff6YY46ZcNxxx6258847B3V0dMTXv/71pW1tbemEE04Yd+qpp77y85///Nmf/OQnjaeccsq4gw466FeTJk1qi4i47777htx7773PHn744S0zZswYO2vWrFE/+tGPnu++77oyKnXkZ/+I6Mg5P7vVffMi4o+O/KSUzk0pzUkpzVmxYkW3D9bRmXd4PumGbRwVAgDg7ct5Q0S82c9YOXJnW6XG2WU9+OCDjUuWLKmfOXPmqiOOOKJl9OjRbTfddNOQiIj3vve9rZdccsnSGTNm7HfDDTcMv+22235bV1cXDz/8cL+WlpbaK6+8clmfPn3yBz7wgeajjz569S233LLHlv0ee+yxq4466qiWXr16xWmnnfbqggULGqr3Xe48lbrgQWNEvPaG+16LiP5v3DDnfGNE3BgR0dTU1O3V0di7NvrW18aa1vZtPt67ribe7agPAMBOVd//TyPnbf/8FRGROzdEff//VsGJuuatHJGphJtvvnmPww8/fM2IESPaIyJmzJjx6uzZs/e8/PLLX46IOP/881d+/etfHzV9+vRVEydObIuIWLRoUa/hw4dvqK39/ZWNR48evWHJkiW9ttweNmzYxi1/7tevX2dLS8tucRnkSh35WRsRA95w34CIqPqJnCmlOP7APaO+dttHf3rVpJg6+o2jAwDwTtQ17Bf1A4+KSL3/+MHUJ3oPOS5q++xd+cF2IWvXrk0PPPDA4F/+8pf999xzz0l77rnnpBtvvHHYM8880/DYY481REScffbZex911FGrH3nkkQEPPvhgY0TE6NGjNy5btqy+o6Pj9X0tWrSofuTIkRu3s9Ruo1JHfp6NiLqU0vic88LN902KiAUVWv9NHTZ2UKxctzEeXvhqpIjY2Jmjd11N9KmriYuO3Dvqa13qGgBgZxs84c5YteB/xIa1j0d0bth0Z0191A/40xh0wK3VHW4XcPvttw+uqamJuXPnLujdu/frFx/40Ic+tN9NN920x9y5c1vmz5/f9+mnn/7V7NmzB51zzjljnn766V9NmzZtXUNDQ8cXvvCF4Zdffvnyn/70p40PPfTQoCuuuOLXXVm3ra0tdXR0RGdnZ7S3t0dLS0uqr6/PdXU9/1N0KjJhznldSumeiLgipXROREyOiA9GxJ9VYv0dSSnFByfuFe8bNzj+c3FztLZ3xrsG9Y4DhzdGjevLAwB0i5q6/rHHpH+PjWvnRtuqByMiRe/Bx0avxsnVHm2XcNttt+1x0kknvTJ+/PgNW99//vnnv3zuuefuO2DAgI677rpr4cCBAzvPP//8V++///5B55133ug77rjjxR/84AfPXXDBBftce+21w/faa6+NN9xww2+nTJmy/auAbeXUU0/d55577nn9/UHXXnvtiG9961sv/NVf/dXKnf097mwpV+gzbFJKQyLipoh4f0SsjIhLc87ff7PnNDU15Tlz5lRiPAAACpVSeiLn3LStx+bNm/fCpEmTXqn0TLx98+bN23PSpEljtvVYxY5N5ZxfjYgTKrUeAADA1ryZBQAAKIL4AQAAiiB+AACAIogfAACgCOIHAAAogvgBAACKIH4AAIAiiB8AAOAdGTVq1MR77723f7Xn2BHxAwAAu6hRo0ZN7NOnz9S+fftOGTBgwORp06aNe+6553pVe66dafny5bXvf//792toaJgycuTIid/+9reHvN19iR8AANiF3XHHHQtbWlqeXLZs2byhQ4e2n3/++XtXe6au2rhx4w63Oeecc/aur6/Py5Ytm3fzzTf/9jOf+czec+bM6fN21hM/AACwG+jbt2/+8Ic/vOq5555riIhYuXJl7Yknnjhm8ODBk0aOHDnxs5/97IiOjo6IiPjkJz858oMf/ODYLc995pln6lNKh2yJkUMPPfSAiy++eOTUqVMn9OvXb8phhx02funSpXVbtr/uuuuGjBw5cuKgQYMmz5o1a/jWczz88MN9J0+ePKF///6Thw4devCZZ565d2tra9ryeErpkKuuumroPvvsc9CYMWMmnnHGGXt//OMff9fW+zj66KPHXXHFFXutWbOm5l/+5V8GX3XVVS8NHDiwc/r06WuPOeaY12666aY93s5rVLfjTQAAgIiI2156ePTStlf7ducaI3oPaTl91FGL3urzmpuba+68887BU6ZMWRsRcc4554xes2ZN7fPPPz//5Zdfrps+ffr+I0aM2HjJJZe80pX93XPPPUMeeOCBhfvuu++Go48+ev+vfOUrw66//vqXnnjiiT6f+cxn9rn77rsXTps2bd1FF100avny5fVbnldXVxd/+7d/u+jII49c9/zzz9cfd9xx46+++uqhX/ziF1/ess39998/6Je//OWv+/Xr1/n44483fPSjHx337W9/e3FtbW0sXbq07rHHHut/yy23vDB//vzetbW1cfDBB7dtee7BBx/c8uijj76t9xc58gMAALuwU089dVz//v0nDx48eMqjjz464LLLLlve3t4eDzzwwJCrr776pcGDB3cecMABGz7xiU8smz17dpePmJxyyikrDz744LbGxsb8oQ996NX58+f3jYiYPXv24KOPPvq14447bm1DQ0O+5pprlqSU8pbnHXHEES3HHHPMul69esUBBxyw4ayzzlrxyCOP/EGsXHrppcuGDRvW0djYmI866qiWxsbGjvvuu29ARMTNN988+NBDD20ePXp0e3Nzc21jY2PH1s8dOHBgx9q1a2vfzmvlyA8AAHTR2zki092+//3vP3fCCSc0t7e3x+233z7o/e9//wGPP/74rzZu3JjGjx+/Yct2Y8eO3bB8+fIuXwxh+PDhr78hp2/fvp0tLS01ERFLlizpNWrUqNf3O2DAgM5Bgwa1b7n91FNP9b744otHz58/v19ra2tNR0dHHHjggS1b73vs2LEbtr598sknr7z11luHnHjiiWvuvPPOPS688MKXIyL69+/fsW7duj84YLNmzZo/CqKucuQHAAB2A3V1dTFz5szVNTU1+Wc/+1m/urq6vHDhwtdPR3vhhRfqhw0btjEiol+/fh3r169/vQUWL17c5SgaMWLExpdeeun1/TY3N9esXr369YMq55133j7jx49vXbhw4fy1a9c+edlll730xn2klP7g9tlnn73ypz/96aDHHnus4fnnn+9z2mmnrYqImDhxYlt7e3uaP39+7y3bPvXUUw0TJkxY39V5tyZ+AABgN9DZ2Rm33XbboObm5ropU6asP/7441ddeumlo1atWlXz7LPP1l933XXDTj755JUREVOnTl3/+OOPNy5cuLB+5cqVtV/72teG72j/W5xyyimrHnrooYEPPvhgY2tra/rUpz41Muf8es2sXbu2dsCAAR0DBw7sfPLJJ/vcdNNNe+1on/vtt9/GiRMnrps5c+bYY489dnVjY2OO2HRUafr06as/97nPjVyzZk3NT37yk37/+q//OuhjH/vYyrfzGokfAADYhZ188snj+/btO6V///5TvvzlL4+69tprf9vU1NT693//97/r27dv57777jvxyCOPnDBjxoxXL7744lciIk488cQ1f/EXf7Fq6tSpB06ZMuXdxx9//GtdXa+pqan1G9/4xu/OOuusscOHD580ePDg9mHDhr1+GtvVV1+96O677x7S2Ng45ZxzztnnhBNOeLUr+z399NNXLly4sOHMM8/8g7D57ne/++L69etrhg0bNmnmzJn7/s3f/M3vmpqaWrs679ZSznnHW1VJU1NTnjNnTrXHAABgN5ZSeiLn3LStx+bNm/fCpEmTunR1NN6ZH//4x40f+9jHxi5evHh+be3bup5BRETMmzdvz0mTJo3Z1mOO/AAAAFXV1taWvvnNbw477bTTXnkn4bMj4gcAAKiauXPn9hk0aNDkl19+udfnPve55d25lktdAwAAVTN16tTW9evXP1mJtRz5AQAAiiB+AACAIogfAACgCOIHAAAogvgBAACKIH4AAIB3ZNSoURPvvffe/tWeY0fEDwAA7KJGjRo1sU+fPlP79u07ZcCAAZOnTZs27rnnnutV7bl2pq997WtDDzrooHfX19dPnTFjxph3si/xAwAAu7A77rhjYUtLy5PLli2bN3To0Pbzzz9/72rP1FUbN27c4TajRo3aOGvWrKUf+chHXnmn64kfAADYDfTt2zd/+MMfXvXcc881RESsXLmy9sQTTxwzePDgSSNHjpz42c9+dkRHR0dERHzyk58c+cEPfnDsluc+88wz9SmlQ7bEyKGHHnrAxRdfPHLq1KkT+vXrN+Wwww4bv3Tp0rot21933XVDRo4cOXHQoEGTZ82aNXzrOR5++OG+kydPntC/f//JQ4cOPfjMM8/cu7W1NW15PKV0yFVXXTV0n332OWjMmDETzzjjjL0//vGPv2vrfRx99NHjrrjiir0iImbOnLn6jDPOWL3HHnu0v9PXqG7HmwAAABERq6/72Oj23z3dtzvXqNv7oJZBn7hp0Vt9XnNzc82dd945eMqUKWsjIs4555zRa9asqX3++efnv/zyy3XTp0/ff8SIERsvueSSLh1Bueeee4Y88MADC/fdd98NRx999P5f+cpXhl1//fUvPfHEE30+85nP7HP33XcvnDZt2rqLLrpo1PLly+tfn7+uLv72b/920ZFHHrnu+eefrz/uuOPGX3311UO/+MUvvrxlm/vvv3/QL3/5y1/369ev8/HHH2/46Ec/Ou7b3/724tra2li6dGndY4891v+WW2554a2+BjviyA8AAOzCTj311HH9+/efPHjw4CmPPvrogMsuu2x5e3t7PPDAA0OuvvrqlwYPHtx5wAEHbPjEJz6xbPbs2Xt0db+nnHLKyoMPPritsbExf+hDH3p1/vz5fSMiZs+ePfjoo49+7bjjjlvb0NCQr7nmmiUppbzleUcccUTLMcccs65Xr15xwAEHbDjrrLNWPPLII39wMYRLL7102bBhwzoaGxvzUUcd1dLY2Nhx3333DYiIuPnmmwcfeuihzaNHj37HR3reyJEfAADoordzRKa7ff/733/uhBNOaG5vb4/bb7990Pvf//4DHn/88V9t3LgxjR8/fsOW7caOHbth+fLlXb4YwvDhw19/Q07fvn07W1paaiIilixZ0mvUqFGv73fAgAGdgwYNej1Unnrqqd4XX3zx6Pnz5/drbW2t6ejoiAMPPLBl632PHTt2w9a3Tz755JW33nrrkBNPPHHNnXfeuceFF174cnQDR34A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\n", "text/plain": [ "<Figure size 864x864 with 1 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " Done; plotting time = 0.60 s\n", "\n", "Total time = 111.71 s\n", "\n", "End time: 2023-01-12 00:34:35.307677\n" ] } ], "source": [ "sim.simulate()\n", "sim.analyze()" ] }, { "cell_type": "code", "execution_count": 20, "id": "ceb34061", "metadata": {}, "outputs": [], "source": [ "# plotting\n", "\n", "#sim.analysis.plotLFP( plots = ['timeSeries', 'locations'] , electrodes=[ 'all'], lineWidth=1000 , fontSize=14, saveFig=True)\n", "\n", "# from matplotlib import pyplot\n", "# %matplotlib inline\n", "# pyplot.plot(t, ap1 )\n", "# #pyplot.xlim((0, 10))\n", "# pyplot.show()\n" ] }, { "cell_type": "code", "execution_count": 21, "id": "ddb4904a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Duration: 0:01:55.256321\n" ] } ], "source": [ "# show the execution time\n", "\n", "end_time = datetime.now()\n", "print('Duration: {}'.format(end_time - start_time))" ] }, { "cell_type": "code", "execution_count": 22, "id": "eb4751f0", "metadata": {}, "outputs": [], "source": [ "import csv\n", "\n", "\n", "with open('xg0changed_MYSA30_il_icap_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", " csv.writer(f).writerows(zip( t , Abeta0_il_MYSA30 , Abeta0_icap_MYSA30 ))\n", " \n", " \n", "# with open('xg0changed_MYSA30_05_1_vext0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_05_MYSA30 , Abeta0_vext0_1_MYSA30 ))\n", " \n", "\n", "# with open('MYSARpn1x2_node15_v_1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_1_node15 )) \n", "\n", "\n", "# with open('MYSARpn1x2_node15_ileak_05_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_il_node15 ))\n", " \n", " \n", " " ] }, { "cell_type": "code", "execution_count": 23, "id": "34e373fd", "metadata": { "scrolled": false }, "outputs": [], "source": [ "###################Thisssssssssssssssssssssssss\n", "\n", "\n", "# import csv\n", "\n", "\n", "\n", "# with open('MYSARpn1x2_TransmembraneCurrent_Leak_Leftside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_il_STIN579 , Abeta0_il_STIN580 , Abeta0_il_STIN581 , Abeta0_il_STIN582 , Abeta0_il_STIN583 , Abeta0_il_STIN584 , Abeta0_il_STIN585 , Abeta0_il_STIN586 , Abeta0_il_STIN587 , Abeta0_il_STIN588 , Abeta0_il_STIN589 , Abeta0_il_STIN590 , Abeta0_il_STIN591 , Abeta0_il_STIN592 , Abeta0_il_STIN593 , Abeta0_il_STIN594 , Abeta0_il_STIN595 , Abeta0_il_STIN596 , Abeta0_il_STIN597 , Abeta0_il_STIN598 , Abeta0_il_STIN599 , Abeta0_il_FLUT145 , Abeta0_il_FLUT146 , Abeta0_il_FLUT147 , Abeta0_il_FLUT148 , Abeta0_il_FLUT149 , Abeta0_il_MYSA29 )) \n", "\n", "\n", "# with open('MYSARpn1x2_TransmembraneCurrent_Capacitive_Leftside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_icap_STIN579 , Abeta0_icap_STIN580 , Abeta0_icap_STIN581 , Abeta0_icap_STIN582 , Abeta0_icap_STIN583 , Abeta0_icap_STIN584 , Abeta0_icap_STIN585 , Abeta0_icap_STIN586 , Abeta0_icap_STIN587 , Abeta0_icap_STIN588 , Abeta0_icap_STIN589 , Abeta0_icap_STIN590 , Abeta0_icap_STIN591 , Abeta0_icap_STIN592 , Abeta0_icap_STIN593 , Abeta0_icap_STIN594 , Abeta0_icap_STIN595 , Abeta0_icap_STIN596 , Abeta0_icap_STIN597 , Abeta0_icap_STIN598 , Abeta0_il_STIN599 , Abeta0_icap_FLUT145 , Abeta0_icap_FLUT146 , Abeta0_icap_FLUT147 , Abeta0_icap_FLUT148 , Abeta0_icap_FLUT149 , Abeta0_icap_MYSA29 )) \n", "\n", "\n", "\n", "# with open('MYSARpn1x2_TransmembraneCurrent_Leak_Rightside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_il_STIN620 , Abeta0_il_STIN619 , Abeta0_il_STIN618 , Abeta0_il_STIN617 , Abeta0_il_STIN616 , Abeta0_il_STIN615 , Abeta0_il_STIN614 , Abeta0_il_STIN613 , Abeta0_il_STIN612 , Abeta0_il_STIN611 , Abeta0_il_STIN610 , Abeta0_il_STIN609 , Abeta0_il_STIN608 , Abeta0_il_STIN607 , Abeta0_il_STIN606 , Abeta0_il_STIN605 , Abeta0_il_STIN604 , Abeta0_il_STIN603 , Abeta0_il_STIN602 , Abeta0_il_STIN601 , Abeta0_il_STIN600 , Abeta0_il_FLUT154 , Abeta0_il_FLUT153 , Abeta0_il_FLUT152 , Abeta0_il_FLUT151 , Abeta0_il_FLUT150 , Abeta0_il_MYSA30 )) \n", "\n", " \n", "# with open('MYSARpn1x2_TransmembraneCurrent_Capacitive_Rightside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_icap_STIN620 , Abeta0_icap_STIN619 , Abeta0_icap_STIN618 , Abeta0_icap_STIN617 , Abeta0_icap_STIN616 , Abeta0_icap_STIN615 , Abeta0_icap_STIN614 , Abeta0_icap_STIN613 , Abeta0_icap_STIN612 , Abeta0_icap_STIN611 , Abeta0_icap_STIN610 , Abeta0_icap_STIN609 , Abeta0_icap_STIN608 , Abeta0_icap_STIN607 , Abeta0_icap_STIN606 , Abeta0_icap_STIN605 , Abeta0_icap_STIN604 , Abeta0_icap_STIN603 , Abeta0_icap_STIN602 , Abeta0_icap_STIN601 , Abeta0_icap_STIN600 , Abeta0_icap_FLUT154 , Abeta0_icap_FLUT153 , Abeta0_icap_FLUT152 , Abeta0_icap_FLUT151 , Abeta0_icap_FLUT150 , Abeta0_icap_MYSA30 )) \n", " \n", " \n", "# ##### \n", "\n", "# with open('MYSARpn1x2_vext0_Leftside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_05_STIN579 , Abeta0_vext0_1_STIN579 , Abeta0_vext0_05_STIN580 , Abeta0_vext0_1_STIN580 , Abeta0_vext0_05_STIN581 , Abeta0_vext0_1_STIN581 , Abeta0_vext0_05_STIN582 , Abeta0_vext0_1_STIN582 , Abeta0_vext0_05_STIN583 , Abeta0_vext0_1_STIN583 , Abeta0_vext0_05_STIN584 , Abeta0_vext0_1_STIN584 , Abeta0_vext0_05_STIN585 , Abeta0_vext0_1_STIN585 , Abeta0_vext0_05_STIN586 , Abeta0_vext0_1_STIN586 , Abeta0_vext0_05_STIN587 , Abeta0_vext0_1_STIN587 , Abeta0_vext0_05_STIN588 , Abeta0_vext0_1_STIN588 , Abeta0_vext0_05_STIN589 , Abeta0_vext0_1_STIN589 , Abeta0_vext0_05_STIN590 , Abeta0_vext0_1_STIN590 , Abeta0_vext0_05_STIN591 , Abeta0_vext0_1_STIN591 , Abeta0_vext0_05_STIN592 , Abeta0_vext0_1_STIN592 , Abeta0_vext0_05_STIN593 , Abeta0_vext0_1_STIN593 , Abeta0_vext0_05_STIN594 , Abeta0_vext0_1_STIN594 , Abeta0_vext0_05_STIN595 , Abeta0_vext0_1_STIN595 , Abeta0_vext0_05_STIN596 , Abeta0_vext0_1_STIN596 , Abeta0_vext0_05_STIN597 , Abeta0_vext0_1_STIN597 , Abeta0_vext0_05_STIN598 , Abeta0_vext0_1_STIN598 , Abeta0_vext0_05_STIN599 , Abeta0_vext0_1_STIN599 , Abeta0_vext0_05_FLUT145 , Abeta0_vext0_1_FLUT145 , Abeta0_vext0_05_FLUT146 , Abeta0_vext0_1_FLUT146 , Abeta0_vext0_05_FLUT147 , Abeta0_vext0_1_FLUT147 , Abeta0_vext0_05_FLUT148 , Abeta0_vext0_1_FLUT148 , Abeta0_vext0_05_FLUT149 , Abeta0_vext0_1_FLUT149 , Abeta0_vext0_05_MYSA29 , Abeta0_vext0_1_MYSA29 , Abeta0_vext0_05_node15 )) \n", " \n", " \n", " \n", "\n", "# with open('MYSARpn1x2_vext0_Rightside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_05_STIN620 , Abeta0_vext0_1_STIN619 , Abeta0_vext0_05_STIN619 , Abeta0_vext0_1_STIN618 , Abeta0_vext0_05_STIN618 , Abeta0_vext0_1_STIN617 , Abeta0_vext0_05_STIN617 , Abeta0_vext0_1_STIN616 , Abeta0_vext0_05_STIN616 , Abeta0_vext0_1_STIN615 , Abeta0_vext0_05_STIN615 , Abeta0_vext0_1_STIN614 , Abeta0_vext0_05_STIN614 , Abeta0_vext0_1_STIN613 , Abeta0_vext0_05_STIN613 , Abeta0_vext0_1_STIN612 , Abeta0_vext0_05_STIN612 , Abeta0_vext0_1_STIN611 , Abeta0_vext0_05_STIN611 , Abeta0_vext0_1_STIN610 , Abeta0_vext0_05_STIN610 , Abeta0_vext0_1_STIN609 , Abeta0_vext0_05_STIN609 , Abeta0_vext0_1_STIN608 , Abeta0_vext0_05_STIN608 , Abeta0_vext0_1_STIN607 , Abeta0_vext0_05_STIN607 , Abeta0_vext0_1_STIN606 , Abeta0_vext0_05_STIN606 , Abeta0_vext0_1_STIN605 , Abeta0_vext0_05_STIN605 , Abeta0_vext0_1_STIN604 , Abeta0_vext0_05_STIN604 , Abeta0_vext0_1_STIN603 , Abeta0_vext0_05_STIN603 , Abeta0_vext0_1_STIN602 , Abeta0_vext0_05_STIN602 , Abeta0_vext0_1_STIN601 , Abeta0_vext0_05_STIN601 , Abeta0_vext0_1_STIN600 , Abeta0_vext0_05_STIN600 , Abeta0_vext0_1_FLUT154 , Abeta0_vext0_05_FLUT154 , Abeta0_vext0_1_FLUT153 , Abeta0_vext0_05_FLUT153 , Abeta0_vext0_1_FLUT152 , Abeta0_vext0_05_FLUT152 , Abeta0_vext0_1_FLUT151 , Abeta0_vext0_05_FLUT151 , Abeta0_vext0_1_FLUT150 , Abeta0_vext0_05_FLUT150 , Abeta0_vext0_1_MYSA30 , Abeta0_vext0_05_MYSA30 , Abeta0_vext0_1_node15 , Abeta0_vext0_05_node15 )) \n", " \n", " \n", " \n", "# ##### \n", " \n", "# with open('MYSARpn1x2_vext1_Leftside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_05_STIN579 , Abeta0_vext1_1_STIN579 , Abeta0_vext1_05_STIN580 , Abeta0_vext1_1_STIN580 , Abeta0_vext1_05_STIN581 , Abeta0_vext1_1_STIN581 , Abeta0_vext1_05_STIN582 , Abeta0_vext1_1_STIN582 , Abeta0_vext1_05_STIN583 , Abeta0_vext1_1_STIN583 , Abeta0_vext1_05_STIN584 , Abeta0_vext1_1_STIN584 , Abeta0_vext1_05_STIN585 , Abeta0_vext1_1_STIN585 , Abeta0_vext1_05_STIN586 , Abeta0_vext1_1_STIN586 , Abeta0_vext1_05_STIN587 , Abeta0_vext1_1_STIN587 , Abeta0_vext1_05_STIN588 , Abeta0_vext1_1_STIN588 , Abeta0_vext1_05_STIN589 , Abeta0_vext1_1_STIN589 , Abeta0_vext1_05_STIN590 , Abeta0_vext1_1_STIN590 , Abeta0_vext1_05_STIN591 , Abeta0_vext1_1_STIN591 , Abeta0_vext1_05_STIN592 , Abeta0_vext1_1_STIN592 , Abeta0_vext1_05_STIN593 , Abeta0_vext1_1_STIN593 , Abeta0_vext1_05_STIN594 , Abeta0_vext1_1_STIN594 , Abeta0_vext1_05_STIN595 , Abeta0_vext1_1_STIN595 , Abeta0_vext1_05_STIN596 , Abeta0_vext1_1_STIN596 , Abeta0_vext1_05_STIN597 , Abeta0_vext1_1_STIN597 , Abeta0_vext1_05_STIN598 , Abeta0_vext1_1_STIN598 , Abeta0_vext1_05_STIN599 , Abeta0_vext1_1_STIN599 , Abeta0_vext1_05_FLUT145 , Abeta0_vext1_1_FLUT145 , Abeta0_vext1_05_FLUT146 , Abeta0_vext1_1_FLUT146 , Abeta0_vext1_05_FLUT147 , Abeta0_vext1_1_FLUT147 , Abeta0_vext1_05_FLUT148 , Abeta0_vext1_1_FLUT148 , Abeta0_vext1_05_FLUT149 , Abeta0_vext1_1_FLUT149 , Abeta0_vext1_05_MYSA29 , Abeta0_vext1_1_MYSA29 , Abeta0_vext1_05_node15 )) \n", " \n", " \n", " \n", "\n", "# with open('MYSARpn1x2_vext1_Rightside_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_05_STIN620 , Abeta0_vext1_1_STIN619 , Abeta0_vext1_05_STIN619 , Abeta0_vext1_1_STIN618 , Abeta0_vext1_05_STIN618 , Abeta0_vext1_1_STIN617 , Abeta0_vext1_05_STIN617 , Abeta0_vext1_1_STIN616 , Abeta0_vext1_05_STIN616 , Abeta0_vext1_1_STIN615 , Abeta0_vext1_05_STIN615 , Abeta0_vext1_1_STIN614 , Abeta0_vext1_05_STIN614 , Abeta0_vext1_1_STIN613 , Abeta0_vext1_05_STIN613 , Abeta0_vext1_1_STIN612 , Abeta0_vext1_05_STIN612 , Abeta0_vext1_1_STIN611 , Abeta0_vext1_05_STIN611 , Abeta0_vext1_1_STIN610 , Abeta0_vext1_05_STIN610 , Abeta0_vext1_1_STIN609 , Abeta0_vext1_05_STIN609 , Abeta0_vext1_1_STIN608 , Abeta0_vext1_05_STIN608 , Abeta0_vext1_1_STIN607 , Abeta0_vext1_05_STIN607 , Abeta0_vext1_1_STIN606 , Abeta0_vext1_05_STIN606 , Abeta0_vext1_1_STIN605 , Abeta0_vext1_05_STIN605 , Abeta0_vext1_1_STIN604 , Abeta0_vext1_05_STIN604 , Abeta0_vext1_1_STIN603 , Abeta0_vext1_05_STIN603 , Abeta0_vext1_1_STIN602 , Abeta0_vext1_05_STIN602 , Abeta0_vext1_1_STIN601 , Abeta0_vext1_05_STIN601 , Abeta0_vext1_1_STIN600 , Abeta0_vext1_05_STIN600 , Abeta0_vext1_1_FLUT154 , Abeta0_vext1_05_FLUT154 , Abeta0_vext1_1_FLUT153 , Abeta0_vext1_05_FLUT153 , Abeta0_vext1_1_FLUT152 , Abeta0_vext1_05_FLUT152 , Abeta0_vext1_1_FLUT151 , Abeta0_vext1_05_FLUT151 , Abeta0_vext1_1_FLUT150 , Abeta0_vext1_05_FLUT150 , Abeta0_vext1_1_MYSA30 , Abeta0_vext1_05_MYSA30 , Abeta0_vext1_1_node15 , Abeta0_vext1_05_node15 )) \n", " \n", " \n", "# #####\n", "\n", "\n", "# with open('MYSARpn1x2_Boundary_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , boundary0_vext1_section1663 ))\n", " \n", " \n", "# with open('MYSARpn1x2_vext1_Abeta1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta1_vext1_05_node15 ))\n", " \n", " \n", "# with open('MYSARpn1x2_ina_Node15Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_ina_node15 )) \n", " \n", " \n", "# with open('MYSARpn1x2_icap_Node15Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_icap_node15 )) \n", " \n", " \n", " \n", " " ] }, { "cell_type": "code", "execution_count": null, "id": "d11d7aca", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 24, "id": "d18ce34b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "95769.75706051444\n", "429128.527578172\n" ] } ], "source": [ "# Longitudinal Current: picoamp\n", "\n", "print(xr)\n", "print(Rpn0)\n", "# xraxia = xr*1e6 #ohm/cm\n", "# xraxia = xraxia*2*1e-4 # ohm, length between node to MYSA is 2 micron\n", "\n", "\n", "# v_diff_00 = (Abeta0_vext1_node0-Abeta0_vext1_MYSA0)/1000 #volt\n", "# Longi_Current_node0_MYSA0 = v_diff_00/xraxia #amp\n", "# Longi_Current_node0_MYSA0 = Longi_Current_node0_MYSA0*1e12 #picoamp\n", "\n", "# v_diff_12 = (Abeta0_vext1_node1-Abeta0_vext1_MYSA2)/1000 #volt\n", "# Longi_Current_node1_MYSA2 = v_diff_12/xraxia \n", "# Longi_Current_node1_MYSA2 = Longi_Current_node1_MYSA2*1e12 \n", "\n", "# v_diff_24 = (Abeta0_vext1_node2-Abeta0_vext1_MYSA4)/1000 #volt\n", "# Longi_Current_node2_MYSA4 = v_diff_24/xraxia \n", "# Longi_Current_node2_MYSA4 = Longi_Current_node2_MYSA4*1e12 \n", "\n", "\n", "\n", "\n", "# v_diff_36 = (Abeta0_vext1_node3-Abeta0_vext1_MYSA6)\n", "\n", "\n", "\n", "\n", "# # v_diff_36 = (Abeta0_vext1_node3-Abeta0_vext1_MYSA6)/1000 #volt\n", "# # Longi_Current_node3_MYSA6 = v_diff_36/xraxia \n", "# # Longi_Current_node3_MYSA6 = Longi_Current_node3_MYSA6*1e12 \n", "\n", "# v_diff_48 = (Abeta0_vext1_node4-Abeta0_vext1_MYSA8)/1000 #volt\n", "# Longi_Current_node4_MYSA8 = v_diff_48/xraxia \n", "# Longi_Current_node4_MYSA8 = Longi_Current_node4_MYSA8*1e12 \n", "\n", "# v_diff_510 = (Abeta0_vext1_node5-Abeta0_vext1_MYSA10)/1000 #volt\n", "# Longi_Current_node5_MYSA10 = (v_diff_510/xraxia)*1e12 \n", "\n", "# v_diff_612 = (Abeta0_vext1_node6-Abeta0_vext1_MYSA12)/1000 #volt\n", "# Longi_Current_node6_MYSA12 = (v_diff_612/xraxia)*1e12 \n", "\n", "# v_diff_714 = (Abeta0_vext1_node7-Abeta0_vext1_MYSA14)/1000 #volt\n", "# Longi_Current_node7_MYSA14 = (v_diff_714/xraxia)*1e12 \n", "\n", "# v_diff_816 = (Abeta0_vext1_node8-Abeta0_vext1_MYSA16)/1000 #volt\n", "# Longi_Current_node8_MYSA16 = (v_diff_816/xraxia)*1e12 \n", "\n", "# v_diff_918 = (Abeta0_vext1_node9-Abeta0_vext1_MYSA18)/1000 #volt\n", "# Longi_Current_node9_MYSA18 = (v_diff_918/xraxia)*1e12 \n", "\n", "# v_diff_1020 = (Abeta0_vext1_node10-Abeta0_vext1_MYSA20)/1000 #volt\n", "# Longi_Current_node10_MYSA20 = (v_diff_1020/xraxia)*1e12 \n", "\n", "# v_diff_1122 = (Abeta0_vext1_node11-Abeta0_vext1_MYSA22)/1000 #volt\n", "# Longi_Current_node11_MYSA22 = (v_diff_1122/xraxia)*1e12 \n" ] }, { "cell_type": "code", "execution_count": 25, "id": "d833f599", "metadata": {}, "outputs": [], "source": [ "# Transverse current: Picoamp/micron^2\n", "\n", "\n", "# v_diff00 = (Abeta0_vext1_node0 - Abeta1_vext1_node0)/1000 #volt\n", "# Trans_Current_node0_node0 = (v_diff00 * 6.9e+04 )*1e12/1e8 #volt*S/cm2 = Amp/cm2 = PicoAMP/cm2 = PicoAMP/micron^2\n", "\n", "# v_diff11 = (Abeta0_vext1_node1 - Abeta1_vext1_node1)/1000 #volt\n", "# Trans_Current_node1_node1 = v_diff11 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff22 = (Abeta0_vext1_node2 - Abeta1_vext1_node2)/1000 #volt\n", "# Trans_Current_node2_node2 = v_diff22 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff33 = (Abeta0_vext1_node3 - Abeta1_vext1_node3)/1000 #volt\n", "# Trans_Current_node3_node3 = v_diff33 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff44 = (Abeta0_vext1_node4 - Abeta1_vext1_node4)/1000 #volt\n", "# Trans_Current_node4_node4 = v_diff44 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff55 = (Abeta0_vext1_node5 - Abeta1_vext1_node5)/1000 #volt\n", "# Trans_Current_node5_node5 = v_diff55 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff66 = (Abeta0_vext1_node6 - Abeta1_vext1_node6)/1000 #volt\n", "# Trans_Current_node6_node6 = v_diff66 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff77 = (Abeta0_vext1_node7 - Abeta1_vext1_node7)/1000 #volt\n", "# Trans_Current_node7_node7 = v_diff77 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff88 = (Abeta0_vext1_node8 - Abeta1_vext1_node8)/1000 #volt\n", "# Trans_Current_node8_node8 = v_diff88 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff99 = (Abeta0_vext1_node9 - Abeta1_vext1_node9)/1000 #volt\n", "# Trans_Current_node9_node9 = v_diff99 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff1010 = (Abeta0_vext1_node10 - Abeta1_vext1_node10)/1000 #volt\n", "# Trans_Current_node10_node10 = v_diff1010 * 6.9e+04 *1e12/1e8 \n", "\n", "# v_diff1111 = (Abeta0_vext1_node11 - Abeta1_vext1_node11)/1000 #volt\n", "# Trans_Current_node11_node11 = v_diff1111 * 6.9e+04 *1e12/1e8 \n", "\n" ] }, { "cell_type": "code", "execution_count": 26, "id": "cbe681f7", "metadata": {}, "outputs": [], "source": [ "# import csv\n", "\n", "# with open('v_diff66_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , v_diff66 ))\n", " \n", " \n", " \n", "import csv\n", "\n", "# with open('ALLExtraVoltages_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_node0515 , Abeta0_vext1_node0515 , Abeta0_vext1_node015 , Abeta0_vext1_node115 , Abeta1_vext1_node0515 , boundary0_vext1_section1663 , Abeta0_vext0_node115 , Abeta0_vext0_MYSA0530 , Abeta0_vext1_MYSA0530 , Abeta0_vext0_node015))\n", "\n", " \n", "# with open('MYSAandFLUTExtraVoltages_vext0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , MYSA30_vext0_0_ , MYSA30_vext0_05_ , MYSA30_vext0_1_ , FLUT150_vext0_05_ , FLUT150_vext0_1_ , FLUT151_vext0_05_ , FLUT151_vext0_1_ , FLUT152_vext0_05_ , FLUT152_vext0_1_ , FLUT153_vext0_05_ , FLUT153_vext0_1_ , FLUT154_vext0_05_ , FLUT154_vext0_1_ ))\n", "\n", " \n", " \n", "# with open('MYSAandFLUTExtraVoltages_vext1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , MYSA30_vext1_0_ , MYSA30_vext1_05_ , MYSA30_vext1_1_ , FLUT150_vext1_05_ , FLUT150_vext1_1_ , FLUT151_vext1_05_ , FLUT151_vext1_1_ , FLUT152_vext1_05_ , FLUT152_vext1_1_ , FLUT153_vext1_05_ , FLUT153_vext1_1_ , FLUT154_vext1_05_ , FLUT154_vext1_1_ ))\n", "\n", "\n", "\n", "\n", "# with open('STINExtraVoltages_vext0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_STIN05_600 , Abeta0_vext0_STIN1_600 , Abeta0_vext0_STIN05_601 , Abeta0_vext0_STIN1_601 , Abeta0_vext0_STIN05_602 , Abeta0_vext0_STIN1_602 , Abeta0_vext0_STIN05_603 , Abeta0_vext0_STIN1_603 , Abeta0_vext0_STIN05_604 , Abeta0_vext0_STIN1_604 , Abeta0_vext0_STIN05_605 , Abeta0_vext0_STIN1_605 , Abeta0_vext0_STIN05_606 , Abeta0_vext0_STIN1_606 , Abeta0_vext0_STIN05_607 , Abeta0_vext0_STIN1_607 , Abeta0_vext0_STIN05_608 , Abeta0_vext0_STIN1_608 , Abeta0_vext0_STIN05_609 , Abeta0_vext0_STIN1_609 , Abeta0_vext0_STIN05_610 , Abeta0_vext0_STIN1_610 , Abeta0_vext0_STIN05_611 , Abeta0_vext0_STIN1_611 , Abeta0_vext0_STIN05_612 , Abeta0_vext0_STIN1_612, Abeta0_vext0_STIN05_613 , Abeta0_vext0_STIN1_613, Abeta0_vext0_STIN05_614 , Abeta0_vext0_STIN1_614 , Abeta0_vext0_STIN05_615 , Abeta0_vext0_STIN1_615 , Abeta0_vext0_STIN05_616 , Abeta0_vext0_STIN1_616 , Abeta0_vext0_STIN05_617 , Abeta0_vext0_STIN1_617 , Abeta0_vext0_STIN05_618 , Abeta0_vext0_STIN1_618 , Abeta0_vext0_STIN05_619 , Abeta0_vext0_STIN1_619, Abeta0_vext0_STIN05_620 , Abeta0_vext0_STIN1_620, Abeta0_vext0_STIN05_621 , Abeta0_vext0_STIN1_621 , Abeta0_vext0_STIN05_622 , Abeta0_vext0_STIN1_622 , Abeta0_vext0_STIN05_623 , Abeta0_vext0_STIN1_623 , Abeta0_vext0_STIN05_624 , Abeta0_vext0_STIN1_624 , Abeta0_vext0_STIN05_625 , Abeta0_vext0_STIN1_625 , Abeta0_vext0_STIN05_626 , Abeta0_vext0_STIN1_626, Abeta0_vext0_STIN05_627 , Abeta0_vext0_STIN1_627, Abeta0_vext0_STIN05_628 , Abeta0_vext0_STIN1_628, Abeta0_vext0_STIN05_629 , Abeta0_vext0_STIN1_629, Abeta0_vext0_STIN05_630 , Abeta0_vext0_STIN1_630 , Abeta0_vext0_STIN05_631 , Abeta0_vext0_STIN1_631, Abeta0_vext0_STIN05_632 , Abeta0_vext0_STIN1_632, Abeta0_vext0_STIN05_633 , Abeta0_vext0_STIN1_633 , Abeta0_vext0_STIN05_634 , Abeta0_vext0_STIN1_634 , Abeta0_vext0_STIN05_635 , Abeta0_vext0_STIN1_635 , Abeta0_vext0_STIN05_636 , Abeta0_vext0_STIN1_636, Abeta0_vext0_STIN05_637 , Abeta0_vext0_STIN1_637, Abeta0_vext0_STIN05_638 , Abeta0_vext0_STIN1_638 , Abeta0_vext0_STIN05_639 , Abeta0_vext0_STIN1_639 )) \n", " \n", " \n", "# with open('STINExtraVoltages_vext1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_STIN05_600 , Abeta0_vext1_STIN1_600 , Abeta0_vext1_STIN05_601 , Abeta0_vext1_STIN1_601 , Abeta0_vext1_STIN05_602 , Abeta0_vext1_STIN1_602 , Abeta0_vext1_STIN05_603 , Abeta0_vext1_STIN1_603 , Abeta0_vext1_STIN05_604 , Abeta0_vext1_STIN1_604 , Abeta0_vext1_STIN05_605 , Abeta0_vext1_STIN1_605 , Abeta0_vext1_STIN05_606 , Abeta0_vext1_STIN1_606 , Abeta0_vext1_STIN05_607 , Abeta0_vext1_STIN1_607 , Abeta0_vext1_STIN05_608 , Abeta0_vext1_STIN1_608 , Abeta0_vext1_STIN05_609 , Abeta0_vext1_STIN1_609 , Abeta0_vext1_STIN05_610 , Abeta0_vext1_STIN1_610 , Abeta0_vext1_STIN05_611 , Abeta0_vext1_STIN1_611 , Abeta0_vext1_STIN05_612 , Abeta0_vext1_STIN1_612, Abeta0_vext1_STIN05_613 , Abeta0_vext1_STIN1_613, Abeta0_vext1_STIN05_614 , Abeta0_vext1_STIN1_614 , Abeta0_vext1_STIN05_615 , Abeta0_vext1_STIN1_615 , Abeta0_vext1_STIN05_616 , Abeta0_vext1_STIN1_616 , Abeta0_vext1_STIN05_617 , Abeta0_vext1_STIN1_617 , Abeta0_vext1_STIN05_618 , Abeta0_vext1_STIN1_618 , Abeta0_vext1_STIN05_619 , Abeta0_vext1_STIN1_619, Abeta0_vext1_STIN05_620 , Abeta0_vext1_STIN1_620, Abeta0_vext1_STIN05_621 , Abeta0_vext1_STIN1_621 , Abeta0_vext1_STIN05_622 , Abeta0_vext1_STIN1_622 , Abeta0_vext1_STIN05_623 , Abeta0_vext1_STIN1_623 , Abeta0_vext1_STIN05_624 , Abeta0_vext1_STIN1_624 , Abeta0_vext1_STIN05_625 , Abeta0_vext1_STIN1_625 , Abeta0_vext1_STIN05_626 , Abeta0_vext1_STIN1_626, Abeta0_vext1_STIN05_627 , Abeta0_vext1_STIN1_627, Abeta0_vext1_STIN05_628 , Abeta0_vext1_STIN1_628, Abeta0_vext1_STIN05_629 , Abeta0_vext1_STIN1_629, Abeta0_vext1_STIN05_630 , Abeta0_vext1_STIN1_630 , Abeta0_vext1_STIN05_631 , Abeta0_vext1_STIN1_631, Abeta0_vext1_STIN05_632 , Abeta0_vext1_STIN1_632, Abeta0_vext1_STIN05_633 , Abeta0_vext1_STIN1_633 , Abeta0_vext1_STIN05_634 , Abeta0_vext1_STIN1_634 , Abeta0_vext1_STIN05_635 , Abeta0_vext1_STIN1_635 , Abeta0_vext1_STIN05_636 , Abeta0_vext1_STIN1_636, Abeta0_vext1_STIN05_637 , Abeta0_vext1_STIN1_637, Abeta0_vext1_STIN05_638 , Abeta0_vext1_STIN1_638 , Abeta0_vext1_STIN05_639 , Abeta0_vext1_STIN1_639 )) \n", " \n", " \n", " \n", " \n", " \n", " \n", " " ] }, { "cell_type": "code", "execution_count": 27, "id": "34bc892d", "metadata": {}, "outputs": [], "source": [ "# I1 = (Abeta0_vext1_node15 - Abeta0_vext1_MYSA30)/(xr*2*1e6) #(Vext1-Vext2)/xr*2*1e6 #mA.cm\n", "# I2 = (Abeta0_vext1_node15 - Abeta1_vext1_node15)*(7.08e+04) #mA/cm2 (Vext1-Vext3)\n", "# I3 = (Abeta0_vext1_MYSA29 - Abeta0_vext1_node15)/(xr*2*1e6) #mA.cm (Vext4-Vext1) (Vext4-Vext1)\n", "# I4 = (Abeta0_vext0_node15 - Abeta0_vext1_node15)*1e6 #mA/cm2 (Vext5-Vext1)\n", "# I5 = (Abeta0_vext0_node15 - Abeta0_vext0_MYSA30)/(Rpn0*2*1e6) #mA.cm (Vext5-Vext6)\n", "# I6 = (Abeta0_vext0_MYSA29 - Abeta0_vext0_node15 )/(Rpn0*2*1e6) #mA.cm (Vext5-Vext6) \n", "# I7 = (Abeta0_vext0_MYSA30 - Abeta0_vext1_MYSA30 )*(mygm/(nl*2)) #mA/cm2 (Vext6-Vext2)\n", "# I8 = (Abeta0_vext0_MYSA29 - Abeta0_vext1_MYSA29 )*(mygm/(nl*2)) #mA/cm2 (Vext7-Vext4)\n", "\n", "\n", "# V62 = (Abeta0_vext0_MYSA30 - Abeta0_vext1_MYSA30 )\n", "# I9 = np.gradient(V62,0.005)*mycm/(nl*2) # C dv/dt\n", "\n", "# V74 = (Abeta0_vext0_MYSA29 - Abeta0_vext1_MYSA29 )\n", "# I10 = np.gradient(V74,0.005)*mycm/(nl*2)\n" ] }, { "cell_type": "code", "execution_count": 28, "id": "eade8a10", "metadata": {}, "outputs": [], "source": [ "# import csv\n", "\n", "# with open('ALLCurrents_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , I1 )\n", " " ] }, { "cell_type": "markdown", "id": "8f3b15f1", "metadata": {}, "source": [ "#### saving the data" ] }, { "cell_type": "code", "execution_count": 29, "id": "890baeb5", "metadata": {}, "outputs": [], "source": [ "## saving the data\n", "\n", "\n", "import csv\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "# #################################### Connected to ground \n", "\n", "# with open('Rpn1x2_v_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_node0 , Abeta0_v_node1 , Abeta0_v_node2 , Abeta0_v_node3 , Abeta0_v_node4 , Abeta0_v_node5 , Abeta0_v_node6 , Abeta0_v_node7 , Abeta0_v_node8 , Abeta0_v_node9 , Abeta0_v_node10 , Abeta0_v_node11 )) \n", "\n", "\n", "\n", "# with open('ConnectGround_LongiCurrent_Abeta0_NodetoMYSA_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Longi_Current_node0_MYSA0 , Longi_Current_node1_MYSA2 , Longi_Current_node2_MYSA4 , Longi_Current_node3_MYSA6 , Longi_Current_node4_MYSA8 , Longi_Current_node5_MYSA10 , Longi_Current_node6_MYSA12 , Longi_Current_node7_MYSA14 , Longi_Current_node8_MYSA16 , Longi_Current_node9_MYSA18 , Longi_Current_node10_MYSA20 , Longi_Current_node11_MYSA22 ))\n", " \n", " \n", "\n", "# with open('ConnectGround_TransCurrent_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Trans_Current_node0_node0 , Trans_Current_node1_node1 , Trans_Current_node2_node2 , Trans_Current_node3_node3 , Trans_Current_node4_node4 , Trans_Current_node5_node5 , Trans_Current_node6_node6 , Trans_Current_node7_node7 , Trans_Current_node8_node8 , Trans_Current_node9_node9 , Trans_Current_node10_node10 , Trans_Current_node11_node11 ))\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", "# ##################################### Not connected to ground, Stimulate only one fiber \n", "\n", "\n", " \n", "# with open('vext1_Abeta1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_node0 , Abeta0_vext1_node1 , Abeta0_vext1_node2 , Abeta0_vext1_node3 , Abeta0_vext1_node4 , Abeta0_vext1_node5 , Abeta0_vext1_node6 , Abeta0_vext1_node7 , Abeta0_vext1_node8 , Abeta0_vext1_node9 , Abeta0_vext1_node10 , Abeta0_vext1_node11 , Abeta0_vext1_node12 , Abeta0_vext1_node13 , Abeta0_vext1_node14 , Abeta0_vext1_node15 , Abeta0_vext1_node16 , Abeta0_vext1_node17 , Abeta0_vext1_node18 , Abeta0_vext1_node19 , Abeta0_vext1_node20 , Abeta0_vext1_node21 , Abeta0_vext1_node22 , Abeta0_vext1_node23 , Abeta0_vext1_node24 , Abeta0_vext1_node25 , Abeta0_vext1_node26 , Abeta0_vext1_node27 , Abeta0_vext1_node28 , Abeta0_vext1_node29 , Abeta0_vext1_node30 , Abeta0_vext1_node31 , Abeta0_vext1_node32 , Abeta0_vext1_node33 , Abeta0_vext1_node34 , Abeta0_vext1_node35 )) \n", " \n", " \n", " \n", "# with open('Rpn1x2_xg0ofnodeChanged_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_node0 , Abeta0_v_node1 , Abeta0_v_node2 , Abeta0_v_node3 , Abeta0_v_node4 , Abeta0_v_node5 , Abeta0_v_node6 , Abeta0_v_node7 , Abeta0_v_node8 , Abeta0_v_node9 , Abeta0_v_node10 , Abeta0_v_node11 , Abeta0_v_node12 , Abeta0_v_node13 , Abeta0_v_node14 , Abeta0_v_node15 , Abeta0_v_node16 , Abeta0_v_node17 , Abeta0_v_node18 , Abeta0_v_node19 , Abeta0_v_node20 , Abeta0_v_node21 , Abeta0_v_node22 , Abeta0_v_node23 , Abeta0_v_node24 , Abeta0_v_node25 , Abeta0_v_node26 , Abeta0_v_node27 , Abeta0_v_node28 , Abeta0_v_node29 , Abeta0_v_node30 , Abeta0_v_node31 , Abeta0_v_node32 , Abeta0_v_node33 , Abeta0_v_node34 , Abeta0_v_node35 )) \n", "\n", "\n", " \n", " \n", "# with open('imembrane_Abeta0_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_imembrane_node0 , Abeta0_imembrane_node1 , Abeta0_imembrane_node2 , Abeta0_imembrane_node3 , Abeta0_imembrane_node4 , Abeta0_imembrane_node5 , Abeta0_imembrane_node6 , Abeta0_imembrane_node7 , Abeta0_imembrane_node8 , Abeta0_imembrane_node9 , Abeta0_imembrane_node10 , Abeta0_imembrane_node11 , Abeta0_imembrane_node12 , Abeta0_imembrane_node13 , Abeta0_imembrane_node14 , Abeta0_imembrane_node15 , Abeta0_imembrane_node16 , Abeta0_imembrane_node17 , Abeta0_imembrane_node18 , Abeta0_imembrane_node19 , Abeta0_imembrane_node20 , Abeta0_imembrane_node21 , Abeta0_imembrane_node22 , Abeta0_imembrane_node23 , Abeta0_imembrane_node24 , Abeta0_imembrane_node25 , Abeta0_imembrane_node26 , Abeta0_imembrane_node27 , Abeta0_imembrane_node28 , Abeta0_imembrane_node29 , Abeta0_imembrane_node30 , Abeta0_imembrane_node31 , Abeta0_imembrane_node32 , Abeta0_imembrane_node33 , Abeta0_imembrane_node34 , Abeta0_imembrane_node35 )) \n", " \n", " \n", " \n", " \n", "# with open('i_Abeta0_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_node0 , Abeta0_v_node1 , Abeta0_v_node2 , Abeta0_v_node3 , Abeta0_v_node4 , Abeta0_v_node5 , Abeta0_v_node6 , Abeta0_v_node7 , Abeta0_v_node8 , Abeta0_v_node9 , Abeta0_v_node10 , Abeta0_v_node11 )) \n", "\n", "\n", "# with open('LongiCurrent_Abeta0_NodetoMYSA_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Longi_Current_node0_MYSA0 , Longi_Current_node1_MYSA2 , Longi_Current_node2_MYSA4 , Longi_Current_node3_MYSA6 , Longi_Current_node4_MYSA8 , Longi_Current_node5_MYSA10 , Longi_Current_node6_MYSA12 , Longi_Current_node7_MYSA14 , Longi_Current_node8_MYSA16 , Longi_Current_node9_MYSA18 , Longi_Current_node10_MYSA20 , Longi_Current_node11_MYSA22 ))\n", " \n", " \n", "\n", "# with open('TransCurrent_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Trans_Current_node0_node0 , Trans_Current_node1_node1 , Trans_Current_node2_node2 , Trans_Current_node3_node3 , Trans_Current_node4_node4 , Trans_Current_node5_node5 , Trans_Current_node6_node6 , Trans_Current_node7_node7 , Trans_Current_node8_node8 , Trans_Current_node9_node9 , Trans_Current_node10_node10 , Trans_Current_node11_node11 ))\n", " \n", " \n", " \n", "# with open('v_Abeta1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta1_v_node0 , Abeta1_v_node1 , Abeta1_v_node2 , Abeta1_v_node3 , Abeta1_v_node4 , Abeta1_v_node5 , Abeta1_v_node6 , Abeta1_v_node7 , Abeta1_v_node8 , Abeta1_v_node9 , Abeta1_v_node10 , Abeta1_v_node11 )) \n", " \n", " \n", " \n", " \n", " \n", "# ##################################### Not connected to ground, Stimulate BOTH fibers \n", "\n", "\n", "# with open('v_Abeta0_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_node0 , Abeta0_v_node1 , Abeta0_v_node2 , Abeta0_v_node3 , Abeta0_v_node4 , Abeta0_v_node5 , Abeta0_v_node6 , Abeta0_v_node7 , Abeta0_v_node8 , Abeta0_v_node9 , Abeta0_v_node10 , Abeta0_v_node11 )) \n", "\n", "\n", "\n", "# with open('LongiCurrent_Abeta0_NodetoMYSA_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Longi_Current_node0_MYSA0 , Longi_Current_node1_MYSA2 , Longi_Current_node2_MYSA4 , Longi_Current_node3_MYSA6 , Longi_Current_node4_MYSA8 , Longi_Current_node5_MYSA10 , Longi_Current_node6_MYSA12 , Longi_Current_node7_MYSA14 , Longi_Current_node8_MYSA16 , Longi_Current_node9_MYSA18 , Longi_Current_node10_MYSA20 , Longi_Current_node11_MYSA22 ))\n", " \n", " \n", "\n", "# with open('TransCurrent_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Trans_Current_node0_node0 , Trans_Current_node1_node1 , Trans_Current_node2_node2 , Trans_Current_node3_node3 , Trans_Current_node4_node4 , Trans_Current_node5_node5 , Trans_Current_node6_node6 , Trans_Current_node7_node7 , Trans_Current_node8_node8 , Trans_Current_node9_node9 , Trans_Current_node10_node10 , Trans_Current_node11_node11 ))\n", " \n", " \n", " \n", "\n", "# with open('Connectground_vext1_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_node0 , Abeta0_vext1_node1 , Abeta0_vext1_node2 , Abeta0_vext1_node3 , Abeta0_vext1_node4 , Abeta0_vext1_node5 , Abeta0_vext1_node6 , Abeta0_vext1_node7 , Abeta0_vext1_node8 , Abeta0_vext1_node9 , Abeta0_vext1_node10 , Abeta0_vext1_node11 )) \n", " \n", " \n", "# with open('vext1_Abeta1_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta1_vext1_node0 , Abeta1_vext1_node1 , Abeta1_vext1_node2 , Abeta1_vext1_node3 , Abeta1_vext1_node4 , Abeta1_vext1_node5 , Abeta1_vext1_node6 , Abeta1_vext1_node7 , Abeta1_vext1_node8 , Abeta1_vext1_node9 , Abeta1_vext1_node10 , Abeta1_vext1_node11 )) \n", "\n" ] }, { "cell_type": "code", "execution_count": 30, "id": "7a4d2e6a", "metadata": {}, "outputs": [], "source": [ "\n", "# with open('STIN220_vext1_Abeta0_stimulateBOTH_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_STIN220))\n", " \n", " \n", "# with open('MYSA30_v_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_v_MYSA30)) \n", " \n", "# with open('node15_vext0(0.5)(1)_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_05_node15 , Abeta0_vext0_1_node15)) \n", " \n", "# with open('node15_vext0(1)_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext0_1_node15)) \n", " \n", "# with open('node15_vext1(0.5)(1)_Abeta0_stimulateonlyAbeta0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_vext1_05_node15 , Abeta0_vext1_1_node15)) \n", " \n", " \n", " \n", " \n", " " ] }, { "cell_type": "code", "execution_count": null, "id": "a594bc51", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 31, "id": "8e386b67", "metadata": {}, "outputs": [], "source": [ " \n", "# with open('icap_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_icap_node0 , Abeta0_icap_node1 , Abeta0_icap_node2 , Abeta0_icap_node3 , Abeta0_icap_node4 , Abeta0_icap_node5 , Abeta0_icap_node6 , Abeta0_icap_node7 , Abeta0_icap_node8 , Abeta0_icap_node9 , Abeta0_icap_node10 , Abeta0_icap_node11 , Abeta0_icap_node12 , Abeta0_icap_node13 , Abeta0_icap_node14 , Abeta0_icap_node15 , Abeta0_icap_node16 , Abeta0_icap_node17 , Abeta0_icap_node18 , Abeta0_icap_node19 , Abeta0_icap_node20 , Abeta0_icap_node21 , Abeta0_icap_node22 , Abeta0_icap_node23 , Abeta0_icap_node24 , Abeta0_icap_node25)) \n", "\n", " \n", " \n", "# with open('ik_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_ik_node0 , Abeta0_ik_node1 , Abeta0_ik_node2 , Abeta0_ik_node3 , Abeta0_ik_node4 , Abeta0_ik_node5 , Abeta0_ik_node6 , Abeta0_ik_node7 , Abeta0_ik_node8 , Abeta0_ik_node9 , Abeta0_ik_node10 , Abeta0_ik_node11 , Abeta0_ik_node12 , Abeta0_ik_node13 , Abeta0_ik_node14 , Abeta0_ik_node15 , Abeta0_ik_node16 , Abeta0_ik_node17 , Abeta0_ik_node18 , Abeta0_ik_node19 , Abeta0_ik_node20 )) \n", "\n", "\n", " \n", "# with open('il_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_il_node0 , Abeta0_il_node1 , Abeta0_il_node2 , Abeta0_il_node3 , Abeta0_il_node4 , Abeta0_il_node5 , Abeta0_il_node6 , Abeta0_il_node7 , Abeta0_il_node8 , Abeta0_il_node9 , Abeta0_il_node10 , Abeta0_il_node11, Abeta0_il_node12 , Abeta0_il_node13 , Abeta0_il_node14 , Abeta0_il_node15 , Abeta0_il_node16 , Abeta0_il_node17 , Abeta0_il_node18 , Abeta0_il_node19 , Abeta0_il_node20 )) \n", "\n", "\n", " \n", "# with open('ina_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_ina_node0 , Abeta0_ina_node1 , Abeta0_ina_node2 , Abeta0_ina_node3 , Abeta0_ina_node4 , Abeta0_ina_node5 , Abeta0_ina_node6 , Abeta0_ina_node7 , Abeta0_ina_node8 , Abeta0_ina_node9 , Abeta0_ina_node10 , Abeta0_ina_node11 , Abeta0_ina_node12 , Abeta0_ina_node13 , Abeta0_ina_node14 , Abeta0_ina_node15 , Abeta0_ina_node16 , Abeta0_ina_node17 , Abeta0_ina_node18 , Abeta0_ina_node19 , Abeta0_ina_node20 )) \n", "\n", "\n", " \n", "# with open('inap_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_inap_node0 , Abeta0_inap_node1 , Abeta0_inap_node2 , Abeta0_inap_node3 , Abeta0_inap_node4 , Abeta0_inap_node5 , Abeta0_inap_node6 , Abeta0_inap_node7 , Abeta0_inap_node8 , Abeta0_inap_node9 , Abeta0_inap_node10 , Abeta0_inap_node11 , Abeta0_inap_node12 , Abeta0_inap_node13 , Abeta0_inap_node14 , Abeta0_inap_node15 , Abeta0_inap_node16 , Abeta0_inap_node17 , Abeta0_inap_node18 , Abeta0_inap_node19 , Abeta0_inap_node20 )) \n", "\n", " \n", " \n", "# with open('ConnectedGround_imembrane_Abeta0_stimulateonlyAbata0_edgedist0.1_.csv', 'w', newline='') as f:\n", "# csv.writer(f).writerows(zip( t , Abeta0_imembrane_node0 , Abeta0_imembrane_node1 , Abeta0_imembrane_node2 , Abeta0_imembrane_node3 , Abeta0_imembrane_node4 , Abeta0_imembrane_node5 , Abeta0_imembrane_node6 , Abeta0_imembrane_node7 , Abeta0_imembrane_node8 , Abeta0_imembrane_node9 , Abeta0_imembrane_node10 , Abeta0_imembrane_node11 )) \n", " \n", " \n" ] }, { "cell_type": "code", "execution_count": 32, "id": "fc582285", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "108066.18906880693\n" ] } ], "source": [ "print(Rpn2)" ] }, { "cell_type": "code", "execution_count": 33, "id": "2e0d7ff9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "429128.527578172\n" ] } ], "source": [ "print(Rpn1)" ] }, { "cell_type": "code", "execution_count": 34, "id": "f69e8199", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "108066.18906880693\n" ] } ], "source": [ "print(Rpx)" ] }, { "cell_type": "code", "execution_count": null, "id": "496ada45", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.8" } }, "nbformat": 4, "nbformat_minor": 5 }