Just playing around with features of DSolve in Mathematica and came across a differential equation that DSolve is not able to handle for some reason. Hoping that someone knows why or a workaround for it.
Defined the pendulum differential equation:
eqn1[g_, R_, t_] = D[\[Phi][t], {t, 2}] + g/R*Sin[ \[Phi][t] ] == 0;
Defined parametric initial conditions:
ic[\[Alpha]_, \[Gamma]_] = List[
\[Phi][0] == \[Alpha],
\[Phi]'[t] == \[Gamma] /. { t -> 0 }
];
Defined solution:
sol1[g_, R_, \[Alpha]_, \[Gamma]_, t_] =
DSolve[ { eqn1[g, R, t], ic[\[Alpha], \[Gamma]] }, \[Phi][t], t ]
For some reason, DSolve cannot handle this differential equation (while it is a deceivingly difficult differential equation, it pops up quite commonly in many different physical systems). The error output when running the solution is:
During evaluation of In[3]:= Solve::ifun: Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information.
During evaluation of In[3]:= DSolve::bvfail: For some branches of the general solution, unable to solve the conditions.
During evaluation of In[3]:= DSolve::bvfail: For some branches of the general solution, unable to solve the conditions.
Out[3]= {}
Has anyone else encountered this with DSolve? Exact solutions to the pendulum differential equation do exist, and initial conditions have been specified to clarify constants in the solution for DSolve. It is unclear to me why this schema is not working to obtain a Mathematica function solution for the pendulum problem.