Source code for twin4build.systems.utils.max_system

# Standard library imports
import datetime
from typing import Optional

# Third party imports
import torch

# Local application imports
import twin4build.core as core
import twin4build.utils.types as tps


[docs] class MaxSystem(core.System): r""" Max System. This class implements a max system for a given system. Args: **kwargs: Additional keyword arguments """ def __init__(self, **kwargs): super().__init__(**kwargs) self.input = {"inputs": tps.Vector()} self.output = {"value": tps.Scalar()}
[docs] def initialize( self, start_time: datetime.datetime, end_time: datetime.datetime, step_size: int, simulator: core.Simulator, ) -> None: pass
[docs] def do_step( self, secondTime: float, dateTime: datetime.datetime, step_size: int, stepIndex: int, ) -> None: self.output["value"].set(torch.max(self.input["inputs"].get()), stepIndex)