Guest User

Untitled

a guest
Jun 21st, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. theta[t_] := 0.5 (1 + Tanh[100 t])
  2. f[t_] := theta[t]
  3. solw = NDSolve[{w'''[t] + 6 w[t] w'[t] - w'[t] == f[t], w[0] == 0,
  4. w'[0] == 0, w''[0] == 0}, w, {t, 0, 20}];
  5. wsol[t_] := Evaluate[w[t] /. solw]
  6.  
  7. solG = ParametricNDSolve[{G'''[t] + 6 G[t] G'[t] - G'[t] == 0,
  8. G[0] == 0, G'[0] == 0, G''[0] == s}, G, {t, 0, 20}, {s},
  9. MaxSteps -> Infinity, Method -> {"ParametricCaching" -> None}];
  10. GGreen[t_, s_] := Evaluate[G[s][t] /. solG]
  11.  
  12. En = 50;
  13. T[n_] := t/En n
  14. GsolSimp[t_, s_, s0_] :=
  15. s0 t/(3 En) (GGreen[T[0], s] f[t - T[0]] + 2 Sum[GGreen[T[2 n], s] f[
  16. t - T[2 n]],{n, 1, En/2 - 1}] + 4 Sum[GGreen[T[2 n - 1], s] f[
  17. t - T[2 n - 1]],{n, 1, En/2}] + GGreen[T[En], s] f[t - T[En]])
  18.  
  19. NMinimize[{Max[
  20. Table[Abs[wsol[t] - GsolSimp[t, s, s0]], {t, 0, 5, 0.1}]],
  21. 0 <= s <= 1, -10 <= s0 <= 10}, {s, s0},
  22. Method -> {"RandomSearch", "SearchPoints" -> 100}]
Add Comment
Please, Sign In to add comment