These are chat archives for openworm/ChannelWorm

21st
May 2015
Stephen Larson
@slarson
May 21 2015 16:32
Hi @travs @VahidGh — you guys around?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:32
Hi
Travis Jacobs
@travs
May 21 2015 16:32
Ready!
Hey @miladjafary
Milad Jafary
@miladjafary
May 21 2015 16:33
Hi All
Travis Jacobs
@travs
May 21 2015 16:33
Hey everyone
Stephen Larson
@slarson
May 21 2015 16:34
Cool
OK — @travs remind us what we wanted to try to address today?
or just what things were left over from last time?
Travis Jacobs
@travs
May 21 2015 16:34
Right, I'll paste the agenda in here and we'll walk through it?
Agenda:
  • how to put data from the plots into pyopenworm
    • what in pyopenworm needs to be there to make that happen
    • started in "Data modelling" milestone
  • how do we fit the channel models into muscle and neuron models?
  • how do we sync with interactions happening on the muscle and neuron modelling?
  • Choosing figures from papers for digitization
  • Syncing the plan with digitization walkthrough in docs
Stephen Larson
@slarson
May 21 2015 16:35
Sounds good
Maybe let’s start from the bottom?
since that’s most relevant to everyone
Travis Jacobs
@travs
May 21 2015 16:36
I was just thinking that yes
Stephen Larson
@slarson
May 21 2015 16:36
especially including @miladjafary (hello :)
So the digitization stuff — @VahidGh and @miladjafary have you had a chance to see the digitization walkthrough that @travs has drafted?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:37
yes
Milad Jafary
@miladjafary
May 21 2015 16:37
hi @slarson
Travis Jacobs
@travs
May 21 2015 16:37
here is the digitization section
Stephen Larson
@slarson
May 21 2015 16:37
hi :)
so, does that walkthrough meet with what you are working on?
or are you thinking there are some different pieces?
i’ve seen something about a different build of the webplotdigitizer … is that right?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:38
Ans as I said yesterday Milad and I were working to have it as a built-in feature in the CW
At the first we started separately, but then we decided to put them all together
Now we have a Python+Django+bootstrap project
We both are working on
Stephen Larson
@slarson
May 21 2015 16:40
Cool; so do you expect that users will follow those steps that are outlined there?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:40
We are working on a theme with widget capability
Stephen Larson
@slarson
May 21 2015 16:41
as in, will all those steps be captured by your project?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:41
And putting some custom version of the digitizer as a widget in the app
Yes, off course
Stephen Larson
@slarson
May 21 2015 16:41
gotcha
So how’s that bit going?
How do we want to represent that bit in those docs?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:44
Today Milad finished the first version of the digitizer as a bootstrap and django app
Stephen Larson
@slarson
May 21 2015 16:44
Cool .. running somewhere online? :)
Vahid Ghayoomie
@VahidGh
May 21 2015 16:44
And I did some good progress on the back-end
I'd prefer to upload the confirmed version
maybe tomorrow
It needs a little work
Milad Jafary
@miladjafary
May 21 2015 16:46
Sorry disconnec.
Stephen Larson
@slarson
May 21 2015 16:46
ok cool — and what are the issues that are tracking this one?
Milad Jafary
@miladjafary
May 21 2015 16:46
disconnect.
Stephen Larson
@slarson
May 21 2015 16:46
no problem @miladjafary
Vahid Ghayoomie
@VahidGh
May 21 2015 16:47
And I hope we can integrate it with the fitting process, file handling and data models by the end of this week
Milad Jafary
@miladjafary
May 21 2015 16:47
main issue is time :d
Vahid Ghayoomie
@VahidGh
May 21 2015 16:47
#17
#16
Also I setup a dropbox for #8
As you were suggested
I selected the main refs along with some with useful data
Travis Jacobs
@travs
May 21 2015 16:51
Ok @VahidGh, so the dropbox will be connected to the web app I presume?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:52
It can be, but for the first phase
Or we can build a list for other channel types and have a page for in the web app
Stephen Larson
@slarson
May 21 2015 16:57
Cool. In terms of #17 #16 and #8 though, none of these explicitly talk about the features for the web app, right?
they just talk about the scientific operations that need to get completed
So far there is this milestone I’m seeing
only one issue in there
Vahid Ghayoomie
@VahidGh
May 21 2015 16:58
I was opening an issue right now :)
Stephen Larson
@slarson
May 21 2015 16:58
ok cool
sounds like you guys have done this one: #24
yeah?
Vahid Ghayoomie
@VahidGh
May 21 2015 16:59
Yep, this one covers some
Stephen Larson
@slarson
May 21 2015 17:01
ok cool, what’s the repo for the web project?
or is it the same on a different branch?
Milad Jafary
@miladjafary
May 21 2015 17:02
right know we don't have any repo for web project
Vahid Ghayoomie
@VahidGh
May 21 2015 17:02
As now all the app is in one project I think it's better to have it in one repo
Milad Jafary
@miladjafary
May 21 2015 17:02
Yes.
Vahid Ghayoomie
@VahidGh
May 21 2015 17:03
Or finally syncing some released version in the OpenShift repo, @joebowen has set it up
Stephen Larson
@slarson
May 21 2015 17:04
OK yeah; if we want to be able to get more contributors to help out, best that we put the code up on GitHub
because then it ties in with the issues as well
Milad Jafary
@miladjafary
May 21 2015 17:04
yes
but I think that
put the source in channel worm repo is better than put it in an other repo
Stephen Larson
@slarson
May 21 2015 17:05
i agree
sounds good
ok so we have #37 to track that bit
Milad Jafary
@miladjafary
May 21 2015 17:07
it's sunds that @joebowen found a way that we can put code in Repo and deployed automatic in OpenShift
Stephen Larson
@slarson
May 21 2015 17:07
basically we should see if the whole flow that is defined in here can be handled by the app
Travis Jacobs
@travs
May 21 2015 17:07
Yes
Stephen Larson
@slarson
May 21 2015 17:07
and once the app is ready, then the flow can be defined in terms of carrying out functions on the app
Travis Jacobs
@travs
May 21 2015 17:07
So the app is not deployable yet, but should be in a couple days. this is correct @miladjafary @VahidGh ?
Milad Jafary
@miladjafary
May 21 2015 17:08
yes
Travis Jacobs
@travs
May 21 2015 17:08
Ok awesome
Milad Jafary
@miladjafary
May 21 2015 17:08
me and Vahid work in seperate section of web app
I working in UI and Vahid working in backend .
Stephen Larson
@slarson
May 21 2015 17:09
gotcha — ok and now there’s #38 that focuses on deployment
@joebowen seems to be commenting on issues as well :)
Vahid Ghayoomie
@VahidGh
May 21 2015 17:09
@travs, yes. and also I reserved some empty room for PyOW in the model
:)
Stephen Larson
@slarson
May 21 2015 17:10
Cool, ok, next agenda topic relates to "Choosing figures from papers for digitization"
how do we want to do this process?
Travis Jacobs
@travs
May 21 2015 17:10
@VahidGh Great :)
Stephen Larson
@slarson
May 21 2015 17:10
now we have that folder of PDFs
which is excellent
i think we need to also specify the figures
@travs has started a spreadsheet
do you want to link that one @travs ?
Travis Jacobs
@travs
May 21 2015 17:11
I'll grab it
Stephen Larson
@slarson
May 21 2015 17:11
i think we need to take some time to fill it in
Vahid Ghayoomie
@VahidGh
May 21 2015 17:11
Yes, "what figures?" is a key question
Travis Jacobs
@travs
May 21 2015 17:11
This just lists the first figure that you digitized @VahidGh . We can append to it
Vahid Ghayoomie
@VahidGh
May 21 2015 17:11
I was thinking about different combination of figures
Based on the data provided in each paper we can categorize it under 3-4 class of available data
Stephen Larson
@slarson
May 21 2015 17:13
ok cool — what classes would you suggest?
Travis Jacobs
@travs
May 21 2015 17:13
One is I/V curves I suppose?
Vahid Ghayoomie
@VahidGh
May 21 2015 17:13
For example some have activation/inactivation data and some not
Stephen Larson
@slarson
May 21 2015 17:14
can we fill out the examples for the first paper in that spreadsheet? https://docs.google.com/spreadsheets/d/1jTXDHsLsdK-T_d-RwCb4gmQgMhjumvZE7C_2PEXFYAk/edit#gid=0
Vahid Ghayoomie
@VahidGh
May 21 2015 17:14
It's hard to say what is the "minimum" data needed
And how we should decide on the accuracy
Maybe we can have a model with just an I/V figure, but is it accurate enough?
Stephen Larson
@slarson
May 21 2015 17:16
good question
Travis Jacobs
@travs
May 21 2015 17:16
@VahidGh You're right, those are difficult but fundamental questions.
Stephen Larson
@slarson
May 21 2015 17:17
these things often can’t be determined until you run some additional tests and compare the output
Vahid Ghayoomie
@VahidGh
May 21 2015 17:17
I think at least we need some IClamp or VClamp data
Stephen Larson
@slarson
May 21 2015 17:17
there’s two ways to look at it though
there’s the data ideally we would want
Travis Jacobs
@travs
May 21 2015 17:17
I think if we can get a process working with any amount of data though, it would be a good start. We can always iterate on the models later
Stephen Larson
@slarson
May 21 2015 17:17
and then there’s the data that actually appears in papers that we can get
yeah exactly @travs
so i’d say we go more from the most common graphs in the papers that we have
and see how the next level checks go
Vahid Ghayoomie
@VahidGh
May 21 2015 17:18
@travs, yes, and I had this in mind when designing the structure these days
Travis Jacobs
@travs
May 21 2015 17:18
As long as our model is extensible, the amount of data at this moment is less important.
exactly @VahidGh
Vahid Ghayoomie
@VahidGh
May 21 2015 17:19
Yes, I guess Voltage-Clamp is the most general, right?
Stephen Larson
@slarson
May 21 2015 17:19
usually yes
Travis Jacobs
@travs
May 21 2015 17:19
Good. So if we can have a list of the most common data types in the papers, then we can start building our models on those
Stephen Larson
@slarson
May 21 2015 17:19
so i think we basically need to block out some time to think through this
Travis Jacobs
@travs
May 21 2015 17:19
Yes
Stephen Larson
@slarson
May 21 2015 17:19
it sounds like it will take longer than this session to solve that problem
Milad Jafary
@miladjafary
May 21 2015 17:20
@travs Do you have any sample model ?
Vahid Ghayoomie
@VahidGh
May 21 2015 17:20
Yes, I'm working on it, and let you know my progress
Maybe a ticket could be helpful for tracking this
Milad Jafary
@miladjafary
May 21 2015 17:21
I agree.
Stephen Larson
@slarson
May 21 2015 17:22
#39 is for that one
Travis Jacobs
@travs
May 21 2015 17:22
@miladjafary This NeuroML model is the reference I have been using
Stephen Larson
@slarson
May 21 2015 17:23
yes — @miladjafary are you familiar with LEMS?
Milad Jafary
@miladjafary
May 21 2015 17:23
i don't know very much .
Stephen Larson
@slarson
May 21 2015 17:24
No problem @miladjafary — Check out this paper
Milad Jafary
@miladjafary
May 21 2015 17:24
@travs Thanks.
Stephen Larson
@slarson
May 21 2015 17:25
Figure 3 in particular
Milad Jafary
@miladjafary
May 21 2015 17:26
@slarson Thank you.
I am going to read it .
Travis Jacobs
@travs
May 21 2015 17:26
Ok. So this LEMS talk kind of leads into the next thing on the agenda, which is integrating with cell simulations. I'll bring the agenda back up
Stephen Larson
@slarson
May 21 2015 17:26
Great
Travis Jacobs
@travs
May 21 2015 17:27
Agenda:
  • how to put data from the plots into pyopenworm
    • what in pyopenworm needs to be there to make that happen
    • started in "Data modelling" milestone
  • how do we fit the channel models into muscle and neuron models?
  • how do we sync with interactions happening on the muscle and neuron modelling?
  • Choosing figures from papers for digitization #39
  • Syncing the plan with digitization walkthrough in docs #37 #38
Stephen Larson
@slarson
May 21 2015 17:27
cool
so the first point on how to put data from the plots
into pyopenworm
so right now there’s this spreadsheet
but the idea of this web app is there is a DB right?
Vahid Ghayoomie
@VahidGh
May 21 2015 17:28
@travs, we need some biological parameters to be specified
Stephen Larson
@slarson
May 21 2015 17:28
and we’ve just said there is a place for pyopenworm
Travis Jacobs
@travs
May 21 2015 17:28
Yes, PyOW would be deployed in the cloud
@VahidGh You mean in the data model for Ion Channel?
Stephen Larson
@slarson
May 21 2015 17:28
OK so I think we will want to take a look at the code responsible for the database access layer of this web app
Vahid Ghayoomie
@VahidGh
May 21 2015 17:28
And this is in high priority
@slarson, these parameters could be a good starting point for the PyOW
And this is the open room I was talking about
Stephen Larson
@slarson
May 21 2015 17:29
right; cool
Vahid Ghayoomie
@VahidGh
May 21 2015 17:30
Parameters from the cell part in the LEMS file
Milad Jafary
@miladjafary
May 21 2015 17:30
and also could be a good point for knowing model.
Stephen Larson
@slarson
May 21 2015 17:30
once we can see the code, then we can get more specific on how to fit it together with PyOW on that question
Milad Jafary
@miladjafary
May 21 2015 17:31
what's the way of Interaction between ChannelWorm and PyOpenWorm ?
Stephen Larson
@slarson
May 21 2015 17:31
right; that’s what we’re trying to figure out
Travis Jacobs
@travs
May 21 2015 17:31
PyOW will be installed as an external library
Stephen Larson
@slarson
May 21 2015 17:31
PyOpenWorm provides an API
and ChannelWorm can call that
Vahid Ghayoomie
@VahidGh
May 21 2015 17:31
That should match the environment author of the paper has done the experiment based on
Stephen Larson
@slarson
May 21 2015 17:31
to log information
makes sense?
Milad Jafary
@miladjafary
May 21 2015 17:33
I think The CW needs to provid an API
for calling it by PyOpenWorm
Stephen Larson
@slarson
May 21 2015 17:33
it could
PyOpenWorm is more the collection point for the data
Vahid Ghayoomie
@VahidGh
May 21 2015 17:34
class BioParameters(PyOW): """ Class for handling biological parameters for the specific cell, simulation is based on Parameters include: cell type, age, membrane capacitance, surface area, temperature, temperature sensitivity, channel density, channel type, ion type, [Ca2+] (for Ca) Also min and max values: g, V_rev, V_half_m, V_half_h, km, kh, Tm. Th, (for Ca -- alphaCa, Tca, k), !! m_power, h_power !! Default weights for each parameter being used in GA also should be initialized here. """
In the figure we put together here, its like PyOpenWorm is where info gets stored by other things
so it isn’t really doing the calling
but we could consider some process that binds the two together as external
Milad Jafary
@miladjafary
May 21 2015 17:35
Yes, You right.
Vahid Ghayoomie
@VahidGh
May 21 2015 17:36
For example in this class we need to extract cell parameters and min max values from the PyOW
Stephen Larson
@slarson
May 21 2015 17:36
right and that’s the reading part
yep
okay, so coming down to time here
we’ve got some ideas on the first agenda item but we’ll circle back to it for next time
Travis Jacobs
@travs
May 21 2015 17:37
Ok, sounds good
Stephen Larson
@slarson
May 21 2015 17:37
the middle two items:
how do we fit the channel models into muscle and neuron models?
how do we sync with interactions happening on the muscle and neuron modelling?
we need to answer these for the purposes of fleshing out the rest of the roadmap
Travis Jacobs
@travs
May 21 2015 17:38
Right
Stephen Larson
@slarson
May 21 2015 17:38
and to connect in others who have been working on those parts
we need to have some case where we pull in the ion channels from channelworm into a cell model
Travis Jacobs
@travs
May 21 2015 17:39
So including channel models (NeuroML2) inside Cell models should be pretty straightforward right?
Stephen Larson
@slarson
May 21 2015 17:39
yeah — straightforward to it once off
the question is how to set this up as an ongoing project with multiple cells
how to make it clear what needs to get done
i’m thinking we need to see what contents are in PyOpenWorm for each cell and what ion channels are supposed to go to that cell
Vahid Ghayoomie
@VahidGh
May 21 2015 17:40
We store parameters of a nml2 file in the CW
Travis Jacobs
@travs
May 21 2015 17:41
Right, so this is kind of an issue I have been thinking about in terms of modelling the ion channels.
Vahid Ghayoomie
@VahidGh
May 21 2015 17:41
Then we need some API to convert final models to nml files that could be used anywhere in the OW project
Travis Jacobs
@travs
May 21 2015 17:41
There seem to be different requirements for different parts of the project, so the "model" is actually a lot of different things
Stephen Larson
@slarson
May 21 2015 17:42
hehe yes
Travis Jacobs
@travs
May 21 2015 17:42
I have a diagram of what I think a model is here on the left
This drawing is in terms of validation, but the model still mentions other facets
Ultimately, the model is called as a NeuroML2 file, but sciunit and channelworm seem to need different things exposed from this core
Vahid Ghayoomie
@VahidGh
May 21 2015 17:43
@travs, A model for a channel is independent of the cell model
Travis Jacobs
@travs
May 21 2015 17:44
@VahidGh absolutely
sorry, I should have mentioned I was talking only about ion channel models
Stephen Larson
@slarson
May 21 2015 17:45
so here’s where i’m thinking a web interface to pyopenworm could be helpful
if we can get a picture representation of all the cells
and you can drill into each cell and see the ion channels that are supposed to go to that cell
and then you can see if we have models for those ion channels yet through channelworm or not
and we can see details about the ion channel
and have separate pages for these
Milad Jafary
@miladjafary
May 21 2015 17:46
Interesting.
Travis Jacobs
@travs
May 21 2015 17:47
That would be really cool.
Vahid Ghayoomie
@VahidGh
May 21 2015 17:47
Yes, interesting
Stephen Larson
@slarson
May 21 2015 17:47
:)
Milad Jafary
@miladjafary
May 21 2015 17:47
:D
Stephen Larson
@slarson
May 21 2015 17:47
perhaps we can extend what you’re building to have this
or we can start it as a separate PyOpenWorm thing
Vahid Ghayoomie
@VahidGh
May 21 2015 17:48
Although I was thinking about the same thing for ion channels in CW.
Now we can cross-reference in both interfaces
Stephen Larson
@slarson
May 21 2015 17:48
ok
Travis Jacobs
@travs
May 21 2015 17:48
If it were all stored in one db it would be easier no?
Stephen Larson
@slarson
May 21 2015 17:48
yeah; they are planning to use PyOpenWorm as the one DB I think
Travis Jacobs
@travs
May 21 2015 17:48
Ok, gotcha
Vahid Ghayoomie
@VahidGh
May 21 2015 17:49
Yes
Stephen Larson
@slarson
May 21 2015 17:49
i think we should plan a show and tell around your interface, @miladjafary and @VahidGh and then we should see what the next extensions are like i’m talking about
when do you feel comfortable showing off what you’ve done?
couple of weeks?
next week?
Vahid Ghayoomie
@VahidGh
May 21 2015 17:49
Next week would be reasonable for the first version
Milad Jafary
@miladjafary
May 21 2015 17:50
Yes. next week great.
Travis Jacobs
@travs
May 21 2015 17:50
Ok sweeeet
Stephen Larson
@slarson
May 21 2015 17:50
ok that would be great
Vahid Ghayoomie
@VahidGh
May 21 2015 17:50
With digitization capability
Stephen Larson
@slarson
May 21 2015 17:50
@travs you and I should make a note to do a first pass design on a cell to ion channel drill down interface
i have a picture in my head we need to get into a drawing
Travis Jacobs
@travs
May 21 2015 17:50
Alrighty!
Stephen Larson
@slarson
May 21 2015 17:52
add my rambly description up there to the note :)
Travis Jacobs
@travs
May 21 2015 17:52
haha ok
Stephen Larson
@slarson
May 21 2015 17:52
i would also say that such an interface could perform some of the operations that Vahid was mentioning
like there could be a button to download the cell model, which would generate it out of the database on the fly
based on whichever ion channels were present
and whatever latest parameters they had
ok guys; i have to run to catch a plane
Vahid Ghayoomie
@VahidGh
May 21 2015 17:53
Yes, and also having needed files for running the model in Geppetto
Stephen Larson
@slarson
May 21 2015 17:53
exactly
Travis Jacobs
@travs
May 21 2015 17:54
great, this all sounds exciting
Stephen Larson
@slarson
May 21 2015 17:54
so these middle agenda items also stay on for the next time
Vahid Ghayoomie
@VahidGh
May 21 2015 17:54
Great, have a good trip
Stephen Larson
@slarson
May 21 2015 17:54
we will continue to explore them after we do the show and tell
Travis Jacobs
@travs
May 21 2015 17:54
Right, looking forward to that
Stephen Larson
@slarson
May 21 2015 17:54
@travs will help us find a good time
thanks you guys; this is really great progress
Travis Jacobs
@travs
May 21 2015 17:55
Yeah, I'll send out a poll
Vahid Ghayoomie
@VahidGh
May 21 2015 17:55
@slarson, thank you too
Milad Jafary
@miladjafary
May 21 2015 17:55
thanks
Travis Jacobs
@travs
May 21 2015 17:55
:)