queso-0.50.1
Private Attributes | List of all members
QUESO::ConcatenatedVectorRV< V, M > Class Template Reference

A class representing concatenated vector RVs. More...

#include <ConcatenatedVectorRV.h>

Inheritance diagram for QUESO::ConcatenatedVectorRV< V, M >:
Inheritance graph
[legend]
Collaboration diagram for QUESO::ConcatenatedVectorRV< V, M >:
Collaboration graph
[legend]

Public Member Functions

Constructor/Destructor methods
 ConcatenatedVectorRV (const char *prefix, const BaseVectorRV< V, M > &rv1, const BaseVectorRV< V, M > &rv2, const VectorSet< V, M > &imageSet)
 Constructor. More...
 
 ConcatenatedVectorRV (const char *prefix, const std::vector< const BaseVectorRV< V, M > * > &rvs, const VectorSet< V, M > &imageSet)
 Constructor. More...
 
virtual ~ConcatenatedVectorRV ()
 Virtual destructor. More...
 
I/O methods
void print (std::ostream &os) const
 TODO: Prints the vector RV. More...
 
- Public Member Functions inherited from QUESO::BaseVectorRV< V, M >
 BaseVectorRV (const char *prefix, const VectorSet< V, M > &imageSet)
 Constructor. More...
 
virtual ~BaseVectorRV ()
 Virtual destructor. More...
 
const BaseEnvironmentenv () const
 QUESO environment; access to private attribute m_env. More...
 
const VectorSet< V, M > & imageSet () const
 Image set of the vector RV; access to private attribute m_imageSet. More...
 
const BaseJointPdf< V, M > & pdf () const
 Posterior Density Function of the vector RV; access to private attribute m_pdf. More...
 
const BaseVectorRealizer< V, M > & realizer () const
 Finds a realization (sample) of the PDF of this vector RV; access to private attribute m_realizer. More...
 
const BaseVectorCdf< V, M > & subCdf () const
 Finds the Cumulative Distribution Function of this vector RV, considering only the sub-sequence of data; access to private attribute m_subCdf. More...
 
const BaseVectorCdf< V, M > & unifiedCdf () const
 Finds the Cumulative Distribution Function of this vector RV, considering the unified sequence of data; access to private attribute m_unifiedCdf. More...
 
const BaseVectorMdf< V, M > & mdf () const
 Finds the Mass Density Function of this vector RV; access to private attribute m_mdf. More...
 

Private Attributes

std::vector< const
BaseVectorRV< V, M > * > 
m_rvs
 
std::vector< const
BaseJointPdf< V, M > * > 
m_pdfs
 
std::vector< const
BaseVectorRealizer< V, M > * > 
m_realizers
 

Additional Inherited Members

- Protected Attributes inherited from QUESO::BaseVectorRV< V, M >
const BaseEnvironmentm_env
 
std::string m_prefix
 
const VectorSet< V, M > & m_imageSet
 
BaseJointPdf< V, M > * m_pdf
 
BaseVectorRealizer< V, M > * m_realizer
 
const BaseVectorCdf< V, M > * m_subCdf
 
const BaseVectorCdf< V, M > * m_unifiedCdf
 
const BaseVectorMdf< V, M > * m_mdf
 

Detailed Description

template<class V, class M>
class QUESO::ConcatenatedVectorRV< V, M >

A class representing concatenated vector RVs.

This class allows the user to concatenate two vector RV of different types and to generate realizations (samples) from this concatenated vector RV. It is used, for instance, to concatenate priors from two or more RVs, where one of them has a uniform distribution whereas the other one(s) has a Gaussian distribution.

Definition at line 52 of file ConcatenatedVectorRV.h.

Constructor & Destructor Documentation

template<class V , class M >
QUESO::ConcatenatedVectorRV< V, M >::ConcatenatedVectorRV ( const char *  prefix,
const BaseVectorRV< V, M > &  rv1,
const BaseVectorRV< V, M > &  rv2,
const VectorSet< V, M > &  imageSet 
)

Constructor.

Concatenates two RVs: rv1 and rv2 into one vector RV, given a prefix and the image set of the vector RV.

Definition at line 33 of file ConcatenatedVectorRV.C.

References QUESO::BaseEnvironment::displayVerbosity(), QUESO::BaseVectorRV< V, M >::m_env, QUESO::BaseVectorRV< V, M >::m_imageSet, QUESO::BaseVectorRV< V, M >::m_mdf, QUESO::BaseVectorRV< V, M >::m_pdf, QUESO::ConcatenatedVectorRV< V, M >::m_pdfs, QUESO::BaseVectorRV< V, M >::m_prefix, QUESO::BaseVectorRV< V, M >::m_realizer, QUESO::ConcatenatedVectorRV< V, M >::m_realizers, QUESO::ConcatenatedVectorRV< V, M >::m_rvs, QUESO::BaseVectorRV< V, M >::m_subCdf, QUESO::BaseVectorRV< V, M >::m_unifiedCdf, and QUESO::BaseEnvironment::subDisplayFile().

38  :
39  BaseVectorRV<V,M>(((std::string)(prefix)+"concat").c_str(),imageSet),
40  m_rvs (2,(const BaseVectorRV <V,M>*) NULL),
41  m_pdfs (2,(const BaseJointPdf <V,M>*) NULL),
42  m_realizers (2,(const BaseVectorRealizer<V,M>*) NULL)
43 {
44  if ((m_env.subDisplayFile()) && (m_env.displayVerbosity() >= 54)) {
45  *m_env.subDisplayFile() << "Entering ConcatenatedVectorRV<V,M>::constructor(1)"
46  << ": prefix = " << m_prefix
47  << std::endl;
48  }
49 
50  m_rvs[0] = &rv1;
51  m_rvs[1] = &rv2;
52  m_pdfs[0] = &(m_rvs[0]->pdf());
53  m_pdfs[1] = &(m_rvs[1]->pdf());
54  m_realizers[0] = &(m_rvs[0]->realizer());
55  m_realizers[1] = &(m_rvs[1]->realizer());
56 
57  m_pdf = new ConcatenatedJointPdf<V,M>(m_prefix.c_str(),
58  *(m_pdfs[0]),
59  *(m_pdfs[1]),
60  m_imageSet);
61 
62  m_realizer = new ConcatenatedVectorRealizer<V,M>(m_prefix.c_str(),
63  *(m_realizers[0]),
64  *(m_realizers[1]),
65  m_imageSet);
66  m_subCdf = NULL; // FIX ME: complete code
67  m_unifiedCdf = NULL; // FIX ME: complete code
68  m_mdf = NULL; // FIX ME: complete code
69 
70  if ((m_env.subDisplayFile()) && (m_env.displayVerbosity() >= 54)) {
71  *m_env.subDisplayFile() << "Leaving ConcatenatedVectorRV<V,M>::constructor(1)"
72  << ": prefix = " << m_prefix
73  << std::endl;
74  }
75 }
const BaseVectorCdf< V, M > * m_unifiedCdf
Definition: VectorRV.h:136
std::ofstream * subDisplayFile() const
Access function for m_subDisplayFile (displays file on stream).
Definition: Environment.C:305
const BaseEnvironment & m_env
Definition: VectorRV.h:130
const VectorSet< V, M > & m_imageSet
Definition: VectorRV.h:132
const BaseVectorCdf< V, M > * m_subCdf
Definition: VectorRV.h:135
BaseVectorRealizer< V, M > * m_realizer
Definition: VectorRV.h:134
std::vector< const BaseVectorRV< V, M > * > m_rvs
const BaseVectorMdf< V, M > * m_mdf
Definition: VectorRV.h:137
const VectorSet< V, M > & imageSet() const
Image set of the vector RV; access to private attribute m_imageSet.
Definition: VectorRV.C:79
std::vector< const BaseVectorRealizer< V, M > * > m_realizers
std::vector< const BaseJointPdf< V, M > * > m_pdfs
std::string m_prefix
Definition: VectorRV.h:131
BaseJointPdf< V, M > * m_pdf
Definition: VectorRV.h:133
unsigned int displayVerbosity() const
Definition: Environment.C:436
template<class V , class M >
QUESO::ConcatenatedVectorRV< V, M >::ConcatenatedVectorRV ( const char *  prefix,
const std::vector< const BaseVectorRV< V, M > * > &  rvs,
const VectorSet< V, M > &  imageSet 
)

Constructor.

Concatenates a sequence of RVs, given by: std::vector<const BaseVectorRV<V,M>* >& rvs into one single vector RV, given a prefix and the image set of the resulting vector RV.

Definition at line 78 of file ConcatenatedVectorRV.C.

References QUESO::BaseEnvironment::displayVerbosity(), QUESO::BaseVectorRV< V, M >::m_env, QUESO::BaseVectorRV< V, M >::m_imageSet, QUESO::BaseVectorRV< V, M >::m_mdf, QUESO::BaseVectorRV< V, M >::m_pdf, QUESO::ConcatenatedVectorRV< V, M >::m_pdfs, QUESO::BaseVectorRV< V, M >::m_prefix, QUESO::BaseVectorRV< V, M >::m_realizer, QUESO::ConcatenatedVectorRV< V, M >::m_realizers, QUESO::ConcatenatedVectorRV< V, M >::m_rvs, QUESO::BaseVectorRV< V, M >::m_subCdf, QUESO::BaseVectorRV< V, M >::m_unifiedCdf, and QUESO::BaseEnvironment::subDisplayFile().

82  :
83  BaseVectorRV<V,M>(((std::string)(prefix)+"concat").c_str(),imageSet),
84  m_rvs (rvs.size(),(const BaseVectorRV <V,M>*) NULL),
85  m_pdfs (rvs.size(),(const BaseJointPdf <V,M>*) NULL),
86  m_realizers (rvs.size(),(const BaseVectorRealizer<V,M>*) NULL)
87 {
88  if ((m_env.subDisplayFile()) && (m_env.displayVerbosity() >= 54)) {
89  *m_env.subDisplayFile() << "Entering ConcatenatedVectorRV<V,M>::constructor(2)"
90  << ": prefix = " << m_prefix
91  << std::endl;
92  }
93 
94  for (unsigned int i = 0; i < m_rvs.size(); ++i) {
95  m_rvs [i] = rvs[i];
96  m_pdfs[i] = &(m_rvs[i]->pdf());
97  m_realizers[i] = &(m_rvs[i]->realizer());
98  }
99 
100  m_pdf = new ConcatenatedJointPdf<V,M>(m_prefix.c_str(),
101  m_pdfs,
102  m_imageSet);
103 
104  unsigned int minPeriod = m_realizers[0]->subPeriod();
105  for (unsigned int i = 0; i < m_realizers.size(); ++i) {
106  if (minPeriod > m_realizers[i]->subPeriod()) {
107  minPeriod = m_realizers[i]->subPeriod();
108  }
109  }
110 
111  m_realizer = new ConcatenatedVectorRealizer<V,M>(m_prefix.c_str(),
112  m_realizers,
113  minPeriod,
114  m_imageSet);
115  m_subCdf = NULL; // FIX ME: complete code
116  m_unifiedCdf = NULL; // FIX ME: complete code
117  m_mdf = NULL; // FIX ME: complete code
118 
119  if ((m_env.subDisplayFile()) && (m_env.displayVerbosity() >= 54)) {
120  *m_env.subDisplayFile() << "Leaving ConcatenatedVectorRV<V,M>::constructor(2)"
121  << ": prefix = " << m_prefix
122  << std::endl;
123  }
124 }
const BaseVectorCdf< V, M > * m_unifiedCdf
Definition: VectorRV.h:136
std::ofstream * subDisplayFile() const
Access function for m_subDisplayFile (displays file on stream).
Definition: Environment.C:305
const BaseEnvironment & m_env
Definition: VectorRV.h:130
const VectorSet< V, M > & m_imageSet
Definition: VectorRV.h:132
const BaseVectorCdf< V, M > * m_subCdf
Definition: VectorRV.h:135
BaseVectorRealizer< V, M > * m_realizer
Definition: VectorRV.h:134
std::vector< const BaseVectorRV< V, M > * > m_rvs
const BaseVectorMdf< V, M > * m_mdf
Definition: VectorRV.h:137
const VectorSet< V, M > & imageSet() const
Image set of the vector RV; access to private attribute m_imageSet.
Definition: VectorRV.C:79
std::vector< const BaseVectorRealizer< V, M > * > m_realizers
std::vector< const BaseJointPdf< V, M > * > m_pdfs
std::string m_prefix
Definition: VectorRV.h:131
BaseJointPdf< V, M > * m_pdf
Definition: VectorRV.h:133
unsigned int displayVerbosity() const
Definition: Environment.C:436
template<class V , class M >
QUESO::ConcatenatedVectorRV< V, M >::~ConcatenatedVectorRV ( )
virtual

Virtual destructor.

Definition at line 127 of file ConcatenatedVectorRV.C.

128 {
129  delete m_mdf;
130  delete m_unifiedCdf;
131  delete m_subCdf;
132  delete m_realizer;
133  delete m_pdf;
134 }
const BaseVectorCdf< V, M > * m_unifiedCdf
Definition: VectorRV.h:136
const BaseVectorCdf< V, M > * m_subCdf
Definition: VectorRV.h:135
BaseVectorRealizer< V, M > * m_realizer
Definition: VectorRV.h:134
const BaseVectorMdf< V, M > * m_mdf
Definition: VectorRV.h:137
BaseJointPdf< V, M > * m_pdf
Definition: VectorRV.h:133

Member Function Documentation

template<class V , class M >
void QUESO::ConcatenatedVectorRV< V, M >::print ( std::ostream &  os) const
virtual

TODO: Prints the vector RV.

Todo:
: implement me!

Implements QUESO::BaseVectorRV< V, M >.

Definition at line 138 of file ConcatenatedVectorRV.C.

139 {
140  os << "ConcatenatedVectorRV<V,M>::print() says, 'Please implement me.'" << std::endl;
141  return;
142 }

Member Data Documentation

template<class V , class M >
std::vector<const BaseJointPdf <V,M>* > QUESO::ConcatenatedVectorRV< V, M >::m_pdfs
private
template<class V , class M >
std::vector<const BaseVectorRealizer<V,M>* > QUESO::ConcatenatedVectorRV< V, M >::m_realizers
private
template<class V , class M >
std::vector<const BaseVectorRV <V,M>* > QUESO::ConcatenatedVectorRV< V, M >::m_rvs
private

The documentation for this class was generated from the following files:

Generated on Thu Apr 23 2015 19:18:36 for queso-0.50.1 by  doxygen 1.8.5