DSolve
often cannot solve differential equations for which symbolic solutions actually do exist. So, out of curiosity, I attempted to solve these equations and made some progress, obtaining v'[l]
in terms of u[l]
, and u[l]
as an implicit function of l
. Here is the calculation.
Obtain v'[l]
:
Equal @@ (DSolve[eq2, u[l], l][[1, 1]]) /. Exp[2 C[1]] -> c
Solve[%, v'[l]][[1, 1]] /. Exp[2 C[1]] -> c
% /. l -> 0 /. (Rule @@@ {eq3, eq6})
Reverse@Simplify[Sin[1]^2 # & /@ %]
svp = %%% /. %
(* v'l] -> Csc[u[l]]^2 Sin[1]^2 *)
Next obtain a first integral for u[l]
.
Equal @@ (Solve[eq1 /. svp, u''[l]][[1, 1]])
(* (u''[l] == Cot[u[l]] Csc[u[l]]^2 Sin[1]^4 *)
u'[l]^2 == 2 Integrate[%[[2]], u[l]] + c
Solve[FullSimplify[% /. l -> 0 /. (Rule @@@ {eq3, eq5})], c][[1]]
Equal @@ (Solve[Simplify[%% /. %], u'[l]][[2, 1]])
(* u'[l] == Sqrt[1 + Sin[1]^2 - Csc[u[l]]^2 Sin[1]^4] *)
There is, of course, a second solution with the right side of the equation negative. Finally, solve the last equation to obtain
(# - c) & /@ FullSimplify[Integrate[1/%[[2]], u[l]] == l + c, u {l} > 0]
Solve[FullSimplify[% /. l -> 0 /. (Rule @@ eq3)], c][[1]]
sp = %% /. %
(* l == ArcTan[Sqrt[1/2 (3 - Cos[2])] Cot[1]] Sqrt[(1 - Cos[2])/(3 - Cos[2])] Csc[1]
- (4 ArcTan[(2 Cos[u[l]])/Sqrt[4 + 8/(-3 + Cos[2]) + 2 Cos[2] - 2 Cos[2 u[l]]]]
Sqrt[2 + 4/(-3 + Cos[2]) + Cos[2] - Cos[2 u[l]]]
Sqrt[3 - Cos[2] - 2 Csc[u[l]]^2 Sin[1]^4] Sin[u[l]])/
(3 + 2 Cos[2] - Cos[4] + 2 (-3 + Cos[2]) Cos[2 u[l]]) *)
which is the desired solution for u[l]
with u'[l] > 0
, though implicit. The solution for u'[l] < 0
is obtained similarly.
For comparision, the numerical solution for u[l]
and v'[l]
is
NDSolveValue[{eq1, eq2, eq3, eq4, eq5, eq6}, {u[l], v'[l]}, {l, -2, 8}];
Plot[{Evaluate@%, Sin[1]^2 Csc[First[%]]^2}, {l, -2, 8}, ImageSize -> Large,
AxesLabel -> {"u,v'", l}, LabelStyle -> {15, Bold, Black}]
The analytical solutions compare well with this. In summary, it is possible to obtain symbolic solutions for these equations with Mathematica, although the solution for u[l]
is implicit. All things considered, it seems understandable that DSolve
could not provide a viable solution for the equations, although showing relevant intermediate results would have been helpful.
NDSolve
and add a range for $l$ a solution can be found, so there is no problem with your formulation. $\endgroup$NDSolve
, however it will only be valid for a certain region that you specify. $\endgroup$NDSolve
works butDSolve
doesn't, and you're using the correct syntax for both, you can assume that Mathematica is unable to find a symbolic solution to the equations. $\endgroup$