y = Functions.limitBySform(x_min, x_max, y_min, y_max, x);


A smooth transition between points (x_min, y_min) and (x_max, y_max). The transition is done in such a way that the 1st function's derivative is continuous for all x. The higher derivatives are, in contrast, discontinuous at input points.

The figure below shows the function y and its 1st derivative dy/dx for the following input: x_max = -0.4, x_min = 0.6, y_max = 1.4, y_min = 1.2.


function limitBySform
  extends Modelica.Icons.Function;
  input Real x_min "Abscissa for y_min";
  input Real x_max "Abscissa for y_max";
  input Real y_min "First value of y";
  input Real y_max "Second value of y";
  input Real x "Current abscissa value";
  output Real y "Current ordinate";
end limitBySform;


DLR logo Developed 2010 at the DLR Institute of System Dynamics and Control

Generated at 2024-06-14T18:15:55Z by OpenModelicaOpenModelica 1.22.4 using GenerateDoc.mos