Skip to content

Commit

Permalink
Cleanup related to 'discrete'
Browse files Browse the repository at this point in the history
  • Loading branch information
henrikt-ma committed Oct 12, 2020
1 parent 8de3652 commit b9fdb4e
Showing 1 changed file with 5 additions and 27 deletions.
32 changes: 5 additions & 27 deletions chapters/revisions.tex
Original file line number Diff line number Diff line change
Expand Up @@ -2297,19 +2297,7 @@ \subsection{Main Changes in Modelica 1.4}\label{main-changes-in-modelica-1-4}
When copying or moving an encapsulated class, at most the import
statements in this class have to be changed.
\item
Refined when-clause: The \lstinline!nondiscrete! keyword is removed, equations in
when-clauses must have a unique variable name on left hand side
variable and the exact mapping of when-clauses to equations is
defined. As a result, when-clauses are now precisely defined without
referring to a sorting algorithm and it is possible to handle
algebraic loops between when-clauses with different conditions and
between when-clauses and the continuous-time part of a model. The
discrete keyword is now optional, simplifying the library development
because only one type of connector is needed and not several types
which do contain or do not contain the discrete prefix on variables.
Additionally, when-clauses in algorithm sections may have
elsewhen-clauses which simplifies the definition of priorities between
when-clauses.
Refined when-clause: The \lstinline!nondiscrete! keyword is removed, equations in when-clauses must have a unique variable name on left hand side variable and the exact mapping of when-clauses to equations is defined. As a result, when-clauses are now precisely defined without referring to a sorting algorithm and it is possible to handle algebraic loops between when-clauses with different conditions and between when-clauses and the continuous-time part of a model. The \lstinline!discrete! keyword is now optional, simplifying the library development because only one type of connector is needed and not several types which do contain or do not contain the discrete prefix on variables. Additionally, when-clauses in algorithm sections may have elsewhen-clauses which simplifies the definition of priorities between when-clauses.
\item
For replaceable declarations: allowed constraining clauses, and
annotations listing suitable redeclarations. This allows a graphical
Expand Down Expand Up @@ -2350,16 +2338,7 @@ \subsection{Main Changes in Modelica 1.4}\label{main-changes-in-modelica-1-4}
Internally restructured specification.
\end{itemize}

Modelica 1.4 is backwards compatible with Modelica 1.3, with the
exception of (1) some exotic cases where different results are achieved
with the removed ``declare-before-use-rule'' and the previous declaration
order, (2) when-clauses in equations sections, which use the general
form \lstinline!expr1 = expr2! (now only \lstinline!v = expr! is allowed + some special cases
for functions), (3) some exotic cases where a when-clause may be no
longer evaluated at the initial time, because the initialization of the
when-condition is now defined in a more meaningful way (before Modelica
1.4, every condition in a when-clause has a ``previous'' value of false),
and (4) models containing the nondiscrete keyword which was removed.
Modelica 1.4 is backwards compatible with Modelica 1.3, with the exception of (1) some exotic cases where different results are achieved with the removed ``declare-before-use-rule'' and the previous declaration order, (2) when-clauses in equations sections, which use the general form \lstinline!expr1 = expr2! (now only \lstinline!v = expr! is allowed + some special cases for functions), (3) some exotic cases where a when-clause may be no longer evaluated at the initial time, because the initialization of the when-condition is now defined in a more meaningful way (before Modelica 1.4, every condition in a when-clause has a ``previous'' value of false), and (4) models containing the \lstinline!nondiscrete! keyword which was removed.

\section{Modelica 1.3 and Older Versions.}\label{modelica-1-3-and-older-versions}

Expand Down Expand Up @@ -2467,14 +2446,13 @@ \subsection{Main Changes in Modelica 1.1}\label{main-changes-in-modelica-1-1}
\item
Specification as a separate document from the rationale.
\item
Introduced prefixes discrete and nondiscrete.
Introduced prefixes \lstinline!discrete! and \lstinline!nondiscrete!.
\item
Introduced pre and when.
Introduced \lstinline!pre! and \lstinline!when!.
\item
Defined semantics for array expressions.
\item
Introduced built-in functions and operators (only connect was present
in Modelica 1.0).
Introduced built-in functions and operators (only connect was present in Modelica 1.0).
\end{itemize}

\subsection{Modelica 1.0}\label{modelica-1-0}
Expand Down

0 comments on commit b9fdb4e

Please sign in to comment.