Intrepid
Macros | Typedefs | Functions
example_03AD.cpp File Reference

Example building stiffness matrix and right hand side for a Poisson equation using nodal (Hgrad) elements. Here we exercise Sacado's Fad types for an automated construction of PDE Jacobians through automatic differentiation. More...

#include "Intrepid_FunctionSpaceTools.hpp"
#include "Intrepid_FieldContainer.hpp"
#include "Intrepid_CellTools.hpp"
#include "Intrepid_ArrayTools.hpp"
#include "Intrepid_HGRAD_HEX_C1_FEM.hpp"
#include "Intrepid_RealSpaceTools.hpp"
#include "Intrepid_DefaultCubatureFactory.hpp"
#include "Intrepid_Utils.hpp"
#include "Epetra_Time.h"
#include "Epetra_Map.h"
#include "Epetra_FECrsMatrix.h"
#include "Epetra_FEVector.h"
#include "Epetra_SerialComm.h"
#include "Teuchos_oblackholestream.hpp"
#include "Teuchos_RCP.hpp"
#include "Teuchos_BLAS.hpp"
#include "Teuchos_Time.hpp"
#include "Shards_CellTopology.hpp"
#include "EpetraExt_RowMatrixOut.h"
#include "EpetraExt_MultiVectorOut.h"
#include "EpetraExt_MatrixMatrix.h"
#include "Sacado.hpp"
#include "Sacado_Fad_DVFad.hpp"
#include "Sacado_Fad_SimpleFad.hpp"
#include "Sacado_CacheFad_DFad.hpp"
#include "Sacado_CacheFad_SFad.hpp"
#include "Sacado_CacheFad_SLFad.hpp"

Go to the source code of this file.

Macros

#define INTREPID_INTEGRATE_COMP_ENGINE   COMP_BLAS
 
#define BATCH_SIZE   10
 

Typedefs

typedef Sacado::CacheFad::SFad
< double, 8 > 
FadType
 

Functions

double evalu (double &x, double &y, double &z)
 
int evalGradu (double &x, double &y, double &z, double &gradu1, double &gradu2, double &gradu3)
 
double evalDivGradu (double &x, double &y, double &z)
 
int main (int argc, char *argv[])
 

Detailed Description

Example building stiffness matrix and right hand side for a Poisson equation using nodal (Hgrad) elements. Here we exercise Sacado's Fad types for an automated construction of PDE Jacobians through automatic differentiation.

         div grad u = f in Omega
                  u = 0 on Gamma 

 Discrete linear system for nodal coefficients(x):
    
             Kx = b

        K - HGrad stiffness matrix
        b - right hand side vector 
Author
Created by P. Bochev, D. Ridzal, K. Peterson and J. Gohlke.
Remarks
Usage
 ./Intrepid_example_Drivers_Example_03.exe NX NY NZ verbose

    int NX              - num intervals in x direction (assumed box domain, 0,1)
    int NY              - num intervals in y direction (assumed box domain, 0,1)
    int NZ              - num intervals in z direction (assumed box domain, 0,1)
    verbose (optional)  - any character, indicates verbose output
Sample command line
./Intrepid_example_Drivers_Example_03.exe 10 10 10

Definition in file example_03AD.cpp.