Version 4.0.0 is not backward compatible to previous versions. A tested conversion script is provided to transform models and libraries of previous versions 3.x.y to the new version. Short Overview:
MAJOR.MINOR.BUGFIX
(see Version
Management for details) and was decoupled from the version of
the utilized version of the Modelica language standard.The exact difference between package Modelica version 4.0.0 and version 3.2.3 is summarized in a comparison table.
The following Modelica packages have been tested that they work together with this release of package Modelica (alphabetical list). Hereby simulation results of the listed packages have been produced with package Modelica version 3.2.3 and compared with the simulation results produced with version 4.0.0 Beta.1. The tests have been performed with Dymola 2020/2020x/2021:
Library | Version | Library provider |
---|---|---|
Buildings | > 6.0.0 | LBNL |
BrushlessDCDrives | 1.1.1 | Dassault Systèmes |
Clara | 1.5.0 | XRG Simulation GmbH and TLK-Thermo GmbH |
ClaraPlus | 1.3.0 | XRG Simulation GmbH and TLK-Thermo GmbH |
DriveControl | 4.0.0 | Anton Haumer |
DymolaModels | 1.1 | Dassault Systèmes |
EDrives | 1.0.1 | Anton Haumer and Christian Kral |
ElectricalMachines | 0.9.1 | Anton Haumer |
ElectricPowerSystems | 1.3.1 | Dassault Systèmes |
ElectrifiedPowertrains | 1.3.2 | Dassault Systèmes |
ElectroMechanicalDrives | 2.2.0 | Christian Kral |
EMOTH | 1.4.1 | Anton Haumer |
HanserModelica | 1.1.0 | Christian Kral |
IBPSA | > 3.0.0 | IBPSA Project 1 |
KeywordIO | 0.9.0 | Christian Kral |
Modelica_DeviceDrivers | 1.8.1 | DLR, ESI ITI, and Linköping University (PELAB) |
Optimization | 2.2.4 | DLR |
PhotoVoltaics | 1.6.0 | Christian Kral |
PlanarMechanics | 1.4.1 | Dirk Zimmer |
Testing | 1.3 | Dassault Systèmes |
ThermalSystems | 1.6.0 | TLK-Thermo GmbH |
TIL | 3.9.0 | TLK-Thermo GmbH |
TILMedia | 3.9.0 | TLK-Thermo GmbH |
TSMedia | 1.6.0 | TLK-Thermo GmbH |
VehicleInterfaces | 1.2.5 | Modelica Association |
WindPowerPlants | 1.2.0 | Christian Kral |
The following new
libraries have been added:
Modelica.Clocked | This library can be used to precisely define and synchronize
sampled data systems with different sampling rates. The library previously was available as separate package Modelica_Synchronous. (This library was developed by DLR in close cooperation with Dassault Systèmes Lund.) |
Modelica.Electrical.Batteries | This library offers simple battery models. (This library was developed by Anton Haumer and Christian Kral.) |
The following new
components have been added to existing libraries:
Modelica.Blocks.Sources | |
SineVariableFrequencyAndAmplitude CosineVariableFrequencyAndAmplitude |
Added signal sources with variable amplitude and frequency; sine and cosine waveforms are provided. |
Sinc | Added signal source of
amplitude*sin(2*π*f*t)/(2*π*f*t) . |
Modelica.Electrical.Analog.Sources | |
SineVoltageVariableFrequencyAndAmplitude CosineVoltageVariableFrequencyAndAmplitude SineCurrentVariableFrequencyAndAmplitude CosineCurrentVariableFrequencyAndAmplitude |
Added voltage and current sources with variable amplitude and frequency; sine and cosine waveforms are provided. |
Modelica.Electrical.Machines.Sensors | |
SinCosResolver | Added resolver with two sine and two cosine tracks to be used in drive control applications. |
Modelica.Electrical.Machines.Utilities | |
SwitchYDwithArc | Added wye delta switch with arc model and time delay between the two switching events. |
Modelica.Electrical.PowerConverters | |
ACAC | Added single-phase and polyphase triac models (AC/AC converters). |
Modelica.Magnetic.FluxTubes.Shapes.FixedShape | |
HollowCylinderCircumferentialFlux Toroid |
Added circumferential flux models of hollow cylinder and toroid with circular cross section. |
Magnetic.QuasiStatic.FluxTubes.Shapes.FixedShape | |
HollowCylinderCircumferentialFlux Toroid |
Added circumferential flux models of hollow cylinder and toroid with circular cross section. |
Modelica.Mechanics.MultiBody.Visualizers.Advanced | |
Vector | Added 3-dimensional animation for visualization of vector quantities (force, torque, etc.) |
Modelica.Mechanics.Translational.Components | |
RollingResistance | Added resistance of a rolling wheel incorporating the inclination and rolling resistance coefficient. |
Vehicle | Added simple vehicle model considering mass and inertia, drag and rolling resistance, inclination resistance. |
Modelica.Math | |
BooleanVectors.andTrue | Similar to allTrue , but return true
on empty input vector. |
Matrices.LAPACK.dgeqp3 | Compute the QR factorization with column pivoting of square or rectangular matrix. |
Random.Utilities.automaticLocalSeed | Create an automatic local seed from the instance name. |
The following existing
components have been improved in a backward compatible way:
Modelica.Blocks.Sources | |
CombiTimeTable | Added second derivative and modified Akima interpolation. |
Modelica.Blocks.Tables | |
CombiTable1Ds CombiTable1Dv |
Added second derivatives and modified Akima interpolation. |
CombiTable2Ds CombiTable2Dv |
Added second derivatives. |
Modelica.Electrical.Analog.Basic | |
Gyrator | Serves as generalized gyrator model as IdealGyrator was removed. |
Modelica.Electrical.Analog.Ideal | |
IdealizedOpAmpLimited | Added homotopy to operational amplifier. |
Modelica.Electrical.Semiconductors | |
NPN PNP |
Added optional substrate connector. |
The following existing
components have been changed in a non-backward compatible way:
Modelica.Blocks | |
Nonlinear.Limiter Nonlinear.VariableLimiter |
The superfluous parameter limitsAtInit has been
removed. |
Continuous.PID | The initialization option
initType = InitPID.DoNotUse_InitialIntegratorState
to only initialize the integrator state has been removed. This
option has been converted to both initialize the integrator state
and the derivative state, i.e.,
initType = Init.InitialState . |
Continuous.LimPID | The superfluous parameter limitsAtInit has been
removed.The initialization option initType = InitPID.DoNotUse_InitialIntegratorState
to only initialize the integrator state has been removed. This
option has been converted to both initialize the integrator state
and the derivative state, i.e.,
initType = Init.InitialState . |
Nonlinear.DeadZone | The superfluous parameter deadZoneAtInit has been
removed. |
Interfaces.PartialNoise Noise.UniformNoise Noise.NormalNoise Noise.TruncatedNormalNoise Noise.BandLimitedWhiteNoise |
As a side-effect of the updated computation in
Modelica.Math.Random.Utilities.automaticLocalSeed the
localSeed parameter is computed differently if
useAutomaticLocalSeed is set to true. |
Types.InitPID | The enumeration type has been converted to
Types.Init with exception of the alternative
InitPID.DoNotUse_InitialIntegratorState , that was
converted to Init.InitialState leading to a different
initialization behaviour. |
Modelica.Electrical.Machines.Utilities | |
SwitchYD | The IdealCommutingSwitch is replaced by an IdealOpeningSwitch and an IdealClosingSwitch to allow a time delay between the two switching actions. |
Modelica.Electrical.Spice3 | |
Internal.MOS2 Semiconductors.M_NMOS2 Semiconductors.M_PMOS2 |
The final parameter vp has been removed.The obsolete variables cc_obsolete ,
icqmGB , icqmGS , icqmGD ,
MOScapgd , MOScapgs ,
MOScapgb , qm and vDS have
been removed. |
Modelica.Magnetic.QuasiStatic.FundamentalWave.Utilities | |
SwitchYD | The IdealCommutingSwitch is replaced by an IdealOpeningSwitch and an IdealClosingSwitch to allow a time delay between the two switching actions. |
Modelica.Mechanics.MultiBody.Forces | |
WorldForce | The parameters diameter and N_to_m
have been removed. |
WorldTorque | The parameters diameter and Nm_to_m
have been removed. |
WorldForceAndTorque | The parameters forceDiameter ,
torqueDiameter , N_to_m , and
Nm_to_m have been removed. |
Force | The parameter N_to_m has been removed. |
Torque | The parameter Nm_to_m has been removed. |
ForceAndTorque | The parameters N_to_m and Nm_to_m
have been removed. |
Modelica.Mechanics.MultiBody.Joints | |
Prismatic | The superfluous constant s_offset has been
removed. |
Revolute | The superfluous constant phi_offset has been
removed. |
FreeMotion FreeMotionScalarInit |
The parameter arrowDiameter has been removed. |
Modelica.Mechanics.MultiBody.Parts | |
Body | The superfluous parameter z_a_start has been
removed. |
Modelica.Mechanics.MultiBody.Sensors | |
AbsoluteSensor RelativeSensor Distance |
The parameter arrowDiameter has been removed. |
CutForce | The parameters forceDiameter and
N_to_m have been removed. |
CutForce | The parameters torqueDiameter and
Nm_to_m have been removed. |
CutForceAndTorque | The parameters forceDiameter ,
torqueDiameter , N_to_m , and
Nm_to_m have been removed. |
Modelica.Mechanics.MultiBody.Visualizers | |
Advanced.Arrow Advanced.DoubleArrow FixedArrow SignalArrow |
The parameter diameter has been removed. |
Modelica.Fluid.Machines | |
PartialPump | The superfluous parameter show_NPSHa has been
removed. |
Modelica.Thermal.HeatTransfer | |
Fahrenheit.FromKelvin Rankine.FromKelvin Rankine.ToKelvin |
The superfluous parameter n has been removed. |
The following critical
errors have been fixed (i.e., errors that can lead
to wrong simulation results):
Modelica.Blocks.Math | |
Pythagoras | The case with negative y2 was not correctly
considered if u1IsHypotenuse is true .
This has been corrected. |
Modelica.Electrical.Semiconductors | |
Diode | Fixed unit error in current equations. |
Modelica.Electrical.Spice3.Additionals | |
poly | The case with one coefficient and one variable was not correctly considered. This has been corrected. |
Modelica.Fluid.Dissipation.PressureLoss.General | |
dp_volumeFlowRate_DP dp_volumeFlowRate_MFLOW |
The mass flow rate was not correctly computed if the pressure drop is a linear function of the volume flow rate. This has been corrected. |
Modelica.Media.Air.MoistAir | |
density_derX s_pTX s_pTX_der |
The calculation was wrong. This has been corrected. |
Modelica.Media.Air.ReferenceAir.Air_Base | |
BaseProperties | The unit of the specific gas constant R_s was not
correctly considered. This has been corrected. |
Modelica.Media.IdealGases.Common.Functions | |
s0_Tlow_der | The calculation was wrong. This has been corrected. |
Modelica.Media.IdealGases.Common.MixtureGasNasa | |
T_hX | The function inputs exclEnthForm ,
refChoice and h_off were not considered.
This has been corrected. |
Modelica.Media.Incompressible.TableBased | |
T_ph | The pressure negligence was not considered. This has been corrected. |
Modelica.Media.R134a.R134a_ph | |
setState_pTX | Only applicable in one-phase regime: The Newton iteration for the calculation of the density may possibly converge to the wrong root. This has been improved. |
setState_dTX setState_psX |
The calculation was wrong in two-phase regime. This has been corrected. |
Modelica.Utilities.System | |
getTime | The month and year was only correctly returned if the implementing source file (ModelicaInternal.c) was compiled for Windows OS. This has been corrected. |