SmoothPower

Limiting the derivative of function y = if x>=0 then x^pow else -(-x)^pow

Information

This information is part of the Modelica Standard Library maintained by the Modelica Association.

The function is used to limit the derivative of the following function at x=0:

y = if x ≥ 0 then xpow else -(-x)pow;  // pow > 0

by approximating the function in the range -deltax< x < deltax with a third order polynomial that has the same derivative at abs(x)=deltax, as the function above.

Example

In the picture below the input x is increased from -1 to 1. The range of interpolation is defined by the same range. Displayed is the output of the function SmoothPower compared to

y=x*|x|

For |x| > 1 both functions return identical results.

SmoothPower

References

ThermoFluid Library
http://sourceforge.net/projects/thermofluid/

Syntax

y = SmoothPower(x, deltax, pow)

Inputs (3)

x

Type: Real

Description: Input variable

deltax

Type: Real

Description: Range for interpolation

pow

Type: Real

Description: Exponent for x

Outputs (1)

y

Type: Real

Description: Output variable