MetaCell / MetaCell/NetPyNE-UI

Rxd parameter issue

未關閉
#601 0 則留言 0 個 reaction 已指派 1 人 在 GitHub 檢視

@salvadord 已經在處理了。

開始於 2022年11月22日。

主要語言
JavaScript
星號
23
分支
10
PR 合併指標
30 天內沒有已合併 PR

描述

Use tutorial 3a and then changed RxD as per screenshot
![scrnli_18_11_2022_14-18-26.png](https://images.zenhubusercontent.com/5b0293e84b5806bc2bd3f170/685bff1c-b14b-4669-baf5-2d85baa57559)

```
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
~/git/netpyne-ui/netpyne_ui/netpyne_geppetto.py in instantiateNetPyNEModelInGeppetto(self=, args={})
193 with redirect_stdout(sys.__stdout__):
194 if not args.get("usePrevInst", False):
--> 195 netpyne_model = self.instantiateNetPyNEModel()
netpyne_model = undefined
self.instantiateNetPyNEModel = >
196 self.geppetto_model = self.model_interpreter.getGeppettoModel(netpyne_model)
197

~/git/netpyne-ui/netpyne_ui/netpyne_geppetto.py in instantiateNetPyNEModel(self=)
665 #netcoded = jsonpickle.encode(self.netParams, unpicklable=False)
666 #simcoded = jsonpickle.encode(self.simConfig, unpicklable=False)
--> 667 sim.create(self.netParams, self.simConfig)
global sim.create =
self.netParams =
self.simConfig =
668 sim.net.defineCellShapes() # creates 3d pt for cells with stylized geometries
669 sim.gatherData(gatherLFP=False)

~/git/netpyne-ui/src/netpyne/netpyne/sim/wrappers.py in create(netParams=, simConfig=, output=False, clearAll=False)
55 conns = sim.net.connectCells() # create connections between cells based on params
56 stims = sim.net.addStims() # add external stimulation to cells (IClamps etc)
---> 57 rxd = sim.net.addRxD() # add reaction-diffusion (RxD)
rxd = undefined
sim.net.addRxD = >
58 simData = sim.setupRecording() # setup variables to record for each cell (spikes, V traces, etc)
59

~/git/netpyne-ui/src/netpyne/netpyne/network/netrxd.py in addRxD(self=, nthreads=None)
75 rxdParams = sim.net.params.rxdParams
76 if 'regions' in rxdParams:
---> 77 self._addRegions(rxdParams['regions'])
self._addRegions = >
rxdParams = {constants: {ip3_init: 0.0, caDiff: 0.08, ip3Diff: 1.41, caci_init: 1e-05, caco_init: 2.0, gip3r: 1204000, gserca: 0.3913, gleak: 6.02, kserca: 0.1, kip3: 0.15, kact: 0.4, ip3rtau: 2000, fc: 0.8, fe: 0.2, margin: 20}, regions: {cyt: {'cells': ['I', 'E'], 'secs': ['Bdend', 'Adend3'], 'nrn_region': 'i', 'geometry': 'membrane', 'dimension': None, 'dx': None}, er: {'cells': 'all', 'secs': 'all', 'geometry': {'class': 'FractionalVolume', 'args': {'volume_fraction': 0.2}}}, cyt_er_membrane: {'cells': 'all', 'secs': 'all', 'geometry': {'class': 'ScalableBorder', 'args': {'scale': 1, 'on_cell_surface': False}}}, ecs: {'extracellular': True, 'xlo': -20, 'ylo': -520, 'zlo': -20, 'xhi': 120, 'yhi': 20, 'zhi': 120, 'dx': 5, 'volume_fraction': 0.2, 'tortuosity': 1.6}}, species: {ca: {'regions': ['cyt', 'er', 'ecs'], 'd': 0.08, 'charge': 2, 'initial': 'caco_init if isinstance(node,rxd.node.NodeExtracellular) else (0.0017 - caci_init * fc) / fe if node.region == er else caci_init'}, ip3: {'regions': ['cyt'], 'd': 1.41, 'initial': 0.0}}, states: {ip3r_gate_state: {'regions': ['cyt_er_membrane'], 'initial': 0.8}}, multicompartmentReactions: {serca: {'reactant': 'ca[cyt]', 'product': 'ca[er]', 'rate_f': 'gserca / ((kserca / (1000. * ca[cyt])) ** 2 + 1)', 'membrane': 'cyt_er_membrane', 'custom_dynamics': True}, leak: {'reactant': 'ca[er]', 'product': 'ca[cyt]', 'rate_f': 6.02, 'rate_b': 6.02, 'membrane': 'cyt_er_membrane'}, ip3r: {'reactant': 'ca[er]', 'product': 'ca[cyt]', 'rate_f': 'gip3r * (ip3[cyt] * 1000. * ca[cyt] / (ip3[cyt] + kip3) / (1000. * ca[cyt] + kact) * ip3r_gate_state[cyt_er_membrane]) ** 3', 'rate_b': 'gip3r * (ip3[cyt] * 1000. * ca[cyt] / (ip3[cyt] + kip3) / (1000. * ca[cyt] + kact) * ip3r_gate_state[cyt_er_membrane]) ** 3', 'membrane': 'cyt_er_membrane'}}, rates: {ip3rg: {'species': 'ip3r_gate_state[cyt_er_membrane]', 'rate': '(1. / (1 + 1000. * ca[cyt] / (0.3)) - ip3r_gate_state[cyt_er_membrane]) / ip3rtau'}}}
78 if 'extracellular' in rxdParams:
79 #self._addExtracellular(rxdParams['extracellular'])

~/git/netpyne-ui/src/netpyne/netpyne/network/netrxd.py in _addRegions(self=, params={cyt: {'cells': ['I', 'E'], 'secs': ['Bdend', 'A...': 5, 'volume_fraction': 0.2, 'tortuosity': 1.6}})
159 nrnSecs = list(sim.h.allsec())
160 else:
--> 161 cells = sim.getCellsList(param['cells'])
cells = undefined
sim.getCellsList =
param = {'cells': ['I', 'E'], 'secs': ['Bdend', 'Adend3'], 'nrn_region': 'i', 'geometry': 'membrane', 'dimension': None, 'dx': None}
162 nrnSecs = []
163 for cell in cells:

~/git/netpyne-ui/src/netpyne/netpyne/sim/utils.py in getCellsList(include=['I', 'E'], returnGids=False)
96
97 elif isinstance(condition, basestring): # entire pop
---> 98 cellGids.extend(list(sim.net.pops[condition].cellGids))
global cellGids.extend = undefined
global list = undefined
sim.net.pops = {E2: , I2: , E4: , I4: , E5: , I5: }
global condition.cellGids = undefined
99
100 elif isinstance(condition, tuple) or isinstance(condition, list): # subset of a pop with relative indices

~/git/netpyne-ui/src/netpyne/netpyne/specs/dicts.py in __getitem__(self={E2: }, k='I')
195
196 def __getitem__(self, k):
--> 197 return super(ODict, self).__getitem__(k)
global super =
global ODict =
self.__getitem__ = , I2: , E4: , I4: , E5: , I5: }>
k = 'I'
198
199

KeyError: 'I'
```

貢獻指南

這個儲存庫沒有索引到貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。