Application module: Analytical model ISO/TS 10303-1603:2019(E)
© ISO

Cover page
Table of contents
Copyright
Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions and abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Information requirements
   4.1 Required AM ARMs
   4.2 ARM type definitions
   4.3 ARM entity definitions
   4.4 ARM rule definitions
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 MIM type definitions
     5.2.2 MIM entity definitions

A MIM short names
B Information object registration
C ARM EXPRESS-G   EXPRESS-G
D MIM EXPRESS-G   EXPRESS-G
E Computer interpretable listings
F Change history
Bibliography
Index

4 Information requirements

This clause specifies the information requirements for the Analytical model application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.

NOTE 1  A graphical representation of the information requirements is given in Annex C.

NOTE 2  The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.

This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Analytical_model_arm schema and identifies the necessary external references.

EXPRESS specification:

*)
SCHEMA Analytical_model_arm;
(*

4.1 Required AM ARMs

The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.

EXPRESS specification:

*)
USE FROM Document_structure_arm;    --  ISO/TS 10303-1124

USE FROM Model_parameter_arm;    --  ISO/TS 10303-1703

USE FROM Part_template_arm;    --  ISO/TS 10303-1722

USE FROM Product_view_definition_relationship_arm;    --  ISO/TS 10303-1041

USE FROM Software_arm;    --  ISO/TS 10303-1746

REFERENCE FROM Specification_document_arm    --  ISO/TS 10303-1747
  (get_document_definition);
(*

NOTE 1   The schemas referenced above are specified in the following part of ISO 10303:

Document_structure_arm ISO/TS 10303-1124
Model_parameter_arm ISO/TS 10303-1703
Part_template_arm ISO/TS 10303-1722
Product_view_definition_relationship_arm ISO/TS 10303-1041
Software_arm ISO/TS 10303-1746
Specification_document_arm ISO/TS 10303-1747

NOTE 2   See Annex C, Figures C.1, C.2and C.3 for a graphical representation of this schema.

4.2 ARM type definitions

This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.

4.2.1 am_external_identification_item   EXPRESS-G

The am_external_identification_item type is an extension of the external_identification_item type. It adds the data type Digital_analytical_model_vector_port to the list of alternate data types.

NOTE  The list of entity data types may be extended in application modules that use the constructs of this module.

EXPRESS specification:

*)
TYPE am_external_identification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON external_identification_item WITH
   (Digital_analytical_model_vector_port);
END_TYPE;
(*

4.2.2 am_documented_element_select   EXPRESS-G

The am_documented_element_select type is an extension of the documented_element_select type. It adds the data type Analytical_model_definition to the list of alternate data types.

NOTE  The list of entity data types may be extended in application modules that use the constructs of this module.

EXPRESS specification:

*)
TYPE am_documented_element_select = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON documented_element_select WITH
   (Analytical_model_definition);
END_TYPE;
(*

4.2.3 am_parameter_assignment_select   EXPRESS-G

The am_parameter_assignment_select type is an extension of the parameter_assignment_select type. It adds the data type Analytical_model_parameter to the list of alternate data types.

EXPRESS specification:

*)
TYPE am_parameter_assignment_select = SELECT BASED_ON parameter_assignment_select WITH
   (Analytical_model_parameter);
END_TYPE;
(*

4.2.4 am_property_assignment_select   EXPRESS-G

The am_property_assignment_select type is an extension of the property_assignment_select type. It adds the data type Analytical_model_definition to the list of alternate data types.

EXPRESS specification:

*)
TYPE am_property_assignment_select = SELECT BASED_ON property_assignment_select WITH
   (Analytical_model_definition);
END_TYPE;
(*

4.2.5 analytical_model_port_assignment_select   EXPRESS-G

The analytical_model_port_assignment_select type is an extensible list of alternate data types that allows for the designation of the data type .

NOTE   The list of entity data types may be extended in application modules that use the constructs of this module.

EXPRESS specification:

*)
TYPE analytical_model_port_assignment_select = EXTENSIBLE GENERIC_ENTITY SELECT;
END_TYPE;
(*

4.2.6 port_property_type   EXPRESS-G

A port_property_type lists the valid types of a model port.

EXPRESS specification:

*)
TYPE port_property_type = ENUMERATION OF
   (string_property_type,
    boolean_property_type,
    logical_property_type,
    numeric_property_type,
    physical_property_type);
END_TYPE;
(*

Enumerated item definitions:

string_property_type: specifies a string type;

boolean_property_type: specifies a boolean type;

logical_property_type: specifies a logical type;

numeric_property_type: specifies a numeric type;

physical_property_type: specifies a physical type.

4.2.7 signal_flow_direction   EXPRESS-G

A signal_flow_direction lists the valid qualifiers of signal direction for network simulation.

EXPRESS specification:

*)
TYPE signal_flow_direction = ENUMERATION OF
   (unknown_direction,
    not_applicable,
    output_direction,
    input_direction,
    bidirectional);
END_TYPE;
(*

Enumerated item definitions:

unknown_direction: specifies that direction is unknown;

not_applicable: specifies that direction is not applicable;

output_direction: specifies that direction is output direction;

input_direction: specifies that direction is input direction;

bidirectional: specifies that signal flow is bidirectional.

4.3 ARM entity definitions

This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.

4.3.1 Across_port_variable   EXPRESS-GMapping table

An Across_port_variable is a type of Port_variable. An Across_port_variable maps a unit to an interface point for an Analytical_model_definition and assigns an identifier to the mapping. This standard does not enumerate a fixed list of allowed "across unit". A unit is required.

NOTE    Physical macro-level models require across variables to occur in pairs, but that is not formalized in this standard.

EXAMPLE    A temperature is an "across unit".

EXPRESS specification:

*)
ENTITY Across_port_variable
  SUBTYPE OF (Port_variable);
WHERE
  WR1: EXISTS(SELF\Port_variable.unit_of_measure);
END_ENTITY;
(*

Formal propositions:

WR1: The unit_of_measure inherited from Port_variable shall exist.

4.3.2 Analog_analytical_model_port   EXPRESS-GMapping table

An Analog_analytical_model_port is a type of Analytical_model_port that defines an analog context. An analog context is a context where the domain values are not a discrete, enumerated set of values.

EXPRESS specification:

*)
ENTITY Analog_analytical_model_port
  SUBTYPE OF (Analytical_model_port);
INVERSE
  signal_variable : SET[1:?] OF port_variable FOR associated_port;
END_ENTITY;
(*

Attribute definitions:

signal_variable: an inverse relationship that specifies that the existence of the Analog_analytical_model_port is dependent on the existence of the Port_variable that specifies the Analog_analytical_model_port as its associated_port. There shall be one or more Port_variable for a particular Analog_analytical_model_port.

NOTE    A port may have more than one signal variable because so-called "through" and "across" variables are properties of the same analog port[3].

4.3.3 Port_variable   EXPRESS-GMapping table

A Port_variable is a mapping of a unit to an interface point for an Analytical_model_definition and assigns an identifier to the mapping. A Port_variable may be one of a Through_port_variable, or an Across_port_variable, or a Transform_port_variable.

NOTE    When modelling physical systems at the macroscopic level, energy equations demand the ability to specify a through variable and an across variable for the same port.

EXPRESS specification:

*)
ENTITY Port_variable
  SUPERTYPE OF (ONEOF (Through_port_variable,
                       Across_port_variable,
                       Transform_port_variable));
  associated_port : Analog_analytical_model_port;
  variable_name : STRING;
  unit_of_measure : OPTIONAL Unit;
UNIQUE
  UR1: variable_name, associated_port;
END_ENTITY;
(*

Attribute definitions:

associated_port: specifies the Analog_analytical_model_port that contains this Port_variable.

variable_name: specifies the string that represents an identifier, understandable by the end user, for this Port_variable.

NOTE    The variable_name is documented in the reference_document for the Analytical_model_definition.

unit_of_measure: specifies the string for the descriptive label for the unit of measure of the value of a property associated with the simulated physical phenomenon exchanged through a member of the Port_variable. The value of this attribute need not be specified. The representation of the unit_of_measure is in accordance with ISO 10303-41.

Formal propositions:

UR1: The combination of the variable_name and the associated_port shall be unique within a population of Port_variable.

4.3.4 Analytical_model   EXPRESS-GMapping table

An Analytical_model is a type of Information_product that is a mathematical description of the properties of a system.

EXPRESS specification:

*)
ENTITY Analytical_model
  SUBTYPE OF (Information_product);
UNIQUE
  UR1: SELF\product.id;
END_ENTITY;
(*

Formal propositions:

UR1: The id shall be unique within a population of Analytical_model.

4.3.5 Analytical_model_application   EXPRESS-GMapping table

An Analytical_model_application is a type of Representation. An Analytical_model_application is the association of specific data to an Analytical_model_definition in order to unambiguously characterize some behaviour of a real or imaginary object. The behaviour exhibited by the model in a specific environment or for a range of environments for a specific experiment is an analog of behaviour exhibited by the real or imaginary object when subjected to operational conditions.

NOTE    Specific expectations for the correlation of the behaviour exhibited by the model and the behaviour of the object modelled may be identified by assigning requirements to the model.

EXPRESS specification:

*)
ENTITY Analytical_model_application
  SUBTYPE OF (Representation);
  model_parameter_assignment : OPTIONAL SET[1:?] OF Parameter_assignment;
  model_representation : Analytical_model_definition;
UNIQUE
  UR1: SELF\representation.name;
END_ENTITY;
(*

Attribute definitions:

model_parameter_assignment: Parameter_assignment for the Analytical_model_application. The model_parameter_assignment binds instance data to data slots in the Analytical_model_definition. The value of this attribute need not be specified.

NOTE    For each parameter declared in a model definition, an actual value must be assigned when that model is referenced, unless there is a default assignment included in the source code for the model.

model_representation: specifies the Analytical_model_definition as the basis model for the Analytical_model_application.

Formal propositions:

UR1: The name attribute inherited from Representation shall be unique within a population of Analytical_model_application.

4.3.6 Analytical_model_definition   EXPRESS-GMapping table

An Analytical_model_definition is a type of Information_definition. An Analytical_model_definition is a mathematical description of the properties of a system that uses a particular computer interpretable language and provides a formally specified mechanism to access the description.

NOTE 1   In this part of ISO 10303 an Analytical_model_definition includes the variable declarations of the mathematical description but may not include the assignment of actual values for the variables declared. Assignment of actual values is accomplished in Analytical_model_application.

NOTE 2   This part of ISO 10303 provides support for computer systems to verify type consistency between product data defined in this part of ISO 10303 and product data captured by Analytical_model_definition.

NOTE 3   This part of ISO 10303 describes the interfaces (ports) to an Analytical_model_definition and provides support for type checking of the units used for the parameters that may be assigned values for an Analytical_model_definition.

EXAMPLE    Figure 1 is an example of the case where actual values are not included: the Analytical_model_definition for a resistor that is coded in pseudocode.



Figure 1 —  Analytical_model_definition of a resistor

Figure 1 —  Analytical_model_definition of a resistor

When the Analytical_model_definition is referenced by an Analytical_model_application, literals will be supplied for parameters declared in the interface, and the simulator must ensure that types are compatible.

NOTE 1   Usually the system is exercised in experiments to evaluate the usefulness of the system in the intended application.

NOTE 2   The language syntax and semantics of an Analytical_model_definition are not specified by this part of ISO 10303.

NOTE 3   This part of ISO 10303 provides complete support for exchange of units, including SI units, derived units, and user-declared units.

NOTE 4   This part of ISO 10303 provides complete support for prefixes of units.

EXPRESS specification:

*)
ENTITY Analytical_model_definition
  SUBTYPE OF (Information_definition);
  SELF\product_view_definition.defined_version : Analytical_model_version;
  source_code : SET[1:1] OF Digital_file;
DERIVE
  representation_language : SET[1:1] OF Document_definition := get_document_definition(SELF, 'representation language', 'SPECIFICATION_DOCUMENT_ARM.LANGUAGE_REFERENCE_MANUAL');
INVERSE
  access_mechanism : SET[1:?] OF analytical_model_port FOR accessed_analytical_model;
  parameter : SET[1:?] OF analytical_model_parameter FOR accessed_analytical_model;
  reference_document : document_assignment FOR is_assigned_to;
END_ENTITY;
(*

Attribute definitions:

defined_version: the Analytical_model_version of which the Product_view_definition provides a characterization.

source_code: specifies the role of the Digital_file for an Analytical_model_definition. The source_code contains the source code for the Analytical_model_definition. Figure 1 illustrates how source_code is specified and coded.

representation_language: specifies the Language_reference_manual that defines the semantics and syntax of the computer interpretable strings in which the Analytical_model_definition will be encoded. Figure 1 illustrates how representation_language is specified and coded.

NOTE    Only representation_languages that use characters from the ASCII code are supported by this part of ISO 10303.

access_mechanism: an inverse relationship that specifies that the existence of the Analytical_model_definition is dependent on the existence of the Analytical_model_port that specifies the Analytical_model_definition as its accessed_analytical_model. There shall be one or more Analytical_model_port for an Analytical_model_definition.

parameter: an inverse relationship that specifies that the existence of the Analytical_model_definition is dependent on the existence of the Analytical_model_parameter that specifies the Analytical_model_definition as its accessed_analytical_model. There shall be one or more Analytical_model_parameter for a particular Analytical_model_definition. Figure 1 illustrates the use of the parameter.

reference_document: an inverse relationship that specifies that the existence of the Analytical_model_definition is dependent on the existence of the Document_assignment that specifies the Analytical_model_definition as its is_assigned_to. The reference_document includes interface specifications for Analytical_models of interest to the enterprise.

4.3.7 Analytical_model_make_from_relationship   EXPRESS-GMapping table

An Analytical_model_make_from_relationship is a type of View_definition_relationship. An Analytical_model_make_from_relationship establishes a relationship between an analytical model selected for reuse and the new analytical model that results from the reuse.

EXPRESS specification:

*)
ENTITY Analytical_model_make_from_relationship
  SUBTYPE OF (View_definition_relationship);
  SELF\view_definition_relationship.relating_view RENAMED reusable_model : Analytical_model_definition;
  SELF\view_definition_relationship.related_view RENAMED resultant_model : Analytical_model_definition;
UNIQUE
  UR1: reusable_model, resultant_model;
WHERE
  WR1: reusable_model :<>: resultant_model;
END_ENTITY;
(*

Attribute definitions:

reusable_model: specifies an Analytical_model_definition to be used for the Analytical_model_make_from_relationship.

resultant_model: specifies an Analytical_model_definition that is the result of the reuse for the Analytical_model_make_from_relationship.

Formal propositions:

UR1: The combination of reusable_model and resultant_model shall be unique within a population of Analytical_model_make_from_relationship.

WR1: The reusable_model shall not be the resultant_model.

4.3.8 Analytical_model_parameter   EXPRESS-GMapping table

An Analytical_model_parameter is a type of Applied_independent_property. An Analytical_model_parameter is a formally declared variable of the Analytical_model_definition provided for an external application to populate at execution time in a computing environment.

EXAMPLE    In Spice, the temperature is an Analytical_model_parameter that may be set at the execution time.

EXPRESS specification:

*)
ENTITY Analytical_model_parameter
  SUBTYPE OF (Applied_independent_property);
  SELF\assigned_property.described_element RENAMED accessed_analytical_model : Analytical_model_definition;
UNIQUE
  UR1: SELF\assigned_property.id, accessed_analytical_model;
END_ENTITY;
(*

Attribute definitions:

accessed_analytical_model: specifies the Analytical_model_definition for which the parameter is being established.

Formal propositions:

UR1: The combination of the id and accessed_analytical_model shall be unique within a population of Analytical_model_parameter.

4.3.9 Analytical_model_port   EXPRESS-GMapping table

An Analytical_model_port is a description of an interface point for an Analytical_model_definition. An Analytical_model_port may be an Analytical_model_vector_port, or, additionally, may be one of an Analog_analytical_model_port, or a Digital_analytical_model_port.

NOTE    These points are the points at which a simulator allows a user to stimulate an application of an Analytical_model_definition or to evaluate the response of an application of an Analytical_model_definition to a stimulus in an experiment. In this context, the application includes the reference to the Analytical_model_definition and the literals required for the parameters as provided by a member of Analytical_model_application. A simulator that enforces conservative laws enforces that the energy entering an application of an Analytical_model_definition must be the same as that leaving the same application of the Analytical_model_definition. The structure of the port is not visible merely by accessing this information. The subtypes of this object provide more visibility into the underlying structure as appropriate. Members of the subtype tree of this object are populated as needed by an application in order to disclose the appropriate level of detail. The specialization in the subtypes of this object occurs as a result of being more specific about certain properties of the port.

EXPRESS specification:

*)
ENTITY Analytical_model_port
  SUPERTYPE OF (Analytical_model_vector_port
                ANDOR (ONEOF (Analog_analytical_model_port,
                     Digital_analytical_model_port)));
  accessed_analytical_model : Analytical_model_definition;
  port_name : STRING;
UNIQUE
  UR1: port_name, accessed_analytical_model;
END_ENTITY;
(*

Attribute definitions:

accessed_analytical_model: specifies the Analytical_model_definition that contains this Analytical_model_port.

NOTE 1   Containment, in this case, means that if a member of Analytical_model_definition is deleted from the information base then the members of Analytical_model_port that are contained in that member of Analytical_model_definition are also deleted.

NOTE 2   Containment, in this case, also means that the visibility of the name of an Analytical_model_port is limited to the Analytical_model_definition that is the accessed_analytical_model.

port_name: specifies the string that represents an identifier, understandable by the end user, for this Analytical_model_port.

NOTE 3   The port_name is documented in the reference_document for the Analytical_model_definition.

Formal propositions:

UR1: The combination of the port_name and the accessed_analytical_model shall be unique within a population of Analytical_model_port.

4.3.10 Analytical_model_port_assignment   EXPRESS-GMapping table

An Analytical_model_port_assignment is a relationship established between an Analytical_model_port and an assigned_item. The assignment is established for the purpose of assigning explicit behaviour to a product aspect as accessed through the assigned_item.

EXPRESS specification:

*)
ENTITY Analytical_model_port_assignment;
  assigned_analytical_model_port : Analytical_model_port;
  assigned_item : analytical_model_port_assignment_select;
  associated_analytical_model_application : Analytical_model_application;
UNIQUE
  UR1: assigned_analytical_model_port, assigned_item, associated_analytical_model_application;
WHERE
  WR1: assigned_analytical_model_port.accessed_analytical_model = associated_analytical_model_application.model_representation;
END_ENTITY;
(*

Attribute definitions:

assigned_analytical_model_port: specifies the Analytical_model_port that is to be associated with an assigned item in an Analytical_model_port_assignment.

assigned_item: specifies the item that is to be associated with an Analytical_model_port in an Analytical_model_port_assignment.

associated_analytical_model_application: specifies the role of the Analytical_model_application for the Analytical_model_port_assignment.

Formal propositions:

UR1: The combination of assigned_analytical_model_port, assigned_item and associated_analytical_model_application shall be unique within a population of the Analytical_model_port_assignment.

WR1: The accessed_analytical_model of assigned_analytical_model_port shall be the model_representation of associated_analytical_model_application.

4.3.11 Analytical_model_port_make_from_relationship   EXPRESS-GMapping table

An Analytical_model_port_make_from_relationship is a make from relationship between a reused port and a resultant port that supports the reuse of a model definition in a different context where it is useful to have traceability to the source model.

EXPRESS specification:

*)
ENTITY Analytical_model_port_make_from_relationship;
  associated_make_from : Analytical_model_make_from_relationship;
  reusable_feature : Analytical_model_port;
  resultant_feature : Analytical_model_port;
UNIQUE
  UR1: reusable_feature, resultant_feature;
WHERE
  WR1: reusable_feature :<>: resultant_feature;
  WR2: reusable_feature.accessed_analytical_model :<>: resultant_feature.accessed_analytical_model;
END_ENTITY;
(*

Attribute definitions:

associated_make_from: specifies an Analytical_model_make_from_relationship for the Analytical_model_port_make_from_relationship.

reusable_feature: specifies one role of the Analytical_model_port for the Analytical_model_port_make_from_relationship.

resultant_feature: specifies one role of the Analytical_model_port for the Analytical_model_port_make_from_relationship.

Formal propositions:

UR1: The combination of reusable_feature and resultant_feature shall be unique within a population of Analytical_model_port_make_from_relationship.

WR1: The reusable_feature shall not be the resultant_feature.

WR2: The Analytical_model_definition referenced by the reusable_feature shall not be the Analytical_model_definition referenced by the resultant_feature.

4.3.12 Analytical_model_scalar_port   EXPRESS-GMapping table

An Analytical_model_scalar_port is a type of Analytical_model_vector_port that has a size of exactly one. The Analytical_model_scalar_port is used if there is a requirement to specify the cardinality of the ports associated by a relationship entity.

EXAMPLE    Some examples are in the allocation to a functional unit terminal definition for analysis, or in mapping between a distributed model and a lumped equivalent circuit model, or in mapping to a vector port specified in an external syntax.

EXPRESS specification:

*)
ENTITY Analytical_model_scalar_port
  SUBTYPE OF (Analytical_model_vector_port);
WHERE
  WR1: SIZEOF(SELF\Analytical_model_vector_port.element_port) = 1;
  WR2: SELF = SELF\Analytical_model_vector_port.element_port[1];
END_ENTITY;
(*

Formal propositions:

WR1: The port size shall be one.

WR2: Analytical_model_scalar_port shall contain self as the only item of element_port inherited from Analytical_model_vector_port.

4.3.13 Analytical_model_vector_port   EXPRESS-GMapping table

An Analytical_model_vector_port is a type of Analytical_model_port that has a size that may be greater than one. An Analytical_model_vector_port may be an Analytical_model_scalar_port. This part of ISO 10303 does not predefine the elements of a vector port.

NOTE    The cardinality of the structured port is known, and a list of names is specified for it.

EXAMPLE    Examples are bus ports, multi-degrees-of-freedom connections, microwave domain modes, and address and data bus definitions.

EXPRESS specification:

*)
ENTITY Analytical_model_vector_port
  SUPERTYPE OF (Analytical_model_scalar_port)
  SUBTYPE OF (Analytical_model_port);
  element_port : LIST[1:?] OF Analytical_model_scalar_port;
DERIVE
  size : INTEGER := SIZEOF(element_port);
END_ENTITY;
(*

Attribute definitions:

element_port: specifies a role of the Analytical_model_scalar_port for the Analytical_model_vector_port.

size: specifies the integer for the cardinality of the Analytical_model_vector_port.

4.3.14 Analytical_model_version   EXPRESS-GMapping table

An Analytical_model_version is a type of Information_version that provides a string indicating the revision of the analytical model for configuration control purposes.

EXPRESS specification:

*)
ENTITY Analytical_model_version
  SUBTYPE OF (Information_version);
  SELF\product_version.of_product : Analytical_model;
END_ENTITY;
(*

Attribute definitions:

of_product: specifies a role of the Analytical_model for the Analytical_model_version.

4.3.15 Digital_analytical_model_port   EXPRESS-GMapping table

A Digital_analytical_model_port is a type of Analytical_model_port that defines a digital context. A Digital_analytical_model_port is a Digital_analytical_model_vector_port.

NOTE 1   In this part of ISO 10303, a high impedance port state is considered to be a value assigned during simulation and is not a type declaration. It is represented by a string value assigned in accordance with the language reference manual. In the case that four-state logic is used for simulation, that is "zero", "one", "unknown", "inactive" the property type shall be explicitly declared as a string because ISO 10303-11 does not define four-state logic. Other more complex valued logic shall also use a string property type declaration.

NOTE 2   The Signal_specification provides a mechanism to assign specific experimental values captured in Signal_property to an application of a Digital_analytical_model_port in a functional netlist context. Specifically, the Signal_specification applies values to a Functional_unit_terminal which provides the required facility to declare the logical value of the terminal independent of the signal value on the network node.

EXAMPLE    A Signal_specification may declare that the Functional_unit_terminal with an identifier of "output valid" is "inactive" for the same event, or, at the same time, mark that the Signal_specification for the network node the terminal is assigned to is declared to be a "true" value.

NOTE 3   The permitted combinations of relationships between node value and terminal values is defined in the language reference manual for the simulation environment and is outside the scope of this part of ISO 10303.

NOTE 4   The Signal_property provides a mechanism to exchange experimental values of the time or event dependent data.

EXPRESS specification:

*)
ENTITY Digital_analytical_model_port ABSTRACT
  SUPERTYPE OF (Digital_analytical_model_vector_port)
  SUBTYPE OF (Analytical_model_port);
  nominal_signal_flow_direction : signal_flow_direction;
  port_type : port_property_type;
WHERE
  WR1: not_applicable <> nominal_signal_flow_direction;
  WR2: numeric_property_type <> port_type;
  WR3: physical_property_type <> port_type;
  WR4: unknown_direction <> nominal_signal_flow_direction;
END_ENTITY;
(*

Attribute definitions:

nominal_signal_flow_direction: specifies the signal_flow_direction for the Digital_analytical_model_port. The nominal_signal_flow_direction specifies either bidirectional, input_direction, or output_direction for the Digital_analytical_model_port.

port_type: specifies the port_property_type for the Digital_analytical_model_port. The port_type specifies one of a boolean_property_type, a logical_property_type, or a string_property_type.

Formal propositions:

WR1: not_applicable is not an allowed value for nominal_signal_flow_direction.

WR2: numeric_property_type is not an allowed value for port_type.

WR3: physical_property_type is not an allowed value for port_type.

WR4: unknown_direction is not an allowed value for nominal_signal_flow_direction.

4.3.16 Digital_analytical_model_scalar_port   EXPRESS-GMapping table

A Digital_analytical_model_scalar_port is a type of Digital_analytical_model_vector_port and a type of Analytical_model_scalar_port. A Digital_analytical_model_scalar_port cardinality is inherited from Analytical_model_scalar_port and the data typing is inherited from Digital_analytical_model_vector_port.

EXPRESS specification:

*)
ENTITY Digital_analytical_model_scalar_port
  SUBTYPE OF (Digital_analytical_model_vector_port, Analytical_model_scalar_port);
END_ENTITY;
(*

4.3.17 Digital_analytical_model_vector_port   EXPRESS-GMapping table

A Digital_analytical_model_vector_port is a type of Digital_analytical_model_port and a type of Analytical_model_vector_port that inherits cardinality from Analytical_model_vector_port and context from Digital_analytical_model_port. A Digital_analytical_model_vector_port provides the capability to exchange port vectors in the digital domain.

EXPRESS specification:

*)
ENTITY Digital_analytical_model_vector_port
  SUBTYPE OF (Digital_analytical_model_port, Analytical_model_vector_port);
INVERSE
  data_encoding_method : external_source_identification FOR item;
WHERE
  WR1: SELF\Digital_analytical_model_port.port_type = port_property_type.string_property_type;
END_ENTITY;
(*

Attribute definitions:

data_encoding_method: specifies an inverse relationship where the existence of the Digital_analytical_model_vector_port is dependent on the existence of the External_source_identification that specifies the Digital_analytical_model_vector_port as its item.

Formal propositions:

WR1: The port_type inherited from Digital_analytical_model_port shall be string_property_type.

4.3.18 Reference_part_template_for_analytical_model   EXPRESS-GMapping table

A Reference_part_template_for_analytical_model is the association of a template definition with an Analytical_model_definition to enable referencing explicit product data including reference geometric model for a simulation model.

NOTE    The simulation model parameters and ports may be related back to the reference template definition properties to informally ground the simulation model in the geometric context.

EXPRESS specification:

*)
ENTITY Reference_part_template_for_analytical_model;
  template : Template_definition;
  analytical_representation : Analytical_model_definition;
UNIQUE
  UR1: template;
END_ENTITY;
(*

Attribute definitions:

template: specifies the Template_definition for the Reference_part_template_for_analytical_model.

analytical_representation: specifies the Analytical_model_definition for the Reference_part_template_for_analytical_model.

Formal propositions:

UR1: The template shall be unique within a population of Reference_part_template_for_analytical_models.

4.3.19 Terminal_pair_port_equivalence_relationship   EXPRESS-GMapping table

A Terminal_pair_port_equivalence_relationship is the association between a pair of scalar ports and a single distributed port that declares an equivalence relationship in some simulation context.

EXPRESS specification:

*)
ENTITY Terminal_pair_port_equivalence_relationship;
  equivalent_port : Analytical_model_port;
  scalar_ports : Analytical_model_vector_port;
WHERE
  WR1: (SIZEOF(scalar_ports.element_port) = 2);
END_ENTITY;
(*

Attribute definitions:

equivalent_port: specifies the Analytical_model_port that represents the single distributed port for the Terminal_pair_port_equivalence_relationship.

scalar_ports: specifies the two Analytical_model_scalar_port in the ordered sequence for the Terminal_pair_port_equivalence_relationship. The second scalar port is always the reference port. Other details depend on the specific domain of the Analytical_model_definition.

EXAMPLE    Port "INPUT" of a microwave coaxial filter model is the equivalent_port for this example. Port "INPUT center pin" is the first Analytical_model_scalar_port for this example. Port "INPUT shield" is the second Analytical_model_scalar_port for this example.

Formal propositions:

WR1: Size of element_port of scalar_ports shall be two.

4.3.20 Through_port_variable   EXPRESS-GMapping table

A Through_port_variable is a type of Port_variable. A Through_port_variable maps a unit that is identified as a "through unit" to an interface point for an Analytical_model_definition and assigns an identifier to the mapping. This standard does not enumerate a fixed list of allowed "through unit". A unit is required.

EXAMPLE    An Electric_current_unit is a "through unit". A temperature is an "across unit". Reference: ISO 10303-41.

EXPRESS specification:

*)
ENTITY Through_port_variable
  SUBTYPE OF (Port_variable);
WHERE
  WR1: EXISTS(SELF\Port_variable.unit_of_measure);
END_ENTITY;
(*

Formal propositions:

WR1: The unit_of_measure inherited from Port_variable shall exist.

4.3.21 Transform_port_variable   EXPRESS-GMapping table

A Transform_port_variable is a type of Port_variable. A Transform_port_variable supports the creation of directed graph based definitions if the nominal_signal_flow_direction is limited to input or output only. A Transform_port_variable may map a unit to an interface point for an Analytical_model_definition. This standard does not enumerate a fixed list of allowed "transform unit".

EXAMPLE    A Laplace transform based Analytical_model_definition would use a Transform_port_variable as the Port_variable for input and output ports.

EXPRESS specification:

*)
ENTITY Transform_port_variable
  SUBTYPE OF (Port_variable);
  nominal_signal_flow_direction : signal_flow_direction;
WHERE
  WR1: signal_flow_direction.not_applicable <> nominal_signal_flow_direction;
  WR2: signal_flow_direction.bidirectional <> nominal_signal_flow_direction;
END_ENTITY;
(*

Attribute definitions:

nominal_signal_flow_direction: specifies either input_direction, output_direction, or unknown_direction for the Transform_port_variable.

Formal propositions:

WR1: not_applicable is not an allowed value for nominal_signal_flow_direction.

WR2: bidirectional is not an allowed value for nominal_signal_flow_direction.

4.4 ARM rule definitions

This subclause specifies the ARM rules for this module. The ARM rules and definitions are specified below.

4.4.1 analytical_model_version_constraint

The rule analytical_model_version_constraint constrains the use of Analytical_model as of_product to Analytical_model_version only.

EXPRESS specification:

*)
RULE analytical_model_version_constraint FOR
(product_version);
WHERE
  WR1: SIZEOF(QUERY(pv <* product_version | (NOT ('ANALYTICAL_MODEL_ARM.ANALYTICAL_MODEL_VERSION' IN TYPEOF(pv))) AND ('ANALYTICAL_MODEL_ARM.ANALYTICAL_MODEL' IN TYPEOF(pv.of_product)))) = 0;
END_RULE;
(*

Argument definitions:

product_version : the set of all instances of product_version.

Formal propositions:

WR1: There shall not be any instance of Product_version that refers to an Analytical_model as of_product and is not an instance of Analytical_model_version.

4.4.2 analytical_model_definition_constraint

The rule analytical_model_definition_constraint constrains the use of Analytical_model_version as defined_version to Analytical_model_definition only.

EXPRESS specification:

*)
RULE analytical_model_definition_constraint FOR
(product_view_definition);
WHERE
  WR1: SIZEOF(QUERY(pvd <* product_view_definition | (NOT ('ANALYTICAL_MODEL_ARM.ANALYTICAL_MODEL_DEFINITION' IN TYPEOF(pvd))) AND ('ANALYTICAL_MODEL_ARM.ANALYTICAL_MODEL_VERSION' IN TYPEOF(pvd.defined_version)))) = 0;
END_RULE;
(*

Argument definitions:

product_view_definition : the set of all instances of product_view_definition.

Formal propositions:

WR1: There shall not be any instance of Product_view_definition that refers to an Analytical_model_version as defined_version and is not an instance of Analytical_model_definition.



*)
END_SCHEMA;  -- Analytical_model_arm
(*


© ISO 2019 — All rights reserved