Buildings.Utilities.Math.Examples

Collection of models that illustrate model use and test models

Information

This package contains examples for the use of models that can be found in Buildings.Utilities.Math.

Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).

Package Content

Name Description
Buildings.Utilities.Math.Examples.Average Average Test model for average function
Buildings.Utilities.Math.Examples.BesselJ0 BesselJ0 Test model for besselJ0 function
Buildings.Utilities.Math.Examples.BesselJ1 BesselJ1 Test model for besselJ1 function
Buildings.Utilities.Math.Examples.BesselY0 BesselY0 Test model for besselY0 function
Buildings.Utilities.Math.Examples.BesselY1 BesselY1 Test model for besselY1 function
Buildings.Utilities.Math.Examples.Bicubic Bicubic Test model for bicubic function
Buildings.Utilities.Math.Examples.Binomial Binomial Test model for binomial function
Buildings.Utilities.Math.Examples.Biquadratic Biquadratic Test model for biquadratic function
Buildings.Utilities.Math.Examples.BooleanReplicator BooleanReplicator Test model for boolean replicator
Buildings.Utilities.Math.Examples.ExponentialIntegralE1 ExponentialIntegralE1 Test model for exponentialIntegralE1 function
Buildings.Utilities.Math.Examples.Factorial Factorial Test model for factorial function
Buildings.Utilities.Math.Examples.FallingFactorial FallingFactorial Test model for falling factorial function
Buildings.Utilities.Math.Examples.IntegerReplicator IntegerReplicator Test model for integer replicator
Buildings.Utilities.Math.Examples.IntegratorWithReset IntegratorWithReset Test model for integrator with reset
Buildings.Utilities.Math.Examples.Interpolate Interpolate Example model of the Interpolate block
Buildings.Utilities.Math.Examples.InverseXRegularized InverseXRegularized Test model for inverseXRegularized function
Buildings.Utilities.Math.Examples.Polynomial Polynomial Test model for ploynominal function
Buildings.Utilities.Math.Examples.PowerLinearized PowerLinearized Test model for powerLinearized function
Buildings.Utilities.Math.Examples.QuadraticLinear QuadraticLinear Test model for quadraticLinear function
Buildings.Utilities.Math.Examples.RegNonZeroPower RegNonZeroPower Test model for regNonZeroPower function
Buildings.Utilities.Math.Examples.SmoothBlocks SmoothBlocks Test model for smooth min and smooth max functions
Buildings.Utilities.Math.Examples.SmoothExponential SmoothExponential Test model for smoothExponential function
Buildings.Utilities.Math.Examples.SmoothHeaviside SmoothHeaviside Test model for smoothHeavisidefunction
Buildings.Utilities.Math.Examples.SmoothLimit SmoothLimit Test model for smooth limit
Buildings.Utilities.Math.Examples.SmoothMin SmoothMin Test model for smooth minimum
Buildings.Utilities.Math.Examples.Splice Splice Test model for splice
Buildings.Utilities.Math.Examples.VectorFunctions VectorFunctions Test model for functions that take a vector as argument

Buildings.Utilities.Math.Examples.Average Buildings.Utilities.Math.Examples.Average

Test model for average function

Buildings.Utilities.Math.Examples.Average

Information

This model tests the implementation of Buildings.Utilities.Math.Average.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Average "Test model for average function" extends Modelica.Icons.Example; Buildings.Utilities.Math.Average average(nin=2); Modelica.Blocks.Sources.Ramp x1(duration=1); Modelica.Blocks.Sources.Ramp x2( height=2, duration=1, offset=2); Modelica.Blocks.Routing.Multiplex2 multiplex2_1; equation connect(x1.y, multiplex2_1.u1[1]); connect(x2.y, multiplex2_1.u2[1]); connect(multiplex2_1.y, average.u); end Average;

Buildings.Utilities.Math.Examples.BesselJ0 Buildings.Utilities.Math.Examples.BesselJ0

Test model for besselJ0 function

Buildings.Utilities.Math.Examples.BesselJ0

Information

This model tests the implementation of Buildings.Utilities.Math.BesselJ0.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model BesselJ0 "Test model for besselJ0 function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x(duration=30, height=30) "Real signal"; Buildings.Utilities.Math.BesselJ0 J0 "Bessel function J0"; equation connect(x.y, J0.u); end BesselJ0;

Buildings.Utilities.Math.Examples.BesselJ1 Buildings.Utilities.Math.Examples.BesselJ1

Test model for besselJ1 function

Buildings.Utilities.Math.Examples.BesselJ1

Information

This model tests the implementation of Buildings.Utilities.Math.BesselJ1.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model BesselJ1 "Test model for besselJ1 function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x(duration=30, height=30) "Real signal"; Buildings.Utilities.Math.BesselJ1 J1 "Bessel function J1"; equation connect(x.y, J1.u); end BesselJ1;

Buildings.Utilities.Math.Examples.BesselY0 Buildings.Utilities.Math.Examples.BesselY0

Test model for besselY0 function

Buildings.Utilities.Math.Examples.BesselY0

Information

This model tests the implementation of Buildings.Utilities.Math.BesselY0.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model BesselY0 "Test model for besselY0 function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x(duration=30, height=30) "Real signal"; Buildings.Utilities.Math.BesselY0 Y0 "Bessel function Y0"; equation connect(x.y, Y0.u); end BesselY0;

Buildings.Utilities.Math.Examples.BesselY1 Buildings.Utilities.Math.Examples.BesselY1

Test model for besselY1 function

Buildings.Utilities.Math.Examples.BesselY1

Information

This model tests the implementation of Buildings.Utilities.Math.BesselY1.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model BesselY1 "Test model for besselY1 function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x(duration=30, height=30) "Real signal"; Buildings.Utilities.Math.BesselY1 Y1 "Bessel function Y1"; equation connect(x.y, Y1.u); end BesselY1;

Buildings.Utilities.Math.Examples.Bicubic Buildings.Utilities.Math.Examples.Bicubic

Test model for bicubic function

Buildings.Utilities.Math.Examples.Bicubic

Information

This model tests the implementation of Buildings.Utilities.Math.Bicubic.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Bicubic "Test model for bicubic function" extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Modelica.Blocks.Sources.Ramp x2( height=2, duration=1, offset=2); Buildings.Utilities.Math.Bicubic bicubic(a={1,2,3,4,5,6,7,8,9,10}); equation connect(x1.y, bicubic.u1); connect(x2.y, bicubic.u2); end Bicubic;

Buildings.Utilities.Math.Examples.Binomial Buildings.Utilities.Math.Examples.Binomial

Test model for binomial function

Buildings.Utilities.Math.Examples.Binomial

Information

This model tests the implementation of Buildings.Utilities.Math.Binomial.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Binomial "Test model for binomial function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp k( startTime=0.5, height=10.4, duration=10.4) "Real signal"; Modelica.Blocks.Math.RealToInteger rea2Int "Convert to rounded integer"; Buildings.Utilities.Math.Binomial bin "Binomial coefficient"; Modelica.Blocks.Sources.IntegerConstant n(k=15) "Size of set"; equation connect(k.y, rea2Int.u); connect(rea2Int.y, bin.k); connect(n.y, bin.n); end Binomial;

Buildings.Utilities.Math.Examples.Biquadratic Buildings.Utilities.Math.Examples.Biquadratic

Test model for biquadratic function

Buildings.Utilities.Math.Examples.Biquadratic

Information

This model tests the implementation of Buildings.Utilities.Math.Biquadratic.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Biquadratic "Test model for biquadratic function" extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Modelica.Blocks.Sources.Ramp x2( height=2, duration=1, offset=2); Buildings.Utilities.Math.Biquadratic biquadratic(a={1,2,3,4,5,6}); equation connect(x1.y, biquadratic.u1); connect(x2.y, biquadratic.u2); end Biquadratic;

Buildings.Utilities.Math.Examples.BooleanReplicator Buildings.Utilities.Math.Examples.BooleanReplicator

Test model for boolean replicator

Buildings.Utilities.Math.Examples.BooleanReplicator

Information

This model tests the implementation of Buildings.Utilities.Math.BooleanReplicator.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model BooleanReplicator "Test model for boolean replicator" extends Modelica.Icons.Example; Modelica.Blocks.Sources.BooleanTable booTab(table={100,200,400,500}) "Boolean input signal"; Buildings.Utilities.Math.BooleanReplicator booRep(nout= 4) "Replicates boolean values"; equation connect(booTab.y, booRep.u); end BooleanReplicator;

Buildings.Utilities.Math.Examples.ExponentialIntegralE1 Buildings.Utilities.Math.Examples.ExponentialIntegralE1

Test model for exponentialIntegralE1 function

Buildings.Utilities.Math.Examples.ExponentialIntegralE1

Information

This model tests the implementation of Buildings.Utilities.Math.ExponentialIntegralE1.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model ExponentialIntegralE1 "Test model for exponentialIntegralE1 function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x(duration=30, height=30) "Real signal"; Buildings.Utilities.Math.ExponentialIntegralE1 E1 "Exponential integral E1"; equation connect(x.y, E1.u); end ExponentialIntegralE1;

Buildings.Utilities.Math.Examples.Factorial Buildings.Utilities.Math.Examples.Factorial

Test model for factorial function

Buildings.Utilities.Math.Examples.Factorial

Information

This model tests the implementation of Buildings.Utilities.Math.Factorial.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Factorial "Test model for factorial function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x( startTime=0.5, height=12.4, duration=12.4) "Real signal"; Buildings.Utilities.Math.Factorial fac "Factorial"; Modelica.Blocks.Math.RealToInteger rea2Int "Conversion to rounded integer"; equation connect(rea2Int.y, fac.u); connect(x.y, rea2Int.u); end Factorial;

Buildings.Utilities.Math.Examples.FallingFactorial Buildings.Utilities.Math.Examples.FallingFactorial

Test model for falling factorial function

Buildings.Utilities.Math.Examples.FallingFactorial

Information

This model tests the implementation of Buildings.Utilities.Math.FallingFactorial.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model FallingFactorial "Test model for falling factorial function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp k( startTime=0.5, height=10.4, duration=10.4) "Real signal"; Modelica.Blocks.Math.RealToInteger rea2Int "Conversion to rounded integer"; Buildings.Utilities.Math.FallingFactorial falFac "Falling factorial"; Modelica.Blocks.Sources.IntegerConstant n(k=13) "Falling factorial power"; equation connect(k.y, rea2Int.u); connect(rea2Int.y, falFac.k); connect(n.y, falFac.n); end FallingFactorial;

Buildings.Utilities.Math.Examples.IntegerReplicator Buildings.Utilities.Math.Examples.IntegerReplicator

Test model for integer replicator

Buildings.Utilities.Math.Examples.IntegerReplicator

Information

This model tests the implementation of Buildings.Utilities.Math.IntegerReplicator.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model IntegerReplicator "Test model for integer replicator" extends Modelica.Icons.Example; Modelica.Blocks.Sources.IntegerTable intTab(table=[0,1;1, 4;1.5, 5;2, 6]) "Integer input signal"; Buildings.Utilities.Math.IntegerReplicator intRep(nout= 2) "Replicates integer values"; equation connect(intTab.y, intRep.u); end IntegerReplicator;

Buildings.Utilities.Math.Examples.IntegratorWithReset Buildings.Utilities.Math.Examples.IntegratorWithReset

Test model for integrator with reset

Buildings.Utilities.Math.Examples.IntegratorWithReset

Information

This model tests the implementation of Buildings.Utilities.Math.IntegratorWithReset with and without reset, and with different start values and reset values.

The integrator intWitRes1 is triggered by a sample trigger which becomes true at t=0, while intWitRes2 is triggered by a boolean pulse with is true at t=0. Hence, intWitRes1 starts with y(0)=y_reset while intWitRes2 starts with y(0)=y_start.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model IntegratorWithReset "Test model for integrator with reset" extends Modelica.Icons.Example; Modelica.Blocks.Sources.Constant cons(k=10) "Constant as source term"; Buildings.Utilities.Math.IntegratorWithReset intWitRes1( y_start=5, reset=Buildings.Types.Reset.Parameter, k=0.5, y_reset=2) "Integrator with reset"; Buildings.Utilities.Math.IntegratorWithReset intWitRes2( y_reset=10, y_start=-5, reset=Buildings.Types.Reset.Input, k=0.5) "Integrator with reset and y_reset = 2"; Modelica.Blocks.Sources.BooleanPulse booleanPulse(width=50, period=0.2) "Boolean pulse"; Buildings.Utilities.Math.IntegratorWithReset intNoReset( reset=Buildings.Types.Reset.Disabled, k=0.5, y_start=1) "Integrator without reset"; Modelica.Blocks.Sources.SampleTrigger sampleTrigger(period=0.2) "Sample trigger"; Modelica.Blocks.Sources.Ramp ramp( height=-1, duration=1, offset=-2) "Ramp as a source term"; Buildings.Utilities.Math.IntegratorWithReset intDef "Integrator with default values"; equation connect(cons.y, intWitRes1.u); connect(intNoReset.u, cons.y); connect(cons.y, intWitRes2.u); connect(sampleTrigger.y, intWitRes1.trigger); connect(booleanPulse.y, intWitRes2.trigger); connect(ramp.y, intWitRes2.y_reset_in); connect(cons.y, intDef.u); end IntegratorWithReset;

Buildings.Utilities.Math.Examples.Interpolate Buildings.Utilities.Math.Examples.Interpolate

Example model of the Interpolate block

Buildings.Utilities.Math.Examples.Interpolate

Information

This example is the same as Buildings.Utilities.Math.Functions.Examples.Interpolate except that the block is used in place of the function.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Parameters

TypeNameDefaultDescription
Realtable[:, :][-50, -0.08709; -25, -0.0615...Table of mass flow rate in kg/s (second column) as a function of pressure difference in Pa (first column)
Realxd[:]table[:, 1]x-axis support points
Realyd[size(xd, 1)]table[:, 2]y-axis support points
Reald[size(xd, 1)]Buildings.Utilities.Math.Fun...Derivatives at the support points

Modelica definition

model Interpolate "Example model of the Interpolate block" extends Modelica.Icons.Example; parameter Real table[:,:]=[-50,-0.08709; -25,-0.06158; -10,-0.03895; -5,-0.02754; -3,-0.02133; -2,-0.01742; -1,-0.01232; 0,0; 1,0.01232; 2,0.01742; 3,0.02133; 4.5,0.02613; 50,0.02614] "Table of mass flow rate in kg/s (second column) as a function of pressure difference in Pa (first column)"; parameter Real[:] xd=table[:,1] "x-axis support points"; parameter Real[size(xd, 1)] yd=table[:,2] "y-axis support points"; parameter Real[size(xd, 1)] d = Buildings.Utilities.Math.Functions.splineDerivatives( x=xd, y=yd, ensureMonotonicity=true) "Derivatives at the support points"; Buildings.Utilities.Math.Interpolate int( xd=xd, yd=yd, d=d) "Interpolate block"; Modelica.Blocks.Sources.Ramp ramp( duration=500, height=100, offset=-50) "Ramp from -50Pa to +50Pa"; equation connect(ramp.y, int.u); end Interpolate;

Buildings.Utilities.Math.Examples.InverseXRegularized Buildings.Utilities.Math.Examples.InverseXRegularized

Test model for inverseXRegularized function

Buildings.Utilities.Math.Examples.InverseXRegularized

Information

This model tests the implementation of Buildings.Utilities.Math.InverseXRegularized.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model InverseXRegularized "Test model for inverseXRegularized function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1, height=2, offset=-1); Buildings.Utilities.Math.InverseXRegularized inverseXRegularized(delta=0.1); equation connect(x1.y, inverseXRegularized.u); end InverseXRegularized;

Buildings.Utilities.Math.Examples.Polynomial Buildings.Utilities.Math.Examples.Polynomial

Test model for ploynominal function

Buildings.Utilities.Math.Examples.Polynomial

Information

This model tests the implementation of Buildings.Utilities.Math.Polynomial.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Polynomial "Test model for ploynominal function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Buildings.Utilities.Math.Polynomial polynominal(a={1,2}); equation connect(x1.y, polynominal.u); end Polynomial;

Buildings.Utilities.Math.Examples.PowerLinearized Buildings.Utilities.Math.Examples.PowerLinearized

Test model for powerLinearized function

Buildings.Utilities.Math.Examples.PowerLinearized

Information

This model tests the implementation of Buildings.Utilities.Math.PowerLinearized.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model PowerLinearized "Test model for powerLinearized function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Buildings.Utilities.Math.PowerLinearized powerLinearized(n=2, x0=0.5); equation connect(x1.y, powerLinearized.u); end PowerLinearized;

Buildings.Utilities.Math.Examples.QuadraticLinear Buildings.Utilities.Math.Examples.QuadraticLinear

Test model for quadraticLinear function

Buildings.Utilities.Math.Examples.QuadraticLinear

Information

This model tests the implementation of Buildings.Utilities.Math.QuadraticLinear.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model QuadraticLinear "Test model for quadraticLinear function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Buildings.Utilities.Math.QuadraticLinear quadraticLinear(a={1,2,3,4,5,6}); Modelica.Blocks.Sources.Ramp x2( duration=1, offset=2, height=5); equation connect(x2.y, quadraticLinear.u2); connect(x1.y, quadraticLinear.u1); end QuadraticLinear;

Buildings.Utilities.Math.Examples.RegNonZeroPower Buildings.Utilities.Math.Examples.RegNonZeroPower

Test model for regNonZeroPower function

Buildings.Utilities.Math.Examples.RegNonZeroPower

Information

This model tests the implementation of Buildings.Utilities.Math.RegNonZeroPower.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model RegNonZeroPower "Test model for regNonZeroPower function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1); Buildings.Utilities.Math.RegNonZeroPower regNonZeroPower(n=0.5); equation connect(x1.y, regNonZeroPower.u); end RegNonZeroPower;

Buildings.Utilities.Math.Examples.SmoothBlocks Buildings.Utilities.Math.Examples.SmoothBlocks

Test model for smooth min and smooth max functions

Buildings.Utilities.Math.Examples.SmoothBlocks

Information

This model tests the implementation of blocks that approximate non-differentiable functions by smooth functions.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model SmoothBlocks "Test model for smooth min and smooth max functions" extends Modelica.Icons.Example; SmoothMax smoMax(deltaX=0.5); Modelica.Blocks.Math.Max max; Modelica.Blocks.Sources.Sine sine(f=8); Modelica.Blocks.Sources.Sine sine1(f=1); Diagnostics.AssertEquality assEquMax(threShold=0.08); Buildings.Utilities.Math.SmoothMin smoMin(deltaX=0.5); Modelica.Blocks.Math.Min Min; Diagnostics.AssertEquality assEquMin(threShold=0.08); equation connect(sine.y, smoMax.u1); connect(sine.y, max.u1); connect(sine1.y, smoMax.u2); connect(sine1.y, max.u2); connect(smoMax.y, assEquMax.u1); connect(max.y, assEquMax.u2); connect(sine.y, smoMin.u1); connect(sine.y, Min.u1); connect(sine1.y, smoMin.u2); connect(sine1.y, Min.u2); connect(smoMin.y, assEquMin.u1); connect(Min.y, assEquMin.u2); end SmoothBlocks;

Buildings.Utilities.Math.Examples.SmoothExponential Buildings.Utilities.Math.Examples.SmoothExponential

Test model for smoothExponential function

Buildings.Utilities.Math.Examples.SmoothExponential

Information

This model tests the implementation of Buildings.Utilities.Math.SmoothExponential.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model SmoothExponential "Test model for smoothExponential function " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1(duration=1, height=2, offset=-1); Buildings.Utilities.Math.SmoothExponential smoothExponential(delta=0.1); equation connect(x1.y, smoothExponential.u); end SmoothExponential;

Buildings.Utilities.Math.Examples.SmoothHeaviside Buildings.Utilities.Math.Examples.SmoothHeaviside

Test model for smoothHeavisidefunction

Buildings.Utilities.Math.Examples.SmoothHeaviside

Information

This model tests the implementation of Buildings.Utilities.Math.SmoothHeaviside.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model SmoothHeaviside "Test model for smoothHeavisidefunction " extends Modelica.Icons.Example; Modelica.Blocks.Sources.Ramp x1( duration=1, height=2, offset=-1) "Ramp input signal"; Buildings.Utilities.Math.SmoothHeaviside smoothHeaviside(delta=0.1) "Smooth approximation to Heaviside function"; equation connect(x1.y, smoothHeaviside.u); end SmoothHeaviside;

Buildings.Utilities.Math.Examples.SmoothLimit Buildings.Utilities.Math.Examples.SmoothLimit

Test model for smooth limit

Buildings.Utilities.Math.Examples.SmoothLimit

Information

This model tests the implementation of Buildings.Utilities.Math.SmoothLimit.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model SmoothLimit "Test model for smooth limit" extends Modelica.Icons.Example; Modelica.Blocks.Sources.Sine sine(f=8); Buildings.Utilities.Math.SmoothLimit smoLim( deltaX=0.001, upper=0.5, lower=0) "Smooth limit"; equation connect(sine.y, smoLim.u); end SmoothLimit;

Buildings.Utilities.Math.Examples.SmoothMin Buildings.Utilities.Math.Examples.SmoothMin

Test model for smooth minimum

Buildings.Utilities.Math.Examples.SmoothMin

Information

This model tests the implementation of Buildings.Utilities.Math.SmoothMin.

This model also illustrates that the output can be larger than the minimum of the two input signals. Smaller values for deltaX will reduce this effect. Therefore do not use this function when the minimum output value should be respected.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model SmoothMin "Test model for smooth minimum" extends Modelica.Icons.Example; Buildings.Utilities.Math.SmoothMin smoLim[2](deltaX={0.1,0.02}) "Smooth limit"; Modelica.Blocks.Sources.Ramp ramp(height=1, duration=1) "Ramp input"; Modelica.Blocks.Sources.Constant const(k=0.5) "Constant input"; equation connect(ramp.y, smoLim[1].u1); connect(smoLim[2].u1, ramp.y); connect(const.y, smoLim[1].u2); connect(const.y, smoLim[2].u2); end SmoothMin;

Buildings.Utilities.Math.Examples.Splice Buildings.Utilities.Math.Examples.Splice

Test model for splice

Buildings.Utilities.Math.Examples.Splice

Information

This model tests the implementation of Buildings.Utilities.Math.Splice

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model Splice "Test model for splice" extends Modelica.Icons.Example; Buildings.Utilities.Math.Splice splice(deltax=0.2); Modelica.Blocks.Sources.Sine sine(f=0.5); Modelica.Blocks.Sources.Constant const1(k=-0.5); Modelica.Blocks.Sources.Constant const(k=0.5); equation connect(sine.y, splice.x); connect(const1.y, splice.u2); connect(const.y, splice.u1); end Splice;

Buildings.Utilities.Math.Examples.VectorFunctions Buildings.Utilities.Math.Examples.VectorFunctions

Test model for functions that take a vector as argument

Buildings.Utilities.Math.Examples.VectorFunctions

Information

This model tests the implementation of functions that take a vector as an argument.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Modelica definition

model VectorFunctions "Test model for functions that take a vector as argument" extends Modelica.Icons.Example; Buildings.Utilities.Math.Min minVec( nin=3); Modelica.Blocks.Sources.Sine sine(f=6); Modelica.Blocks.Sources.Sine sine1(f=8); Modelica.Blocks.Sources.Sine sine2(f=10); Buildings.Utilities.Math.Max maxVec( nin=3); Buildings.Utilities.Math.Average aveVec( nin=3); equation connect(sine.y, minVec.u[1]); connect(sine1.y, minVec.u[2]); connect(sine2.y, minVec.u[3]); connect(sine.y, maxVec.u[1]); connect(sine1.y, maxVec.u[2]); connect(sine2.y, maxVec.u[3]); connect(sine.y, aveVec.u[1]); connect(sine1.y, aveVec.u[2]); connect(sine2.y, aveVec.u[3]); end VectorFunctions;