I have been working with potentially chaotic systems and it would be extremely helpful if I could plot many solutions to the equation starting from different initial conditions on the same graph. What I tried to do was create a loop that picks a starting value for each equation on the system and plots a new solution as the loop iterates, but my basic knowledge of this program failed to produce anything that worked:
a = .1
M = .2
J = .1
For[i = 0, i < M, i += J,
For[u = 0, u < M, u += J, For[o = 0; o < M , o += J,
{x[][t], y[][t], z[][t]} /. sol2
sol2 =
ParametricNDSolve[{x'[t] == (Sin[y[t]] - b*x[t])*
Cos[t]*(-Sin[t]*
Cos[ArcTan[a*t]] + (a*Cos[t]*(-Sin[ArcTan[a*t]]))/(1 +
a*t^2)),
y'[t] == (Sin[x[t]] - b*z[t])*
Sin[t]* (Cos[t]*
Cos[ArcTan[a*t]] + (a*Sin[t]*(-Sin[ArcTan[a*t]]))/(1 +
a*t^2) ),
z'[
t] == (Sin[z[t]] -
b*y[t])*((-Cos[ArcTan[a*t]]*a)/(1 + a*t^2)),
x[0] == i, y[0] == u, z[0] == o}, {x, y, z}, {t, -100,
100}, {a}]
ParametricPlot3D[
Evaluate[{x[.1][t], y[.1][t], z[.1][t]} /. sol2], {t, -100,
100}, PlotRange -> All, BoxRatios -> {1, 1, 1},
PlotStyle -> Tube[.0005]]]]]
Obviously, my coding is by no means elegant let alone functional but the idea was that M and J would determine how many plots the system would run. Basically, what I have is a mess and was hoping someone could help me out.
