# Unit Validation and Inspection with MTK - error in the documentation?

**URL:** <https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145>\
**Category:** Modelling & Simulations\
**Tags:** modelingtoolkit\
**Created:** [March 26, 2024, 1:44pm UTC](https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145 "2024-03-26T13:44:01Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![kraqbi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kraqbi/32/206682_2.png) [@kraqbi](https://discourse.julialang.org/u/kraqbi)\
**Post date:** [March 26, 2024, 1:44pm UTC](https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145/1 "2024-03-26T13:44:01Z")

</div>

Hello!  
This is my first post here, so please forgive me if I do not master all conventions yet.

I plan to add units verification of my model using the available tools from ModelingToolkit.

I was trying to reproduce the example given in ModelingToolkit documentation here :

> **[Model Validation and Units · ModelingToolkit.jl](https://docs.sciml.ai/ModelingToolkit/stable/basics/Validation/#Unit-Validation-and-Inspection)**
>
> Documentation for ModelingToolkit.jl.

And in particular the function ModelingToolkit.validate() .

To what I remember, the following example should return TRUE which is not the case, neither from my results nor from the automated REPL of the documentation.

```julia
using ModelingToolkit, DynamicQuantities
@parameters τ [unit = u"ms"]
@variables t [unit = u"ms"] E(t) [unit = u"kJ"] P(t) [unit = u"MW"]
D = Differential(t)
eqs = eqs = [D(E) ~ P - E / τ,
    0 ~ P]
ModelingToolkit.validate(eqs)

```

I also tried with a smaller example:

```julia
using ModelingToolkit, DynamicQuantities

@parameters τ [unit = u"ms"]
@variables t [unit = u"ms"] E(t) [unit = u"kJ"] P(t) [unit = u"MW"]
D = Differential(t)
eqs = eqs = [t ~ t]
ModelingToolkit.validate(eqs)

```

Which also returns FALSE.

Should I raise an issue, is it a known error or I am doing something wrong?

Thank you!

---

<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:** [March 26, 2024, 2:30pm UTC](https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145/2 "2024-03-26T14:30:43Z")

</div>

Seems odd. Definitely worth an issue and discussion.

---

<div class="post-metadata">

**Author:** ![kraqbi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kraqbi/32/206682_2.png) [@kraqbi](https://discourse.julialang.org/u/kraqbi)\
**Post date:** [July 1, 2025, 12:50pm UTC](https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145/3 "2025-07-01T12:50:16Z")

</div>

It would seems that my second example is now working. The example of the documentation is not though.

Another thing unclear in the documentation is how to have dimensionless parameters or variables.  
So, should I raise an issue?

---

<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:** [July 1, 2025, 2:10pm UTC](https://discourse.julialang.org/t/unit-validation-and-inspection-with-mtk-error-in-the-documentation/112145/4 "2025-07-01T14:10:34Z")

</div>

Please do.
