Skip to content

Commit

Permalink
Cleanup related to 'transition' and 'connect'
Browse files Browse the repository at this point in the history
  • Loading branch information
henrikt-ma committed Oct 13, 2020
1 parent 700f46a commit ea34a0d
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 25 deletions.
2 changes: 1 addition & 1 deletion chapters/annotations.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1891,7 +1891,7 @@ \subsection{Protection of Classes}\label{protection-of-classes}
Same as \lstinline!Access.icon! and additionally the \lstinline!Documentation! annotation (as defined in \cref{annotations-for-documentation}) can be accessed. HTML-generation in the \lstinline!Documentation! annotation is normally performed before encryption, but the generated HTML is intended to be used with the encrypted package. Thus the HTML-generation should use the same access as the encrypted version -- even before encryption.
\item
\lstinline!Access.diagram!\\
Same as \lstinline!Access.documentation! and additionally, the \lstinline!Diagram! annotation, and all components and connect equations that have a graphical annotation can be accessed.
Same as \lstinline!Access.documentation! and additionally, the \lstinline!Diagram! annotation, and all components and connect-equations that have a graphical annotation can be accessed.
\item
\lstinline!Access.nonPackageText!\\
Same as \lstinline!Access.diagram! and additionally if it is not a package: the whole class definition can be accessed (but that text cannot be copied, i.e., you can see but not copy the source code).
Expand Down
10 changes: 2 additions & 8 deletions chapters/classes.tex
Original file line number Diff line number Diff line change
Expand Up @@ -498,8 +498,7 @@ \subsection{Conditional Component Declaration}\label{conditional-component-decla
\begin{nonnormative}
Adding the component and then removing it ensures that the component is valid.

If a connect statement defines the connection of a non-conditional component \lstinline!c1! with a conditional
component \lstinline!c2! and \lstinline!c2! is de-activated, then \lstinline!c1! must still be a declared element.
If a connect equation defines the connection of a non-conditional component \lstinline!c1! with a conditional component \lstinline!c2! and \lstinline!c2! is de-activated, then \lstinline!c1! must still be a declared element.
\end{nonnormative}

If the condition is true for a public connector containing flow
Expand Down Expand Up @@ -808,12 +807,7 @@ \section{Specialized Classes}\label{specialized-classes}

\end{itemize}

Additionally only components which are of specialized classes \lstinline!record!, \lstinline!type!, \lstinline!operator record!, and
connector classes based on any of those can be used as component references in normal expressions and in the left hand
side of assignments, subject to normal type compatibility rules.
Additionally components of connectors may be arguments of connect-statements,
and any component can be used as argument to the \lstinline!ndims! and \lstinline!size!-functions, or for accessing
elements of that component (possibly in combination with array indexing).
Additionally only components which are of specialized classes \lstinline!record!, \lstinline!type!, \lstinline!operator record!, and connector classes based on any of those can be used as component references in normal expressions and in the left hand side of assignments, subject to normal type compatibility rules. Additionally components of connectors may be arguments of connect-equations, and any component can be used as argument to the \lstinline!ndims! and \lstinline!size!-functions, or for accessing elements of that component (possibly in combination with array indexing).

\begin{example}
Use of \lstinline!operator!:
Expand Down
3 changes: 1 addition & 2 deletions chapters/overloaded.tex
Original file line number Diff line number Diff line change
Expand Up @@ -509,8 +509,7 @@ \section{Example of Overloading for Complex Numbers}\label{example-of-overloadin
connect(p1,p2);
connect(p1,p3);
\end{lstlisting}
The two connect equations result in the following connection
equations:
The two connect-equations result in the following connection equations:
\begin{lstlisting}[language=modelica]
p1.v = p2.v;
p1.v = p3.v;
Expand Down
10 changes: 1 addition & 9 deletions chapters/revisions.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1450,15 +1450,7 @@ \subsection{Main changes in Modelica 3.1}\label{main-changes-in-modelica-3-1}
\item
Connection set is clearly defined including examples.
\item
The handling of connections involving \lstinline!outer! components was rewritten
to ensure that models that seem to have the same connection
structure generate the same equations from the connect equations.
Previously a connection between an \lstinline!outer! component and an outside
connector would move the connection upwards. The implication of this
movement was unclear: if it turned the connector into an inside
connector (as was likely the intention) it would prohibit
default-connection of this normal connector leading to
counter-intuitive results; and otherwise it would have no impact.
The handling of connections involving \lstinline!outer! components was rewritten to ensure that models that seem to have the same connection structure generate the same equations from the connect-equations. Previously a connection between an \lstinline!outer! component and an outside connector would move the connection upwards. The implication of this movement was unclear: if it turned the connector into an inside connector (as was likely the intention) it would prohibit default-connection of this normal connector leading to counter-intuitive results; and otherwise it would have no impact.
\end{itemize}
\item
Example of using fields was corrected.
Expand Down
8 changes: 4 additions & 4 deletions chapters/scoping.tex
Original file line number Diff line number Diff line change
Expand Up @@ -722,7 +722,7 @@ \subsection{Generation of the flat equation system}\label{generation-of-the-flat
If it is of a non-simple type the instance is recursively handled.
\end{itemize}
\item
If there are equation or algorithm sections in the class definition of the instance, references are resolved using the instance scope of the instance and are included in the equation system. Some references -- in particular to non simple, non record objects like connectors in connect statements and states in transition statements are not resolved yet and handled afterwards.
If there are equation or algorithm sections in the class definition of the instance, references are resolved using the instance scope of the instance and are included in the equation system. Some references -- in particular to non simple, non record objects like connectors in connect-equations and states in \lstinline!transition! equations are not resolved yet and handled afterwards.
\item
Instances of local classes are ignored.
\item
Expand All @@ -747,13 +747,13 @@ \subsection{Generation of the flat equation system}\label{generation-of-the-flat
conditional declaration expressions evaluate to true or it is a
constant in a package.
\begin{nonnormative}
Conditional components can be used in connect-statements, and if the component is conditionally disabled the connect-statement is removed.
Conditional components can be used in connect-equations, and if the component is conditionally disabled the connect-statement is removed.
\end{nonnormative}
\end{itemize}

This leads to a flattened equation system, except for connect and transition statements. These have to be transformed as described in
This leads to a flattened equation system, except for connect and \lstinline!transition! equations. These have to be transformed as described in
\cref{connectors-and-connections} and \cref{state-machines}. This may lead to further changes in the instance tree (e.g.\ from expandable connectors
(\cref{expandable-connectors})) and additional equations in the flattened equation system (e.g.\ connect equations (\cref{generation-of-connection-equations}),
(\cref{expandable-connectors})) and additional equations in the flattened equation system (e.g.\ connect-equations (\cref{generation-of-connection-equations}),
generated equations for state machine semantics (\cref{semantics-summary})).

\begin{nonnormative}
Expand Down
2 changes: 1 addition & 1 deletion chapters/statemachines.tex
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ \section{Transitions}\label{transitions}
and only one instance in each state machine must be marked as initial by
appearing in an \lstinline!initialState! statement.

The special kinds of connect-statements listed below are used to define define a state machine.
The special kinds of connect-equations listed below are used to define define a state machine.
\begin{center}
\begin{tabular}{l|l l}
\hline
Expand Down

0 comments on commit ea34a0d

Please sign in to comment.