ModelComponent

class mlfmu.types.fmu_component.ModelComponent(*, name: str, version: str = '0.0.1', author: str | None = None, description: str | None = '', copyright: str | None = None, license: str | None = None, inputs: list[InputVariable] = [], outputs: list[OutputVariable] = [], parameters: list[InputVariable] = [], states: list[InternalState] = [], usesTime: bool | None = False, stateInitializationReuse: bool = False)

Bases: BaseModelConfig

Pydantic model representing a simulation model component.

Used to generate the JSON schema for the model interface. Defines the structure of the FMU and how the inputs and outputs of the ONNX model correspond to the FMU variables.

__init__(**data: Any) None

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Methods

__init__(**data)

Create a new model by parsing and validating input data from keyword arguments.

construct([_fields_set])

copy(*[, include, exclude, update, deep])

Returns a copy of the model.

dict(*[, include, exclude, by_alias, ...])

from_orm(obj)

json(*[, include, exclude, by_alias, ...])

model_construct([_fields_set])

Creates a new instance of the Model class with validated data.

model_copy(*[, update, deep])

Usage docs: https://docs.pydantic.dev/2.10/concepts/serialization/#model_copy

model_dump(*[, mode, include, exclude, ...])

Usage docs: https://docs.pydantic.dev/2.10/concepts/serialization/#modelmodel_dump

model_dump_json(*[, indent, include, ...])

Usage docs: https://docs.pydantic.dev/2.10/concepts/serialization/#modelmodel_dump_json

model_json_schema([by_alias, ref_template, ...])

Generates a JSON schema for a model class.

model_parametrized_name(params)

Compute the class name for parametrizations of generic classes.

model_post_init(_BaseModel__context)

Override this method to perform additional initialization after __init__ and model_construct.

model_rebuild(*[, force, raise_errors, ...])

Try to rebuild the pydantic-core schema for the model.

model_validate(obj, *[, strict, ...])

Validate a pydantic model instance.

model_validate_json(json_data, *[, strict, ...])

Usage docs: https://docs.pydantic.dev/2.10/concepts/json/#json-parsing

model_validate_strings(obj, *[, strict, context])

Validate the given object with string data against the Pydantic model.

parse_file(path, *[, content_type, ...])

parse_obj(obj)

parse_raw(b, *[, content_type, encoding, ...])

schema([by_alias, ref_template])

schema_json(*[, by_alias, ref_template])

update_forward_refs(**localns)

validate(value)

Attributes

model_computed_fields

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_extra

Get extra fields set during validation.

model_fields

model_fields_set

Returns the set of fields that have been explicitly set on this model instance.

name

The name of the simulation model.

version

The version number of the model.

author

Name or email of the model's author.

description

Short description of the model.

copyright

Copyright line for use in full license text.

license

License text or file name (relative to source files).

inputs

List of input signals of the simulation model.

outputs

List of output signals of the simulation model.

parameters

List of parameter signals of the simulation model.

states

Internal states that will be stored in the simulation model's memory, these will be passed as inputs to the agent in the next time step.

uses_time

Whether the agent consumes time data from co-simulation algorithm.

state_initialization_reuse

Whether variables are allowed to be reused for state initialization when initialization_variable is used for state initialization.

author: str | None

Name or email of the model’s author. Optional.

copyright: str | None

Copyright line for use in full license text. Optional.

description: str | None

Short description of the model. Defaults to an empty string.

inputs: list[InputVariable]

List of input signals of the simulation model. Defaults to an empty list.

license: str | None

License text or file name (relative to source files). Optional.

model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str

The name of the simulation model.

outputs: list[OutputVariable]

List of output signals of the simulation model. Defaults to an empty list.

parameters: list[InputVariable]

List of parameter signals of the simulation model. Defaults to an empty list.

state_initialization_reuse: bool

Whether variables are allowed to be reused for state initialization when initialization_variable is used for state initialization. If set to true the variable referred to in initialization_variable will be repeated for the state initialization until the entire state is initialized. Defaults to False.

states: list[InternalState]

Internal states that will be stored in the simulation model’s memory, these will be passed as inputs to the agent in the next time step. Defaults to an empty list.

uses_time: bool | None

Whether the agent consumes time data from co-simulation algorithm. Defaults to False.

version: str

The version number of the model. Defaults to “0.0.1”.