Skip to main content
1 of 2
Michael E2
  • 258.7k
  • 21
  • 370
  • 830

Nice to have the ODEs and ICs separate, because it makes separate analyses easier:

Cases[eqLagrangeIIwSprgphaseIIst21, Derivative[_][_][_] | tauP10st1st21plus[_] | β[_], Infinity] // DeleteDuplicates (* {tauP10st1st21plus[t], Derivative[1][tauP10st1st21plus][t], Derivative[2][tauP10st1st21plus][t], \[Beta][t], Derivative[1][\[Beta]][t], Derivative[2][\[Beta]][t], tauP10st1st21plus[0.5717686223842463]} <-- N.B. *) Cases[{intercphaseIIst1st21tau}, Derivative[_][_][_] | tauP10st1st21plus[_] | β[_], Infinity] // DeleteDuplicates (* {tauP10st1st21plus[0.571769], Derivative[1][tauP10st1st21plus][0.571769], β[0.571769], Derivative[1][β][0.571769]} *) 

We can see that the initial condition appears (partly) in the ODEs (first output above). Internal`ProcessEquations`SeparateEquations separates equations into differential, algebraic, and constraint (e.g. BCs) equations. So probably the appearance of β[t2] and β'[t2] in the ODEs causes the problem. It's easy to solve the ICs and substitute the solutions into the ODEs. Luckily, we can also solve the system for the leading derivatives so that we can avoid "EquationSimplification"->"Residual":

ndfazaIIst21Spr = NDSolve[{ Solve[eqLagrangeIIwSprgphaseIIst21, {tauP10st1st21plus''[t], β''[t]}] /. Rule -> Equal /. First@Solve[intercphaseIIst1st21tau, {tauP10st1st21plus[t2], tauP10st1st21plus'[t2], β[t2], β'[t2]}] , intercphaseIIst1st21tau}, {tauP10st1st21plus, β} , {t, t2, 1} (*,Method->{"EquationSimplification"->"Residual"}*)]; ndfazaIIst21Spr // Values // Flatten // ListLinePlot 

enter image description here

Michael E2
  • 258.7k
  • 21
  • 370
  • 830