Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
modelica committed Nov 7, 2024
1 parent b254b76 commit af5cf74
Showing 1 changed file with 33 additions and 30 deletions.
63 changes: 33 additions & 30 deletions static/docs/main/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -587,8 +587,8 @@
<div id="header">
<h1>Functional Mock-up Interface Specification</h1>
<div class="details">
<span id="revnumber">version 8df50aa,</span>
<span id="revdate">2024-11-04</span>
<span id="revnumber">version ff6aff0,</span>
<span id="revdate">2024-11-07</span>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Contents</div>
Expand Down Expand Up @@ -7845,8 +7845,8 @@ <h6 id="section-terminals"><a class="link" href="#section-terminals">2.4.9.2.2.
<p>The normalized string attribute <code>matchingRule</code> describes the rules for variable matching in a connection of terminals.
As detailed in <a href="#table-predefined-matching-rules">Table 26</a>, there are four predefined matching rules: <code>plug</code>, <code>bus</code>, <code>sequence</code>, and <code>none</code>.
Other standards may define new matching rules.
In order to avoid ambiguities and conflicts, rule names must follow the <a href="#reverse-dns">reverse domain name notation</a> of a domain that is controlled by the entity defining the semantics and content of the additional entries.
Such rule definitions can be part of a <a href="#LS-reverse-DNS">[LS-reverse-DNS]</a>layered standard&gt;&gt;, for example.</p>
In order to avoid ambiguities and conflicts, rule names must follow the <a href="#reverse-DNS">reverse domain name notation</a> of a domain that is controlled by the entity defining the semantics and content of the additional entries.
Such rule definitions can be part of a <a href="#LS-reverse-DNS">layered standard</a>, for example.</p>
</div>
<table id="table-predefined-matching-rules" class="tableblock frame-all grid-all stretch">
<caption class="title">Table 26. Predefined matching rules.</caption>
Expand Down Expand Up @@ -7891,7 +7891,7 @@ <h6 id="section-terminals"><a class="link" href="#section-terminals">2.4.9.2.2.
<div id="terminalKind" class="paragraph">
<p>The normalized string <code>terminalKind</code> is an optional attribute.
Other standards may define terminal kinds.
It is strongly recommended to use <a id="reverse-DNS"></a> to define a <code>terminalKind</code>.
It is strongly recommended to use <a href="#reverse-DNS">reverse domain name notation</a> to define a <code>terminalKind</code>.
It is intended that the <code>terminalKind</code> is used to define domain specific member variable sequences, member names and order, or high level restrictions for connections.</p>
</div>
<div class="paragraph">
Expand Down Expand Up @@ -7939,7 +7939,7 @@ <h6 id="section-terminalvars"><a class="link" href="#section-terminalvars">2.4.9
</div>
<div class="paragraph">
<p>The normalized string <code>variableKind</code> is used to provide general information about the variable.
It is strongly recommended to use <a id="reverse-DNS"></a> to define a <code>variableKind</code>.
It is strongly recommended to use <a href="#reverse-DNS">reverse domain name notation</a> to define a <code>variableKind</code>.
This information defines how the connection of this variable has to be implemented (e.g. Kirchhoff&#8217;s current law or common signal flow).</p>
</div>
<div class="paragraph">
Expand Down Expand Up @@ -8871,7 +8871,7 @@ <h5 id="extra-directory"><a class="link" href="#extra-directory">2.5.1.6. Direct
<p>The ZIP archive may contain additional subdirectories within <code>extra/</code> that can be used to store additional data, e.g. for the implementation of <a href="#VersioningLayered">layered standards</a>.</p>
</div>
<div class="paragraph">
<p>In order to avoid ambiguities and conflicts, the names of these subdirectories should use the <a href="#reverse-dns">reverse domain name notation</a> of a domain that is controlled by the entity defining the semantics and content of the additional entries <em>[(for example <code>extra/com.example/SimTool/meta.xml</code> or <code>extra/org.example.stdname/data.asd</code>)]</em>.
<p>In order to avoid ambiguities and conflicts, the names of these subdirectories should use the <a href="#reverse-DNS">reverse domain name notation</a> of a domain that is controlled by the entity defining the semantics and content of the additional entries <em>[(for example <code>extra/com.example/SimTool/meta.xml</code> or <code>extra/org.example.stdname/data.asd</code>)]</em>.
It is explicitly allowed for tools and users other than the original creator of an FMU to modify, add or delete entries in the <code>extra/</code> directory without affecting the validity of the FMU in all other aspects.
Specifically all validation or digital signature schemes used to protect the content of the FMU should take the variability of extra file content into account <em>[(for example by having separate checksums or signatures for FMU core content and extra content, or not having signatures at all for extra content)]</em>.</p>
</div>
Expand Down Expand Up @@ -9233,7 +9233,7 @@ <h3 id="VersioningLayered"><a class="link" href="#VersioningLayered">2.6. Versio
</div>
</div>
<div class="paragraph">
<p><a id="LS-reverse-DNS"></a>Layered standards use the <a href="#reverse-dns">reverse domain name notation</a> of a domain under the control of the organizations that releases the layered standard to reserve namespaces.
<p><a id="LS-reverse-DNS"></a>Layered standards use the <a href="#reverse-DNS">reverse domain name notation</a> of a domain under the control of the organizations that releases the layered standard to reserve namespaces.
All namespaces under both the <code>org.modelica</code> and <code>org.fmi-standard</code> domains are reserved for use in future layered standards.</p>
</div>
<div class="paragraph">
Expand Down Expand Up @@ -12236,102 +12236,105 @@ <h2 id="glossary"><a class="link" href="#glossary">Appendix A: Glossary</a></h2>
These parameters are different from <a href="#calculatedParameter">calculated parameters</a>, because they can be changed independently (according to their <a href="#variability"><code>variability</code></a>).</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="reverse-DNS"></a><em>revers domain name notation</em>
A naming convention based on registered domain names, with the order of the components reversed for grouping purposes.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="reinitialization"></a><em>reinitialization</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="reverse-DNS"></a><em>reverse domain name notation</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A naming convention based on registered domain names, with the order of the components reversed for grouping purposes.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="reinitialization"></a><em>reinitialization</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Recalculation of <a href="#state">continuous-time states</a> by the model.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>runtime environment</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>runtime environment</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">See co-simulation environment</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Compute the behavior of one or several <em>models</em> under specified conditions.<br>
(see also <em>co-simulation</em>)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation model</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation model</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">see <em>model</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation program</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation program</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Software to develop and/or solve simulation <em>models</em>.
The software includes a <em>solver</em>, may include a user interface and methods for post processing (see also: <em>simulation tool</em>, <em>simulation environment</em>).<br></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation tool</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulation tool</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">see <em>simulation program</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulator</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulator</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A simulator can include one or more <em>simulation programs</em>.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulator coupling</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>simulator coupling</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">See <em>tool coupling</em>.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>solver</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>solver</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>Software component,</em> which includes algorithms to solve <em>models</em>, for example, <em>integration algorithms</em> and <em>event handling</em> methods.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>state</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>state</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The continuous <a href="#state">states</a> of a model are all variables that appear differentiated in the model and are independent from each other.<br>
The discrete-time states of a model are time-discrete variables that have two values in a model: The value of the variable from the previous <em>event</em> instant, and the value of the variable at the actual event instant.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>state event</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>state event</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The time of <a href="#state-event">state <em>events</em></a> is not known apriori.
<a href="#fmi3GetEventIndicators">Event indicators</a> are used to allow the importer finding the time of these state events precisely.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="step-event"></a><em>step event</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="step-event"></a><em>step event</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>Event</em> that might occur at a completed integrator step signaled by calling <a href="#fmi3CompletedIntegratorStep"><code>fmi3CompletedIntegratorStep</code></a>.
Step events are, for example, used to change the mapping of the continuous states to variables (<a href="#dynamic-state-selection">dynamic state selection</a>).</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>structural parameter</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>structural parameter</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A parameter that can be changed in <a href="#ConfigurationMode"><strong>Configuration Mode</strong></a>, i.e. prior to <a href="#InitializationMode"><strong>Initialization Mode</strong></a>, and, if tuneable, also in <a href="#ReconfigurationMode"><strong>Reconfiguration Mode</strong></a>.
Structural parameters can be used to influence the size and/or dimensionality of array variables of an FMU, for example.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="super-dense-time"></a><em>super-dense time</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="super-dense-time"></a><em>super-dense time</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A precise definition of time taking into account iterations at an event.
For an <em>FMU</em>, the <a href="#independent"><code>independent</code></a> variable time \(t \in \mathbb{T}\) is a tuple \(t = (t_R, t_I)\) where \(t_R \in \mathbb{R}, t_I \in \mathbb{N} = \{0,1,2,\ldots\}\).
The real part \(t_R\) of this tuple is the <a href="#independent"><code>independent</code></a> variable of the FMU for describing the continuous-time behavior of the model between events.
During continuous-time integration \(t_I = 0\).
The integer part \(t_I\) of this tuple is a counter to enumerate (and therefore distinguish) the events at the same continuous-time instant \(t_R\).</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>super-dense time instant</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>super-dense time instant</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">See <a href="#time-instant">time instant</a> and <a href="#super-dense-time">super-dense time</a>.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="time-event"></a><em>time event</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="time-event"></a><em>time event</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>Event</em> that is defined by a predefined time instant.
Since the time instant is known in advance, the integrator can select its step size so that the event point is directly reached.
Therefore, this event can be handled efficiently.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="time-instant"></a><em>time instant</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="time-instant"></a><em>time instant</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A moment in time, either a continuous-time instant \(t = t_R\), or a super-dense time instant \(t = (t_R, t_I)\), see also <a href="#super-dense-time">super-dense time</a>.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="tlm"></a><em>TLM</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="tlm"></a><em>TLM</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">See <a href="#transmission-line-modeling">Transmission Line Modeling</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="transmission-line-modeling"></a><em>Transmission Line Modeling</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a id="transmission-line-modeling"></a><em>Transmission Line Modeling</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">A mathematical method which uses physically motivated time delays to decouple an equation system into independent parts during a specified time frame without compromising numerical stability.
Also known as the <em>bi-lateral delay line</em> method. For more details see <a href="#FBH18">[FBH18]</a>.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>user interface</em></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>user interface</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The part of the simulation program that gives the user control over the simulation and allows watching results.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><em>XML</em></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">eXtensible Markup Language (<a href="https://www.w3.org/XML/">www.w3.org/XML</a>, <a href="https://en.wikipedia.org/wiki/Xml">en.wikipedia.org/wiki/XML</a>) - An open standard to store information in text files in a structured form.</p></td>
</tr>
</tbody>
</table>
Expand Down

0 comments on commit af5cf74

Please sign in to comment.