User Tools

Site Tools


neurali:nest_tutorial1

Tutorial (part one)

Come sempre Python, può essere anche usato interattivamente. Ma in tal caso bisogna resettare il simulatore alla fine di ogni simulazione usando ResetKernel() e/o ResetNetwork() per liberare la memoria da nodi e connessioni.

  1. import nest
  2. Necessaria solo per la rappresentazione grafica (vedi dopo)
    • import pylab
  3. creare un nodo di tipo iaf_neuron, o altri tipi=….
    •  neuroid = nest.Create("iaf_neuron")
  4. ottenere le proprietà del dictionary, come una corrente di background o una tensione threshold
    •  nest.GetStatus(neuroid)
    •  nest.GetStatus(neuroid,"I_e")
    •  nest.GetStatus(neuroid,"V_th")
  5. modificare le proprietà (dictionary)
    •  nest.SetStatus(neuroid,{"I_e":300.0})
  6. registrare l'output tramite un nodo multimetro
    •  multiid= nest.Create("multimeter")
    •  nest.SetStatus(multiid, {"withtime":True,"record_from":["V m]})
  7. Connessione! Anche qui si possono impostare delle proprietà delle sinapsi (peso, delay)
    •  nest.Connect(multiid, neuroid)
  8. Simulazione in azione! (non visibile)
    •  nest.Simulate(1000.0)
  9. Estrazione dati associati al primio elemento
    •  primodmm = nest.GetStatus(multiid)[0]
       tensioni = primodmm["events"]["V_m"]
       tempi = primodmm["events"]["times"]
  10. Visualizzazione dati
    •  pylab.figure(1)
       pylab.plot(tempi, tensioni)

I parametri predefiniti del dictionary del modello di un neurone possono essere modificati subito prima di usare questo modello per creare una nuova lista di neuroni, in modo che tutti i nuovi neuroni abbiano questi valori nei propri parametri. Questo evita di usare il già visto “nest.SetStatus”.

nest.SetDefault("iaf_neuron",{"I_e":200.0})
neurali/nest_tutorial1.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1