20 namespace Stats {
class NormalRandGen; }
25 {
return "Correlation coefficients should be in range <-1,1>.\n" 26 "Maximum correlation is 0.99999."; }
30 "Correlation coefficients should be in range <-1,1>.\n" 31 "Maximum correlation is 0.99999.");
34 #define mDefGaussianProbDenFuncFns(nm) \ 36 nm##ProbDenFunc& operator =(const nm##ProbDenFunc&); \ 37 virtual nm##ProbDenFunc* clone() const \ 38 { return new nm##ProbDenFunc(*this); } \ 39 virtual void copyFrom(const ProbDenFunc&); \ 40 static const char* typeStr() { return #nm; } \ 41 virtual const char* getTypeStr() const { return typeStr(); } \ 42 virtual void fillPar(IOPar&) const; \ 43 virtual bool usePar(const IOPar&); \ 44 virtual bool isEq(const ProbDenFunc&) const; 55 : rgen_(0), exp_(exp), std_(stdev) {}
57 : rgen_(0) { *
this = oth; }
66 mutable
Stats::NormalRandGen* rgen_;
68 virtual
float gtAvgPos()
const {
return exp_; }
69 virtual float gtVal(
float)
const;
70 virtual void drwRandPos(
float&)
const;
82 : rgen0_(0), rgen1_(0)
84 , std0_(1), std1_(1), cc_(0) {}
86 : rgen0_(0), rgen1_(0) { *
this = oth; }
90 virtual
float averagePos(
int dim )
const 91 {
return dim ? exp1_ : exp0_; }
102 virtual float gtVal(
float,
float)
const;
103 virtual void drwRandPos(
float&,
float&)
const;
119 virtual
int nrDims()
const {
return vars_.size(); }
120 virtual const char* dimName(
int)
const;
121 virtual void setDimName(
int,
const char*);
122 virtual float averagePos(
int)
const;
124 void prepareRandDrawing()
const;
133 VarDef(
const char* nm,
float e=0,
float s=1 )
134 : name_(nm), exp_(e), std_(s) {}
136 {
return name_ == vd.
name_; }
146 Corr(
int i0=0,
int i1=0,
float cc=1 )
147 : idx0_(i0), idx1_(i1), cc_(cc) {}
149 {
return (idx0_ == oth.
idx0_ && idx1_ == oth.
idx1_)
150 || (idx0_ == oth.
idx1_ && idx1_ == oth.
idx0_); }
160 const char* firstUncorrelated()
const;
#define mExpClass(module)
Definition: commondefs.h:157
TypeSet< VarDef > vars_
Definition: gaussianprobdenfunc.h:157
Definition: statrand.h:75
Probability Density Function for one dimensional datasets.
Definition: probdenfunc.h:79
Gaussian1DProbDenFunc(float exp=0, float stdev=1)
Definition: gaussianprobdenfunc.h:54
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:51
Base class for Probability Density Functions.
Definition: probdenfunc.h:29
const char * sGaussianCCRangeErrMsg()
Definition: gaussianprobdenfunc.h:24
Two dimensional Gaussian PDF.
Definition: gaussianprobdenfunc.h:77
Definition: uistring.h:88
ObjectSet< Stats::NormalRandGen > rgens_
Definition: gaussianprobdenfunc.h:166
Matrix class based on Array2D. Initialized to 0.
Definition: array2dmatrix.h:30
float cc_
Definition: gaussianprobdenfunc.h:153
int idx1_
Definition: gaussianprobdenfunc.h:152
float std1_
Definition: gaussianprobdenfunc.h:94
Set of pointers to objects.
Definition: commontypes.h:28
int idx0_
Definition: gaussianprobdenfunc.h:152
#define mDefGaussianProbDenFuncFns(nm)
Definition: gaussianprobdenfunc.h:34
ObjectSet< TypeSet< int > > corrs4vars_
Definition: gaussianprobdenfunc.h:165
One dimensional Gaussian PDF.
Definition: gaussianprobdenfunc.h:50
float exp1_
Definition: gaussianprobdenfunc.h:93
Multi-dimensional pure Gaussian PDF.
Definition: gaussianprobdenfunc.h:110
Gaussian1DProbDenFunc(const Gaussian1DProbDenFunc &oth)
Definition: gaussianprobdenfunc.h:56
TypeSet< Corr > corrs_
Definition: gaussianprobdenfunc.h:158
Array2DMatrix< float > * cholesky_
Definition: gaussianprobdenfunc.h:167
Probability Density Function for two dimensional datasets.
Definition: probdenfunc.h:124
const uiString sUiGaussianCCRangeErrMsg()
Definition: gaussianprobdenfunc.h:27
float std_
Definition: gaussianprobdenfunc.h:140
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
GaussianNDProbDenFunc(const GaussianNDProbDenFunc &oth)
Definition: gaussianprobdenfunc.h:115
Definition: gaussianprobdenfunc.h:129
VarDef(const char *nm, float e=0, float s=1)
Definition: gaussianprobdenfunc.h:133
float exp_
Definition: gaussianprobdenfunc.h:139
Statistics.
Definition: array2dinterpol.h:27
Definition: gaussianprobdenfunc.h:143
Stats::NormalRandGen * rgen1_
Definition: gaussianprobdenfunc.h:100
float cc_
Definition: gaussianprobdenfunc.h:95
Corr(int i0=0, int i1=0, float cc=1)
Definition: gaussianprobdenfunc.h:146
Gaussian2DProbDenFunc()
Definition: gaussianprobdenfunc.h:81
float cMaxGaussianCC()
Definition: gaussianprobdenfunc.h:23
BufferString name_
Definition: gaussianprobdenfunc.h:138
uiString od_static_tr(const char *function, const char *text, const char *disambiguation=0, int pluralnr=-1)
Gaussian2DProbDenFunc(const Gaussian2DProbDenFunc &oth)
Definition: gaussianprobdenfunc.h:85
Stats::NormalRandGen * rgen0_
Definition: gaussianprobdenfunc.h:99