modelZoneWithInputsValidationNonLinear

Model to validate the linearization method by simulating both the original model and the obtained state space model. This model contains all buildings components of IDEAS

Extends from Examples.ZoneWithInputsLinearise.

Information

Notice that this model has the commando Linearise, simulate and plot. The model being linearised is IDEAS.LIDEAS.Examples.ZoneLinearise. The linearisation creates 3 text files and 1 mat file in the simulation folder: uNames_ZoneLinearise.txt (inputs name), xNames_ZoneLinearise.txt (state names), yNames_ZoneLinearise.txt (output names) and ssm_ZoneLinearise.mat (state space model). The name of the states were manually copied into the model to retrieve the initial state values. Also the input names were manually copied to feed their value to the SSM model included in this example. However, the input names winBusIn, weaBus, ctrlInput, and prescribed were renamed to winBusOut, weaBusOut, ctrlInputTest, and prescribedOut to coincide with the variables created in the model.

Notice that the error between the state space model output and the zone output is rather large. This is unusual and it is probably accentuated by the fact that the model is not very physical is (no roof, random dimensions, ...). IDEAS.LIDEAS.Validation.Case900ValidationNonLinearInputs shows that the error remains limited for more realistic models.

Parameters

TypeNameDefaultDescription
StringfileNameModelica.Utilities.Files.loadResource("modelica://IDEAS/Resources/LIDEAS/ssm_ZoneWithInputsLinearise.mat")
IntegernStaBsize[1]Number of states
IntegernInpBsize[2]Number of inputs
IntegernPreInpsize(preInp, 1)Number of precomputed inputs
IntegernOutCsize[1]Number of precomputed outputs

Components

TypeNameDefaultDescription
Modelica.Blocks.Sources.Sine[2]occQRadFake occupancy gains
Modelica.Blocks.Sources.Sine[2]occQConFake occupancy gains
Components.BaseClasses.PrescribedprescribedOutPrescribed inputs which do not depend on the model states value (e.g. heat flow from occupancy)
Modelica.Blocks.Sources.RealExpression[64]preInpPrecomputed input values
Modelica.Blocks.Continuous.StateSpacestateSpaceState space model
Modelica.Blocks.Sources.Sine[nZones]ctrlInputTestConFake occupancy gains
Modelica.Blocks.Sources.Sine[nZones]ctrlInputTestRadFake occupancy gains
Modelica.Blocks.Sources.Sine[nEmb]ctrlInputTestEmbFake occupancy gains
Modelica.Blocks.Math.UnitConversions.To_degC[nZones]TZon_ssmZones temperature from the SSM
Modelica.Blocks.Math.UnitConversions.To_degC[nZones]TZonZones temperature from the zone models
Modelica.Blocks.Math.Add[nZones]errDifference between the temperature of the zone models and the state space model outputs

Revisions

  • May 29, 2022, by Filip Jorissen:
    Using full path for readMatrixSize for OM compatibility for issue #1254.
  • December 11, 2019, by Filip Jorissen:
    Revised input list for issue #1089.
  • August 21, 2018 by Damien Picard:
    Adapt the name of the states which have changed due to the change of medium to IDEAS.Media.Specialized.DryAir.
  • May 15, 2018 by Damien Picard:
    First implementation<\br>