jstewmc / piecewise-fx
Piecewise math functions
v1.0.0
2016-08-13 22:54 UTC
Requires
- php: ^7.0
- jstewmc/fx: ^1.0
- jstewmc/interval: ^1.0
Requires (Dev)
- jstewmc/test-case: ^1.0
This package is auto-updated.
Last update: 2024-10-29 04:47:39 UTC
README
Piecewise math functions.
use Jstewmc\Fx\{Constant, Linear}; use Jstewmc\Interval\Interval; use Jstewmc\PiecewiseFx; // define our sub-functions... // y = 1 | 1 <= x <= 3 // y = x - 2 | 3 < x <= 6 // y = 4 | 6 < x <= 9 // $subFxs = [ new SubFx( new Interval('[1, 3]'), new Constant(1) ), new SubFx( new Interval('(3, 6]'), new Linear(1, -2) ), new SubFx( new Interval('(6, 9]'), new Constant(4) ) ]; // define our piecewise fx $fx = new PiecewiseFx($subFxs); $fx(0); // returns null $fx(1); // returns 1 $fx(2); // returns 1 $fx(3); // returns 1 $fx(4); // returns 2 $fx(5); // returns 3 $fx(6); // returns 4 $fx(7); // returns 4 $fx(8); // returns 4 $fx(9); // returns 4 $fx(10); // returns null
A piecewise function is a function composed of multiple sub-functions, each of which applies to an interval of the function's domain.
As you can see in the example above, a piecewise function requires an array of sub-functions. Each sub-function, in turn, requires an interval and function. To learn more about intervals and functions, see jstewmc/interval and jstewmc/fx for details, respectively.
License
Author
Version
1.0.0, August 13, 2016
- Major release
- Update
composer.json
0.1.1, August 13, 2016
- Update
composer.json
0.1.0, August 6, 2016
- Initial release