I’m trying to solve a higher index DAE (say in my case index 3) system of equations formulating it directly as a DAEProblem without converting it into an ODEProblem.
Going through the documentation I could find only examples that utilizes index reduction in modelingtoolkit.jl and further solving it as an ODEProblem. I’m looking further into solving it as a DAEProblem.
Is there a possible way to do that ? If so, with what solvers ?
Here is a simple case of equations of pendulum where we encounter a DAE system of index 3. The code below gives me an error message ‘convergence failure’ as I have directly attempted to solve it without index reduction. Can I get any possible help to reduce its index and further solving it as a DAEProblem ?
using DifferentialEquations, ModelingToolkit using LinearAlgebra, DASKR function f(out, da, a, p, t) (L, m, g) = p u, v, x, y, T = a du, dv, dx, dy, dT = da out = x*T/(m*L) - du out = y*T/(m*L) - g - dv out = u - dx out = v - dy out = u^2 + v^2 - L^2 nothing end u0 = zeros(5) u0 = 1.0 du0 = zeros(5) du0 = 9.81 p = [1,1,9.8] tspan = (0.,100.) differential_vars = [true, true, true, true, false] prob = DAEProblem(f, du0, u0, tspan, p, differential_vars = differential_vars) sol=solve(prob,daskr())
Thanking in advance…