#include <statdist.h>
Inheritance diagram for matvec::BetaDist:

Definition at line 309 of file statdist.h.
Public Methods | |
| BetaDist (const double a, const double b, const double nc=0.0) | |
| BetaDist (const BetaDist &u) | |
| void | display (void) const |
| void | reset (const double a, const double b, const double nc=0.0) |
| void | sample (Vector< double > &x) const |
| void | sample (doubleMatrix &x) const |
| double | sample (void) const |
| Vector< double > | sample (unsigned n) const |
| doubleMatrix | sample (unsigned m, unsigned n) const |
| double | mean (void) const |
| double | variance (void) const |
| double | pdf (const double x) const |
| double | cdf (const double x) const |
| double | mgf (const double t) const |
| double | inv (const double p) const |
| double | nonct (const double cv, const double p) const |
| double | parameter (const int k) const |
| void | parameter (const int k, const double x) |
| virtual const std::string | name (void) const |
| virtual double | nonct (const double cv, const double p) |
Protected Attributes | |
| double | alpha_value |
| double | beta_value |
| double | nc_value |
| std::string | distname |
|
||||||||||||||||
|
Definition at line 313 of file statdist.h. References matvec::StatDistBase::distname, and reset().
|
|
|
Definition at line 315 of file statdist.h. References matvec::StatDistBase::distname, and reset().
00315 :StatDistBase() 00316 {distname="BetaDist"; reset(u.alpha_value,u.beta_value,u.nc_value);} |
|
|
Implements matvec::StatDistBase. Definition at line 330 of file statdist.h. References alpha_value, matvec::Beta_cdf(), beta_value, and nc_value.
00330 {int errcode=0;
00331 return Beta_cdf(x,alpha_value,beta_value,nc_value,errcode);}
|
|
|
Implements matvec::StatDistBase. Definition at line 318 of file statdist.h. References alpha_value, beta_value, matvec::StatDistBase::distname, and nc_value.
00318 {std::cout << "\t" << distname << "("
00319 << alpha_value << "," << beta_value << ","
00320 << nc_value << ")\n"; return;}
|
|
|
Implements matvec::StatDistBase. Definition at line 1009 of file statdist.cpp. References sample().
01011 {
01012 Vector<double> x(n);
01013 sample(x);
01014 return x;
01015 }
01016
01017 doubleMatrix BetaDist::sample(unsigned m,unsigned n) const
01018 {
01019 doubleMatrix x(m,n);
01020 sample(x);
01021 return x;
01022 }
01023
01024 double BetaDist::inv(const double p) const
01025 {
01026 if (p<0.0 || p>1.0) throw exception("BetaDist::inv(): bad arg, value between [0,1] expected");
01027 int errcode = 0;
01028 double eps = 1.0e-6;
01029 double bot = 0.0;
01030 double top = 1.0;
01031 double p2,ppt;
01032 while (top-bot > eps) {
|
|
|
Implements matvec::StatDistBase. Definition at line 963 of file statdist.cpp.
00966 {
00967 throw exception("BetaDist::pdf(): not available yet : noncentrality");
|
|
|
Implements matvec::StatDistBase. Definition at line 957 of file statdist.cpp. References alpha_value, beta_value, and nc_value.
00957 {
00958 if (x <=0.0 || x>=1.0) throw exception("BetaDist::pdf(): bad arg, value in (0,1) is expected");
00959 double pr = 0.0;;
00960 if (nc_value == 0.0) {
00961 double a = alpha_value;
|
|
|
Definition at line 45 of file statdistbase.h. References matvec::StatDistBase::distname.
00045 {return distname;}
|
|
||||||||||||
|
Definition at line 58 of file statdistbase.h.
00058 {std::cerr << "error\n"; return 0.0;}
|
|
||||||||||||
|
Definition at line 334 of file statdist.h.
00335 {std::cerr << "BetaDist::nonct(): not available\n"; return p;}
|
|
||||||||||||
|
Implements matvec::StatDistBase. Definition at line 1052 of file statdist.cpp. References alpha_value.
01052 {
01053 par = alpha_value;
01054 }
01055 else if (k==2) {
01056 par = beta_value;
01057 }
01058 else if (k==3) {
01059 par = nc_value;
01060 }
01061 else {
01062 throw exception("BetaDist::parameter(): bad arg, value 1(2,3) is expected");
01063 }
01064 return par;
01065 }
01066
01067 void BetaDist::parameter(const int k,const double x)
01068 {
|
|
|
Implements matvec::StatDistBase. Definition at line 1034 of file statdist.cpp. References alpha_value, beta_value, and nc_value.
01036 {
01037 bot = ppt;
01038 }
01039 else if (p2 > p) {
01040 top = ppt;
01041 }
01042 else {
01043 break;
01044 }
01045 }
01046 return ppt;
01047 }
01048
01049 double BetaDist::parameter(const int k) const
01050 {
|
|
|
Implements matvec::StatDistBase. Definition at line 941 of file statdist.cpp.
00941 : bad arg1");
00942 theta_value = x;
00943 }
00944
00945
00946 /////////////////// BetaDist class /////////////////////////////
00947
00948 void BetaDist::reset(const double a, const double b,const double nc)
00949 {
00950 if (a <= 0.0 || b <= 0.0) throw exception("BetaDist::reset(): invalid args");
00951 alpha_value = a;
00952 beta_value = b;
00953 nc_value = nc;
00954 }
00955
|
|
||||||||||||||||
|
Definition at line 933 of file statdist.cpp. Referenced by BetaDist().
00934 {
00935 if (k != 1) throw exception("ExponentialDist::parameter(): bad arg, 1 is expected");
00936 return theta_value;
00937 }
00938
00939 void ExponentialDist::parameter(const int k,const double x)
|
|
||||||||||||
|
Implements matvec::StatDistBase. Definition at line 1002 of file statdist.cpp. References alpha_value, and beta_value.
01004 {
01005 bot = x[i]; top = &bot[nc];
01006 while (bot < top ) *bot++ = genbet(alpha_value,beta_value) ;
01007 }
|
|
|
Implements matvec::StatDistBase. Definition at line 995 of file statdist.cpp. References alpha_value, and beta_value.
01000 {
|
|
|
Implements matvec::StatDistBase. Definition at line 324 of file statdist.h. References alpha_value, beta_value, and matvec::genbet(). Referenced by inv().
00324 {return genbet(alpha_value,beta_value);}
|
|
|
Implements matvec::StatDistBase. Definition at line 984 of file statdist.cpp. References alpha_value, beta_value, and nc_value.
00985 {
00986 if (nc_value != 0.0) throw exception("BetaDist::variance(): not availabe: noncentrality");
00987 double a = alpha_value*beta_value;
00988 double b = alpha_value+beta_value;
00989 return a/((b+1)*b*b);
00990 }
00991
00992 void BetaDist::sample(Vector<double>& x) const
00993 {
|
|
|
Implements matvec::StatDistBase. Definition at line 977 of file statdist.cpp. References alpha_value, beta_value, and nc_value.
00979 {
00980 if (nc_value != 0.0) throw exception("BetaDist::mean(): not availabe: noncentrality");
00981 return alpha_value/(alpha_value+beta_value);
00982 }
|
|
|
Implements matvec::StatDistBase. Definition at line 969 of file statdist.cpp.
00973 {
00974 throw exception("BetaDist:mgf(t): not available yet");
00975 return 0.0;
|
|
|
Definition at line 311 of file statdist.h. Referenced by cdf(), display(), mgf(), parameter(), matvec::DiscreteUniformDist::reset(), and sample(). |
|
|
Definition at line 311 of file statdist.h. Referenced by cdf(), display(), mgf(), parameter(), and sample(). |
|
|
|
Definition at line 311 of file statdist.h. Referenced by cdf(), display(), mgf(), parameter(), and sample(). |
1.2.16