求问各位大佬,如果微分方程的系数是分段函数该怎么求解,自己编的总是出错。代码:
a0l = 5.9; \[Lambda]1 = 0.15; \[Lambda]2 = 0.55;(*线性方程系数*)
b = 1;(*半弦长*); U = 0.1 340;
k = 0.1;(*减缩频率*)
\[Omega] = k U/b;
\[Theta] = 9.82 Pi/180 + 9 Pi/180 Cos[\[Omega] t];(*俯仰*)
h = 0;(*沉浮运动*)
\[Alpha] = \[Theta] - D[h, t]/U;
t\[Tau] = b/U;(*无量纲时间转换系数*)
\[CapitalDelta]CL =
Piecewise[{{6.32284 (x\[Alpha] + 0.1396) -
0.42284 (x\[Alpha] + 0.3142),
x\[Alpha] < -0.3142}, {6.32284 (x\[Alpha] + 0.1396), -0.3142 <=
x\[Alpha] < -0.1396}, {0, -0.1396 <= x\[Alpha] <
0.1396}, {6.32284 (x\[Alpha] - 0.1396),
0.1396 <= x\[Alpha] < 0.3142}, {6.32284 (x\[Alpha] - 0.1396) -
0.42284 (x\[Alpha] - 0.3142), x\[Alpha] >= 0.3142}}]
dCL = D[\[CapitalDelta]CL, x\[Alpha]]
Plot[\[CapitalDelta]CL, {x\[Alpha], -0.4, 0.4}];
Plot[dCL, {x\[Alpha], -0.4, 0.4}];
r1L = 0.25 + 0.1 (\[CapitalDelta]CL)^2;
r2L = (0.2 + 0.1 (\[CapitalDelta]CL)^2)^2;
r3L = (0.2 +
0.1 (\[CapitalDelta]CL)^2)^2 (-0.6 \[CapitalDelta]CL^2);(*非线性系数*)
equ2 = t\[Tau]^2 D[Cl2[t], {t, 2}] + t\[Tau] r1L D[Cl2[t], t] +
r2L Cl2[t] == -r2L \[CapitalDelta]CL -
t\[Tau] r3L dCL D[\[Alpha], t] /. x\[Alpha] -> \[Theta]
ans2 = NDSolve[{equ2, Cl2[0] == 0}, Cl2, {t, 0, 2 Pi/\[Omega]}]
程序报错NDSolve::ndnco: The number of constraints (6) (initial conditions) is not equal to the total differential order of the system plus the number of discrete variables (7).
非常感谢!
a0l = 5.9; \[Lambda]1 = 0.15; \[Lambda]2 = 0.55;(*线性方程系数*)
b = 1;(*半弦长*); U = 0.1 340;
k = 0.1;(*减缩频率*)
\[Omega] = k U/b;
\[Theta] = 9.82 Pi/180 + 9 Pi/180 Cos[\[Omega] t];(*俯仰*)
h = 0;(*沉浮运动*)
\[Alpha] = \[Theta] - D[h, t]/U;
t\[Tau] = b/U;(*无量纲时间转换系数*)
\[CapitalDelta]CL =
Piecewise[{{6.32284 (x\[Alpha] + 0.1396) -
0.42284 (x\[Alpha] + 0.3142),
x\[Alpha] < -0.3142}, {6.32284 (x\[Alpha] + 0.1396), -0.3142 <=
x\[Alpha] < -0.1396}, {0, -0.1396 <= x\[Alpha] <
0.1396}, {6.32284 (x\[Alpha] - 0.1396),
0.1396 <= x\[Alpha] < 0.3142}, {6.32284 (x\[Alpha] - 0.1396) -
0.42284 (x\[Alpha] - 0.3142), x\[Alpha] >= 0.3142}}]
dCL = D[\[CapitalDelta]CL, x\[Alpha]]
Plot[\[CapitalDelta]CL, {x\[Alpha], -0.4, 0.4}];
Plot[dCL, {x\[Alpha], -0.4, 0.4}];
r1L = 0.25 + 0.1 (\[CapitalDelta]CL)^2;
r2L = (0.2 + 0.1 (\[CapitalDelta]CL)^2)^2;
r3L = (0.2 +
0.1 (\[CapitalDelta]CL)^2)^2 (-0.6 \[CapitalDelta]CL^2);(*非线性系数*)
equ2 = t\[Tau]^2 D[Cl2[t], {t, 2}] + t\[Tau] r1L D[Cl2[t], t] +
r2L Cl2[t] == -r2L \[CapitalDelta]CL -
t\[Tau] r3L dCL D[\[Alpha], t] /. x\[Alpha] -> \[Theta]
ans2 = NDSolve[{equ2, Cl2[0] == 0}, Cl2, {t, 0, 2 Pi/\[Omega]}]
程序报错NDSolve::ndnco: The number of constraints (6) (initial conditions) is not equal to the total differential order of the system plus the number of discrete variables (7).
非常感谢!