Skip to content

Releases: ModiaSim/ModiaBase.jl

v0.11.1

03 Jun 09:31
Compare
Choose a tag to compare

ModiaBase v0.11.1

Diff since v0.11.0

Merged pull requests:

v0.11.0

06 Mar 20:52
Compare
Choose a tag to compare

ModiaBase v0.11.0

Diff since v0.10.0

  • Moved ModiaBase.Symbolic.makeDerVar to Modia (because makeDerVar needs FloatType for
    generating type-stable code and FloatType is available in Modia but not in ModiaBase).

Merged pull requests:

v0.10.0

01 Mar 00:07
7f1fa21
Compare
Choose a tag to compare

ModiaBase v0.10.0

Diff since v0.9.2

Non-backwards compatible changes

  • EquationAndStateInfo.jl and StateSelection.jl moved to Modia (ModiaLang is merged into Modia), because
    the AST generation in these files depends on details of CodeGeneration.jl of Modia/ModiaLang.

  • TestLinearEquations.jl also moved to Modia/ModiaLang.

Merged pull requests:

v0.9.2

23 Feb 06:58
Compare
Choose a tag to compare

ModiaBase v0.9.2

Diff since v0.9.1

  • Minor (efficiency) improvement of linear equation system if iteration variables are SVectors.

v0.9.1

21 Feb 14:54
Compare
Choose a tag to compare

ModiaBase v0.9.1

Diff since v0.9.0

Update of Manifest.toml file

v0.9.0

20 Feb 20:33
Compare
Choose a tag to compare

ModiaBase v0.9.0

Diff since v0.8.1

Non-backwards compatible improvements

  • Parameter values in the code are now type cast to the type of the parameter value from the
    @instantiatedModel(..) call. The benefit is that access of parameter values in the code is type stable
    and operations with the parameter value are more efficient and at run-time no memory is allocated.
    Existing models can no longer be simulated, if parameter values provided via simulate!(.., merge=xx) are not
    type compatible to their definition. For example, an error is thrown if the @instantedModel(..) uses a Float64 value and the
    simulate!(.., merge=xx) uses a Measurement{Float64} value for the same parameter.

Other improvements

  • Hierarchical names in function calls supported (e.g. a.b.c.fc(..)).

  • Functions can return multiple values, e.g. (tau1,tau2) = generalizedForces(derw1, derw2).

  • Large speedup of symbolic transformation, if function depends on many input (and output) arguments
    (includes new operator implicitDependency(..)).

  • Support for StaticArrays variables (the StaticArrays feature is kept in the generated AST).

  • Support for Array variables (especially of state and tearing variables)
    where the dimension can change after @instantiateModel(..)

  • Included DAE-Mode in solution of linear equation system (if DAE integrator is used and all unknowns of a linear
    equation system are part of the DAE states, solve the linear equation system during continuous integration
    via DAE solver (= usually large simulation speed-up, for larger linear equation systems)

  • Improved code generation of linear equation systems lead to more efficient solution of linear equation systems.

Bug fixes

  • Do no longer expand the unit macro in the AST, such as u"N", because otherwise logCode=true results in wrong code
    (previously, a u"N" definition in the model was displayed in the code as N which is not correct Julia code).

Merged pull requests:

v0.8.1

05 Feb 01:33
Compare
Choose a tag to compare

ModiaBase v0.8.1

Diff since v0.8.0

  • Update Project.toml, Manifest.toml, README.md

v0.8.0

03 Feb 11:58
Compare
Choose a tag to compare

ModiaBase v0.8.0

Diff since v0.7.8

  • Require Julia 1.7
  • Upgrade Manifest.toml to version 2.0
  • Update Project.toml/Manifest.toml

v0.7.8

02 Feb 09:12
Compare
Choose a tag to compare

ModiaBase v0.7.8

Diff since v0.7.7

  • Tests of TestDifferentiate.jl corrected to comply with DiffRules > 1.0
  • Scaling introduced to improve numerics when constructing A-matrix of linear equation system.

v0.7.7

24 Nov 07:43
Compare
Choose a tag to compare

ModiaBase v0.7.7

Diff since v0.7.6

Bug fixed when selecting RecursiveFactorization.jl