Seminar Simulation stochastischer Modelle

1. Eine Dimension in R

Quellcode in R

# Funktion für einen Graf
brown <- function(m) {

# Erzeuge Array mit -1 und 1 Werten gleichverteilt.
n<-sample(c(-1,1),m, replace=T)

# Array anlegen und initialisieren
c<-seq(1,m)
z<-0
i<-0

# Schleife berechnet für jede Zeitposition den aktuellen Wert
while (z<m) {
    # Zeit + 1
   z<-z+1
   # Aktueller Wert + Delta bei der Zeit
   i<-i+n[z]
   # Wert abspeichern
   c[z]<-i
}

# Grafische Anzeige
plot(c, cex=.1, type="n",main="Brownsche Bewegung 1D",xlab="Zeit",ylab="Wert")
lines(c)

}

# Hilfsunktion für einen Graf
brown2 <- function(schritte) {

# Erzeuge Array mit -1 und 1 Werten gleichverteilt.
n<-sample(c(-1,1),schritte, replace=T)

# Array anlegen und initialisieren
c<-seq(1,schritte)
z<-0
i<-0

# Schleife berechnet für jede Zeitposition den aktuellen Wert
while (z<schritte) {
    # Zeit + 1
   z<-z+1
   # Aktueller Wert + Delta bei der Zeit
   i<-i+n[z]
   # Wert abspeichern
   c[z]<-i
}

# Grafische Anzeige
lines(c)

}

# Funktion für mehrere Grafen
browns <- function(anzahl,schritte,p) {

# Grafiklegende zeichnen
plot(seq(0,schritte, by=schritte/p/2), -p:p, cex=.1, type="n",main="Brownsche Bewegung 1D",xlab="Zeit",ylab="Wert")

# Für Anzahl durchgänge wird brown2 aufgerufen
zz<-0
while (zz<anzahl) {
   brown2(schritte)
   zz<-zz+1
}

# ende
}

print ("brown(schritte)")
print ("browns(anzahl,schritte,skalierung)")
browns(1,1000,100)

Screenshot

a) browns(1,1000,100)

Screenshot

b) browns(100,100,50)

Screenshot

c) browns(100,1000,100)

Screenshot


Links
MBS REAL studio Plugins - Pfarrgemeinde Ministranten Nickenich

In Erinnerung and den lächelnden Mac Plus, den man beim Start von Mac OS 1 bis X.1 sieht...