Mathematica Asked by user35323 on January 20, 2021
I try to solve the following system of coupled equations with NDSolve but the results seem to be not correct. I attached my code in which five dependent variables $f_{1}$, $f_{2}$, $f_{3}$, $f_{4}$, and $f_{5}$ are coupled. I use NeumannValue to impose absorbing boundary conditions.
LL = 40;
A1 = 0.1584;
A2 = 23.8;
A3 = 2960;
A4 = 133.243;
A5 = 0.0001;
A6 = 7000;
A7 = 10^-3;
A8 = 0.278056;
A9 = 0.000482;
(*Set of Coupled Equations*)
eqn1 = -D[f1[t, x], t] + A1 D[f4[t, x], x, x] - A2 f4[t, x] -
A4 f2[t, x] + A5 D[f4[t, x], t];
eqn2 = -D[f2[t, x], t] - A1 D[f3[t, x], x, x] + A2 f3[t, x] +
A4 f1[t, x] - A5 D[f3[t, x], t] + A6 D[f5[t, x], x];
eqn3 = -D[f3[t, x], t] - (A2 + A3) f2[t, x] - A4 f4[t, x] +
A5 D[f2[t, x], t];
eqn4 = -D[f4[t, x], t] + (A2 + A3) f1[t, x] + A4 f3[t, x] -
A5 D[f1[t, x], t];
eqn5 = -D[f5[t, x], t, t] - A7 D[f5[t, x], t] + A8 D[f5[t, x], x, x] +
A9 D[f3[t, x], x];
(*Boundary Conditions*)
Subscript[Γ, N1] = NeumannValue[-f1[t, x], True];
Subscript[Γ, N2] = NeumannValue[-f2[t, x], True];
Subscript[Γ, N3] = NeumannValue[-f3[t, x], True];
Subscript[Γ, N4] = NeumannValue[-f4[t, x], True];
Subscript[Γ, N5] =
NeumannValue[-Derivative[1, 0][f5][t, x], True];
(*Initial Conditions*)
ICs = {f1[0, x] == 0, f2[0, x] == Exp[-x^2/9],
f3[0, x] == 0, f4[0, x] == 0,
f5[0, x] == 0, Derivative[1, 0][f5][0, x] == 0};
(*First Approach: Using NeummanValue Boundary Conditions*)
{F1, F2, F3, F4, F5} =
NDSolveValue[{eqn1 == -Subscript[Γ, N1],
eqn2 == -Subscript[Γ, N2],
eqn3 == -Subscript[Γ, N3],
eqn4 == -Subscript[Γ, N4],
eqn5 == -Subscript[Γ, N5], ICs},
{f1, f2, f3, f4, f5}, {t, 0, 50}, {x, -LL, LL},
Method -> {"MethodOfLines",
"SpatialDiscretization" -> {"FiniteElement"}}];
(*Animating the Results*)
ListAnimate[
Table[Plot[F3[t, x], {x, -LL, LL}, PlotRange -> {-3,
3}], {t, 0, 50, 0.25}]]
I would be grateful if anyone could help.
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP