Version_3_2_1

Version 3.2.1 (August 14, 2013)

Information

This information is part of the Modelica Standard Library maintained by the Modelica Association.

Version 3.2.1 is backward compatible to version 3.2, that is models developed with versions 3.0, 3.0.1, 3.1, or 3.2 will work without any changes also with version 3.2.1. This version is a "clean-up" with major emphasis on quality improvement and tool compatibility. The goal is that all Modelica tools will support this package and will interpret it in the same way. Short Overview:

  • This version of the Modelica package is fully compatible to Modelica Specification 3.2 revision 2.
    (Especially, some operators used in package Modelica, such as "rooted", have been standardized in 3.2 rev. 2, as well as vendor specific annotations. Furthermore, ambiguous/unclear descriptions in the specification have been corrected/improved. One important improvement in packages Modelica and ModelicaTest is that the initialization has been fully defined in all example models, in order that all tools can produce the same result without relying on tool heuristics).
  • About 400 tickets have been fixed for this release, and especially all compliance issues and all relevant defect issues.
  • An open source implementation of the table blocks has been provided by ITI GmbH. This work has been paid by Modelica Association. As a result, all parts of package Modelica are now available in a free implementation. Additionally new features have been added to the table blocks by this implementation:
    • The table outputs can be differentiated once.
    • Support of binary MATLAB MAT-file formats v6 and v7
    • New option ConstantSegments for parameter Smoothness
    • New option NoExtrapolation for parameter Extrapolation
    • Support of tables provided in the C-Code (usertab.c, for realtime systems without file system)
  • Icons have been re-designed by Wolfram Research to provide a more modern view.
  • The Modelica.Media.Air.MoistAir media model has been improved so that it can be used in a temperature range of 190 ... 647 K (previously: 240 ... 400 K).
  • New media models for air (ReferenceAir with a large operating range: 30 ... 2000 K, 0 ... 2000 MPa), for moist air (ReferenceMoistAir with a large operating range: 143.15 ... 2000 K, 0 .. 10 MPa; but 1-2 orders of magnitude slower as Modelica.Media.Air.MoistAir), and the refrigerant R134a are included in the Modelica.Media library in order to improve the modeling of air conditioning systems especially in aircraft. These models have been developed by XRG Simulation GmbH as part of the Clean Sky JTI project (Project number: 296369; Theme: JTI-CS-2011-1-SGO-02-026). The partial financial support by the European Union for this development is highly appreciated.
  • 60 models and blocks and 90 functions are newly included, for details see below.

This release of package Modelica, and the accompanying ModelicaTest, has been tested with the following tools (the tools are listed alphabetically. At the time of the test, some of the tools might not yet supported the complete Modelica package):

  • CyModelica
  • Dymola 2014 (Windows 64 bit)
    Regression test results with regards to Modelica 3.2 are available in ticket #1114.
  • Dymola 2014 FD01 development with pedantic flag (Windows 64 bit)
    ("pedantic flag" means that strict Modelica compliance is checked. Dymola 2014 fails with pedantic flag, e.g., because the annotation DocumentationClass was not standardized when this version of Dymola was released).
  • Maplesim Parser
  • MWorks 3.2
  • OpenModelica 1.9.0 Beta4+dev (Windows, Linux, Mac)
    Test reports for the daily builds are available here.
  • SimulationX 3.6

The following Modelica packages have been tested that they work together with this release of package Modelica (alphabetical list):

  • Buildings 1.4 (LBNL)
  • FlexibleBodies 2.0.1 (DLR)
  • Modelica_Synchronous 0.91 (DLR)
  • Optimization 2.2 (DLR)
  • PowerTrain 2.2.0 (DLR)

The new open source tables have been tested by T. Beutlich (ITI):

  • 193 Modelica test models for compatibility check with previous table implementation (available in ModelicaTest.Tables). Performed tests with SimulationX 3.5.707 (32 bit) and Dymola 2013 FD01 (32 bit). Furthermore a basic check was performed in OpenModelica to make sure it works in general.
  • The two C source files (Modelica/Resources/C-Sources/ModelicaStandardTables.c; ModelicaMatIO.c) have been tested to successfully compile for the following platforms
       Windows 32 and 64 bit
       Linux 32 and 64 bit
       dSPACE SCALEXIO
       dSPACE DS1005 (no file system)
       dSPACE DS1006 (no file system)
       dSPACE DS1401 (no file system)
  • The following compilers/environments have been used for the platform evaluation
       Microsoft compilers (VC6 and ≥ VS2005 (Win32 and x64))
       MinGW (GCC 4.4.0 and GCC 4.7.2)
       Cygwin (GCC 4.3.0)
       Open WATCOM 1.3
       LCC 2.4.1
       Borland C/C++ (free command line tools) 5.5
       GCC 4.x on Linux
       GCC 3.3.5 (for DS1006)
       Microtec PowerPC Compiler 3.7 (for DS1005)

The exact difference between package Modelica version 3.2 and version 3.2.1 is summarized in a comparison table.

About 400 trac tickets have been fixed for this release. An overview is given here. Clicking on a ticket gives all information about it.


The following new components have been added to existing libraries:

Modelica.Blocks.Logical.
RSFlipFlop Basic RS flip flop
Modelica.Blocks.Math.
MinMax Output the minimum and the maximum element of the input vector
LinearDependency Output a linear combination of the two inputs
Modelica.Blocks.Nonlinear.
SlewRateLimiter Limit the slew rate of a signal
Modelica.Electrical.Digital.Memories
DLATRAM Level sensitive Random Access Memory
DLATROM Level sensitive Read Only Memory
Modelica.Electrical.Digital.Multiplexers
MUX2x1 A two inputs MULTIPLEXER for multiple value logic (2 data inputs, 1 select input, 1 output)
Modelica.Electrical.Machines.Examples.InductionMachines.
IMC_Initialize Steady-State Initialization example of InductionMachineSquirrelCage
Modelica.Electrical.Machines.Examples.SynchronousMachines.
SMPM_VoltageSource PermanentMagnetSynchronousMachine example fed by FOC
Modelica.Electrical.Polyphase.Examples.
TestSensors Example for polyphase quasiRMS sensors: A sinusoidal source feeds a load consisting of resistor and inductor
Modelica.Electrical.Polyphase.Sensors.
VoltageQuasiRMSSensor Continuous quasi voltage RMS sensor for polyphase system
CurrentQuasiRMSSensor Continuous quasi current RMS sensor for polyphase system
Modelica.Electrical.Polyphase.Blocks.
QuasiRMS Determine quasi RMS value of a polyphase system
Modelica.Electrical.Polyphase.Functions.
quasiRMS Calculate continuous quasi RMS value of input
activePower Calculate active power of voltage and current input
symmetricOrientation Orientations of the resulting fundamental wave field phasors
Modelica.Electrical.Spice3.Examples.
CoupledInductors
CascodeCircuit
Spice3BenchmarkDifferentialPair
Spice3BenchmarkMosfetCharacterization
Spice3BenchmarkRtlInverter
Spice3BenchmarkFourBitBinaryAdder
Spice3 examples and benchmarks from the SPICE3 Version e3 User's Manual
Modelica.Electrical.Spice3.Basic.
K_CoupledInductors Inductive coupling via coupling factor K
Modelica.Electrical.Spice3.Semiconductors.
M_NMOS2
M_PMOS2
ModelcardMOS2
N/P channel MOSFET transistor with fixed level 2
J_NJFJFE
J_PJFJFE
ModelcardJFET
N/P-channel junction field-effect transistor
C_Capacitor
ModelcardCAPACITOR
Semiconductor capacitor model
Modelica.Magnetic.FundamentalWave.Examples.BasicMachines.
IMC_DOL_Polyphase
IMS_Start_Polyphase
SMPM_Inverter_Polyphase
SMEE_Generator_Polyphase
SMR_Inverter_Polyphase
Polyphase machine examples
Modelica.Fluid.Sensors.
MassFractions
MassFractionsTwoPort
Ideal mass fraction sensors
Modelica.Media.
R134a R134a (Tetrafluoroethane) medium model in the range (0.0039 bar .. 700 bar, 169.85 K .. 455 K)
Modelica.Media.Air.
ReferenceAir Detailed dry air model with a large operating range (130 ... 2000 K, 0 ... 2000 MPa) based on Helmholtz equations of state
ReferenceMoistAir Detailed moist air model (143.15 ... 2000 K)
MoistAir Temperature range of functions of MoistAir medium enlarged from 240 - 400 K to 190 - 647 K.
Modelica.Media.Air.MoistAir.
velocityOfSound
isobaricExpansionCoefficient
isothermalCompressibility
density_derp_h
density_derh_p
density_derp_T
density_derT_p
density_derX
molarMass
T_psX
setState_psX
s_pTX
s_pTX_der
isentropicEnthalpy
Functions returning additional properties of the moist air medium model
Modelica.Thermal.HeatTransfer.Components.
ThermalResistor Lumped thermal element transporting heat without storing it (dT = R*Q_flow)
ConvectiveResistor Lumped thermal element for heat convection (dT = Rc*Q_flow)
Modelica.MultiBody.Examples.Constraints.
PrismaticConstraint
RevoluteConstraint
SphericalConstraint
UniversalConstraint
Demonstrates the use of the new Joints.Constraints joints by comparing them with the standard joints.
Modelica.MultiBody.Joints.Constraints.
Prismatic
Revolute
Spherical
Universal
Joint elements formulated as kinematic constraints. These elements are designed to break kinematic loops and result usually in numerically more efficient and reliable loop handling as the (standard) automatic handling.
Modelica.Mechanics.Rotational.
MultiSensor Ideal sensor to measure the torque and power between two flanges and the absolute angular velocity
Modelica.Mechanics.Translational.
MultiSensor Ideal sensor to measure the absolute velocity, force and power between two flanges
Modelica.Math.
isPowerOf2 Determine if the integer input is a power of 2
Modelica.Math.Vectors.
normalizedWithAssert Return normalized vector such that length = 1 (trigger an assert for zero vector)
Modelica.Math.BooleanVectors.
countTrue Returns the number of true entries in a Boolean vector
enumerate Enumerates the true entries in a Boolean vector (0 for false entries)
index Returns the indices of the true entries of a Boolean vector
Modelica.Utilities.Files.
loadResource Return the absolute path name of a URI or local file name
Modelica.SIunits.
PressureDifference
MolarDensity
MolarEnergy
MolarEnthalpy
TimeAging
ChargeAging
PerUnit
DerPressureByDensity
DerPressureByTemperature
New SI unit types