Skip to content

Commit

Permalink
Merge pull request #5 from OpenSourceBrain/development
Browse files Browse the repository at this point in the history
Tests on mac and mac14 too, mainly to check EDEN behaviour
  • Loading branch information
pgleeson authored May 2, 2024
2 parents cbba4d0 + 0059494 commit 9310c9d
Show file tree
Hide file tree
Showing 16 changed files with 285 additions and 112 deletions.
17 changes: 11 additions & 6 deletions .github/workflows/omv-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,31 @@ on:

jobs:
build:

runs-on: ubuntu-latest
name: Py${{ matrix.python-version }}, ${{ matrix.engine}} on ${{ matrix.runs-on }}
runs-on: ${{ matrix.runs-on }}
strategy:
fail-fast: false
matrix:
python-version: [ 3.7, 3.9 ]
python-version: [ "3.10" ]
engine: [ jNeuroML, jNeuroML_NEURON, jNeuroML_NetPyNE, jNeuroML_validate, jNeuroML_validatev1, jNeuroML_EDEN ]
runs-on: [ubuntu-latest, macos-latest ]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install HDF5 for pytables on macos-latest
if: ${{ matrix.runs-on == 'macos-latest' }}
run: |
brew install hdf5
- name: Install OMV
run: |
pip install git+https://github.com/OpenSourceBrain/osb-model-validation
pip install scipy sympy matplotlib cython pandas tables
- name: Run OMV tests on engine ${{ matrix.engine }}
run: |
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,4 @@ neuroConstruct/generatedNeuroML2/*.js
*_code.gen.c
*_code.gen.so
arm64
/neuroConstruct/generatedNeuroML2/ACnet2.net.nml__flattened.xml
4 changes: 2 additions & 2 deletions neuroConstruct/generatedNeuroML2/.test.jnmleden.omt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ experiments:
spike detection:
method: threshold
threshold: 0
tolerance: 0.0010167414427688726
tolerance: 0.0010208952879688757
Current clamp basket:
observables:
spike times:
Expand All @@ -25,4 +25,4 @@ experiments:
spike detection:
method: threshold
threshold: 0
tolerance: 0.00029262095123372775
tolerance: 0.000292671703552327
4 changes: 2 additions & 2 deletions neuroConstruct/generatedNeuroML2/.test.two.jnmleden.omt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ experiments:
spike detection:
method: threshold
threshold: 0
tolerance: 0.017343922603342065
tolerance: 0.01734388742304312
bask0:
observables:
spike times:
Expand All @@ -26,4 +26,4 @@ experiments:
spike detection:
method: threshold
threshold: 0
tolerance: 0.0017869092394359062
tolerance: 0.001786960295444412
8 changes: 2 additions & 6 deletions neuroConstruct/generatedNeuroML2/ACnet2.net.nml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<neuroml xmlns="http://www.neuroml.org/schema/neuroml2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.neuroml.org/schema/neuroml2 https://raw.github.com/NeuroML/NeuroML2/development/Schemas/NeuroML2/NeuroML_v2beta3.xsd" id="network_ACnet2">
<neuroml xmlns="http://www.neuroml.org/schema/neuroml2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.neuroml.org/schema/neuroml2 https://raw.githubusercontent.com/NeuroML/NeuroML2/development/Schemas/NeuroML2/NeuroML_v2.3.1.xsd" id="network_ACnet2">

<notes>

Network structure (NeuroML 2beta3) for project: ACnet2 saved with neuroConstruct v1.7.1 on: 13:25:26, 17-Jun-14
Network structure (NeuroML 2.3.1) for project: ACnet2 saved with neuroConstruct v1.7.5 on: 14:13:13, 02-May-24

Cell Group: basket_soma contains 1 cells
Cell Group: pyramidal_soma contains 1 cells
Expand All @@ -24,13 +24,9 @@ Cell Group: pyramidal_soma contains 1 cells
<include href="Na_bask.channel.nml"/>
<include href="Na_pyr.channel.nml"/>
<include href="pyr_4_sym_soma.cell.nml"/>

<pulseGenerator id="Input_3" delay="100.0ms" duration="500.0ms" amplitude="2.0E-4uA"/>



<pulseGenerator id="Input_2" delay="100.0ms" duration="500.0ms" amplitude="1.0E-4uA"/>


<network id="network_ACnet2" type="networkWithTemperature" temperature="6.3 degC">

Expand Down
6 changes: 3 additions & 3 deletions neuroConstruct/generatedNeuroML2/Ca_conc.nml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<neuroml xmlns="http://www.neuroml.org/schema/neuroml2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.neuroml.org/schema/neuroml2 https://raw.github.com/NeuroML/NeuroML2/development/Schemas/NeuroML2/NeuroML_v2beta4.xsd" id="Ca_conc">

<notes>NeuroML file describing intracellular Calcium dynamics, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>

<fixedFactorConcentrationModel id="Ca_conc" restingConc="0.0mM" decayConstant="0.1s" ion="ca" rho="9543.150099999999mol_per_m_per_A_per_s"/>

</neuroml>
70 changes: 53 additions & 17 deletions neuroConstruct/generatedNeuroML2/Ca_pyr.channel.nml
Original file line number Diff line number Diff line change
@@ -1,70 +1,106 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<neuroml xmlns="http://www.neuroml.org/schema/neuroml2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.neuroml.org/schema/neuroml2 https://raw.github.com/NeuroML/NeuroML2/development/Schemas/NeuroML2/NeuroML_v2beta4.xsd" id="Ca_pyr">

<notes>NeuroML file containing a single Calcium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>

<ionChannel id="Ca_pyr" conductance="10pS" type="ionChannelHH" species="ca">

<notes>NeuroML file containing a single Calcium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>

<notes>NeuroML file containing a single Calcium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>


<annotation>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<rdf:Description rdf:about="Ca_pyr">


<bqmodel:isDescribedBy xmlns:bqmodel="http://biomodels.net/model-qualifiers/">

<rdf:Bag>

<rdf:li>Traub, R. D., Wong, R. K., Miles, R., and Michelson, H. (1991). A model of a CA3 hippocampal pyramidal neuron incorporating voltage-clamp data on intrinsic conductances. Journal of neurophysiology, 66(2), 635-50.</rdf:li>

<rdf:li rdf:resource="http://www.ncbi.nlm.nih.gov/pubmed/1663538"/>

</rdf:Bag>

</bqmodel:isDescribedBy>


<bqbiol:isVersionOf xmlns:bqbiol="http://biomodels.net/biology-qualifiers/">

<rdf:Bag>

<rdf:li>Ca channels</rdf:li>

<rdf:li rdf:resource="http://senselab.med.yale.edu/neurondb/NeuronProp.aspx?id=259&amp;mo=1&amp;re=&amp;pr=C"/>

</rdf:Bag>

</bqbiol:isVersionOf>

</rdf:Description>

</rdf:RDF>

</annotation>

<gate id="m" type="gateHHrates" instances="2">

<forwardRate type="HHSigmoidRate" rate="1.6e3per_s" scale="0.01389V" midpoint="5e-03V"/>

<reverseRate type="HHExpLinearRate" rate="1e2per_s" scale="-0.005V" midpoint="-8.9e-3V"/>

</gate>

<gate id="h" type="gateHHtauInf" instances="1">

<timeCourse type="Ca_pyr_h_tau_tau"/>

<steadyState type="Ca_pyr_h_inf_inf"/>

</gate>



</ionChannel>

<ComponentType name="Ca_pyr_h_tau_tau" extends="baseVoltageDepTime">

<Constant name="TIME_SCALE" dimension="time" value="1 s"/>

<Constant name="VOLT_SCALE" dimension="voltage" value="1 V"/>

<Dynamics>

<DerivedVariable name="V" dimension="none" value="v / VOLT_SCALE"/>

<DerivedVariable name="t" exposure="t" dimension="time" value="(0.2) * TIME_SCALE"/>

</Dynamics>

</ComponentType>

<ComponentType name="Ca_pyr_h_inf_inf" extends="baseVoltageDepVariable">

<Constant name="TIME_SCALE" dimension="time" value="1 s"/>

<Constant name="VOLT_SCALE" dimension="voltage" value="1 V"/>

<Dynamics>

<DerivedVariable name="V" dimension="none" value="v / VOLT_SCALE"/>

<ConditionalDerivedVariable name="x" exposure="x" dimension="none">

<Case condition="V .gt. ( -0.06 )" value=" (exp (-50*(V + 0.06))) "/>

<Case value=" 1"/>

</ConditionalDerivedVariable>

</Dynamics>

</ComponentType>

</neuroml>
69 changes: 53 additions & 16 deletions neuroConstruct/generatedNeuroML2/Kahp_pyr.channel.nml
Original file line number Diff line number Diff line change
@@ -1,69 +1,106 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<neuroml xmlns="http://www.neuroml.org/schema/neuroml2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.neuroml.org/schema/neuroml2 https://raw.github.com/NeuroML/NeuroML2/development/Schemas/NeuroML2/NeuroML_v2beta4.xsd" id="Kahp_pyr">

<notes>NeuroML file containing a single Calcium-dependent Potassium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>

<ionChannel id="Kahp_pyr" conductance="10pS" type="ionChannelHH" species="k">

<notes>NeuroML file containing a single Calcium-dependent Potassium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>

<notes>NeuroML file containing a single Calcium-dependent Potassium Channel description, from the Hippocampal CA3 neuron model presented in Traub et al., 1991.</notes>


<annotation>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<rdf:Description rdf:about="Kahp_pyr">


<bqmodel:isDescribedBy xmlns:bqmodel="http://biomodels.net/model-qualifiers/">

<rdf:Bag>

<rdf:li>Traub, R. D., Wong, R. K., Miles, R., and Michelson, H. (1991). A model of a CA3 hippocampal pyramidal neuron incorporating voltage-clamp data on intrinsic conductances. Journal of neurophysiology, 66(2), 635-50.</rdf:li>

<rdf:li rdf:resource="http://www.ncbi.nlm.nih.gov/pubmed/1663538"/>

</rdf:Bag>

</bqmodel:isDescribedBy>


<bqbiol:isVersionOf xmlns:bqbiol="http://biomodels.net/biology-qualifiers/">

<rdf:Bag>

<rdf:li>K channels</rdf:li>

<rdf:li rdf:resource="http://senselab.med.yale.edu/neurondb/NeuronProp.aspx?id=259&amp;mo=1&amp;re=&amp;pr=C"/>

</rdf:Bag>

</bqbiol:isVersionOf>

</rdf:Description>

</rdf:RDF>

</annotation>

<gate id="z" type="gateHHrates" instances="1">

<forwardRate type="Kahp_pyr_z_alpha_rate"/>

<reverseRate type="Kahp_pyr_z_beta_rate"/>

</gate>



</ionChannel>

<ComponentType name="Kahp_pyr_z_alpha_rate" extends="baseVoltageConcDepRate">

<Constant name="TIME_SCALE" dimension="time" value="1 s"/>

<Constant name="VOLT_SCALE" dimension="voltage" value="1 V"/>

<Constant name="CONC_SCALE" dimension="concentration" value="1 mM"/>

<Dynamics>

<DerivedVariable name="V" dimension="none" value="v / VOLT_SCALE"/>

<DerivedVariable name="ca_conc" dimension="none" value="caConc / CONC_SCALE"/>

<ConditionalDerivedVariable name="r" exposure="r" dimension="per_time">

<Case condition="ca_conc .lt. ( 500.0 )" value="( 0.4 * ca_conc ) / TIME_SCALE"/>

<Case value="( 200) / TIME_SCALE"/>

</ConditionalDerivedVariable>

</Dynamics>

</ComponentType>

<ComponentType name="Kahp_pyr_z_beta_rate" extends="baseVoltageConcDepRate">

<Constant name="TIME_SCALE" dimension="time" value="1 s"/>

<Constant name="VOLT_SCALE" dimension="voltage" value="1 V"/>

<Constant name="CONC_SCALE" dimension="concentration" value="1 mM"/>

<Dynamics>

<DerivedVariable name="V" dimension="none" value="v / VOLT_SCALE"/>

<DerivedVariable name="ca_conc" dimension="none" value="caConc / CONC_SCALE"/>

<DerivedVariable name="r" exposure="r" dimension="per_time" value="(20) / TIME_SCALE"/>

</Dynamics>

</ComponentType>

</neuroml>
Loading

0 comments on commit 9310c9d

Please sign in to comment.