Qurak

Solve delay differential equations

Guía práctica 7 pasos, ejecutados en orden en una sola sesión. Cada paso se ejecutó contra el motor y la salida de abajo es lo que produjo.

Paso 1
sol1 = NDSolve[{x'[t] == x[t - 1](1 - x[t]), x[t /; t ≤ 0] == t ^ 2}, x, {t, -2, 2}]
Salida
NDSolve[{Derivative[1][x][t] == x[-1 + t]*(1 - x[t]), x[t /; t <= 0] == t^2}, x, {t, -2, 2}]
Paso 2
Plot[Evaluate[{x[t], x'[t]} /. First[sol1]], {t, -1, 5}, PlotRange -> All, PlotLegends -> {Style[x[t], 14], Style[ x'[t], 14]}]
Salida
-Graphics-
Paso 3
Manipulate[
	Module[{sol = NDSolve[{x'[t] == x[t - 1](1 - x[t]), x[t /; t ≤ 0] == ϕ}, x, {t, -2, 2}]},
	Plot[Evaluate[x[t] /. First[sol]], {t, -2, 2}]], {ϕ, {0.1, t ^ 2, Exp[t], Cos[t], Sin[t]}}]
Salida
Manipulate[Module[{sol = NDSolve[{Derivative[1][x][t] == x[t - 1]*(1 - x[t]), x[t /; t <= 0] == ϕ}, x, {t, -2, 2}]}, Plot[Evaluate[x[t] /. First[sol]], {t, -2, 2}]], {ϕ, {0.1, t^2, E^t, Cos[t], Sin[t]}}]
Paso 4
sol2 = NDSolve[{x'[t] == x[t] (x[t - π] - x'[t - 1]), x[t /; t ≤ 0] == Cos[t]}, x, {t, 0, 8}]
Salida
NDSolve[{Derivative[1][x][t] == (x[-Pi + t] - Derivative[1][x][-1 + t])*x[t], x[t /; t <= 0] == Cos[t]}, x, {t, 0, 8}]
Paso 5
Plot[Evaluate[{x[t], x'[t]} /. First[sol2]], {t, 0, 8}, PlotRange -> All, PlotLegends -> {Style[x[t], 14], Style[ x'[t], 14]}]
Salida
-Graphics-
Paso 6
sol3 = NDSolve[{x''[t] + x[t - 1] == 0, x[t /; t ≤ 0] == t ^ 2}, x, {t, -1, 5}]
Salida
NDSolve[{x[-1 + t] + Derivative[2][x][t] == 0, x[t /; t <= 0] == t^2}, x, {t, -1, 5}]
Paso 7
Plot[Evaluate[{x[t], x'[t], x''[t]} /. First[sol3]], {t, -1, 5}, PlotRange -> All, PlotLegends -> {Style[x[t], 14], Style[ x'[t], 14], Style[x''[t], 14]}]
Salida
-Graphics-

Funciones usadas

Recetas relacionadas

Todas las recetas · Referencia de funciones · Usar esto desde un cliente MCP