Mesoscopic model of spontaneous synaptic size fluctuations (Hazan & Ziv 2020)

 Download zip file 
Help downloading and running models
Sizes of glutamatergic synapses vary tremendously, even when formed on the same neuron. This diversity is commonly thought to reflect the outcome of activity-dependent forms of synaptic plasticity, yet activity-independent processes might also play some part. Here we show that in neurons with no history of activity whatsoever, synaptic sizes are no less diverse. We show that this diversity is the product of activity-independent size fluctuations, which are sufficient to generate a full repertoire of synaptic sizes at correct proportions. By combining modeling and experimentation we expose reciprocal relationships between size fluctuations, synaptic sizes and synaptic counts, and show how these phenomena might be connected through the dynamics of synaptic molecules as they move in, out and between synapses.
1 . Hazan L, Ziv NE (2020) Activity dependent and independent determinants of synaptic size diversity. J Neurosci [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Synapse;
Brain Region(s)/Organism:
Cell Type(s):
Gap Junctions:
Simulation Environment: C or C++ program;
Model Concept(s): Stochastic simulation; Synaptic noise; Reaction-diffusion;
Implementer(s): Ziv, Noam [noamz at];
rand.h: definitions for a random number generator
By Bob Jenkins, 1996, Public Domain
  960327: Creation (addition of randinit, really)
  970719: use context, not global variables, for internal state
  980324: renamed seed to flag
  980605: recommend RANDSIZL=4 for noncryptography.
  010626: note this is public domain
#ifndef STANDARD
#include "standard.h"

#ifndef RAND
#define RAND
#define RANDSIZL   (8)
#define RANDSIZ    (1<<RANDSIZL)

/* context of random number generator */
struct randctx
  ub4 randcnt;
  ub4 randrsl[RANDSIZ];
  ub4 randmem[RANDSIZ];
  ub4 randa;
  ub4 randb;
  ub4 randc;
typedef  struct randctx  randctx;

 If (flag==TRUE), then use the contents of randrsl[0..RANDSIZ-1] as the seed.
void randinit(/*_ randctx *r, word flag _*/);

void isaac(/*_ randctx *r _*/);

 Call rand(/o_ randctx *r _o/) to retrieve a single 32-bit random value
#define rand_ISAAC(r) \
   (!(r)->randcnt-- ? \
     (isaac(r), (r)->randcnt=RANDSIZ-1, (r)->randrsl[(r)->randcnt]) : \

#endif  /* RAND */

Loading data, please wait...