functionregNonZeroPower

Power function, regularized near zero, but nonzero value for x=0

Extends from Modelica.Icons.Function (Icon for functions).

Information

Function that approximates y=|x|n where 0 < n < 2 so that

  • y(0) is not equal to zero.
  • dy/dx is bounded and continuous everywhere.

This function replaces y=|x|n in the interval -δ...+δ by a 4-th order polynomial that has the same function value and the first and second derivative at x=± δ.

A typical use of this function is to replace the function for the convective heat transfer coefficient for forced or free convection that is of the form h=c |dT|n for some constant c and exponent 0 < n ≤ 1. By using this function, the original function that has an infinite derivative near zero and that takes on zero at the origin is replaced by a function with a bounded derivative and a non-zero value at the origin. Physically, the region -δ...+δ may be interpreted as the region where heat conduction dominates convection in the boundary layer.

See the package Examples for the graph.

Inputs

TypeNameDefaultDescription
RealxAbscissa value
RealnExponent
Realdelta0.01Abscissa value where transition occurs

Outputs

TypeNameDefaultDescription
RealyFunction value

Revisions

  • November 2, 2022, by Michael Wetter:
    Set minimum and maximum attribute on n, improved assertion and documentation.
    This is for Buildings, #3135.
  • March 30, 2011, by Michael Wetter:
    Added zeroDerivative keyword.
  • April 14, 2008, by Michael Wetter:
    First implementation.