Diese Frage hat hier bereits Antworten :

Kommentare

Antwort

Sie haben für einige der Parameter keine numerischen Werte angegeben, daher habe ich einige erfunden. Bei einigen erhalten Sie möglicherweise keine Lösungen oder komplexe Lösungen, sodass Sie diese untersuchen können, da ich die nicht kenne Physik s des Problems.

Clear[x, t, b, varx, m, v0x]; y[t_] = x[t] /. First@DSolve[{b varx^2 - 2 b varx x"[t] + b x"[t]^2 + m x""[t] == 0, x[0] == x0, x"[0] == v0x}, x[t], t] 

gibt

(b t varx - m Log[m/(v0x - varx)] + m Log[b t - m/(-v0x + varx)])/b 

Dann können Sie die Funktion verwenden y[t]

parms = {b -> 1, varx -> 2, m -> 1, x0 -> 1, v0x -> 0}; Plot[y[t] /. parms, {t, 0, 1}] 

Geben Sie hier die Bildbeschreibung ein

D[y[t] /. parms, t] Out[48]= 2 + 1/(-(1/2) + t) 

etc …

Antwort

Nasser folgen “ s Antwort, hier ist eine kleine Variation:

 x[tt_, {b_, varx_, m_, x0_, v0x_}] := Module[{}, x[t_, {b, varx, m, x0, v0x}] = Block[{x, t}, x[t] /. First@ DSolve[{b varx^2 - 2 b varx x"[t] + b x"[t]^2 + m x""[t] == 0, x[0] == x0, x"[0] == v0x}, x[t], t] ]; x[tt, {b, varx, m, x0, v0x}] ] 

Dann können Sie es bewerten durch:

parms = {1, 2, 1, 1, 0}; x[4, parms] Plot[x[t, parms], {t, 0, 1}] 

usw. Beachten Sie, dass die ODE für jeden Parametervektor nur einmal berechnet wird.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.