Epetra-based Model Evaluator for QCAD coupled poisson-schrodinger solver. More...
#include <QCAD_CoupledPoissonSchrodinger.hpp>
Public Member Functions | |
~CoupledPoissonSchrodinger () | |
Teuchos::RCP< const Epetra_Map > | get_x_map () const |
Teuchos::RCP< const Epetra_Map > | get_f_map () const |
Teuchos::RCP< const Epetra_Map > | get_p_map (int l) const |
Teuchos::RCP< const Epetra_Map > | get_g_map (int j) const |
Teuchos::RCP< const Teuchos::Array< std::string > > | get_p_names (int l) const |
Teuchos::RCP< const Epetra_Vector > | get_x_init () const |
Teuchos::RCP< const Epetra_Vector > | get_x_dot_init () const |
Teuchos::RCP< const Epetra_Vector > | get_p_init (int l) const |
Teuchos::RCP< Epetra_Operator > | create_W () const |
Teuchos::RCP < EpetraExt::ModelEvaluator::Preconditioner > | create_WPrec () const |
Teuchos::RCP< Epetra_Operator > | create_DgDx_op (int j) const |
Teuchos::RCP< Epetra_Operator > | create_DgDx_dot_op (int j) const |
EpetraExt::ModelEvaluator::InArgs | createInArgs () const |
EpetraExt::ModelEvaluator::OutArgs | createOutArgs () const |
void | evalModel (const InArgs &inArgs, const OutArgs &outArgs) const |
Teuchos::RCP< Albany::Application > | getPoissonApp () const |
Teuchos::RCP< Albany::Application > | getSchrodingerApp () const |
Teuchos::RCP < Albany::AbstractDiscretization > | getDiscretization () const |
void | separateCombinedVector (const Teuchos::RCP< Epetra_Vector > &combinedVector, Teuchos::RCP< Epetra_Vector > &poisson_part, Teuchos::RCP< Epetra_MultiVector > &schrodinger_part) const |
void | separateCombinedVector (const Teuchos::RCP< Epetra_Vector > &combinedVector, Teuchos::RCP< Epetra_Vector > &poisson_part, Teuchos::RCP< Epetra_MultiVector > &schrodinger_part, Teuchos::RCP< Epetra_Vector > &eigenvalue_part) const |
void | separateCombinedVector (const Teuchos::RCP< const Epetra_Vector > &combinedVector, Teuchos::RCP< const Epetra_Vector > &poisson_part, Teuchos::RCP< const Epetra_MultiVector > &schrodinger_part) const |
void | separateCombinedVector (const Teuchos::RCP< const Epetra_Vector > &combinedVector, Teuchos::RCP< const Epetra_Vector > &poisson_part, Teuchos::RCP< const Epetra_MultiVector > &schrodinger_part, Teuchos::RCP< const Epetra_Vector > &eigenvalue_part) const |
Constructors/initializers | |
CoupledPoissonSchrodinger (const Teuchos::RCP< Teuchos::ParameterList > &appParams, const Teuchos::RCP< const Epetra_Comm > &comm, const Teuchos::RCP< const Epetra_Vector > &initial_guess) | |
Private Member Functions | |
Teuchos::RCP< const Teuchos::ParameterList > | getValidAppParameters () const |
Teuchos::RCP< const Teuchos::ParameterList > | getValidProblemParameters () const |
Private Attributes | |
Teuchos::RCP< const Epetra_Map > | disc_map |
Teuchos::RCP< const Epetra_Map > | disc_overlap_map |
Teuchos::RCP< Epetra_Map > | combined_SP_map |
Teuchos::RCP< const Epetra_Vector > | saved_initial_guess |
Teuchos::RCP< Albany::Application > | poissonApp |
Teuchos::RCP< Albany::Application > | schrodingerApp |
Teuchos::RCP < EpetraExt::ModelEvaluator > | poissonModel |
Teuchos::RCP < EpetraExt::ModelEvaluator > | schrodingerModel |
Teuchos::RCP< const Epetra_Comm > | myComm |
int | nEigenvals |
int | num_param_vecs |
int | num_response_vecs |
int | num_poisson_param_vecs |
int | num_schrodinger_param_vecs |
double | offset_to_CB |
Teuchos::RCP < QCAD::MaterialDatabase > | materialDB |
Material database. | |
int | numDims |
Miscellaneous. | |
double | temperature |
double | length_unit_in_m |
double | energy_unit_in_eV |
Teuchos::Array< ParamVec > | poisson_sacado_param_vec |
Sacado parameter vectors. | |
Teuchos::Array< ParamVec > | schrodinger_sacado_param_vec |
Teuchos::RCP < Albany::AbstractDiscretization > | disc |
Element discretization (just for collected exodus output). | |
bool | bVerbose |
Epetra-based Model Evaluator for QCAD coupled poisson-schrodinger solver.
Definition at line 38 of file QCAD_CoupledPoissonSchrodinger.hpp.
QCAD::CoupledPoissonSchrodinger::CoupledPoissonSchrodinger | ( | const Teuchos::RCP< Teuchos::ParameterList > & | appParams, | |
const Teuchos::RCP< const Epetra_Comm > & | comm, | |||
const Teuchos::RCP< const Epetra_Vector > & | initial_guess | |||
) |
Create Poisson application object (similar logic in Albany::SolverFactory::createAlbanyAppAndModel)
Create Schrodinger application object (similar logic in Albany::SolverFactory::createAlbanyAppAndModel)
Definition at line 47 of file QCAD_CoupledPoissonSchrodinger.cpp.
QCAD::CoupledPoissonSchrodinger::~CoupledPoissonSchrodinger | ( | ) |
Definition at line 384 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Map > QCAD::CoupledPoissonSchrodinger::get_x_map | ( | ) | const |
Definition at line 389 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Map > QCAD::CoupledPoissonSchrodinger::get_f_map | ( | ) | const |
Definition at line 394 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Map > QCAD::CoupledPoissonSchrodinger::get_p_map | ( | int | l | ) | const |
Definition at line 399 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Map > QCAD::CoupledPoissonSchrodinger::get_g_map | ( | int | j | ) | const |
Definition at line 411 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Teuchos::Array< std::string > > QCAD::CoupledPoissonSchrodinger::get_p_names | ( | int | l | ) | const |
Definition at line 424 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Vector > QCAD::CoupledPoissonSchrodinger::get_x_init | ( | ) | const |
Definition at line 438 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Vector > QCAD::CoupledPoissonSchrodinger::get_x_dot_init | ( | ) | const |
Definition at line 465 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Epetra_Vector > QCAD::CoupledPoissonSchrodinger::get_p_init | ( | int | l | ) | const |
Definition at line 489 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< Epetra_Operator > QCAD::CoupledPoissonSchrodinger::create_W | ( | ) | const |
Definition at line 504 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< EpetraExt::ModelEvaluator::Preconditioner > QCAD::CoupledPoissonSchrodinger::create_WPrec | ( | ) | const |
Definition at line 518 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< Epetra_Operator > QCAD::CoupledPoissonSchrodinger::create_DgDx_op | ( | int | j | ) | const |
Definition at line 528 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< Epetra_Operator > QCAD::CoupledPoissonSchrodinger::create_DgDx_dot_op | ( | int | j | ) | const |
Definition at line 544 of file QCAD_CoupledPoissonSchrodinger.cpp.
EpetraExt::ModelEvaluator::InArgs QCAD::CoupledPoissonSchrodinger::createInArgs | ( | ) | const |
Definition at line 560 of file QCAD_CoupledPoissonSchrodinger.cpp.
EpetraExt::ModelEvaluator::OutArgs QCAD::CoupledPoissonSchrodinger::createOutArgs | ( | ) | const |
Definition at line 577 of file QCAD_CoupledPoissonSchrodinger.cpp.
void QCAD::CoupledPoissonSchrodinger::evalModel | ( | const InArgs & | inArgs, | |
const OutArgs & | outArgs | |||
) | const |
Definition at line 627 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< Albany::Application > QCAD::CoupledPoissonSchrodinger::getPoissonApp | ( | ) | const |
Definition at line 1250 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< Albany::Application > QCAD::CoupledPoissonSchrodinger::getSchrodingerApp | ( | ) | const |
Definition at line 1256 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP<Albany::AbstractDiscretization> QCAD::CoupledPoissonSchrodinger::getDiscretization | ( | ) | const [inline] |
Definition at line 76 of file QCAD_CoupledPoissonSchrodinger.hpp.
void QCAD::CoupledPoissonSchrodinger::separateCombinedVector | ( | const Teuchos::RCP< Epetra_Vector > & | combinedVector, | |
Teuchos::RCP< Epetra_Vector > & | poisson_part, | |||
Teuchos::RCP< Epetra_MultiVector > & | schrodinger_part | |||
) | const |
Definition at line 1264 of file QCAD_CoupledPoissonSchrodinger.cpp.
void QCAD::CoupledPoissonSchrodinger::separateCombinedVector | ( | const Teuchos::RCP< Epetra_Vector > & | combinedVector, | |
Teuchos::RCP< Epetra_Vector > & | poisson_part, | |||
Teuchos::RCP< Epetra_MultiVector > & | schrodinger_part, | |||
Teuchos::RCP< Epetra_Vector > & | eigenvalue_part | |||
) | const |
Definition at line 1280 of file QCAD_CoupledPoissonSchrodinger.cpp.
void QCAD::CoupledPoissonSchrodinger::separateCombinedVector | ( | const Teuchos::RCP< const Epetra_Vector > & | combinedVector, | |
Teuchos::RCP< const Epetra_Vector > & | poisson_part, | |||
Teuchos::RCP< const Epetra_MultiVector > & | schrodinger_part | |||
) | const |
Definition at line 1298 of file QCAD_CoupledPoissonSchrodinger.cpp.
void QCAD::CoupledPoissonSchrodinger::separateCombinedVector | ( | const Teuchos::RCP< const Epetra_Vector > & | combinedVector, | |
Teuchos::RCP< const Epetra_Vector > & | poisson_part, | |||
Teuchos::RCP< const Epetra_MultiVector > & | schrodinger_part, | |||
Teuchos::RCP< const Epetra_Vector > & | eigenvalue_part | |||
) | const |
Definition at line 1314 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Teuchos::ParameterList > QCAD::CoupledPoissonSchrodinger::getValidAppParameters | ( | ) | const [private] |
Definition at line 1334 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP< const Teuchos::ParameterList > QCAD::CoupledPoissonSchrodinger::getValidProblemParameters | ( | ) | const [private] |
Definition at line 1350 of file QCAD_CoupledPoissonSchrodinger.cpp.
Teuchos::RCP<const Epetra_Map> QCAD::CoupledPoissonSchrodinger::disc_map [private] |
Definition at line 110 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<const Epetra_Map> QCAD::CoupledPoissonSchrodinger::disc_overlap_map [private] |
Definition at line 110 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<Epetra_Map> QCAD::CoupledPoissonSchrodinger::combined_SP_map [private] |
Definition at line 111 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<const Epetra_Vector> QCAD::CoupledPoissonSchrodinger::saved_initial_guess [private] |
Definition at line 112 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<Albany::Application> QCAD::CoupledPoissonSchrodinger::poissonApp [private] |
Definition at line 114 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<Albany::Application> QCAD::CoupledPoissonSchrodinger::schrodingerApp [private] |
Definition at line 114 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<EpetraExt::ModelEvaluator> QCAD::CoupledPoissonSchrodinger::poissonModel [private] |
Definition at line 115 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<EpetraExt::ModelEvaluator> QCAD::CoupledPoissonSchrodinger::schrodingerModel [private] |
Definition at line 115 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<const Epetra_Comm> QCAD::CoupledPoissonSchrodinger::myComm [private] |
Definition at line 117 of file QCAD_CoupledPoissonSchrodinger.hpp.
int QCAD::CoupledPoissonSchrodinger::nEigenvals [private] |
Definition at line 119 of file QCAD_CoupledPoissonSchrodinger.hpp.
int QCAD::CoupledPoissonSchrodinger::num_param_vecs [private] |
Definition at line 120 of file QCAD_CoupledPoissonSchrodinger.hpp.
int QCAD::CoupledPoissonSchrodinger::num_response_vecs [private] |
Definition at line 120 of file QCAD_CoupledPoissonSchrodinger.hpp.
int QCAD::CoupledPoissonSchrodinger::num_poisson_param_vecs [private] |
Definition at line 121 of file QCAD_CoupledPoissonSchrodinger.hpp.
Definition at line 121 of file QCAD_CoupledPoissonSchrodinger.hpp.
double QCAD::CoupledPoissonSchrodinger::offset_to_CB [private] |
Definition at line 123 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<QCAD::MaterialDatabase> QCAD::CoupledPoissonSchrodinger::materialDB [private] |
Material database.
Definition at line 126 of file QCAD_CoupledPoissonSchrodinger.hpp.
int QCAD::CoupledPoissonSchrodinger::numDims [private] |
Miscellaneous.
Definition at line 129 of file QCAD_CoupledPoissonSchrodinger.hpp.
double QCAD::CoupledPoissonSchrodinger::temperature [private] |
Definition at line 130 of file QCAD_CoupledPoissonSchrodinger.hpp.
double QCAD::CoupledPoissonSchrodinger::length_unit_in_m [private] |
Definition at line 131 of file QCAD_CoupledPoissonSchrodinger.hpp.
double QCAD::CoupledPoissonSchrodinger::energy_unit_in_eV [private] |
Definition at line 132 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::Array<ParamVec> QCAD::CoupledPoissonSchrodinger::poisson_sacado_param_vec [mutable, private] |
Sacado parameter vectors.
Definition at line 135 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::Array<ParamVec> QCAD::CoupledPoissonSchrodinger::schrodinger_sacado_param_vec [mutable, private] |
Definition at line 135 of file QCAD_CoupledPoissonSchrodinger.hpp.
Teuchos::RCP<Albany::AbstractDiscretization> QCAD::CoupledPoissonSchrodinger::disc [private] |
Element discretization (just for collected exodus output).
Definition at line 138 of file QCAD_CoupledPoissonSchrodinger.hpp.
bool QCAD::CoupledPoissonSchrodinger::bVerbose [private] |
Definition at line 140 of file QCAD_CoupledPoissonSchrodinger.hpp.