This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.
The output cdf is piecewise linear cumulative distribution function specified by a list of points {{x1,F(x1)}, {x2,F(x2}}, ... ,{xn, F(xn)}. The input tuples is assumed to be a piecewise linear function that by default (rescaleQ= true) will be normalized using normalizePLpdf() to come up with a piecewise linear density function that has the unit interval as its support.
Functions.plCDF({{x1,y1},{x2,y2}, ...}); // rescaleQ= true
Functions.plCDF({{x1,y1},{x2,y2}, ...}, rescaleQ = false);
plCDF({{0,2},{5,2},{10,2}}); // {{0,0},{0.5,0.5},{1,1}}
plCDF({{0,1},{1,2},{2,4},{3,5}}); // {{0,0},{0.33..,0.16..},{0.66..,0.5},{1,1}}
encapsulated function plCDF
import BusinessSimulation.Icons.Function;
import BusinessSimulation.Functions.{normalizePLpdf,areaLineSegment};
extends Function;
input Real[:, 2] tuples "Piecewise linear function, i.e., { {x1,f(x1), {x2,f(x2)}, ... }";
input Boolean rescaleQ = true "= true, if the support is to be rescaled to the unit interval";
output Real[size(tuples, 1), 2] cdf "Piecewise linear cumulated distribution function";
end plCDF;