Update optimization.py to run with neurotune instead of optimalneuron #18
Thanks for checking through these @VahidGh. Yes, neurotune (and pyelectro) have replaced optimalneuron. Unfortunately these files haven't been updated since that change.
Also in that time, libNeuroML has become more stable, pyramidal hasn't been updated much & jNeuroML is the most well tested way for running NeuroML2 models. Now the preferred pipeline is:
libNeuroML (create/edit model) -> NeuroML2 XML files -> jNeuroML (load) -> simulate -> check & optimise
libNeuroML (create/edit model) -> NeuroML2 XML files -> jNeuroML (load & export to NEURON) -> simulate -> check & optimise
as opposed to:
libNeuroML -> Pyramidal -> NEURON -> simulate -> check & optimise
My suggestions for updating this code are:
For your 2nd question, see here an example of a kinetic scheme based channel specification in NeuroML2: https://github.com/NeuroML/NeuroML2/blob/development/LEMSexamples/LEMS_NML2_Ex4_KS.xml. This runs with jNeuroML (but not jNeuroML->NEURON), but I don't believe this channel type has been tested/used beyond this example...
Re optimisation, I started this updated version of the optimiser code to work with c302, but it's not yet finished. Have a look if you like. Requires my forks of neurotune and pyelectro. Hope to get this more stable in the next week.
This issue is redundant, due to the work ongoing to use neurotune in c302, see https://github.com/openworm/CElegansNeuroML/blob/master/CElegans/pythonScripts/c302/tune/c302tuner.py, and ChannelWorm https://github.com/VahidGh/ChannelWorm/tree/cwFitter/cwFitter.
The code in this repo using neurotune/optimalneuron probably won't be revived (sorry @vellamike)...