25 #include <queso/GslVector.h>
26 #include <queso/GslMatrix.h>
28 #include <queso/BetaJointPdf.h>
29 #include <queso/BetaVectorRV.h>
30 #include <queso/BetaVectorRealizer.h>
35 template<
class V,
class M>
42 BaseVectorRV<V,M>(((std::string)(prefix)+
"uni").c_str(),imageSet)
54 double smallerOfMaxValues = imageBox->
maxValues().getMinValue();
55 double biggerOfMaxValues = imageBox->
maxValues().getMaxValue();
56 double smallerOfMinValues = imageBox->
minValues().getMinValue();
57 double biggerOfMinValues = imageBox->
minValues().getMaxValue();
60 if( (smallerOfMinValues < 0) || ( biggerOfMaxValues > 1 ) )
62 std::cerr <<
"In BetaVectorRV<V,M>::constructor()\n"
63 <<
"Beta distribution is defined only in [0, 1].\n"
64 <<
"The data provided is: \n"
66 <<
"Sampling will not cover all interval.\n"
70 queso_require_less_equal_msg(biggerOfMinValues, 1,
"invalid input: Beta distribution is only defined in [0, 1], and max(m_minValues)>1");
95 template<
class V,
class M>
105 template <
class V,
class M>
109 os <<
"BetaVectorRV<V,M>::print() says, 'Please implement me.'" << std::endl;
unsigned int displayVerbosity() const
virtual ~BetaVectorRV()
Virtual destructor.
A templated class for handling sets.
BetaVectorRV(const char *prefix, const VectorSet< V, M > &imageSet, const V &alpha, const V &beta)
Default Constructor.
const VectorSet< V, M > & m_imageSet
A templated base class for handling vector RV.
#define queso_require_less_equal_msg(expr1, expr2, msg)
A class representing a vector RV constructed via Beta distribution.
void print(std::ostream &os) const
TODO: Prints the vector RV.
BaseJointPdf< V, M > * m_pdf
const V & maxValues() const
Vector of the maximum values of the box subset.
std::ofstream * subDisplayFile() const
Access function for m_subDisplayFile (displays file on stream).
const V & minValues() const
Vector of the minimum values of the box subset.
A class for handling sampling from a Beta probability density distribution.
const BaseVectorCdf< V, M > * m_unifiedCdf
Class representing a subset of a vector space shaped like a hypercube.
const BaseEnvironment & m_env
const VectorSet< V, M > & imageSet() const
Image set of the vector RV; access to private attribute m_imageSet.
const BaseVectorMdf< V, M > * m_mdf
#define queso_require_greater_equal_msg(expr1, expr2, msg)
A class for handling Beta joint PDFs.
const BaseVectorCdf< V, M > * m_subCdf
BaseVectorRealizer< V, M > * m_realizer