EpetraExt Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
EpetraExt::MultiPointModelEvaluator Class Reference

#include <EpetraExt_MultiPointModelEvaluator.h>

Inheritance diagram for EpetraExt::MultiPointModelEvaluator:
Inheritance graph
[legend]

Public Member Functions

 ~MultiPointModelEvaluator ()
 
- Public Member Functions inherited from EpetraExt::ModelEvaluator
virtual ~ModelEvaluator ()
 
virtual Teuchos::RCP< const
Teuchos::Array< std::string > > 
get_p_names (int l) const
 Get the names of the parameters associated with parameter subvector l if available. More...
 
virtual Teuchos::ArrayView
< const std::string > 
get_g_names (int j) const
 Get the names of the response functions associated with response subvector j if available. More...
 
virtual Teuchos::RCP< const
Epetra_Vector
get_x_dot_init () const
 
virtual Teuchos::RCP< const
Epetra_Vector
get_x_dotdot_init () const
 
virtual double get_t_init () const
 
virtual double getInfBound () const
 Return the value of an infinite bound. More...
 
virtual Teuchos::RCP< const
Epetra_Vector
get_x_lower_bounds () const
 
virtual Teuchos::RCP< const
Epetra_Vector
get_x_upper_bounds () const
 
virtual Teuchos::RCP< const
Epetra_Vector
get_p_lower_bounds (int l) const
 
virtual Teuchos::RCP< const
Epetra_Vector
get_p_upper_bounds (int l) const
 
virtual double get_t_lower_bound () const
 
virtual double get_t_upper_bound () const
 
virtual Teuchos::RCP
< EpetraExt::ModelEvaluator::Preconditioner
create_WPrec () const
 
virtual Teuchos::RCP
< Epetra_Operator
create_DfDp_op (int l) const
 
virtual Teuchos::RCP
< Epetra_Operator
create_DgDx_dot_op (int j) const
 
virtual Teuchos::RCP
< Epetra_Operator
create_DgDx_dotdot_op (int j) const
 
virtual Teuchos::RCP
< Epetra_Operator
create_DgDx_op (int j) const
 
virtual Teuchos::RCP
< Epetra_Operator
create_DgDp_op (int j, int l) const
 
- Public Member Functions inherited from Teuchos::Describable
DescribableStreamManipulatorState describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default)
 
std::ostream & operator<< (std::ostream &os, const DescribableStreamManipulatorState &d)
 
virtual std::string description () const
 
virtual void describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const
 
void describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const
 
virtual ~Describable ()
 
 LabeledObject ()
 
virtual ~LabeledObject ()
 
virtual void setObjectLabel (const std::string &objectLabel)
 
virtual std::string getObjectLabel () const
 

Private Attributes

Teuchos::RCP
< EpetraExt::ModelEvaluator
underlyingME
 
Teuchos::RCP
< EpetraExt::MultiComm
globalComm
 Pointer to the global (full XYZT) communicator. More...
 
Teuchos::RCP< std::vector
< Teuchos::RCP< Epetra_Vector > > > 
q_vec
 Array of parameter vectors that define the multi-point problem. More...
 
Teuchos::RCP< Epetra_RowMatrixsplit_W
 Pointer to split (spatial) Jacobian matrix. More...
 
Teuchos::RCP< Epetra_Vectorsplit_x
 Split (spatial) input vector – local storage. More...
 
Teuchos::RCP< Epetra_Vectorsplit_f
 Split (spatial) residual vector – local storage. More...
 
Teuchos::RCP< Epetra_Vectorsplit_g
 Split vector of response functions – local storage. More...
 
Teuchos::RCP< Epetra_MultiVectorsplit_DfDp
 Split sensitivity vector – local storage. More...
 
Teuchos::RCP< Epetra_MultiVectorsplit_DgDx
 Split sensitivity vector – local storage. More...
 
Teuchos::RCP< Epetra_MultiVectorsplit_DgDp
 
EpetraExt::ModelEvaluator::DerivativeMultiVectorderivMV_DfDp
 
EpetraExt::ModelEvaluator::Derivativederiv_DfDp
 
EpetraExt::ModelEvaluator::DerivativeMultiVectorderivMV_DgDx
 
EpetraExt::ModelEvaluator::Derivativederiv_DgDx
 
EpetraExt::ModelEvaluator::DerivativeMultiVectorderivMV_DgDp
 
EpetraExt::ModelEvaluator::Derivativederiv_DgDp
 
Teuchos::RCP
< EpetraExt::BlockCrsMatrix
block_W
 Pointer to global XYZT Jacobian matrix. More...
 
EpetraExt::BlockVectorblock_x
 Pointer to global multipoint solution vector – local storage. More...
 
EpetraExt::BlockVectorblock_f
 Pointer to global multipoint residual vector – local storage. More...
 
EpetraExt::BlockMultiVectorblock_DfDp
 Pointer to global multipoint DfDp multi vector – local storage. More...
 
EpetraExt::BlockMultiVectorblock_DgDx
 Pointer to global multipoint DfDp multi vector – local storage. More...
 
Teuchos::RCP
< EpetraExt::BlockVector
solution_init
 Pointer to initial multipoint solution vector. More...
 
int underlyingNg
 Number of g vectors supported by underlyingME, often used as a bool. More...
 
int timeStepsOnTimeDomain
 Number of time steps computed on each time domain. More...
 
int numTimeDomains
 Total number of time step domains. More...
 
int timeDomain
 Time domain on current processor. More...
 
std::vector< std::vector< int > > * rowStencil_int
 Stencil for each row of global XYZT Jacobian matrix. More...
 
std::vector< std::vector< long
long > > * 
rowStencil_LL
 
std::vector< int > * rowIndex_int
 Set of indices into global XYZT Jacobian matrix. More...
 
std::vector< long long > * rowIndex_LL
 
bool longlong
 
EDerivativeMultiVectorOrientation orientation_DgDp
 Some local data. More...
 
int num_dg0dp0
 
int num_g0
 
int num_p0
 
Teuchos::RCP< std::vector
< Teuchos::RCP< Epetra_Vector > > > 
matching_vec
 Array of vectors that have data for g-matching optimization problem. More...
 
bool matchingProblem
 

Constructors/initializers

 MultiPointModelEvaluator (Teuchos::RCP< EpetraExt::ModelEvaluator > underlyingME_, const Teuchos::RCP< EpetraExt::MultiComm > &globalComm_, const std::vector< Epetra_Vector * > initGuessVec, Teuchos::RCP< std::vector< Teuchos::RCP< Epetra_Vector > > > qvec, Teuchos::RCP< std::vector< Teuchos::RCP< Epetra_Vector > > > matching_vec=Teuchos::null)
 

Overridden from EpetraExt::ModelEvaluator .

Teuchos::RCP< const Epetra_Mapget_x_map () const
 
Teuchos::RCP< const Epetra_Mapget_f_map () const
 
Teuchos::RCP< const Epetra_Mapget_p_map (int l) const
 . More...
 
Teuchos::RCP< const Epetra_Mapget_g_map (int j) const
 . More...
 
Teuchos::RCP< const Epetra_Vectorget_x_init () const
 
Teuchos::RCP< const Epetra_Vectorget_p_init (int l) const
 
Teuchos::RCP< Epetra_Operatorcreate_W () const
 
InArgs createInArgs () const
 
OutArgs createOutArgs () const
 
void evalModel (const InArgs &inArgs, const OutArgs &outArgs) const
 

Additional Inherited Members

- Public Types inherited from EpetraExt::ModelEvaluator
enum  EInArgsMembers {
  IN_ARG_x_dot, IN_ARG_x, IN_ARG_x_dot_poly, IN_ARG_x_poly,
  IN_ARG_x_dot_sg, IN_ARG_x_sg, IN_ARG_x_dot_mp, IN_ARG_x_mp,
  IN_ARG_t, IN_ARG_alpha, IN_ARG_beta, IN_ARG_step_size,
  IN_ARG_stage_number, IN_ARG_x_dotdot, IN_ARG_x_dotdot_poly, IN_ARG_x_dotdot_sg,
  IN_ARG_x_dotdot_mp, IN_ARG_omega, IN_ARG_sg_basis, IN_ARG_sg_quadrature,
  IN_ARG_sg_expansion
}
 
enum  EInArgs_p_sg { IN_ARG_p_sg }
 
enum  EInArgs_p_mp { IN_ARG_p_mp }
 
enum  EEvalType { EVAL_TYPE_EXACT, EVAL_TYPE_APPROX_DERIV, EVAL_TYPE_VERY_APPROX_DERIV }
 
enum  EDerivativeMultiVectorOrientation { DERIV_MV_BY_COL, DERIV_TRANS_MV_BY_ROW }
 
enum  EDerivativeLinearOp { DERIV_LINEAR_OP }
 
enum  EDerivativeLinearity { DERIV_LINEARITY_UNKNOWN, DERIV_LINEARITY_CONST, DERIV_LINEARITY_NONCONST }
 
enum  ERankStatus { DERIV_RANK_UNKNOWN, DERIV_RANK_FULL, DERIV_RANK_DEFICIENT }
 
enum  EOutArgsMembers {
  OUT_ARG_f, OUT_ARG_W, OUT_ARG_f_poly, OUT_ARG_f_sg,
  OUT_ARG_W_sg, OUT_ARG_f_mp, OUT_ARG_W_mp, OUT_ARG_WPrec
}
 
enum  EOutArgsDfDp { OUT_ARG_DfDp }
 
enum  EOutArgsDgDx_dot { OUT_ARG_DgDx_dot }
 
enum  EOutArgsDgDx_dotdot { OUT_ARG_DgDx_dotdot }
 
enum  EOutArgsDgDx { OUT_ARG_DgDx }
 
enum  EOutArgsDgDp { OUT_ARG_DgDp }
 
enum  EOutArgsDfDp_sg { OUT_ARG_DfDp_sg }
 
enum  EOutArgs_g_sg { OUT_ARG_g_sg }
 
enum  EOutArgsDgDx_dot_sg { OUT_ARG_DgDx_dot_sg }
 
enum  EOutArgsDgDx_dotdot_sg { OUT_ARG_DgDx_dotdot_sg }
 
enum  EOutArgsDgDx_sg { OUT_ARG_DgDx_sg }
 
enum  EOutArgsDgDp_sg { OUT_ARG_DgDp_sg }
 
enum  EOutArgsDfDp_mp { OUT_ARG_DfDp_mp }
 
enum  EOutArgs_g_mp { OUT_ARG_g_mp }
 
enum  EOutArgsDgDx_dot_mp { OUT_ARG_DgDx_dot_mp }
 
enum  EOutArgsDgDx_dotdot_mp { OUT_ARG_DgDx_dotdot_mp }
 
enum  EOutArgsDgDx_mp { OUT_ARG_DgDx_mp }
 
enum  EOutArgsDgDp_mp { OUT_ARG_DgDp_mp }
 
typedef Teuchos::RCP< const
Stokhos::ProductEpetraVector > 
mp_const_vector_t
 
typedef Teuchos::RCP< const
Stokhos::ProductEpetraMultiVector > 
mp_const_multivector_t
 
typedef Teuchos::RCP< const
Stokhos::ProductEpetraOperator > 
mp_const_operator_t
 
typedef Teuchos::RCP
< Stokhos::ProductEpetraVector > 
mp_vector_t
 
typedef Teuchos::RCP
< Stokhos::ProductEpetraMultiVector > 
mp_multivector_t
 
typedef Teuchos::RCP
< Stokhos::ProductEpetraOperator > 
mp_operator_t
 
- Static Public Attributes inherited from EpetraExt::ModelEvaluator
static const int NUM_E_IN_ARGS_MEMBERS =21
 
static const int NUM_E_OUT_ARGS_MEMBERS =9
 
- Static Public Attributes inherited from Teuchos::Describable
static const EVerbosityLevel verbLevel_default
 

Detailed Description

Definition at line 68 of file EpetraExt_MultiPointModelEvaluator.h.

Constructor & Destructor Documentation

EpetraExt::MultiPointModelEvaluator::MultiPointModelEvaluator ( Teuchos::RCP< EpetraExt::ModelEvaluator underlyingME_,
const Teuchos::RCP< EpetraExt::MultiComm > &  globalComm_,
const std::vector< Epetra_Vector * >  initGuessVec,
Teuchos::RCP< std::vector< Teuchos::RCP< Epetra_Vector > > >  qvec,
Teuchos::RCP< std::vector< Teuchos::RCP< Epetra_Vector > > >  matching_vec = Teuchos::null 
)

Definition at line 48 of file EpetraExt_MultiPointModelEvaluator.cpp.

EpetraExt::MultiPointModelEvaluator::~MultiPointModelEvaluator ( )

Definition at line 210 of file EpetraExt_MultiPointModelEvaluator.cpp.

Member Function Documentation

Teuchos::RCP< const Epetra_Map > EpetraExt::MultiPointModelEvaluator::get_x_map ( ) const
virtual

Implements EpetraExt::ModelEvaluator.

Definition at line 235 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::MultiPointModelEvaluator::get_f_map ( ) const
virtual

Implements EpetraExt::ModelEvaluator.

Definition at line 240 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::MultiPointModelEvaluator::get_p_map ( int  l) const
virtual

.

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 245 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::MultiPointModelEvaluator::get_g_map ( int  j) const
virtual

.

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 250 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::MultiPointModelEvaluator::get_x_init ( ) const
virtual

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 255 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::MultiPointModelEvaluator::get_p_init ( int  l) const
virtual

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 260 of file EpetraExt_MultiPointModelEvaluator.cpp.

Teuchos::RCP< Epetra_Operator > EpetraExt::MultiPointModelEvaluator::create_W ( ) const
virtual

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 265 of file EpetraExt_MultiPointModelEvaluator.cpp.

EpetraExt::ModelEvaluator::InArgs EpetraExt::MultiPointModelEvaluator::createInArgs ( ) const
virtual

Implements EpetraExt::ModelEvaluator.

Definition at line 270 of file EpetraExt_MultiPointModelEvaluator.cpp.

EpetraExt::ModelEvaluator::OutArgs EpetraExt::MultiPointModelEvaluator::createOutArgs ( ) const
virtual

Implements EpetraExt::ModelEvaluator.

Definition at line 280 of file EpetraExt_MultiPointModelEvaluator.cpp.

void EpetraExt::MultiPointModelEvaluator::evalModel ( const InArgs inArgs,
const OutArgs outArgs 
) const
virtual

Implements EpetraExt::ModelEvaluator.

Definition at line 325 of file EpetraExt_MultiPointModelEvaluator.cpp.

Member Data Documentation

Teuchos::RCP<EpetraExt::ModelEvaluator> EpetraExt::MultiPointModelEvaluator::underlyingME
private

Definition at line 118 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<EpetraExt::MultiComm> EpetraExt::MultiPointModelEvaluator::globalComm
private

Pointer to the global (full XYZT) communicator.

Definition at line 121 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<std::vector< Teuchos::RCP<Epetra_Vector> > > EpetraExt::MultiPointModelEvaluator::q_vec
private

Array of parameter vectors that define the multi-point problem.

Definition at line 124 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_RowMatrix> EpetraExt::MultiPointModelEvaluator::split_W
private

Pointer to split (spatial) Jacobian matrix.

Definition at line 127 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_Vector> EpetraExt::MultiPointModelEvaluator::split_x
private

Split (spatial) input vector – local storage.

Definition at line 130 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_Vector> EpetraExt::MultiPointModelEvaluator::split_f
private

Split (spatial) residual vector – local storage.

Definition at line 133 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_Vector> EpetraExt::MultiPointModelEvaluator::split_g
private

Split vector of response functions – local storage.

Definition at line 136 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_MultiVector> EpetraExt::MultiPointModelEvaluator::split_DfDp
private

Split sensitivity vector – local storage.

Definition at line 139 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_MultiVector> EpetraExt::MultiPointModelEvaluator::split_DgDx
private

Split sensitivity vector – local storage.

Definition at line 142 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<Epetra_MultiVector> EpetraExt::MultiPointModelEvaluator::split_DgDp
private

Definition at line 143 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::DerivativeMultiVector* EpetraExt::MultiPointModelEvaluator::derivMV_DfDp
private

Definition at line 145 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::Derivative* EpetraExt::MultiPointModelEvaluator::deriv_DfDp
private

Definition at line 146 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::DerivativeMultiVector* EpetraExt::MultiPointModelEvaluator::derivMV_DgDx
private

Definition at line 147 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::Derivative* EpetraExt::MultiPointModelEvaluator::deriv_DgDx
private

Definition at line 148 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::DerivativeMultiVector* EpetraExt::MultiPointModelEvaluator::derivMV_DgDp
private

Definition at line 149 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::ModelEvaluator::Derivative* EpetraExt::MultiPointModelEvaluator::deriv_DgDp
private

Definition at line 150 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<EpetraExt::BlockCrsMatrix> EpetraExt::MultiPointModelEvaluator::block_W
private

Pointer to global XYZT Jacobian matrix.

Definition at line 153 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::BlockVector* EpetraExt::MultiPointModelEvaluator::block_x
private

Pointer to global multipoint solution vector – local storage.

Definition at line 156 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::BlockVector* EpetraExt::MultiPointModelEvaluator::block_f
private

Pointer to global multipoint residual vector – local storage.

Definition at line 159 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::BlockMultiVector* EpetraExt::MultiPointModelEvaluator::block_DfDp
private

Pointer to global multipoint DfDp multi vector – local storage.

Definition at line 162 of file EpetraExt_MultiPointModelEvaluator.h.

EpetraExt::BlockMultiVector* EpetraExt::MultiPointModelEvaluator::block_DgDx
private

Pointer to global multipoint DfDp multi vector – local storage.

Definition at line 165 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<EpetraExt::BlockVector> EpetraExt::MultiPointModelEvaluator::solution_init
private

Pointer to initial multipoint solution vector.

Definition at line 168 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::underlyingNg
private

Number of g vectors supported by underlyingME, often used as a bool.

Definition at line 171 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::timeStepsOnTimeDomain
private

Number of time steps computed on each time domain.

Definition at line 174 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::numTimeDomains
private

Total number of time step domains.

Definition at line 177 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::timeDomain
private

Time domain on current processor.

Definition at line 180 of file EpetraExt_MultiPointModelEvaluator.h.

std::vector< std::vector<int> >* EpetraExt::MultiPointModelEvaluator::rowStencil_int
private

Stencil for each row of global XYZT Jacobian matrix.

Used in creating global XYZT Jacobian matrix for different finite difference schemes.

Definition at line 189 of file EpetraExt_MultiPointModelEvaluator.h.

std::vector< std::vector<long long> >* EpetraExt::MultiPointModelEvaluator::rowStencil_LL
private

Definition at line 192 of file EpetraExt_MultiPointModelEvaluator.h.

std::vector<int>* EpetraExt::MultiPointModelEvaluator::rowIndex_int
private

Set of indices into global XYZT Jacobian matrix.

Definition at line 197 of file EpetraExt_MultiPointModelEvaluator.h.

std::vector<long long>* EpetraExt::MultiPointModelEvaluator::rowIndex_LL
private

Definition at line 200 of file EpetraExt_MultiPointModelEvaluator.h.

bool EpetraExt::MultiPointModelEvaluator::longlong
private

Definition at line 202 of file EpetraExt_MultiPointModelEvaluator.h.

EDerivativeMultiVectorOrientation EpetraExt::MultiPointModelEvaluator::orientation_DgDp
private

Some local data.

Definition at line 205 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::num_dg0dp0
private

Definition at line 206 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::num_g0
private

Definition at line 207 of file EpetraExt_MultiPointModelEvaluator.h.

int EpetraExt::MultiPointModelEvaluator::num_p0
private

Definition at line 208 of file EpetraExt_MultiPointModelEvaluator.h.

Teuchos::RCP<std::vector< Teuchos::RCP<Epetra_Vector> > > EpetraExt::MultiPointModelEvaluator::matching_vec
private

Array of vectors that have data for g-matching optimization problem.

Definition at line 211 of file EpetraExt_MultiPointModelEvaluator.h.

bool EpetraExt::MultiPointModelEvaluator::matchingProblem
private

Definition at line 212 of file EpetraExt_MultiPointModelEvaluator.h.


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