• Keine Ergebnisse gefunden

Mai 2010 in der ¨Ubung Beachten Sie: Die ¨Ubung n¨achste Woche muss ausfallen

N/A
N/A
Protected

Academic year: 2021

Aktie "Mai 2010 in der ¨Ubung Beachten Sie: Die ¨Ubung n¨achste Woche muss ausfallen"

Copied!
4
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

IWR, Universit¨at Heidelberg Sommersemester 2010

Aufgabenblatt 3 04. Mai 2010

Ubungen zur Vorlesung¨

Mathematische Aspekte der Modellierung und Simulation in den Neurowissenschaften

Dr. S. Lang, D. Popovi´c Abgabe: 18. Mai 2010 in der ¨Ubung

Beachten Sie: Die ¨Ubung n¨achste Woche muss ausfallen. Sie haben daher zwei Wochen Zeit zur Bear- beitung der Aufgaben!

Ubung 6¨ Vektorfelder in Octave (2 Punkte)

Im Listing sehen Sie dem Plot des Richtungs- oder Vektorfeldes eines Systems gew¨ohnlicher Differential- Gleichungen:

% example vector field plot

[ x1 , x2 ] = m e s h g r i d ( - . 5 : . 0 5 : . 5 , - . 5 : . 0 5 : . 5 ) ; x 1 d o t = - x1 - 2 * x2 .* x1 .^2 + x2 ;

x 2 d o t = - x1 - x2 ;

q u i v e r ( x1 , x2 , x1dot , x 2 d o t ) g r i d

x l a b e l ( ’ x 1 d o t ’ ) ; y l a b e l ( ’ x 2 d o t ’ ) ;

t i t l e ( ’ V e c t o r f i e l d p h a s e p o r t r a i t ’ ) ;

1. Welches System wurde hier geplottet?

2. Implementieren Sie den Code in Octave und f¨uhren Sie Ihn aus. Welche signifikanten Punkte des Plots erkennen Sie (Es gibt nur einen)? Was k¨onnte der Plot bzw. der Punkt aussagen?

Ubung 7¨ Phasenr¨aume in Octave (3 Punkte)

Auf der Vorlesungs-Homepage finden Sie auf der Octave-Seite einen neuen Unterabschnitt zum Be- rechnen und Visualisieren eines Phasenraumportraits in Octave, in dem f¨ur ein zweikomponentiges System das Portrait der beiden Komponentenv1−v2 geplottet wird.

Orientieren Sie sich am dortigen einfachen Beispiel, um ein Phasenraumportrait des folgenden dyna- mischen Systems mitOctave zu berechnen:

y10(t) =y2(t)

y20(t) =−sin(y1(t)) +sin(5t) y10(0) = 1

y20(0) = 0.

Das System kann aus einem System 2.ter Orndung, das ein Fadenpendel beschreibt, und von einer zeitabh¨angigen KraftF(t) =sin(5t) angeregt wird, abgeleitet werden.

Exportieren Sie einen Plot des Phasenportraits dieses Systems bei den gegebenen Anfangsbedingungen.

(2)

Ubung 8¨ Izhikeviˇc-Modell mit C++ (5 Punkte)

In der Vorlesung wurde ein Punkt-Neuronen-Modell von Izhikeviˇc und eine Implementierung mitOcta- ve vorgestellt. In dieser Aufgabe soll das Modell mit C++ implementiert werden und die Performance beider Implementierungen (C++,Octave) verglichen werden.

1. Implementieren Sie das Modell in C++ mit den gleichen Parametern wie inOctaveund ¨uberpr¨ufen Sie die Ergebnisse auf Richtigkeit (Vergleich mit der Octave-Ausgabe). Um ein Programm in C++ zu implementieren, ¨offnen Sie im Pool eine Datei in einem Editor (z.B. gedit) und spei- chern den Code in einer Datei mit der Endung.cc:

$ g e d i t h a l l o w e l t . cc &

Das&bewirkt, daß der Editor im Hintergrund ge¨offnet wird, und man trotzdem in der Konsole weiterarbeiten kann. Das aus den ¨Ubungen bekannte Hallo, Welt!-Programm kann dann etwa wie folgt aussehen:

1 // include i/o library

2 # i n c l u d e < i o s t r e a m >

3

4 // main is always the first function to be called

5 int m a i n ( int argc , c h a r ** a r g v )

6 {

7 std :: c o u t < < " Hello , W o r l d ... " < < std :: e n d l ;

8

9 r e t u r n 0;

10 }

Um das Programm zu kompilieren, k¨onnen Sie den C++-Compilerg++verwenden:

$ g ++ - o h a l l o w e l t h a l l o w e l t . c

Die Option-o <name>erstellt ein ausf¨uhrbares Programm mit Namen<name>. Dieses kann dann mit folgendem Befehl in der Konsole ausgef¨uhrt werden:

$ ./ h a l l o w e l t

2. Messen Sie die Rechenzeiten f¨ur die C++- und Octave-Implementierungen f¨ur t = 2000ms und dt ={0.25,0.125,0.0625,0.03125,0.015625,0.0078125}ms. Achten Sie darauf, daß Sie aus- reichend lange Rechnungen machen, da die Zeitmessung einerseits selber mit einem Fehler im Sekundenbereich behaftet ist und anderseits der C++-Code sonst zu schnell ist. Bei mir reichte es, f¨ur jedes dt aus der Liste 50 Durchl¨aufe zu machen um hinreichend große Zeiten f¨ur die C++-Simulation zu erhalten (DieOctave-Simulation dauerte dann nat¨urlich etwas l¨anger). Ger- ne k¨onnen Sie dieses Problem anders l¨osen. Jede Simulation mit 50 L¨aufen wurde dann noch jeweils drei mal ausgef¨uhrt um zu mitteln.

Stellen Sie die Zeiten in einem doppelt-logarithmischen Plot Zeitschrittweite-Rechenzeit ge- gen¨uber und untersuchen Sie, ob es ein bestimmtes Verh¨altnis der Rechenzeiten gibt. Auf jeden Fall ist Octave um Gr¨oßenordnungen langsamer – haben Sie eine Idee, woran das liegt?

Die Rechenzeiten k¨onnen im Pool und generell unter Unix/Linux am einfachsten mit den Befeh- len

$ / usr / bin / t i m e o c t a v e i z h i k e v i c h . m > oct . dat

$ / usr / bin / t i m e ./ i z h i k e v i c h _ c p p > cpp . dat

(3)

gemessen werden. Hierbei istizhikevich.m einOctave-Skript und izhikevich_cpp das C++- Executable. Die R¨uckgabe des Befehls ist ungef¨ahr eine Ausgabe wie

1 0 . 0 5 u s e r 0 . 0 4 s y s t e m 0 : 0 0 . 7 5 e l a p s e d 12% CPU (0 a v g t e x t +0 a v g d a t a

2 3 9 2 0 m a x r e s i d e n t ) k

3 0 i n p u t s +0 o u t p u t s (0 m a j o r + 2 9 8 m i n o r ) p a g e f a u l t s 0 s w a p s

in der uns die elapsed-Zeit interessiert (hier 0 : 00.75), daß ist die verstrichene Echtzeit in s. Die Umleitung nach dem Befehl mittels > datei.datbewirkt, daß eventuelle Ausgaben des Programms in eine Datei umgeleitet werden.

Ubung 9¨ Spiking Patterns des Izhikeviˇc-Modells (5 Punkte)

Eine generelle Formulierung des in der Vorlesung vorgestellten Izhikeviˇc-Modells ist auf der Webseite von Herrn Izhikeviˇc verf¨ugbar und lautet

˙

v= 0.04·v2+−u+I+ 140

˙

u=a(b·v−u)

v=c fallsv >30;

u=u+d fallsv >30;

In Abbildung 0.1 sehen Sie einige der Spiking Patterns, die mit diesem Modell erzeugt werden k¨onnen.

Implementieren Sie das Modell mitOctave oder modifizieren Sie den in der Vorlesung gezeigten Code und versuchen Sie, die Figuren aus Abbildung 0.1 zu reproduzieren. Der Startwert des Potentials liegt meist zwischen −70 und −60 mV, die Zeitschrittweite f¨ur das Forward Euler-Verfahren bei ungef¨ahr dt = 0.25. Der applizierte Strom liegt bei Izhikeviˇc meist um die 0.5 mV f¨ur (TC) und eventuell f¨ur (LTS), ansonsten bei etwa 15 mV. Ganz sicher ist dies aber nicht.

Sie sehen die angegebenen Werte f¨ur die freien Parametera, b, c, d. Fertigen Sie Plots f¨ur die jeweiligen Parameter an. Schaffen Sie es, die Plots hinzubekommen? Sie k¨onnen ¨uber die Funktion subplot in Octave ¨ubrigens mehrere Plots in einem Bild platzieren. Wenn die Plots nicht voll ¨ubereinstimmen ist es kein Problem, geben Sie einfach die beste N¨aherung, die Sie geschafft haben, ab, auch wenn diese signifikante Abweichungen enth¨alt. Eventuell kann man aus diesen Abweichungen R¨uckschl¨usse auf das Modellverhalten ziehen.

Haben Sie eine Erkl¨arung f¨ur den Summanden 140 im Modell?

(4)

regular spiking (RS) intrinsically bursting (IB) chattering (CH) fast spiking (FS)

40 ms 20 mV

low-threshold spiking (LTS)

parameter b

parameter c

parameter d

thalamo-cortical (TC)

-87 mV -63 mV

thalamo-cortical (TC)

peak 30 mV

reset c

reset d decay with rate a sensitivity b v(t)

u(t)

0 0.1

0.05 0.2

0.25

RS,IB,CH FS

LTS,TC

-65 -55 -50 2

4 8

IB CH RS

FS,LTS,RZ TC 0.02

parameter a

resonator (RZ)

RZ

v(t) I(t)

v'= 0.04v 2+5v +140 - u + I u'= a(bv - u)

if v = 30 mV, then v c, u u + d

Abbildung 0.1: Spiking Patterns of Izhikeviˇc’s model. Electronic version of the figure and reproduction permissions are freely available at www.izhikevich.com

Abbildung

Abbildung 0.1: Spiking Patterns of Izhikeviˇ c’s model. Electronic version of the figure and reproduction permissions are freely available at www.izhikevich.com

Referenzen

ÄHNLICHE DOKUMENTE

Wien Dr. Attraktives Hubbard Modell in 2. “bosonischer” oder “atomarer Limes”).. b) Geben Sie eine Absch¨ atzung wie viele (Quanten-)Pfade (d.h.. Berechnen Sie den

Beweisen Sie, dass mit Wahrschein- lichkeit 1 die Nummer 3 immer wieder vorkommen

Mit welcher Methode kann ich prinzipiell alle Primzahlen ermitteln.. Die Methode heißt Sieb

Fachbereich Mathematik Prof.. Ulrich Kohlenbach

Fachbereich Mathematik Prof.. Andreas B¨

Fachbereich Mathematik

Da dies die letzte ¨ Ubung ist, gibt es keine Hausaufgaben. Jennifer Prasiswa bietet

Sein Programmcode und sein Adressraum werden dazu aus dem Hauptspeicher entfernt und auf eine Festplatte ausgelagert, wobei sein Prozesskon- trollblock nat¨ urlich im