EpetraExt::DiagonalTransientModel Class Reference

Simple transient diagonal model for an implicit or explicit ODE. More...

#include <EpetraExt_DiagonalTransientModel.hpp>

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

List of all members.

Public Types

enum  EGammaFit { GAMMA_FIT_LINEAR, GAMMA_FIT_RANDOM }

Related Functions

(Note that these are not member functions.)



Teuchos::RCP
< DiagonalTransientModel
diagonalTransientModel (Teuchos::RCP< Epetra_Comm > const &epetra_comm, Teuchos::RCP< Teuchos::ParameterList > const &paramList=Teuchos::null)
 Nonmember constructor.

Constructors, Initializers, Misc.



 DiagonalTransientModel (Teuchos::RCP< Epetra_Comm > const &epetra_comm)
 
Teuchos::RCP< const Epetra_Vectorget_gamma () const
 Return the model vector gamma,.
Teuchos::RCP< const Epetra_VectorgetExactSolution (const double t, const Epetra_Vector *coeff_s_p=0) const
 Return the exact solution as a function of time.
Teuchos::RCP< const
Epetra_MultiVector
getExactSensSolution (const double t, const Epetra_Vector *coeff_s_p=0) const
 Return the exact sensitivity of x as a function of time.

Overridden from ParameterListAcceptor



void setParameterList (Teuchos::RCP< Teuchos::ParameterList > const &paramList)
 
Teuchos::RCP
< Teuchos::ParameterList > 
getNonconstParameterList ()
 
Teuchos::RCP
< Teuchos::ParameterList > 
unsetParameterList ()
 
Teuchos::RCP< const
Teuchos::ParameterList > 
getParameterList () const
 
Teuchos::RCP< const
Teuchos::ParameterList > 
getValidParameters () const
 

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
 .
Teuchos::RCP< const
Teuchos::Array< std::string > > 
get_p_names (int l) const
 .
Teuchos::RCP< const Epetra_Mapget_g_map (int j) const
 .
Teuchos::RCP< const Epetra_Vectorget_x_init () const
 
Teuchos::RCP< const Epetra_Vectorget_x_dot_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
 

Detailed Description

Simple transient diagonal model for an implicit or explicit ODE.

The explicit ODE form of the model is:


  x_dot(i) = f_hat(x(i), gamma(i), s(i), t), for i = 0...n-1, on t in [0,t_f]

 

where:


  f_hat(x(i), gamma(i), s(i), t) = gama(i)*x(i) + exp(gamma(i)*t)*sin(s(i),t)

 

The implicit ODE form of the model i:



  f(i)(x_dot(i), x(i), t) = x_dot(i) - f_hat(x(i), gamma(i), s(i), t),
  
    for i = 0...n-1, on t in [0,t_f]

 

This is a diagonal problem so it does not make the greatest test problem but it does make it easy to derive tests for as a starter.

The coefficients s can be exposed as model parameters and are called coeff_s_p in the code. The selection of the coefficients is handled through the

ToDo: Finish Documentation!

Definition at line 86 of file EpetraExt_DiagonalTransientModel.hpp.


Member Enumeration Documentation

Enumerator:
GAMMA_FIT_LINEAR 
GAMMA_FIT_RANDOM 

Definition at line 166 of file EpetraExt_DiagonalTransientModel.hpp.


Constructor & Destructor Documentation

EpetraExt::DiagonalTransientModel::DiagonalTransientModel ( Teuchos::RCP< Epetra_Comm > const &  epetra_comm  ) 

Definition at line 153 of file EpetraExt_DiagonalTransientModel.cpp.


Member Function Documentation

Teuchos::RCP< const Epetra_Vector > EpetraExt::DiagonalTransientModel::get_gamma (  )  const

Return the model vector gamma,.

Definition at line 172 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::DiagonalTransientModel::getExactSolution ( const double  t,
const Epetra_Vector coeff_s_p = 0 
) const

Return the exact solution as a function of time.

Definition at line 179 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_MultiVector > EpetraExt::DiagonalTransientModel::getExactSensSolution ( const double  t,
const Epetra_Vector coeff_s_p = 0 
) const

Return the exact sensitivity of x as a function of time.

Definition at line 198 of file EpetraExt_DiagonalTransientModel.cpp.

void EpetraExt::DiagonalTransientModel::setParameterList ( Teuchos::RCP< Teuchos::ParameterList > const &  paramList  ) 

Definition at line 224 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< Teuchos::ParameterList > EpetraExt::DiagonalTransientModel::getNonconstParameterList (  ) 

Definition at line 247 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< Teuchos::ParameterList > EpetraExt::DiagonalTransientModel::unsetParameterList (  ) 

Definition at line 254 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Teuchos::ParameterList > EpetraExt::DiagonalTransientModel::getParameterList (  )  const

Definition at line 263 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Teuchos::ParameterList > EpetraExt::DiagonalTransientModel::getValidParameters (  )  const

Definition at line 270 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::DiagonalTransientModel::get_x_map (  )  const [virtual]

Implements EpetraExt::ModelEvaluator.

Definition at line 314 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::DiagonalTransientModel::get_f_map (  )  const [virtual]

Implements EpetraExt::ModelEvaluator.

Definition at line 321 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::DiagonalTransientModel::get_p_map ( int  l  )  const [virtual]

.

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 328 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Teuchos::Array< std::string > > EpetraExt::DiagonalTransientModel::get_p_names ( int  l  )  const [virtual]

.

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 338 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Map > EpetraExt::DiagonalTransientModel::get_g_map ( int  j  )  const [virtual]

.

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 348 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::DiagonalTransientModel::get_x_init (  )  const [virtual]

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 358 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::DiagonalTransientModel::get_x_dot_init (  )  const [virtual]

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 365 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< const Epetra_Vector > EpetraExt::DiagonalTransientModel::get_p_init ( int  l  )  const [virtual]

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 372 of file EpetraExt_DiagonalTransientModel.cpp.

Teuchos::RCP< Epetra_Operator > EpetraExt::DiagonalTransientModel::create_W (  )  const [virtual]

Reimplemented from EpetraExt::ModelEvaluator.

Definition at line 382 of file EpetraExt_DiagonalTransientModel.cpp.

EpetraExt::ModelEvaluator::InArgs EpetraExt::DiagonalTransientModel::createInArgs (  )  const [virtual]

Implements EpetraExt::ModelEvaluator.

Definition at line 391 of file EpetraExt_DiagonalTransientModel.cpp.

EpetraExt::ModelEvaluator::OutArgs EpetraExt::DiagonalTransientModel::createOutArgs (  )  const [virtual]

Implements EpetraExt::ModelEvaluator.

Definition at line 407 of file EpetraExt_DiagonalTransientModel.cpp.

void EpetraExt::DiagonalTransientModel::evalModel ( const InArgs inArgs,
const OutArgs outArgs 
) const [virtual]

Implements EpetraExt::ModelEvaluator.

Definition at line 444 of file EpetraExt_DiagonalTransientModel.cpp.


Friends And Related Function Documentation

Teuchos::RCP< DiagonalTransientModel > diagonalTransientModel ( Teuchos::RCP< Epetra_Comm > const &  epetra_comm,
Teuchos::RCP< Teuchos::ParameterList > const &  paramList = Teuchos::null 
) [related]

Nonmember constructor.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 09:57:56 2011 for EpetraExt by  doxygen 1.6.3