LifeV
Interpolation Class Reference

#include <Interpolation.hpp>

+ Collaboration diagram for Interpolation:

Public Types

typedef RegionMesh< LinearTetramesh_Type
 
typedef std::shared_ptr< mesh_TypemeshPtr_Type
 
typedef VectorEpetra vector_Type
 
typedef std::shared_ptr< vector_TypevectorPtr_Type
 
typedef MatrixEpetra< Realmatrix_Type
 
typedef std::shared_ptr< matrix_TypematrixPtr_Type
 
typedef MapEpetra map_Type
 
typedef std::shared_ptr< MapEpetramapPtr_Type
 
typedef LifeV::Preconditioner basePrec_Type
 
typedef std::shared_ptr< basePrec_TypebasePrecPtr_Type
 
typedef LifeV::PreconditionerIfpack prec_Type
 
typedef std::shared_ptr< prec_TypeprecPtr_Type
 
typedef Teuchos::RCP< Teuchos::ParameterList > parameterList_Type
 
typedef FESpace< mesh_Type, MapEpetraFESpace_Type
 
typedef std::shared_ptr< FESpace_TypeFESpacePtr_Type
 

Public Member Functions

 Interpolation ()
 
 ~Interpolation ()
 
void setup (const GetPot &datafile, parameterList_Type belosList)
 
void setFlag (const UInt &flag)
 
void buildTableDofs_known (const FESpacePtr_Type &fespace)
 
void buildTableDofs_unknown (const FESpacePtr_Type &fespace)
 
void identifyNodes_known ()
 
void identifyNodes_unknown ()
 
void setVectors (const vectorPtr_Type &KnownField, const vectorPtr_Type &UnknownField)
 
void buildKnownInterfaceMap ()
 
void buildUnknownInterfaceMap ()
 
void buildOperators ()
 
void interpolationOperator ()
 
void projectionOperator ()
 
void expandGammaToOmega_Known (const vectorPtr_Type &vectorOnGamma, vectorPtr_Type &vectorOnOmega)
 
void restrictOmegaToGamma_Known (const vectorPtr_Type &vectorOnOmega, vectorPtr_Type &vectorOnGamma)
 
void interpolate ()
 
void solution (vectorPtr_Type &Solution)
 
void getSolutionOnGamma (vectorPtr_Type &GammaSolution)
 
void updateRhs (const vectorPtr_Type &newRhs)
 
void getInterpolationOperatorMap (mapPtr_Type &map)
 
void getprojectionOperatorMap (mapPtr_Type &map)
 
void getKnownInterfaceMap (mapPtr_Type &map)
 
void getNumerationInterfaceKnown (vectorPtr_Type &vector)
 
void getVectorialInterpolationMap (mapPtr_Type &map)
 
void free_space ()
 
void setMeshSize (const Real &mesh_size)
 

Private Member Functions

void buildInterpolationOperatorMap ()
 
void buildProjectionOperatorMap ()
 
void buildRhs ()
 
void interpolateCostantField ()
 
double computeRBFradius_known (const ID &index, std::vector< int > indexes)
 
double computeRBFradius_unknown (const ID &index, std::vector< int > indexes)
 
double rbf (double x1, double y1, double z1, double x2, double y2, double z2, double radius)
 

Private Attributes

std::vector< RealM_xcoord_known
 
std::vector< RealM_ycoord_known
 
std::vector< RealM_zcoord_known
 
std::vector< RealM_xcoord_unknown
 
std::vector< RealM_ycoord_unknown
 
std::vector< RealM_zcoord_unknown
 
std::vector< UIntM_marker_known
 
std::vector< UIntM_marker_unknown
 
UInt M_flag
 
std::set< IDM_GIdsKnownMesh_common
 
std::set< IDM_GIdsUnknownMesh_common
 
std::set< IDM_GIdsKnownMesh
 
std::set< IDM_GIdsUnknownMesh
 
vectorPtr_Type M_knownField
 
vectorPtr_Type M_unknownField
 
mapPtr_Type M_knownInterfaceMap
 
mapPtr_Type M_unknownInterfaceMap
 
vectorPtr_Type M_numerationInterfaceKnown
 
vectorPtr_Type M_numerationInterfaceUnknown
 
std::vector< vectorPtr_TypeM_numerationInterfaceKnownColumns
 
int M_pid
 
mapPtr_Type M_interpolationOperatorMap
 
mapPtr_Type M_interpolationOperatorMapVectorial
 
std::vector< std::vector< int > > M_dof_connectivity_known
 
std::vector< std::vector< int > > M_dof_connectivity_unknown
 
matrixPtr_Type M_interpolationOperator
 
mapPtr_Type M_projectionOperatorMap
 
mapPtr_Type M_projectionOperatorMapVectorial
 
matrixPtr_Type M_projectionOperator
 
vectorPtr_Type M_RhsF1
 
vectorPtr_Type M_RhsF2
 
vectorPtr_Type M_RhsF3
 
vectorPtr_Type M_RhsOne
 
vectorPtr_Type M_rbf_one
 
GetPot M_datafile
 
parameterList_Type M_belosList
 
vectorPtr_Type M_solutionOnGamma
 
Real M_links
 
basePrecPtr_Type M_precPtr
 
bool M_precBuilt
 

Detailed Description

Definition at line 54 of file Interpolation.hpp.

Member Typedef Documentation

◆ mesh_Type

Definition at line 58 of file Interpolation.hpp.

◆ meshPtr_Type

typedef std::shared_ptr<mesh_Type> meshPtr_Type

Definition at line 59 of file Interpolation.hpp.

◆ vector_Type

Definition at line 60 of file Interpolation.hpp.

◆ vectorPtr_Type

typedef std::shared_ptr<vector_Type> vectorPtr_Type

Definition at line 61 of file Interpolation.hpp.

◆ matrix_Type

Definition at line 62 of file Interpolation.hpp.

◆ matrixPtr_Type

typedef std::shared_ptr<matrix_Type> matrixPtr_Type

Definition at line 63 of file Interpolation.hpp.

◆ map_Type

Definition at line 64 of file Interpolation.hpp.

◆ mapPtr_Type

typedef std::shared_ptr<MapEpetra> mapPtr_Type

Definition at line 65 of file Interpolation.hpp.

◆ basePrec_Type

Definition at line 66 of file Interpolation.hpp.

◆ basePrecPtr_Type

typedef std::shared_ptr<basePrec_Type> basePrecPtr_Type

Definition at line 67 of file Interpolation.hpp.

◆ prec_Type

Definition at line 68 of file Interpolation.hpp.

◆ precPtr_Type

typedef std::shared_ptr<prec_Type> precPtr_Type

Definition at line 69 of file Interpolation.hpp.

◆ parameterList_Type

typedef Teuchos::RCP< Teuchos::ParameterList > parameterList_Type

Definition at line 70 of file Interpolation.hpp.

◆ FESpace_Type

Definition at line 71 of file Interpolation.hpp.

◆ FESpacePtr_Type

typedef std::shared_ptr<FESpace_Type> FESpacePtr_Type

Definition at line 72 of file Interpolation.hpp.

Constructor & Destructor Documentation

◆ Interpolation()

Definition at line 6 of file Interpolation.cpp.

◆ ~Interpolation()

Definition at line 11 of file Interpolation.cpp.

Member Function Documentation

◆ setup()

void setup ( const GetPot datafile,
parameterList_Type  belosList 
)

Definition at line 15 of file Interpolation.cpp.

◆ setFlag()

void setFlag ( const UInt flag)
inline

Definition at line 80 of file Interpolation.hpp.

◆ buildTableDofs_known()

void buildTableDofs_known ( const FESpacePtr_Type fespace)

Definition at line 198 of file Interpolation.cpp.

◆ buildTableDofs_unknown()

void buildTableDofs_unknown ( const FESpacePtr_Type fespace)

Definition at line 361 of file Interpolation.cpp.

◆ identifyNodes_known()

void identifyNodes_known ( )

Definition at line 449 of file Interpolation.cpp.

◆ identifyNodes_unknown()

void identifyNodes_unknown ( )

Definition at line 461 of file Interpolation.cpp.

◆ setVectors()

void setVectors ( const vectorPtr_Type KnownField,
const vectorPtr_Type UnknownField 
)

Definition at line 29 of file Interpolation.cpp.

◆ buildKnownInterfaceMap()

void buildKnownInterfaceMap ( )

Definition at line 473 of file Interpolation.cpp.

◆ buildUnknownInterfaceMap()

void buildUnknownInterfaceMap ( )

Definition at line 499 of file Interpolation.cpp.

◆ buildOperators()

void buildOperators ( )

Definition at line 36 of file Interpolation.cpp.

◆ interpolationOperator()

void interpolationOperator ( )

Definition at line 142 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ projectionOperator()

void projectionOperator ( )

Definition at line 46 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ expandGammaToOmega_Known()

void expandGammaToOmega_Known ( const vectorPtr_Type vectorOnGamma,
vectorPtr_Type vectorOnOmega 
)

Definition at line 724 of file Interpolation.cpp.

◆ restrictOmegaToGamma_Known()

void restrictOmegaToGamma_Known ( const vectorPtr_Type vectorOnOmega,
vectorPtr_Type vectorOnGamma 
)

Definition at line 749 of file Interpolation.cpp.

◆ interpolate()

void interpolate ( )

Definition at line 774 of file Interpolation.cpp.

◆ solution()

void solution ( vectorPtr_Type Solution)

Definition at line 893 of file Interpolation.cpp.

◆ getSolutionOnGamma()

void getSolutionOnGamma ( vectorPtr_Type GammaSolution)
inline

Definition at line 110 of file Interpolation.hpp.

◆ updateRhs()

void updateRhs ( const vectorPtr_Type newRhs)

Definition at line 900 of file Interpolation.cpp.

◆ getInterpolationOperatorMap()

void getInterpolationOperatorMap ( mapPtr_Type map)
inline

Definition at line 114 of file Interpolation.hpp.

◆ getprojectionOperatorMap()

void getprojectionOperatorMap ( mapPtr_Type map)
inline

Definition at line 116 of file Interpolation.hpp.

◆ getKnownInterfaceMap()

void getKnownInterfaceMap ( mapPtr_Type map)
inline

Definition at line 118 of file Interpolation.hpp.

◆ getNumerationInterfaceKnown()

void getNumerationInterfaceKnown ( vectorPtr_Type vector)
inline

Definition at line 120 of file Interpolation.hpp.

◆ getVectorialInterpolationMap()

void getVectorialInterpolationMap ( mapPtr_Type map)
inline

Definition at line 122 of file Interpolation.hpp.

◆ free_space()

void free_space ( )

Definition at line 344 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ setMeshSize()

void setMeshSize ( const Real mesh_size)
inline

Definition at line 126 of file Interpolation.hpp.

◆ buildInterpolationOperatorMap()

void buildInterpolationOperatorMap ( )
private

Definition at line 524 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ buildProjectionOperatorMap()

void buildProjectionOperatorMap ( )
private

Definition at line 601 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ buildRhs()

void buildRhs ( )
private

Definition at line 670 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ interpolateCostantField()

void interpolateCostantField ( )
private

Definition at line 698 of file Interpolation.cpp.

+ Here is the caller graph for this function:

◆ computeRBFradius_known()

double computeRBFradius_known ( const ID index,
std::vector< int >  indexes 
)
private

Definition at line 112 of file Interpolation.cpp.

◆ computeRBFradius_unknown()

double computeRBFradius_unknown ( const ID index,
std::vector< int >  indexes 
)
private

Definition at line 127 of file Interpolation.cpp.

◆ rbf()

double rbf ( double  x1,
double  y1,
double  z1,
double  x2,
double  y2,
double  z2,
double  radius 
)
private

Definition at line 22 of file Interpolation.cpp.

Field Documentation

◆ M_xcoord_known

std::vector<Real> M_xcoord_known
private

Definition at line 144 of file Interpolation.hpp.

◆ M_ycoord_known

std::vector<Real> M_ycoord_known
private

Definition at line 145 of file Interpolation.hpp.

◆ M_zcoord_known

std::vector<Real> M_zcoord_known
private

Definition at line 146 of file Interpolation.hpp.

◆ M_xcoord_unknown

std::vector<Real> M_xcoord_unknown
private

Definition at line 147 of file Interpolation.hpp.

◆ M_ycoord_unknown

std::vector<Real> M_ycoord_unknown
private

Definition at line 148 of file Interpolation.hpp.

◆ M_zcoord_unknown

std::vector<Real> M_zcoord_unknown
private

Definition at line 149 of file Interpolation.hpp.

◆ M_marker_known

std::vector<UInt> M_marker_known
private

Definition at line 151 of file Interpolation.hpp.

◆ M_marker_unknown

std::vector<UInt> M_marker_unknown
private

Definition at line 152 of file Interpolation.hpp.

◆ M_flag

UInt M_flag
private

Definition at line 154 of file Interpolation.hpp.

◆ M_GIdsKnownMesh_common

std::set<ID> M_GIdsKnownMesh_common
private

Definition at line 156 of file Interpolation.hpp.

◆ M_GIdsUnknownMesh_common

std::set<ID> M_GIdsUnknownMesh_common
private

Definition at line 157 of file Interpolation.hpp.

◆ M_GIdsKnownMesh

std::set<ID> M_GIdsKnownMesh
private

Definition at line 159 of file Interpolation.hpp.

◆ M_GIdsUnknownMesh

std::set<ID> M_GIdsUnknownMesh
private

Definition at line 160 of file Interpolation.hpp.

◆ M_knownField

vectorPtr_Type M_knownField
private

Definition at line 162 of file Interpolation.hpp.

◆ M_unknownField

vectorPtr_Type M_unknownField
private

Definition at line 163 of file Interpolation.hpp.

◆ M_knownInterfaceMap

mapPtr_Type M_knownInterfaceMap
private

Definition at line 165 of file Interpolation.hpp.

◆ M_unknownInterfaceMap

mapPtr_Type M_unknownInterfaceMap
private

Definition at line 166 of file Interpolation.hpp.

◆ M_numerationInterfaceKnown

vectorPtr_Type M_numerationInterfaceKnown
private

Definition at line 168 of file Interpolation.hpp.

◆ M_numerationInterfaceUnknown

vectorPtr_Type M_numerationInterfaceUnknown
private

Definition at line 169 of file Interpolation.hpp.

◆ M_numerationInterfaceKnownColumns

std::vector<vectorPtr_Type> M_numerationInterfaceKnownColumns
private

Definition at line 170 of file Interpolation.hpp.

◆ M_pid

int M_pid
private

Definition at line 171 of file Interpolation.hpp.

◆ M_interpolationOperatorMap

mapPtr_Type M_interpolationOperatorMap
private

Definition at line 173 of file Interpolation.hpp.

◆ M_interpolationOperatorMapVectorial

mapPtr_Type M_interpolationOperatorMapVectorial
private

Definition at line 174 of file Interpolation.hpp.

◆ M_dof_connectivity_known

std::vector< std::vector<int> > M_dof_connectivity_known
private

Definition at line 176 of file Interpolation.hpp.

◆ M_dof_connectivity_unknown

std::vector< std::vector<int> > M_dof_connectivity_unknown
private

Definition at line 177 of file Interpolation.hpp.

◆ M_interpolationOperator

matrixPtr_Type M_interpolationOperator
private

Definition at line 179 of file Interpolation.hpp.

◆ M_projectionOperatorMap

mapPtr_Type M_projectionOperatorMap
private

Definition at line 181 of file Interpolation.hpp.

◆ M_projectionOperatorMapVectorial

mapPtr_Type M_projectionOperatorMapVectorial
private

Definition at line 182 of file Interpolation.hpp.

◆ M_projectionOperator

matrixPtr_Type M_projectionOperator
private

Definition at line 184 of file Interpolation.hpp.

◆ M_RhsF1

vectorPtr_Type M_RhsF1
private

Definition at line 186 of file Interpolation.hpp.

◆ M_RhsF2

vectorPtr_Type M_RhsF2
private

Definition at line 187 of file Interpolation.hpp.

◆ M_RhsF3

vectorPtr_Type M_RhsF3
private

Definition at line 188 of file Interpolation.hpp.

◆ M_RhsOne

vectorPtr_Type M_RhsOne
private

Definition at line 189 of file Interpolation.hpp.

◆ M_rbf_one

vectorPtr_Type M_rbf_one
private

Definition at line 190 of file Interpolation.hpp.

◆ M_datafile

GetPot M_datafile
private

Definition at line 192 of file Interpolation.hpp.

◆ M_belosList

parameterList_Type M_belosList
private

Definition at line 193 of file Interpolation.hpp.

◆ M_solutionOnGamma

vectorPtr_Type M_solutionOnGamma
private

Definition at line 195 of file Interpolation.hpp.

◆ M_links

Real M_links
private

Definition at line 197 of file Interpolation.hpp.

◆ M_precPtr

basePrecPtr_Type M_precPtr
private

Definition at line 199 of file Interpolation.hpp.

◆ M_precBuilt

bool M_precBuilt
private

Definition at line 201 of file Interpolation.hpp.


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