Class FMI20ModelExchangeCapabilities


  • public class FMI20ModelExchangeCapabilities
    extends FMICapabilities
    An object that represents the the capabilities of a FMI Model Exchange FMU. for FMI-2.0.

    A Functional Mock-up Unit file is a .fmu file in zip format that contains a .xml file named "modelDescription.xml". In FMI-2.0, the xml file may optionally contain a "ModelExchange" element that defines the capabilities of the Model Exchange FMU.

    FMI documentation may be found at https://fmi-standard.org/.

    Since:
    Ptolemy II 10.0
    Version:
    $Id$, $Id$
    Author:
    Christopher Brooks
    Pt.AcceptedRating:
    Red (cxh)
    Pt.ProposedRating:
    Red (cxh)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      boolean canBeInstantiatedOnlyOncePerProcess
      True if only one FMU can be instantiated per process.
      boolean canGetAndSetFMUstate
      If true, then the FMU can get and set state.
      boolean canNotUseMemoryManagementFunctions
      True if the slave ignores the allocateMemory() and freeMemory() callback functions and the slave uses its own memory management.
      boolean canSerializeFMUstate
      True if the environment can serialize the internal FMU state, meaning that the following functions are supported: fmiDeSerializeFMUstate(), fmiSerialFMUState() and fmiSerializeFMUstateSize() are supported.
      boolean completedIntegratorStepNotNeeded
      True if fmiCompletedIntegratorStep() does not need to be called.
      java.lang.String modelIdentifier
      The underscore separated class name.
      boolean needsExecutionTool
      The FMU contains only what is necessary to communicate with the external tool.
      boolean providesDirectionalDerivative
      True if the fmiGetDirectionalDerivativMethod can be used to compute the direction derivative.
    • Method Summary

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • modelIdentifier

        public java.lang.String modelIdentifier
        The underscore separated class name. This is the only required attribute.
      • canBeInstantiatedOnlyOncePerProcess

        public boolean canBeInstantiatedOnlyOncePerProcess
        True if only one FMU can be instantiated per process. The default value is false.
      • canGetAndSetFMUstate

        public boolean canGetAndSetFMUstate
        If true, then the FMU can get and set state. The follow functions are supported: fmiGetFMUstate(), fmiSetFMUstate(), and fmiFreeFMUstate(). The default value is false.
      • canNotUseMemoryManagementFunctions

        public boolean canNotUseMemoryManagementFunctions
        True if the slave ignores the allocateMemory() and freeMemory() callback functions and the slave uses its own memory management. The default value is false.
      • canSerializeFMUstate

        public boolean canSerializeFMUstate
        True if the environment can serialize the internal FMU state, meaning that the following functions are supported: fmiDeSerializeFMUstate(), fmiSerialFMUState() and fmiSerializeFMUstateSize() are supported. If this flag is true, then the canGetAndSetFMUstate flag must also be true. The default value is false.
      • completedIntegratorStepNotNeeded

        public boolean completedIntegratorStepNotNeeded
        True if fmiCompletedIntegratorStep() does not need to be called. "If it is called, it has no effect". The default value is false, meaning that fmiCompletedIntegratorStep() "must be called after every integration step."
      • needsExecutionTool

        public boolean needsExecutionTool
        The FMU contains only what is necessary to communicate with the external tool. The default value is false.
      • providesDirectionalDerivative

        public boolean providesDirectionalDerivative
        True if the fmiGetDirectionalDerivativMethod can be used to compute the direction derivative. The default value is false.
    • Constructor Detail

      • FMI20ModelExchangeCapabilities

        public FMI20ModelExchangeCapabilities()
        Create an empty Capability.
      • FMI20ModelExchangeCapabilities

        public FMI20ModelExchangeCapabilities​(org.w3c.dom.Element element)
        Create a FMIModelExchangeCapability from an XML Element.
        Parameters:
        element - The XML Element that contains attributes.