GLpApp::GLpYUEpetraDataPool Class Reference

#include <GLpApp_GLpYUEpetraDataPool.hpp>

Inheritance diagram for GLpApp::GLpYUEpetraDataPool:

[legend]
List of all members.

Public Member Functions

 GLpYUEpetraDataPool (Teuchos::RefCountPtr< const Epetra_Comm > const &commptr, const double beta, const double len_x, const double len_y, const int local_nx, const int local_ny, const char myfile[], const bool trace)
void computeAll (const GenSQP::Vector &x)
 Calls functions to compute nonlinear quantities and the augmented system matrix. These computations are performed after every update of the SQP iterate.
int solveAugsys (const Teuchos::RefCountPtr< const Epetra_MultiVector > &rhsy, const Teuchos::RefCountPtr< const Epetra_MultiVector > &rhsu, const Teuchos::RefCountPtr< const Epetra_MultiVector > &rhsp, const Teuchos::RefCountPtr< Epetra_MultiVector > &y, const Teuchos::RefCountPtr< Epetra_MultiVector > &u, const Teuchos::RefCountPtr< Epetra_MultiVector > &p, double tol)
 Solves augmented system.
Teuchos::RefCountPtr< const
Epetra_Comm
getCommPtr ()
Teuchos::RefCountPtr< Epetra_FECrsMatrixgetA ()
Teuchos::RefCountPtr< Epetra_FECrsMatrixgetB ()
Teuchos::RefCountPtr< Epetra_FECrsMatrixgetH ()
Teuchos::RefCountPtr< Epetra_FECrsMatrixgetR ()
Teuchos::RefCountPtr< Epetra_CrsMatrixgetAugmat ()
Teuchos::RefCountPtr< Epetra_FECrsMatrixgetNpy ()
Teuchos::RefCountPtr< Epetra_FEVectorgetb ()
Teuchos::RefCountPtr< Epetra_FEVectorgetq ()
Teuchos::RefCountPtr< Epetra_FEVectorgetNy ()
void computeNy (const Teuchos::RefCountPtr< const Epetra_MultiVector > &y)
 Calls the function that computes the nonlinear term.
void computeNpy (const Teuchos::RefCountPtr< const Epetra_MultiVector > &y)
 Calls the function that computes the Jacobian of the nonlinear term.
void computeAugmat ()
 Assembles the augmented system (KKT-type) matrix.
Teuchos::RefCountPtr< const
Epetra_SerialDenseMatrix
getipcoords ()
Teuchos::RefCountPtr< const
Epetra_IntSerialDenseVector
getipindx ()
Teuchos::RefCountPtr< const
Epetra_SerialDenseMatrix
getpcoords ()
Teuchos::RefCountPtr< const
Epetra_IntSerialDenseVector
getpindx ()
Teuchos::RefCountPtr< const
Epetra_IntSerialDenseMatrix
gett ()
Teuchos::RefCountPtr< const
Epetra_IntSerialDenseMatrix
gete ()
double getbeta ()
void PrintVec (const Teuchos::RefCountPtr< const Epetra_Vector > &x)
 Outputs the solution vector to files.

Private Attributes

Teuchos::RefCountPtr< const
Epetra_Comm
commptr_
Teuchos::RefCountPtr< Epetra_SerialDenseMatrixipcoords_
 Coordinates of nodes that are unique to this subdomain.
Teuchos::RefCountPtr< Epetra_IntSerialDenseVectoripindx_
 Global nodes (interior, nonoverlapping) in this subdomain.
Teuchos::RefCountPtr< Epetra_SerialDenseMatrixpcoords_
 Coordinates of all nodes in this subdomain.
Teuchos::RefCountPtr< Epetra_IntSerialDenseVectorpindx_
 Global nodes (interior + shared, overlapping) in this subdomain.
Teuchos::RefCountPtr< Epetra_IntSerialDenseMatrixt_
 Elements (this includes all overlapping nodes).
Teuchos::RefCountPtr< Epetra_IntSerialDenseMatrixe_
 Edges.
Teuchos::RefCountPtr< Epetra_FECrsMatrixA_
 Volume stiffness matrix.
Teuchos::RefCountPtr< Epetra_FECrsMatrixB_
 Control/state mass matrix.
Teuchos::RefCountPtr< Epetra_FECrsMatrixH_
 Volume mass matrix.
Teuchos::RefCountPtr< Epetra_FECrsMatrixR_
 Edge mass matrix.
Teuchos::RefCountPtr< Epetra_MultiVectorB_bar_
 Basis matrix for p_bar=B*p.
Teuchos::RefCountPtr< Epetra_CrsMatrixAugmat_
 Augmented system matrix: [ I Jac* ] [Jac 0 ].
Teuchos::RefCountPtr< Epetra_FECrsMatrixNpy_
 Jacobian of the nonlinear term.
Teuchos::RefCountPtr< Epetra_FEVectorb_
 Right-hand side of the PDE.
Teuchos::RefCountPtr< Epetra_FEVectorq_
 The desired state.
Teuchos::RefCountPtr< Epetra_FEVectorNy_
double beta_
 Regularization parameter.

Constructor & Destructor Documentation

GLpApp::GLpYUEpetraDataPool::GLpYUEpetraDataPool Teuchos::RefCountPtr< const Epetra_Comm > const &  commptr,
const double  beta,
const double  len_x,
const double  len_y,
const int  local_nx,
const int  local_ny,
const char  myfile[],
const bool  trace
 

Definition at line 176 of file GLpApp_GLpYUEpetraDataPool.cpp.


Member Function Documentation

void GLpApp::GLpYUEpetraDataPool::computeAll const GenSQP::Vector x  ) 
 

Calls functions to compute nonlinear quantities and the augmented system matrix. These computations are performed after every update of the SQP iterate.

Definition at line 228 of file GLpApp_GLpYUEpetraDataPool.cpp.

int GLpApp::GLpYUEpetraDataPool::solveAugsys const Teuchos::RefCountPtr< const Epetra_MultiVector > &  rhsy,
const Teuchos::RefCountPtr< const Epetra_MultiVector > &  rhsu,
const Teuchos::RefCountPtr< const Epetra_MultiVector > &  rhsp,
const Teuchos::RefCountPtr< Epetra_MultiVector > &  y,
const Teuchos::RefCountPtr< Epetra_MultiVector > &  u,
const Teuchos::RefCountPtr< Epetra_MultiVector > &  p,
double  tol
 

Solves augmented system.

Definition at line 243 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_Comm > GLpApp::GLpYUEpetraDataPool::getCommPtr  ) 
 

Definition at line 446 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FECrsMatrix > GLpApp::GLpYUEpetraDataPool::getA  ) 
 

Definition at line 448 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FECrsMatrix > GLpApp::GLpYUEpetraDataPool::getB  ) 
 

Definition at line 450 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FECrsMatrix > GLpApp::GLpYUEpetraDataPool::getH  ) 
 

Definition at line 452 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FECrsMatrix > GLpApp::GLpYUEpetraDataPool::getR  ) 
 

Definition at line 454 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_CrsMatrix > GLpApp::GLpYUEpetraDataPool::getAugmat  ) 
 

Definition at line 456 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FECrsMatrix > GLpApp::GLpYUEpetraDataPool::getNpy  ) 
 

Definition at line 458 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FEVector > GLpApp::GLpYUEpetraDataPool::getb  ) 
 

Definition at line 460 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FEVector > GLpApp::GLpYUEpetraDataPool::getq  ) 
 

Definition at line 462 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< Epetra_FEVector > GLpApp::GLpYUEpetraDataPool::getNy  ) 
 

Definition at line 464 of file GLpApp_GLpYUEpetraDataPool.cpp.

void GLpApp::GLpYUEpetraDataPool::computeNy const Teuchos::RefCountPtr< const Epetra_MultiVector > &  y  ) 
 

Calls the function that computes the nonlinear term.

Definition at line 481 of file GLpApp_GLpYUEpetraDataPool.cpp.

void GLpApp::GLpYUEpetraDataPool::computeNpy const Teuchos::RefCountPtr< const Epetra_MultiVector > &  y  ) 
 

Calls the function that computes the Jacobian of the nonlinear term.

Definition at line 492 of file GLpApp_GLpYUEpetraDataPool.cpp.

void GLpApp::GLpYUEpetraDataPool::computeAugmat  ) 
 

Assembles the augmented system (KKT-type) matrix.

Definition at line 503 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_SerialDenseMatrix > GLpApp::GLpYUEpetraDataPool::getipcoords  ) 
 

Definition at line 468 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_IntSerialDenseVector > GLpApp::GLpYUEpetraDataPool::getipindx  ) 
 

Definition at line 470 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_SerialDenseMatrix > GLpApp::GLpYUEpetraDataPool::getpcoords  ) 
 

Definition at line 472 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_IntSerialDenseVector > GLpApp::GLpYUEpetraDataPool::getpindx  ) 
 

Definition at line 474 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_IntSerialDenseMatrix > GLpApp::GLpYUEpetraDataPool::gett  ) 
 

Definition at line 476 of file GLpApp_GLpYUEpetraDataPool.cpp.

Teuchos::RefCountPtr< const Epetra_IntSerialDenseMatrix > GLpApp::GLpYUEpetraDataPool::gete  ) 
 

Definition at line 478 of file GLpApp_GLpYUEpetraDataPool.cpp.

double GLpApp::GLpYUEpetraDataPool::getbeta  ) 
 

Definition at line 466 of file GLpApp_GLpYUEpetraDataPool.cpp.

void GLpApp::GLpYUEpetraDataPool::PrintVec const Teuchos::RefCountPtr< const Epetra_Vector > &  x  ) 
 

Outputs the solution vector to files.

Definition at line 634 of file GLpApp_GLpYUEpetraDataPool.cpp.


Member Data Documentation

Teuchos::RefCountPtr<const Epetra_Comm> GLpApp::GLpYUEpetraDataPool::commptr_ [private]
 

Definition at line 99 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_SerialDenseMatrix> GLpApp::GLpYUEpetraDataPool::ipcoords_ [private]
 

Coordinates of nodes that are unique to this subdomain.

Definition at line 102 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_IntSerialDenseVector> GLpApp::GLpYUEpetraDataPool::ipindx_ [private]
 

Global nodes (interior, nonoverlapping) in this subdomain.

Definition at line 104 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_SerialDenseMatrix> GLpApp::GLpYUEpetraDataPool::pcoords_ [private]
 

Coordinates of all nodes in this subdomain.

Definition at line 106 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_IntSerialDenseVector> GLpApp::GLpYUEpetraDataPool::pindx_ [private]
 

Global nodes (interior + shared, overlapping) in this subdomain.

Definition at line 108 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_IntSerialDenseMatrix> GLpApp::GLpYUEpetraDataPool::t_ [private]
 

Elements (this includes all overlapping nodes).

Definition at line 110 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_IntSerialDenseMatrix> GLpApp::GLpYUEpetraDataPool::e_ [private]
 

Edges.

Definition at line 112 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FECrsMatrix> GLpApp::GLpYUEpetraDataPool::A_ [private]
 

Volume stiffness matrix.

Definition at line 115 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FECrsMatrix> GLpApp::GLpYUEpetraDataPool::B_ [private]
 

Control/state mass matrix.

Definition at line 117 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FECrsMatrix> GLpApp::GLpYUEpetraDataPool::H_ [private]
 

Volume mass matrix.

Definition at line 119 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FECrsMatrix> GLpApp::GLpYUEpetraDataPool::R_ [private]
 

Edge mass matrix.

Definition at line 121 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_MultiVector> GLpApp::GLpYUEpetraDataPool::B_bar_ [private]
 

Basis matrix for p_bar=B*p.

Definition at line 124 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_CrsMatrix> GLpApp::GLpYUEpetraDataPool::Augmat_ [private]
 

Augmented system matrix: [ I Jac* ] [Jac 0 ].

Definition at line 130 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FECrsMatrix> GLpApp::GLpYUEpetraDataPool::Npy_ [private]
 

Jacobian of the nonlinear term.

Definition at line 133 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FEVector> GLpApp::GLpYUEpetraDataPool::b_ [private]
 

Right-hand side of the PDE.

Definition at line 136 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FEVector> GLpApp::GLpYUEpetraDataPool::q_ [private]
 

The desired state.

Definition at line 138 of file GLpApp_GLpYUEpetraDataPool.hpp.

Teuchos::RefCountPtr<Epetra_FEVector> GLpApp::GLpYUEpetraDataPool::Ny_ [private]
 

Definition at line 140 of file GLpApp_GLpYUEpetraDataPool.hpp.

double GLpApp::GLpYUEpetraDataPool::beta_ [private]
 

Regularization parameter.

Definition at line 143 of file GLpApp_GLpYUEpetraDataPool.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:32:07 2008 for EpetraExt Package Browser (Single Doxygen Collection) by doxygen 1.3.9.1