# DifferentialEquations.jl Mass Matrix DAE Explicit

**URL:** https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447
**Category:** Modelling & Simulations
**Tags:** question
**Created:** [May 29, 2025, 7:07pm UTC](https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447 "2025-05-29T19:07:54Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![ziolai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ziolai/32/23422_2.png) [@ziolai](https://discourse.julialang.org/u/ziolai)
#### Post date: [May 29, 2025, 7:07pm UTC](https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447/1 "2025-05-29T19:07:55Z")

</div>

Are any of the methods listed at [Mass Matrix and Fully Implicit DAE Solvers · DifferentialEquations.jl](https://docs.sciml.ai/DiffEqDocs/stable/solvers/dae_solve/) explicit in time, and therefore **not** require a Jacobian?

Reason for asking is that solving time-dependent Stokes flow using Ferrite renders use of AD to generate the Jacobian hard.

A MWE is at [finite\_element\_electrical\_engineering/project-based-assignment/metal-hydride-storage/notebooks/stokes\_2d\_channel\_quad\_transient.ipynb at main · ziolai/finite\_element\_electrical\_engineering · GitHub](https://github.com/ziolai/finite_element_electrical_engineering/blob/main/project-based-assignment/metal-hydride-storage/notebooks/stokes_2d_channel_quad_transient.ipynb)

---

<div class="post-metadata">

### Author: ![Oscar\_Smith](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oscar_smith/32/25343_2.png) [@Oscar\_Smith](https://discourse.julialang.org/u/Oscar_Smith)
#### Post date: [May 29, 2025, 7:55pm UTC](https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447/2 "2025-05-29T19:55:22Z")

</div>

No. Explicit methods are incapable of solving DAEs.

---

<div class="post-metadata">

### Author: ![ziolai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ziolai/32/23422_2.png) [@ziolai](https://discourse.julialang.org/u/ziolai)
#### Post date: [May 29, 2025, 8:00pm UTC](https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447/3 "2025-05-29T20:00:57Z")

</div>

Clear. Thx. I guessed so much. Can we plunk in an alternative to AD (finite differences?) to compute the derivatives?

---

<div class="post-metadata">

### Author: ![Oscar\_Smith](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oscar_smith/32/25343_2.png) [@Oscar\_Smith](https://discourse.julialang.org/u/Oscar_Smith)
#### Post date: [May 29, 2025, 8:07pm UTC](https://discourse.julialang.org/t/differentialequations-jl-mass-matrix-dae-explicit/129447/4 "2025-05-29T20:07:25Z")

</div>

yeah, instead of `sol = solve(prob_mm, Rodas5(), reltol = 1e-8, abstol = 1e-8)`, you want

```julia
using ADTypes
sol = solve(prob_mm, Rodas5P(autodiff=AutoFiniteDiff()), reltol = 1e-8, abstol = 1e-8)

```
