LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
Expolynomial.m
1classdef Expolynomial < ContinuousDistribution
2 % Expolynomial distribution with density f(x) = sum ci * x^ai * exp(-li*x)
3 %
4 % Represents an expolynomial density over a bounded domain [eft, lft],
5 % matching the Sirio/ORIS GEN expolynomial format.
6 %
7 % Copyright (c) 2012-2026, Imperial College London
8 % All rights reserved.
9
10 methods
11 function self = Expolynomial(density, eft, lft)
12 % EXPOLYNOMIAL Create an Expolynomial distribution instance
13 %
14 % @param density Density expression string in Sirio format
15 % @param eft Earliest firing time (lower bound of support)
16 % @param lft Latest firing time (upper bound of support, can be Inf)
17 % @return self Expolynomial distribution instance
18 self@ContinuousDistribution('Expolynomial', 3, [NaN, NaN, NaN]);
19 setParam(self, 1, 'density', density);
20 setParam(self, 2, 'eft', eft);
21 setParam(self, 3, 'lft', lft);
22 end
23
24 function ex = getMean(self)
25 % EX = GETMEAN()
26
27 % Get distribution mean (returns NaN - numerical integration not supported)
28 ex = NaN;
29 end
30
31 function SCV = getSCV(self)
32 % SCV = GETSCV()
33
34 % Get distribution SCV (returns NaN - numerical integration not supported)
35 SCV = NaN;
36 end
37
38 function Ft = evalCDF(self, t)
39 % FT = EVALCDF(SELF,T)
40
41 % Evaluate the CDF at t (returns NaN - not supported)
42 Ft = NaN;
43 end
44
45 function X = sample(self, n)
46 % X = SAMPLE(N)
47
48 % Get n samples from the distribution (returns NaN - not supported)
49 if nargin < 2
50 n = 1;
51 end
52 X = NaN(n, 1);
53 end
54
55 function proc = getProcess(self)
56 % PROC = GETPROCESS()
57
58 % Get process representation
59 proc = {self.getParam(1).paramValue, self.getParam(2).paramValue, self.getParam(3).paramValue};
60 end
61 end
62
63end