Skip to content
This repository was archived by the owner on Feb 26, 2025. It is now read-only.

Commit 5c9a5bf

Browse files
committed
Merge branch 'master' into arbor_integration
2 parents 04ce614 + 3527f55 commit 5c9a5bf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+7543
-93
lines changed

.github/workflows/keep-alive.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ jobs:
2323
echo "datelimit=$datethen" >> $GITHUB_ENV
2424
2525
- name: setup git config
26-
if: github.event.base.repo.updated_at <= env.datelimit
26+
if: github.event.repository.pushed_at <= env.datelimit
2727
run: |
2828
# setup the username and email.
2929
git config user.name "Github Actions Keepalive Bot"
3030
git config user.email "<>"
3131
3232
- name: commit IF last commit is older than 50 days
33-
if: github.event.base.repo.updated_at <= env.datelimit
33+
if: github.event.repository.pushed_at <= env.datelimit
3434
run: |
3535
git commit -m "Empty commit to keep the gihub workflows alive" --allow-empty
3636
git push origin master

.github/workflows/test.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,15 @@ on:
77

88
jobs:
99
test:
10-
runs-on: ubuntu-latest
10+
name: Test for python ${{ matrix.python-version }} on ${{ matrix.os }}
11+
runs-on: ${{ matrix.os }}
1112
strategy:
1213
matrix:
14+
os: [ubuntu-latest]
1315
python-version: ["3.7", "3.8", "3.9", "3.10"]
16+
include:
17+
- os: macos-latest
18+
python-version: "3.10"
1419

1520
steps:
1621
- uses: actions/checkout@v2

AUTHORS.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@ Giuseppe Chindemi @ BBP
66
Tanguy Damart @ BBP
77
Elisabetta Iavarone @ BBP
88
Anil Tuncel @ BBP
9+
Aurelien Jaquier @ BBP

Makefile

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,20 @@ clean:
7979
rm -rf examples/l5pc/l5pc_validate_neuron_arbor_somatic.py
8080
rm -rf examples/l5pc/x86_64
8181
rm -rf examples/stochkv/x86_64
82+
rm -rf x86_64
8283
rm -rf .coverage
8384
rm -rf coverage.xml
85+
rm -rf channels
86+
rm -rf LEMS_l5pc.xml
87+
rm -rf LEMS_l5pc_nrn.py
88+
rm -rf l5pc.Pop_l5pc_0_0.v.dat
89+
rm -rf time.dat
90+
rm -rf l5pc.hoc
91+
rm -rf l5pc.net.nml
92+
rm -rf l5pc_0_0.cell.nml
93+
rm -rf l5pc_0_0.hoc
94+
rm -rf loadcell.hoc
95+
rm -rf *.mod
8496
find . -name "*.pyc" -exec rm -rf {} \;
8597
l5pc_start: install
8698
cd examples/l5pc && \

README.rst

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,9 @@ We are providing support using a chat channel on `Gitter <https://gitter.im/Blue
107107

108108
News
109109
====
110-
- 2022/10/31: BluePyOpt now supports Arbor simulator.
110+
- 2023/01: BluePyOpt now supports the Arbor simulator.
111+
- 2022/12: Support for LFPy models merged into master. Examples and preprint: https://github.com/alejoe91/multimodalfitting, https://www.biorxiv.org/content/10.1101/2022.08.03.502468v1.full
112+
- 2022/12: BluePyOpt now has the ability to write out NeuroML files: https://github.com/BlueBrain/BluePyOpt/tree/master/bluepyopt/neuroml
111113
- 2021/08/30: BluePyOpt dropped Python 2.7 support.
112114
- 2017/01/04: BluePyOpt is now considered compatible with Python 3.6+.
113115
- 2016/11/10: BluePyOpt now supports NEURON point processes. This means we can fit parameters of Adex/GIF/Izhikevich models, and also synapse models.
@@ -140,7 +142,7 @@ And then bluepyopt itself:
140142
141143
pip install bluepyopt
142144
143-
Support for simulators other than NEURON is optional and not installed by default. If you want to use [Arbor](https://arbor-sim.org/) to run your models, use the followig line instead to install bluepyopt.
145+
Support for simulators other than NEURON is optional and not installed by default. If you want to use [Arbor](https://arbor-sim.org/) to run your models, use the following line instead to install bluepyopt.
144146

145147
.. code-block:: bash
146148
@@ -201,6 +203,14 @@ With 2 notebooks:
201203
https://github.com/BlueBrain/BluePyOpt/blob/master/examples/tsodyksmarkramstp/tsodyksmarkramstp.ipynb
202204
https://github.com/BlueBrain/BluePyOpt/blob/master/examples/tsodyksmarkramstp/tsodyksmarkramstp_multiplefreqs.ipynb
203205

206+
Exporting cell in neuroml format
207+
--------------------------------
208+
An iPython notebook showing how to export a BluePyOpt cell in the neuroml format, how to create a LEMS simulation,
209+
and how to run the LEMS simulation with the neuroml cell can be found at:
210+
211+
https://github.com/BlueBrain/BluePyOpt/blob/master/examples/neuroml/neuroml.ipynb
212+
213+
204214
API documentation
205215
=================
206216
The API documentation can be found on `ReadTheDocs <http://bluepyopt.readthedocs.io/en/latest/>`_.

bluepyopt/deapext/optimisations.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,10 @@ def setup_deap(self):
199199

200200
# Register the evaluation function for the individuals
201201
# import deap_efel_eval1
202-
self.toolbox.register("evaluate", self.evaluator.evaluate_with_lists)
202+
self.toolbox.register(
203+
"evaluate",
204+
self.evaluator.init_simulator_and_evaluate_with_lists
205+
)
203206

204207
# Register the mate operator
205208
self.toolbox.register(

bluepyopt/deapext/optimisationsCMA.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,10 @@ def setup_deap(self):
211211
)
212212

213213
# Register the evaluation function for the individuals
214-
self.toolbox.register("evaluate", self.evaluator.evaluate_with_lists)
214+
self.toolbox.register(
215+
"evaluate",
216+
self.evaluator.init_simulator_and_evaluate_with_lists
217+
)
215218

216219
import copyreg
217220
import types

bluepyopt/deapext/tools/selIBEA.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ def _calc_fitness_components(population, kappa):
6363
population_matrix = numpy.fromiter(
6464
iter(-x for individual in population
6565
for x in individual.fitness.wvalues),
66-
dtype=numpy.float)
66+
dtype=numpy.float64)
6767
pop_len = len(population)
6868
feat_len = len(population[0].fitness.wvalues)
6969
population_matrix = population_matrix.reshape((pop_len, feat_len))

bluepyopt/ephys/create_hoc.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,11 @@ def _generate_parameters(parameters, location_order, loc_desc):
157157
if loc not in param_locations:
158158
continue
159159
for param in param_locations[loc]:
160+
if not isinstance(param.param_dependencies, list) or \
161+
len(param.param_dependencies) > 0:
162+
raise CreateHocException( # also an ACC exception
163+
'Exporting models with parameters that have'
164+
' param_dependencies is not yet supported.')
160165
if isinstance(param, NrnRangeParameter):
161166
if isinstance(
162167
param.value_scaler,

0 commit comments

Comments
 (0)