1 #ifndef NPSTAT_JOHNSONCURVES_HH_
2 #define NPSTAT_JOHNSONCURVES_HH_
27 double skewness,
double kurtosis);
32 inline double skewness()
const {
return skew_;}
33 inline double kurtosis()
const {
return kurt_;}
34 inline bool isValid()
const {
return isValid_;}
36 inline double getDelta()
const {
return delta_;}
37 inline double getLambda()
const {
return lambda_;}
38 inline double getGamma()
const {
return gamma_;}
39 inline double getXi()
const {
return xi_;}
42 inline virtual gs::ClassId
classId()
const {
return gs::ClassId(*
this);}
43 virtual bool write(std::ostream& os)
const;
45 static inline const char* classname()
46 {
return "npstat::JohnsonSu";}
47 static inline unsigned version() {
return 1;}
48 static JohnsonSu* read(
const gs::ClassId&
id, std::istream& in);
57 const std::vector<double>& params);
58 inline static int nParameters() {
return 2;}
64 double unscaledDensity(
double x)
const;
65 double unscaledCdf(
double x)
const;
66 double unscaledExceedance(
double x)
const;
67 double unscaledQuantile(
double x)
const;
87 double skewness,
double kurtosis);
92 inline double skewness()
const {
return skew_;}
93 inline double kurtosis()
const {
return kurt_;}
94 inline bool isValid()
const {
return isValid_;}
96 inline double getDelta()
const {
return delta_;}
97 inline double getLambda()
const {
return lambda_;}
98 inline double getGamma()
const {
return gamma_;}
99 inline double getXi()
const {
return xi_;}
101 static bool fitParameters(
double skewness,
double kurtosis,
102 double *gamma,
double *delta,
103 double *lambda,
double *xi);
106 inline virtual gs::ClassId
classId()
const {
return gs::ClassId(*
this);}
107 virtual bool write(std::ostream& os)
const;
109 static inline const char* classname()
110 {
return "npstat::JohnsonSb";}
111 static inline unsigned version() {
return 1;}
112 static JohnsonSb* read(
const gs::ClassId&
id, std::istream& in);
121 const std::vector<double>& params);
122 inline static int nParameters() {
return 2;}
128 double unscaledDensity(
double x)
const;
129 double unscaledCdf(
double x)
const;
130 double unscaledExceedance(
double x)
const;
131 double unscaledQuantile(
double x)
const;
159 double skewness,
double kurtosis);
166 explicit JohnsonSystem(
const std::vector<double>& cumulants);
176 inline double skewness()
const {
return skew_;}
177 inline double kurtosis()
const {
return kurt_;}
178 inline CurveType curveType()
const {
return curveType_;}
179 inline bool isValid()
const {
return !(curveType_ == INVALID);}
181 static CurveType select(
double skewness,
double kurtosis);
184 inline virtual gs::ClassId
classId()
const {
return gs::ClassId(*
this);}
185 virtual bool write(std::ostream& os)
const;
187 static inline const char* classname()
188 {
return "npstat::JohnsonSystem";}
189 static inline unsigned version() {
return 1;}
190 static JohnsonSystem* read(
const gs::ClassId&
id, std::istream& in);
199 const std::vector<double>& params);
200 inline static int nParameters() {
return 2;}
208 inline double unscaledDensity(
double x)
const
210 inline double unscaledCdf(
double x)
const
211 {
return fcn_->
cdf(x);}
212 inline double unscaledExceedance(
double x)
const
214 inline double unscaledQuantile(
double x)
const
220 CurveType curveType_;
Factories for 1-d distributions for use in interpretive language environments.
Definition: AbsDistribution1D.hh:165
double scale() const
Definition: AbsDistribution1D.hh:183
AbsScalableDistribution1D(const double location, const double scale)
Definition: AbsDistribution1D.hh:168
double density(const double x) const
Definition: AbsDistribution1D.hh:199
double exceedance(const double x) const
Definition: AbsDistribution1D.hh:205
double cdf(const double x) const
Definition: AbsDistribution1D.hh:202
double quantile(const double x) const
Definition: AbsDistribution1D.hh:208
double location() const
Definition: AbsDistribution1D.hh:180
Definition: JohnsonCurves.hh:84
virtual gs::ClassId classId() const
Definition: JohnsonCurves.hh:106
virtual bool isEqual(const AbsDistribution1D &) const
virtual JohnsonSb * clone() const
Definition: JohnsonCurves.hh:88
Definition: JohnsonCurves.hh:24
virtual bool isEqual(const AbsDistribution1D &) const
virtual JohnsonSu * clone() const
Definition: JohnsonCurves.hh:28
virtual gs::ClassId classId() const
Definition: JohnsonCurves.hh:42
Definition: JohnsonCurves.hh:146
virtual gs::ClassId classId() const
Definition: JohnsonCurves.hh:184
virtual JohnsonSystem * clone() const
Definition: JohnsonCurves.hh:173
virtual bool isEqual(const AbsDistribution1D &) const
Definition: Distribution1DFactory.hh:35
Definition: AbsArrayProjector.hh:14
Definition: AbsDistribution1D.hh:31