ModelingToolkit.jl Versions Save

An acausal modeling framework for automatically parallelized scientific machine learning (SciML) in Julia. A computer algebra system for integrated symbolics for physics-informed machine learning and automated transformations of differential equations

v9.13.0

1 week ago

ModelingToolkit v9.13.0

Diff since v9.12.2

Merged pull requests:

  • add sampletime operator (#2690) (@baggepinnen)
  • refactor: remove check_length in the error message of unbalanced system (#2693) (@sathvikbhagavan)
  • Fix method redefinition (#2698) (@YingboMa)
  • Generalize substitute_sample_time so that other backends and extend it (#2708) (@YingboMa)

Closed issues:

  • Model linearization fails when no parameter is used (#2400)
  • Variables eliminated in structural_simplify are not included in simulation plots (#2678)
  • Add sampletime() and clock() operators (#2687)
  • Silent and wrong derivatives of observed variables (#2697)
  • Implicit variable erroneously required in initial condition (#2703)
  • structural_simplify uses metadata of the variables instead of what is passed into the system (#2706)

v9.12.2

2 weeks ago

ModelingToolkit v9.12.2

Diff since v9.12.1

Merged pull requests:

  • Improve handling of expression in metadata (#2501) (@ven-k)
  • Allow Array unknowns in OptimizationSystem (#2655) (@Vaibhavdixit02)
  • We need to unwrap guesses (#2684) (@YingboMa)
  • preserve argument order for structural parameters (#2689) (@baggepinnen)

Closed issues:

  • Export getdefault function (#2484)
  • Problem creating problems for vector variables/parameters (#2661)
  • remake type promotion fails with empty initial conditions (#2664)
  • structural_simplify doesn't properly namespace "bare" io variables (#2682)
  • Bug with default value for @structural_parameters (#2688)

v9.12.1

3 weeks ago

ModelingToolkit v9.12.1

Diff since v9.12.0

Merged pull requests:

  • Speed up replace and canonicalize by improving type stability (#2613) (@SebastianM-C)
  • Always attach metadata in similarterm (#2666) (@YingboMa)

Closed issues:

  • Make replace of MTKParameters type-stable (#2608)

v9.12.0

1 month ago

ModelingToolkit v9.12.0

Diff since v9.11.0

Merged pull requests:

  • fix: fix variable namespacing issues (#2603) (@AayushSabharwal)
  • feat: support partial updates in remake_buffer (#2633) (@AayushSabharwal)
  • fix: error when all parameters are not initialized (#2640) (@AayushSabharwal)
  • collapse unneed branch (#2641) (@oxinabox)
  • fix: fix incorrect indexes of array symbolics (#2647) (@AayushSabharwal)
  • fix: implement DiffEqBase.anyeltypedual for MTKParameters (#2649) (@AayushSabharwal)
  • fix: fix guesses in hierarchical system, getguess for array variables (#2654) (@AayushSabharwal)

Closed issues:

  • Array parameters are not correctly scoped with ParentScope (#2252)
  • Wrong namespace for default array parameter value (#2344)
  • Namespacing of symbolic array variables when passed to another function (#2477)
  • ODEProblems can be constructed without providing full parameter sets (and missing values set to 0.0) (#2624)
  • Remaking ODEproblem causes call to solve to fail on remade problem (#2635)
  • remake with use_defaults=true fails when defaults contain non-trivial expressions (#2637)
  • Solve fails after remake inside of Turing model. (#2642)
  • Inconsistency with scalarisation of MTK states and parameters (#2645)
  • Remake fails with simple parameter dict (#2648)
  • Guesses for symbolic vector variables are incorrect (#2653)

v9.11.0

1 month ago

ModelingToolkit v9.11.0

Diff since v9.10.0

Merged pull requests:

  • fix: propagate parameter dependencies in extend (#2629) (@SebastianM-C)
  • fix: fix intialization of array parameters with unknown size (#2630) (@AayushSabharwal)
  • feat: allow creating NonlinearSystem without specifying unknowns/parameters (#2631) (@AayushSabharwal)
  • feat: support parameter dependencies for NonlinearSystem (#2632) (@AayushSabharwal)

Closed issues:

  • Weird behaviour when declaring a paraemter as a vector (#2615)
  • Cannot create NonlinearSystems with only equation input (like for ODESystems) (#2625)
  • Remaking ODEProblem fails inside of Turing model (#2634)

v9.10.0

1 month ago

ModelingToolkit v9.10.0

Diff since v9.9.0

Merged pull requests:

  • refactor: use the t defined in the module (#2569) (@ven-k)
  • Handle derivatives of observed variables (#2574) (@ChrisRackauckas)
  • fix: fix hierarchical discrete systems (#2593) (@AayushSabharwal)
  • fix: fix namespacing of defaults and equations (#2594) (@AayushSabharwal)
  • Revert "fix: fix namespacing of defaults and equations" (#2595) (@ChrisRackauckas)
  • Change wording from initial guess to initial condition (#2598) (@baggepinnen)
  • docs: add tutorial for optimizing ODE solve and remake (#2600) (@AayushSabharwal)
  • Accessors for differential and algebraic erquations (#2601) (@TorkelE)
  • Support docstrings for @connectors and @components (#2602) (@devmotion)
  • fix: fix callback codegen, observed eqs with non-scalarized symbolic arrays (#2605) (@AayushSabharwal)
  • refactor: improve replace, remake_buffer (#2610) (@AayushSabharwal)
  • feat: improve error messages for missing variables and subsystems (#2617) (@AayushSabharwal)
  • Revert "feat: improve error messages for missing variables and subsystems" (#2620) (@YingboMa)
  • Revert "feat: improve error messages for missing variables and subsystems" (#2622) (@ChrisRackauckas)
  • Fix a minor issue in generate_initializesystem (#2627) (@YingboMa)

Closed issues:

  • Indexing and dot-assignment of parameters/variables in nested systems (#892)
  • Identity matrix multiplied by z[3:4] gives z[1:2] (#1099)
  • Missing heuristic for array variables (#1283)
  • Problem when defining Vector variables in connectors (#1432)
  • Default initial conditions trigger an error when composing connections using scalarize() (#1553)
  • "Axes of broadcast not known" with differential matrix equation (#1740)
  • Error when taking inverse of matrix parameters, missing * method (#2134)
  • continuous_events fails to recognize vectors (#2383)
  • Error in alias elimination of DiscreteSystem (#2585)
  • Cannot use micro moles units. (#2590)
  • guess not used (#2596)
  • Callback function generation error (#2599)

v9.9.0

1 month ago

ModelingToolkit v9.9.0

Diff since v9.8.0

Merged pull requests:

  • Fix _varmap_to_vars, re-enable dde.jl test (#2545) (@MasonProtter)
  • Document and export continuous_events and discrete_events (#2567) (@MasonProtter)
  • feat: implement SII.remake_buffer for MTKParameters, fix bugs, add tests (#2570) (@AayushSabharwal)
  • Empty events should be empty (#2582) (@YingboMa)
  • fix: fix varmap_to_vars for variables with unspecified size (#2586) (@AayushSabharwal)
  • Fix tearing_reassemble for under-determined systems (#2587) (@YingboMa)
  • refactor: remove undefined export initializesystem (#2588) (@sathvikbhagavan)

Closed issues:

  • structural_simplify does not seem to include dae_index_lowering anymore (#2417)
  • Re-add DiscreteSystem (#2461)
  • Dropped unknowns with non-fully determined structural simplifications (#2515)
  • MTK 9 fails to simplify u0map with DDEProblem (#2543)
  • Error with MTKParameters and Dual Numbers (#2571)

v9.8.0

1 month ago

ModelingToolkit v9.8.0

Diff since v9.7.1

Merged pull requests:

  • fix: do not filter array unknowns in wrap_array_vars (#2549) (@AayushSabharwal)
  • initialization bypass (#2572) (@ChrisRackauckas)
  • test: add MTKParameters tests, fix bugs (#2581) (@AayushSabharwal)

v9.7.1

1 month ago

ModelingToolkit v9.7.1

Diff since v9.7.0

Merged pull requests:

  • fix: fix initialization and observed bugs (#2575) (@AayushSabharwal)

Closed issues:

  • ODEProblem get stuck (when creating MTKProblem) for certain ODE inputs (where parameter have defaults depending on initial conditions) (#2565)
  • ModelingToolkit.varmap_to_vars throws error when input have default value depending on paraemters or initial conditions (#2566)

v9.7.0

1 month ago

ModelingToolkit v9.7.0

Diff since v9.6.1

Merged pull requests:

  • feat: initial implementation of new DiscreteSystem (#2507) (@AayushSabharwal)
  • Update DynamicQuantities compatibility (#2562) (@TorkelE)
  • feat: allow parameter defaults to depend on initial values of unknowns (#2563) (@AayushSabharwal)
  • fix: fix creation of JumpProblems with no parameters (#2564) (@AayushSabharwal)

Closed issues:

  • Parameters with default values that depend on variables' initial conditions no longer supported (#2556)
  • Cannot call @mtkbuild on JumpSystem creation (#2558)
  • Cannot create JumpProblems for systems without parameters (#2559)