NDSolve::bcsol NDSolveValue::bcsol ParametricNDSolve::bcsol ParametricNDSolveValue::bcsol
Examples
Basic Examples (1)
The partial differential equation solver is unable to solve algebraically for the boundary conditions needed to compute a solution:
deq = μ^(1, 0)[t, x] == 0.37 μ^(0, 2)[t, x] + (0.004 (-237000 - μ[t, x]) μ^(1, 0)[t, x]/(1 - 0.01 (-232380 - μ[t, x])^1 / 3) (-232380 - μ[t, x])^2 / 3);
IC1 = μ[0, x] == -237000;
BC1 = μ[t, 0] == -237000 + 135333 (Log[1 + 0.0347273 (1 - 5.06922 Log[1.03473 (0.966438 - 0.116438 Tanh[100 t])])^0.548994] + Log[0.966438 - 0.116438 Tanh[100 t]]);
BC2 = μ[t, 0] == -237000 + 135333 (Log[1 + 0.0347273 (1 - 5.06922 Log[1.03473 (0.966438 - 0.116438 Tanh[100 t])])^0.548994] + Log[0.966438 - 0.116438 Tanh[100 t]]);
L = 2.01 / 2;NDSolve[{deq, IC1, BC1, BC2}, μ, {t, 0, 6}, {x, 0, 2 L}]The problem here is that BC1 is defined at [t,0], but BC2 is also defined at [t,0]. To solve the problem, change the location of BC2 to [t,2*L]. Then, boundary conditions are defined on both ends of the boundary, instead of just one:
BC2 = μ[t, 2 * L] == -237000 + 135333. (Log[1 + 0.0347273 (1 - 5.06922 Log[1.03473 (0.966438 - 0.116438 Tanh[100 t])])^0.548994] + Log[0.966438 - 0.116438 Tanh[100 t]]);NDSolve[{deq, IC1, BC1, BC2}, μ, {t, 0, 6}, {x, 0, 2 L}]