Jansen-Rit on the whole brain scale.

164 views
Skip to first unread message

ja.sta...@gmail.com

unread,
Nov 2, 2020, 9:47:32 AM11/2/20
to TVB Users
Hi Everyone,
I have been running the Jansen Rit model on a couple of different connectomes (including a normalized default tvb connectome) using either default parameters or the parameters close to default with mu = 0. and a stochastic integrator with sigma =approx. 0.00052 applied only to the y3 (third state variable corresponding to PC firing rate). 

I am interested in looking into inhibitory parameters and its effect on the frequency/ firing rate. I am struggling with the interpretation of the results. My variables of interest are: 
'y1 - y2', 'y3', 

which I am interpreting as:
'y1-y2' ---> relative input to pyramidal cells from both interneuron populations
y3 - Firing rate(pulse density) pyramidal cells


I. How do I interpret the fact that y3 has values between 0.0020 and - 0.0020 ?
I am having issues with understanding how the firing rate can be negative and which state variables should I use to examine the oscillatory behavior of the system?

II. Also, if I am using the stochastic integrator (driving the system with a gaussian noise) is the mu= input still necessary? Is there an established, biologically plausible method of driving the coupled whole-brain system ?

III. Which state variable should I be using as input for a bold monitor if I am interested in looking into functional connectivity?

I would be grateful for words of advice
Best
Jan 




Julie Courtiol

unread,
Nov 2, 2020, 1:04:54 PM11/2/20
to tvb-...@googlegroups.com
Hi Jan,

Please see below my reply.


Le lun. 2 nov. 2020 à 15:47, ja.sta...@gmail.com <ja.sta...@gmail.com> a écrit :
Hi Everyone,
I have been running the Jansen Rit model on a couple of different connectomes (including a normalized default tvb connectome) using either default parameters or the parameters close to default with mu = 0. and a stochastic integrator with sigma =approx. 0.00052 applied only to the y3 (third state variable corresponding to PC firing rate). 

I am interested in looking into inhibitory parameters and its effect on the frequency/ firing rate. I am struggling with the interpretation of the results. My variables of interest are: 
'y1 - y2', 'y3', 

which I am interpreting as:
'y1-y2' ---> relative input to pyramidal cells from both interneuron populations
y3 - Firing rate(pulse density) pyramidal cells


I. How do I interpret the fact that y3 has values between 0.0020 and - 0.0020 ?
I am having issues with understanding how the firing rate can be negative and which state variables should I use to examine the oscillatory behavior of the system?


Just a little reminder about the Jansen-Rit model:
the state-variables of the model, y0, y1 and y2, represent the averaged post-synaptic potential of the 3 interconnected populations,
y0 and y2 are the inhibitory and excitatory interneurons, respectively; and y1 the pyramidal cells.

These notations are both used in the original paper Jansen and Rit (1995) and also in the TVB script. 

You are then mixing the state-variables and also their meaning.
This helps you to reply to your first concern.


 

II. Also, if I am using the stochastic integrator (driving the system with a gaussian noise) is the mu= input still necessary? Is there an established, biologically plausible method of driving the coupled whole-brain system ?


In the original paper, the noise is introduced through the variable p(t). In TVB, this variable is called 'mu' and it is considered as a mean input firing rate.
In TVB, the noise is introduced via the stochastic integrator, and in that case mu can be set to 0.

The noise is a possible mechanism for driving the system in its state space.


 
III. Which state variable should I be using as input for a bold monitor if I am interested in looking into functional connectivity?


You can also have a look at the functional connectivity at the neural source and at different time scales.
For modeling the BOLD activity, we usually use the excitatory population to calculate it. So here, it would correspond to 'y1-y2'.



Hope this helps you!

---
Best regards,

Julie Courtiol

 

I would be grateful for words of advice
Best
Jan 




--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tvb-users/1674e5b9-9186-48b0-97a7-97407614aa36n%40googlegroups.com.

WOODMAN Michael

unread,
Nov 2, 2020, 3:08:11 PM11/2/20
to tvb-...@googlegroups.com
Hi

A small word on the noise: the original paper uses uniformly distributed noise in the mu term, whereas TVB uses an stochastic differential equation formulation where noise is normally distributed and additive usually.  These two are not identical and comparing them we can only really reproduce the results of the paper with the uniform distribution.  In a previous forum post, I provided code to do this, it may be worth a search to see how if you are looking at that specifically. 

Cheers

Marmaduke

On 2 Nov 2020, at 19:04, Julie Courtiol <courtio...@gmail.com> wrote:



Jan Stasiński

unread,
Nov 2, 2020, 3:31:25 PM11/2/20
to tvb-...@googlegroups.com
Thank you Julie and Michael,

thank your responses to my questions II and III : I understand it now. I will look for your solution regarding noise.

regarding the populations. I am right now looking at both the JR paper from 1995 and François Grimbert and Olivier Faugeras paper 2005 and I am pretty sure that it is the y0 that represents the averaged PSP of pyramidal cells are those are the cells the should be receiving feedback from both inhibitory and excitatory interneuron population (y1,y2). At least this is how I interpret the attached graphic.
Can we double check that because I am either really confused here or there has been some mistake:)

Also, how would that explain the Firing Rates (y3-5) having negative values? 

best
Jan



Screenshot 2020-11-02 at 21.20.00.png

WOODMAN Michael

unread,
Nov 2, 2020, 3:42:47 PM11/2/20
to tvb-...@googlegroups.com

Hi Jan

 

You’re right y0 is the pyramidal population, but it may be a good exercise to check the code 😉

 

As y0-y2 are the firing rates per se and y3-y5 are the derivatives (integrated as well, since Jansen-Rit is based on 2nd order diff eqs and TVB only implements first order integrators; this is standard practice), then it is expected that whenever y0-y2 decrease, y3-y5 are < 0.

 

Cheers,

Marmaduke

Jan Stasiński

unread,
Nov 2, 2020, 4:13:13 PM11/2/20
to tvb-...@googlegroups.com
Thank you! I thought I was losing my mind here.
Regarding the firing rates:
Let me ask you one more perhaps naive question:
How do I check for an actual output firing rate of a given node? 

I am interested in looking into how changes in parameters of an inhibitory loop affect the firing rates/psps sent to other nodes of the connectome..

Best
Jan

On Nov 2, 2020, at 21:42, WOODMAN Michael <marmaduk...@univ-amu.fr> wrote:



WOODMAN Michael

unread,
Nov 3, 2020, 1:36:45 AM11/3/20
to tvb-...@googlegroups.com

Hi

 

The y0 variable is the firing rate for the pyramidal cells, but the model in TVB was written with the intention that the coupling between nodes happen via y1 – y2 as in the paper, yet it doesn’t implement the extra PSP blocks as in the paper.  Given that the extra PSP block is the same as that of the pyramidal cells, it can make sense to just use y0 instead.

 

For observing the afferent connectivity, you can override a model dfun and collect the array during the simulation.

 

I attach a bit a code which does these two things.

Image removed by sender.

 


I would be grateful for words of advice
Best
Jan 


 

 

--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tvb-users/1674e5b9-9186-48b0-97a7-97407614aa36n%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tvb-users/CALsG46_o%2BcK8yCx64qn%3D81NeXKPwFv29B8u16aZdRDhqrXyDSQ%40mail.gmail.com.

--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tvb-users/CAG%2Bmn5asaBNoNdx25YOqfLKCD5HqtMn03e4uCer2YKjHTJGRhA%40mail.gmail.com.

--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tvb-users/0690cd79165f4befb9dde888c5a0981d%40univ-amu.fr.

--
You received this message because you are subscribed to the Google Groups "TVB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tvb-users+...@googlegroups.com.

scratch.py

Jan Stasiński

unread,
Nov 3, 2020, 3:36:36 AM11/3/20
to tvb-...@googlegroups.com
Thank you again for your help and the code!
Best
Jan

Jan Stasiński

unread,
Nov 3, 2020, 10:00:29 AM11/3/20
to tvb-...@googlegroups.com
Hi Michael,
Just a word of clarification: y0 is the PSP, not the firing rate of pyramidal cells, right?
Or do you mean that in TVB implementation y1-y2 input it does not come through the H block that transforms the firing rates into postsynaptic potentials?
Best
jan


wt., 3 lis 2020 o 07:36 WOODMAN Michael <marmaduk...@univ-amu.fr> napisał(a):

WOODMAN Michael

unread,
Nov 3, 2020, 3:44:15 PM11/3/20
to tvb-...@googlegroups.com

Hi

 

Yes indeed, I wrote too quickly, y0 is PSP not the firing rate, but the latter is isomorphic with and can be obtained by application of the sigmoidal function.

 

Specifically what is missing in TVB compared to the JR double column model is the extra PSP blocks for each connection.  TVB replaces this by the delay and sigmoid alone.  In Eq 8 of the paper, for instance, y13 and y15 are dropped and y4 has K2 Sigm[y7 – y8] instead of K2 y13.  This remains correct since y7 and y8 will be have a time delay according to the connectome tract length.

 

Hope this helps,

Jan Stasiński

unread,
Nov 3, 2020, 4:21:40 PM11/3/20
to tvb-...@googlegroups.com
Thank you for the clarification


<image002.jpg>

ja.sta...@gmail.com

unread,
Nov 9, 2020, 11:33:23 AM11/9/20
to TVB Users
Hi Michael,
I have a follow-up question on your suggestion. 
What is the best way to implement the code that you have sent me into the TVB? I don't have much experience with implementing changes to TVB code so forgive me for a basic question here.
I have tried adding it to the TVB library as a separate .py file and running:

from tvb.simulator.models.JRRate_MW import JRRate

to import it and it seems to work (the import step)
The problem is that I am unable to run the simulation, I am getting:

--> 741 for data in self(**kwds):
...,
...
IndexError: index 1 is out of bounds for axis 1 with size 1

What could be the source of this error?
Best regards
Jan


WOODMAN Michael

unread,
Nov 9, 2020, 12:24:35 PM11/9/20
to tvb-...@googlegroups.com

Hi

 

It’s hard to know without seeing your main script. You can send by direct email if you prefer.

 

Cheers,

Marmaduke

Reply all
Reply to author
Forward
0 new messages