LBL logo

Buildings.Utilities.Diagnostics

Library with models to diagnose model errors

Information

This package contains components models for run-time diagnostics. The models in this package can be used to stop a simulation if a test is violated.

Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).

Package Content

Name Description
Buildings.Utilities.Diagnostics.AssertEquality AssertEquality Assert when condition is violated
Buildings.Utilities.Diagnostics.AssertInequality AssertInequality Assert when condition is violated
Buildings.Utilities.Diagnostics.BaseClasses BaseClasses Package with base classes for Buildings.Utilities.Diagnostics

Buildings.Utilities.Diagnostics.AssertEquality Buildings.Utilities.Diagnostics.AssertEquality

Assert when condition is violated

Buildings.Utilities.Diagnostics.AssertEquality

Information

Model that triggers an assert if |u1-u2| > threShold and t > t0.

Extends from BaseClasses.PartialInputCheck (Assert when condition is violated).

Parameters

TypeNameDefaultDescription
TimestartTime0Start time for activating the assert [s]
RealthreShold1E-2Threshold for equality comparison
Stringmessage"Inputs differ by more than ... 

Connectors

TypeNameDescription
input RealInputu1Value to check
input RealInputu2Value to check

Modelica definition

block AssertEquality "Assert when condition is violated" extends BaseClasses.PartialInputCheck(message = "Inputs differ by more than threShold"); equation if noEvent(time > t0) then assert(noEvent(abs(u1 - u2) < threShold), message + "\n" + " time = " + String(time) + "\n" + " u1 = " + String(u1) + "\n" + " u2 = " + String(u2) + "\n" + " abs(u1-u2) = " + String(abs(u1-u2)) + "\n" + " threShold = " + String(threShold)); end if; end AssertEquality;

Buildings.Utilities.Diagnostics.AssertInequality Buildings.Utilities.Diagnostics.AssertInequality

Assert when condition is violated

Buildings.Utilities.Diagnostics.AssertInequality

Information

Model that triggers an assert if u1 > u2 - threShold and t > t0.

Extends from BaseClasses.PartialInputCheck (Assert when condition is violated).

Parameters

TypeNameDefaultDescription
TimestartTime0Start time for activating the assert [s]
RealthreShold0Threshold for equality comparison
Stringmessage"Inputs differ by more than ... 

Connectors

TypeNameDescription
input RealInputu1Value to check
input RealInputu2Value to check

Modelica definition

block AssertInequality "Assert when condition is violated" extends BaseClasses.PartialInputCheck(message = "Inputs differ by more than threShold", threShold = 0); equation if noEvent(time > t0) then assert(noEvent(u1 > u2 - threShold), message + "\n" + " time = " + String(time) + "\n" + " u1 = " + String(u1) + "\n" + " u2 = " + String(u2) + "\n" + " abs(u1-u2) = " + String(abs(u1-u2)) + "\n" + " threShold = " + String(threShold)); end if; end AssertInequality;

http://simulationresearch.lbl.gov/modelica