Differenzengleichung 1. Ordnung plotten

Wie erweitere ich R um eigene Funktionen oder Pakete? Welches Paket ist passend für meine Fragestellung?

Moderatoren: EDi, jogo

Antworten
Lagrange
Beiträge: 14
Registriert: Di Dez 01, 2020 7:21 pm

Differenzengleichung 1. Ordnung plotten

Beitrag von Lagrange »

Hallo zusammen,

ich habe folgende Funktionen, die ich so in Mathematica eingebe:

Code: Alles auswählen

P[t_]:= P(t) = P(t-1) + a * ED(t-1);
ED[t_] := ED(t) = DF(t) + DC(t);
DF[t_] := DF(t) = b*(F-P(t));
DC[t_] := DC(t) = c*(P(t)-F);
Die Parameter lauten:

Code: Alles auswählen

a=1;
c=0.2; 
b = 0.75; 
F=100;
In Mathematica verwende ich folgenden Befehl. um P[t] und F zu plotten:

Code: Alles auswählen

ListLinePlot[{Table[P[t], {t, 0, 25}], Table[F, {t, 0, 25}]}, PlotStyle → {Black, Red},
Frame → True, FrameLabel → {"time", "price"}, AspectRatio → 0.4, PlotRange → All]

Ist es in R auch möglich die Funktionen zu plotten?

Ich habe folgendes versucht:

Code: Alles auswählen

f1 <- function(t) P(t-1) + a * ED(t-1)
f2 <- function(t) DF(t) + DC(t)
f3 <- function(t) b*(F-P(t))
f4 <- function(t) c*(P(t)-F)

a <- 1
b <- 0.75
c <- 0.2
F <- 100

P[0] = F + 1;
Mit dem Befehl

Code: Alles auswählen

 plot
komme ich aber nicht weiter.
jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: Differenzengleichung 1. Ordnung plotten

Beitrag von jogo »

Hallo Lagrange,

Mathematica und R sind recht verschieden. Soweit mir bekannt ist Mathematica eher ein CAS (Computer Algebra System) - dagegen ist R eher ein Zahlenfresser (number cruncher).
Sofern nicht jemand von den Forummitgliedern firm in beiden Systemen ist, wird es wohl hier kaum jemanden geben, der mit der Syntax von Mathematica etwas anzufangen weiß.
Für R gibt es aber mindestens ein Paket, mit dem man gewöhnliche Differentialgleichungen numerisch lösen kann.
Eventuell wird man erst die Differentialgleichung numerisch lösen müssen, bevor man das Ergebnis zeichnen kann.

Zusatzfrage:
Handelt es sich um ein System von Differentialgleichungen?
(Auch ich kenne mich mit der Formulierung solcher Probleme in Mathematica nicht aus, aber grob meine ich zu erkennen, dass es sich um ein solches System handelt.)

Gruß, Jörg
Antworten