Help with adding equation to mechanism

NMODL and the Channel Builder.
Post Reply
rquadir
Posts: 4
Joined: Wed Feb 23, 2022 10:00 am

Help with adding equation to mechanism

Post by rquadir »

Hello, I am new to Neuron, coding in Nmodl, and am following the Neuron textbook. I am still having difficulty implementing my equation of interest and adding new variables to the GUI. The model that I would like to modify is https://senselab.med.yale.edu/modeldb/e ... cation/zip

The equation I would like to implement is D(\partial^2c)/(\partial x^2)=(cVmax)/(c+Km)
I want to multiply the Vmax of this equation by the membrane potential produced by this model to see how spike trains change after experimental conditions (c, x, Km, and D) are adjusted in the gui. I tried to edit this into the COH.mod file at a breakpoint by defining the equation and then multiplying release by Vmaxi. I don't see the GUI updated with adjustable variables or anything different with spike trains. Please let me know what I did wrong and guidance on how to proceed with implementing this equation. Thank you.

-
RafidQ
ted
Site Admin
Posts: 6286
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Help with adding equation to mechanism

Post by ted »

The equation I would like to implement is D(\partial^2c)/(\partial x^2)=(cVmax)/(c+Km)
Are you sure? coh.mod doesn't contain any variables named c, x, Vmax, or Km. It does have variables called C and km, but C is already completely controlled by other assignment statements, and presumably neither C nor km is the same as c or Km. And why partial derivative of c with respect to x? What is x, and what else is c dependent on?
rquadir
Posts: 4
Joined: Wed Feb 23, 2022 10:00 am

Re: Help with adding equation to mechanism

Post by rquadir »

This equation defines the diffusion of a drug and the tissue response. We want to see how an anesthetic changes spike trains with different distance and concentration inputs. c is the concentration of anesthetic, x is the distance between a source and a neuron, Vmax is the tissue response due to the anesthetic, km is the ec50 due to the anesthetic, and D is the diffusion coefficient in rat brain slices. We already have Vmax, ec50, and D from experimental data. We want to implement this equation into this calyx of Held model because our work is in the auditory cortex, and this model seems to follow what we would see in a realistic mntb neuron. My train of thought was just to rename the variables in this equation to Vmaxi, xi, kmi, ci, and Di so they don't conflict with anything else. In the paper that I derived this equation from, oxygen consumption was modeled with a moving electrode through a brain slice, this is what I assume the partial derivative was for. I think in our case we can get rid of that because in the real world we are only administering the anesthetic at a fixed concentration and measuring the membrane potential over time. I was thinking that multiplying the Vmax (tissue response) by the equation that defines spike trains in a controlled state, would give us the results we want to see. What we would like to do with our modified model is to adjust the distances from blood vessel (source) to a neuron, to see if that would have any effect on spike trains. I hope this helped clarify our intentions, and any guidance would be greatly appreciated.
ted
Site Admin
Posts: 6286
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Help with adding equation to mechanism

Post by ted »

PDEs are fine as mathematical descriptions of diffusion in a spatially continuous system, but they're not suitable for numerical simulations. You can't just stick a PDE into NMODL. Instead, you must first design a diffusional geometry: a set of "well stirred compartments" whose shapes and physical relationships to each other are governed by the shape of the original system and the locations of solute sources and sinks. The number and sizes of these compartments must be adjustable so that the numerical solution will have the desired degree of accuracy. Then you have to write the set of algebraic equations that specify the fluxes between adjacent compartments based on the geometry of those compartments and the concentration of the diffusing solute in them. You'll find some examples in Chapter 9 of The NEURON Book (here's a preprint https://www.neuron.yale.edu/ftp/ted/boo ... xedref.pdf).


Please note that case is important. ModelDB entry 19747, by Graham et al., has no file called COH.mod. It does have a file called coh.mod which defines a point process class called COH. Is that the file you meant?

If yes, COH contains no variable called c. It does have a variable called C. Is that what you mean by "c" in the following quote?
The equation I would like to implement is D(\partial^2c)/(\partial x^2)=(cVmax)/(c+Km)
The model by Graham et al. assumes no diffusional geometry. The value of C is assigned to be 0 or 0.1 mM based on conditional logic statements that are contained entirely in the source code of the COH mechanism, and which implement a fixed duration during which the value of C is 0.1 mM. The transition between 0 and 0.1 mM is immediate. This was fine for their purposes, but perhaps not for yours.
I want to multiply the Vmax of this equation by the membrane potential produced by this model
I'm not sure what that product would mean. Can you clarify?


The rxd module is easier to work with than NMODL, because it enables a concise and human-readable specification of commonly used diffusional geometries, and of spatial discretization (in particular, you don't have to write a bunch of algebraic equations). But extensive revision of coh.mod will be required, even if you use rxd to handle accumulation and diffusion of calcium.
rquadir
Posts: 4
Joined: Wed Feb 23, 2022 10:00 am

Re: Help with adding equation to mechanism

Post by rquadir »

C in the coh.mod is calcium.
From what I understand, I can use the rxd module for our anesthetic gas? Should I construct this in the GUI? If so, our gas is isoflurane. I think that this kind of reaction would follow hill kinetics. Also, what would I have to change in the coh.mod?
ted
Site Admin
Posts: 6286
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Help with adding equation to mechanism

Post by ted »

OK, finally I see what you're trying to do. I was fixated on the details of transmitter release itself, thinking that you were concerned with intracellular diffusion of calcium, and went off on a tangent without carefully reading your post from Saturday. My mistake--please put all that aside.

The questions then become how the code in modeldb.yale.edu/19747 must be revised to implement representations of:
1. the effects of isoflurane on the cell(s) in your model
2. the relationship between the time courses of isoflurane concentration at the site where it is administered and the site(s) at which it acts

Your first decision is whether the concentration of isoflurane at the site of action is to be a constant, or whether you want it to vary with time in a principled way. It might be best to assume it is constant, or has very rapid onset and washout (so you can change it abruptly in the course of a simulation), at least until you have resolved other issues. Rapid onset and washout would probably be roughly OK for experiments on tissue slices.

A very cursory literature search finds that likely sites of action are ion channels gated by GABA, glycine, and NMDA receptors (https://www.ncbi.nlm.nih.gov/books/NBK532957/). Nothing is said about release of transmitter from presynaptic terminals. This is good news, because it means you don't have to do anything to coh.mod, which represents "vesicle mobilization and release" i.e. processes happening in the presynaptic terminal.

All the attention must be on ampa.mod, which contains the source code for postsynaptic, ligand-gated ion channels. There is a bit of a conceptual problem, because the modeler's original intent was that it define something called AMPA, a class of AMPA-gated channels. A PubMed search of ampa AND isoflurane turns up no hits, but a google search for
ampa isoflurane
finds at least a few reports that suggest isoflurane decreases opening of AMPA-gated channels.

So you might be able to justify assuming that isoflurane reduces the conductance elicited by synaptic activation, but exactly how does it act? Does it reduce unitary channel conductance? If so, the effect could be implemented by code that reduces gmax.AMPA. Or does it interfere with one or more of the transitions between this model's 6 states? That's easy to implement (code that changes one or more of the nine R*.AMPA parameters), but which ones? That's up to you to decide, based on what you might find in the literature.

The good news about any of these parameter changes is that they can be implemented by simple assignment statements in hoc or Python--no need to change any NMODL code, and no need to tinker with rxd.


Now, what about the relationship between the time courses of isoflurane concentration at the site where it is administered and the site(s) at which it acts? Is there some literature about the temporal relationship between e.g. mean alveolar concentration and tissue concentrations in the brain? Sounds like a classical problem in physiology that would have been addressed soon after the advent of nitrous oxide or ether anesthesia.
rquadir
Posts: 4
Joined: Wed Feb 23, 2022 10:00 am

Re: Help with adding equation to mechanism

Post by rquadir »

According to Wang et al in https://www.jneurosci.org/content/40/21/4103, (figure 2B) isoflurane inhibits presynaptic voltage-gated Ca2+ channels, the number of release sites (N), and the release probability (pr). Apologies for not mentioning this.

I think it would be best to have a simulation with rapid onset and washout. In figure 1A of Wang et al's paper, we can see that experimentally, between 15 minutes and 25 minutes that the epscs take time to reach the inhibited response. The mechanism proposed by our lab that explains this is that isoflurane is diffusing gradually to the cell.

In the paper by Wang et al, EPSCs are reduced by 76% with an ec50 of 1.9% which corresponds to 0.47 mM. There were no effects on the rise or decay time kinetics. It is also stated in this paper that 3% isoflurane corresponds to 2 MAC.

There isn't clear literature on the effects of isoflurane on the rate variables. There is one paper where the model organism is Xenopus, and with 1.5% isoflurane AMPA sepsc amplitude and charge transfer are reduced but there is no change in frequency and kinetic parameters. I'm not sure if this would apply in a rat brain slice because the diffusion coefficients may be different. According to Wang et al, the effect on isoflurane on the post synaptic mntb cell is an upstream effect by presynaptic inhibition of voltage-gated calcium channels, reduction in release sites, and release probability. Therefore I think that this is the reduction of unitary channel conductance but of calcium channels. This is why I thought modifying the coh.mod was important.
ted
Site Admin
Posts: 6286
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Help with adding equation to mechanism

Post by ted »

rquadir wrote: Thu Apr 14, 2022 12:46 pm According to Wang et al
That's quite a paper. Lots of experiments, lots of results.
I think it would be best to have a simulation with rapid onset and washout
Drug effects are often represented as simple parameter changes, without regard to the actual time course of application or washout. The modeler's protocol becomes
1. run a simulation with affected parameters set to their control values
2. run another simulation with affected parameters set to "steady-state values in presence of drug"
3. compare simulation results
This saves run time and data storage. The only reason to do otherwise is if there is something special about what happens during application or washout, e.g. imagine an experiment in which a use-dependent channel blocker is applied (or washed out) while a nerve is repeatedly stimulated
There isn't clear literature on the effects of isoflurane on the rate variables.
In the absence of experimental evidence, no need to alter rate variables.
According to Wang et al, the effect on isoflurane on the post synaptic mntb cell is an upstream effect by presynaptic inhibition of voltage-gated calcium channels, reduction in release sites, and release probability.
The model by Graham et al. contains a purely phenomenological representation of the time course of intracellular calcium. There's nothing mechanistic about it--no calcium channels, no cytoplasmic buffering of calcium, no sequestration by organelles or extrusion by pumps or ion exchange. Every "presynaptic spike" elicits the same sequence of changes of intracellular calcium. From that model, there's no guidance about what happens if calcium channels are blocked.

And Wang et al. found that rather striking changes in presynaptic spike amplitude and/or time course induced by TTX or isoflurane (see Fig. 3E) have little effect on the EPSP.
the reduction of unitary channel conductance but of calcium channels.
Not sure I understand this.

The COH mechanism has two parameters that can be adjusted to change the effect of a presynaptic spike on the postsynaptic cell: Camp and Cdur, which govern the amplitude and duration of calcium concentration following a spike. You can change those (simply by assignment statements in hoc or Python, not by editing and recompiling coh.mod) to see how they affect EPSP amplitude and time course.
Post Reply