Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to specify maps whose domain and codomain values are defined in one matrix? #7

Closed
TorstenBlochwitz opened this issue Nov 7, 2023 · 2 comments

Comments

@TorstenBlochwitz
Copy link
Contributor

Until now we only allow vector variables to be referenced as domain and codomain variables which contain the data of a map.

In Modelica Standard Library and other applications, values for domain and codomain are defined in one matrix.

How can we express such maps in LS struct?

@klausschuch
Copy link
Collaborator

klausschuch commented May 16, 2024

Meeting F2F-Munich:
we could define terminalkinds for each of the modelica combitables.
If an fmi variable v contain the whole matrix (with the domain and codomain sampling points and the data), we could just reference the same variable in the domain and codomain entries and based on the terminalKind the importer can do the slicing to extract eh domain and codomain values.

<fmiTerminalsAndIcons fmiVersion="3.0">
  <Terminals>
    <Terminal name="map2d" terminalKind="org.fmi-standard.fmi-ls-struct.map.combitable1d" matchingRule="org.fmi-standard.fmi-ls-struct.map">
      <TerminalMemberVariable variableName="v" memberName="x" variableKind="org.fmi-standard.fmi-ls-struct.domain" />
      <TerminalMemberVariable variableName="v" memberName="y" variableKind="org.fmi-standard.fmi-ls-struct.domain" />
      <TerminalMemberVariable variableName="in_y" memberName="in_y" variableKind="org.fmi-standard.fmi-ls-struct.domainInput" />
      <TerminalMemberVariable variableName="v" memberName="v" variableKind="org.fmi-standard.fmi-ls-struct.codomain" />
    </Terminal>
  </Terminals>
</fmiTerminalsAndIcons>

@klausschuch
Copy link
Collaborator

We agreed on the structure for such combitables and the specification will be reworked in #18

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants