# Does MTK nominal metadata for variables set abstol when solving ODE

**URL:** <https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123>\
**Category:** Modelling & Simulations\
**Tags:** differentialequation\
**Created:** [August 31, 2026, 8:05pm UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123 "2026-08-31T20:05:30Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mark.garnett](https://avatars.discourse-cdn.com/v4/letter/m/b9bd4f/32.png) [@mark.garnett](https://discourse.julialang.org/u/mark.garnett)\
**Post date:** [August 31, 2026, 8:05pm UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123/1 "2026-08-31T20:05:30Z")

</div>

when you define a variables

```julia-auto
@variables begin
x(t), [nominal=1e6]
y(t), [nominal=1e-3]
end

```

will it essentially do the equivalent of setting abstol to a vector of absolute tolerances rather than a scalar, by multiplying the abstol you pass in

```julia-auto
sol = solve(prob, u0, (0,100); abstol=1e-6)

```

by the nominal value? Or is it ignored ? The Documentation mentions it being used for optimal control problems but not for plain old ODEs, just want to clarify

---

<div class="post-metadata">

**Author:** ![mark.garnett](https://avatars.discourse-cdn.com/v4/letter/m/b9bd4f/32.png) [@mark.garnett](https://discourse.julialang.org/u/mark.garnett)\
**Post date:** [August 31, 2026, 10:23pm UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123/2 "2026-08-31T22:23:12Z")

</div>

well, it seems like it possibly has no effect?

doing this:

```julia-auto
integrator = init(prob, solver)
integrator.opts.abstol

```

just returns the default abstol of 1e-6. So it would seem that setting nominal is no help for setting tolerances, at least AFAICT.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 1, 2026, 3:00am UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123/3 "2026-09-01T03:00:15Z")

</div>

It does not right now. Right now the ODE solver does not use the information, though it could in the future (but it wouldn’t do so using abstol)

---

<div class="post-metadata">

**Author:** ![mark.garnett](https://avatars.discourse-cdn.com/v4/letter/m/b9bd4f/32.png) [@mark.garnett](https://discourse.julialang.org/u/mark.garnett)\
**Post date:** [September 1, 2026, 2:30pm UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123/4 "2026-09-01T14:30:08Z")

</div>

Thanks for confirming Chris. What would you do with the information instead?

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 4, 2026, 1:33pm UTC](https://discourse.julialang.org/t/does-mtk-nominal-metadata-for-variables-set-abstol-when-solving-ode/139123/5 "2026-09-04T13:33:06Z")

</div>

I would add multiplications to the variables in the equations to scale it inside of the `f`. MTK doesn’t do this yet though, but it would decrease the condition number of the Jacobian.
