Once again, surprisingly, finite difference method (FDM) seems to help in this case. (This is against my impression that FDM will also fail if "Shooting"
method fails to solve a boundary value problem. ) I'll use pdetoae
for the generation of difference equation:
K1 = 1;
lb = 0; rb = 10/100;
Eq1 = f'''[x] - f'[x] f'[x] + f[x] f''[x] -
K1 (2 f'[x] f'''[x] - f[x] f''''[x] - f''[x] f''[x]) - f'[x] == 0;
set = {Eq1, f[lb] == 0, f'[lb] == 1, f'[rb] == 0, f''[rb] == 0};
points = 300;
difforder = 6;
grid = Array[# &, points, {lb, rb}];
(* Definition of pdetoae isn't included in this code piece,
please find it in the link above. *)
ptoa = pdetoae[f[x], grid, difforder];
ae = MapAt[#[[3 ;; -3]] &, ptoa@set, {{1}}];
var = # /@ grid &@f // Flatten;
initialguess = 10^-2;
sollst = FindRoot[ae, {#, initialguess} & /@ var,
MaxIterations -> Infinity]; // AbsoluteTiming
(* {12.972383, Null} *)
func = ListInterpolation[sollst[[All, -1]], grid, InterpolationOrder -> difforder];
Plot[func[x], {x, lb, rb}, PlotRange -> All]

Values of rb
i.e. right boundary, initial guess of function value i.e. initialguess
are determined by trial and error.
Error check:
Subtract @@@ set[[2 ;;]] /. f -> func
(* {0., -5.55112*10^-16, -3.017*10^-14, -7.42259*10^-10} *)
(* Residual error: *)
Plot[set[[1, 1]] /. f -> func // Evaluate, {x, lb, rb}, PlotRange -> All]

You may feel the residual error is large, but if you enlarge points
, you'll see the graph of func[x]
is stable and the residual error significantly decreases.
Solve[Eq1, f''''[x]]
and think about what happens at the initial condition. $\endgroup$f[0] == 0
? This sort of singularity has come up on this site several times, and it each case the suggested solution is to change it to something likef[10^-6] == 10^-6
. In some cases I think it should be possible mathematically to specify an initial value for the highest order derivative, but I'm not sure ifNDSolve
will let you. Any clue as to what step Maple takes initially? $\endgroup$dsolve
just handle it. As for as the background stuff is concern behind it, I don't know. $\endgroup$