ParMooN
 All Classes Functions Variables Friends Pages
Public Member Functions | Protected Attributes | List of all members
TFEFunction3D Class Reference

#include <FEFunction3D.h>

Inheritance diagram for TFEFunction3D:
Inheritance graph
[legend]
Collaboration diagram for TFEFunction3D:
Collaboration graph
[legend]

Public Member Functions

 TFEFunction3D (TFESpace3D *fespace3D, char *name, char *description, double *values, int length)
 
 ~TFEFunction3D ()
 
char * GetName ()
 
char * GetDescription ()
 
TFESpace3DGetFESpace3D ()
 
int GetLength ()
 
double * GetValues ()
 
void GetErrors (DoubleFunct3D *Exact, int N_Derivatives, MultiIndex3D *NeededDerivatives, int N_Errors, ErrorMethod3D *ErrorMeth, CoeffFct3D *Coeff, TAuxParam3D *Aux, int n_fespaces, TFESpace3D **fespaces, double *errors)
 
void GetErrorsForVectorValuedFunction (DoubleFunct3D **const Exact, ErrorMethod3D *const ErrMeth, double *const errors)
 
void GetErrorsAdapt (DoubleFunct3D *Exact, int N_Derivatives, MultiIndex3D *NeededDerivatives, int N_Errors, ErrorMethod3D *ErrorMeth, CoeffFct3D *Coeff, TAuxParam3D *Aux, int n_fespaces, TFESpace3D **fespaces, double *errors)
 
void GetErrorsOPTPDE (DoubleFunct3D *Exact, int N_Derivatives, MultiIndex3D *NeededDerivatives, int N_Errors, ErrorMethod3D *ErrorMeth, CoeffFct3D *Coeff, TAuxParam3D *Aux, int n_fespaces, TFESpace3D **fespaces, double radius, double upper, double lower, double *errors)
 
void GetMeshCellParams (DoubleFunct3D *Exact, int N_Derivatives, MultiIndex3D *NeededDerivatives, int N_Errors, ErrorMethod3D *ErrorMeth, CoeffFct3D *Coeff, TAuxParam3D *Aux, int n_fespaces, TFESpace3D **fespaces, double *errors, double *cell_parameters)
 
void FindGradient (double x, double y, double z, double *values)
 
void FindGradientLocal (TBaseCell *cell, int cell_no, double x, double y, double z, double *values)
 
void FindValueLocal (TBaseCell *cell, int cell_no, double x, double y, double z, double *values)
 
void Interpolate (DoubleFunct3D *Exact)
 
void InterpolateSuper (DoubleFunct3D *Exact)
 
void Interpolate (int N_Coord, double *Coords, int N_AuxFeFcts, TFEFunction3D **AuxFeFcts, DoubleFunctND *Exact)
 
void Interpolate_vector_valued_function (std::vector< DoubleFunct3D * > Exact)
 interpolate a vector valued function More...
 
void project_into_L20 (double a=0.0)
 project this functions into the space L20 (having zero mean value) More...
 
void compute_integral_and_measure (double &integral, double &measure) const
 find the integral of this function and the measure of its domain More...
 
void SetDirichletBC (BoundCondFunct3D *BoundaryCondition, BoundValueFunct3D *BoudaryValue)
 Set Dirichlet values according to boundary conditions. More...
 
void MinMax (double &min, double &max)
 find the largest and smallest element in the vector of this FE function
 
void PrintMinMax ()
 print the largest and smallest element in the vector of this FE function
 

Protected Attributes

char * Name
 
char * Description
 
TFESpace3DFESpace3D
 
double * Values
 
int Length
 

Detailed Description

a function from a finite element space

Constructor & Destructor Documentation

TFEFunction3D::TFEFunction3D ( TFESpace3D fespace3D,
char *  name,
char *  description,
double *  values,
int  length 
)

constructor with vector initialization

Here is the caller graph for this function:

TFEFunction3D::~TFEFunction3D ( )

destructor

Member Function Documentation

void TFEFunction3D::compute_integral_and_measure ( double &  integral,
double &  measure 
) const

find the integral of this function and the measure of its domain

Parameters
[out]integraldouble value for the integral of this TFEFunction2D
[out]measuredouble value for the measure of its domain

compute integral and measure

Here is the call graph for this function:

Here is the caller graph for this function:

void TFEFunction3D::FindGradient ( double  x,
double  y,
double  z,
double *  values 
)

determine the value of function and its first derivatives at the given point

Here is the call graph for this function:

void TFEFunction3D::FindGradientLocal ( TBaseCell cell,
int  cell_no,
double  x,
double  y,
double  z,
double *  values 
)

determine the value of function and its first derivatives at the given point

Here is the call graph for this function:

void TFEFunction3D::FindValueLocal ( TBaseCell cell,
int  cell_no,
double  x,
double  y,
double  z,
double *  values 
)

determine the value of function the given point

Here is the call graph for this function:

Here is the caller graph for this function:

char* TFEFunction3D::GetDescription ( )
inline

return description

void TFEFunction3D::GetErrors ( DoubleFunct3D *  Exact,
int  N_Derivatives,
MultiIndex3D *  NeededDerivatives,
int  N_Errors,
ErrorMethod3D *  ErrorMeth,
CoeffFct3D *  Coeff,
TAuxParam3D Aux,
int  n_fespaces,
TFESpace3D **  fespaces,
double *  errors 
)

calculate errors to given function NOTE: errors must be of length N_Errors+1 !!!!

calculate errors to given function

Here is the call graph for this function:

Here is the caller graph for this function:

void TFEFunction3D::GetErrorsOPTPDE ( DoubleFunct3D *  Exact,
int  N_Derivatives,
MultiIndex3D *  NeededDerivatives,
int  N_Errors,
ErrorMethod3D *  ErrorMeth,
CoeffFct3D *  Coeff,
TAuxParam3D Aux,
int  n_fespaces,
TFESpace3D **  fespaces,
double  radius,
double  upper,
double  lower,
double *  errors 
)

calculate errors to given function taylored to OPTPDE

calculate errors to given function taylored for OPTPDE

Here is the call graph for this function:

TFESpace3D* TFEFunction3D::GetFESpace3D ( )
inline

return fe space

Here is the caller graph for this function:

int TFEFunction3D::GetLength ( )
inline

return length

Here is the caller graph for this function:

void TFEFunction3D::GetMeshCellParams ( DoubleFunct3D *  Exact,
int  N_Derivatives,
MultiIndex3D *  NeededDerivatives,
int  N_Errors,
ErrorMethod3D *  ErrorMeth,
CoeffFct3D *  Coeff,
TAuxParam3D Aux,
int  n_fespaces,
TFESpace3D **  fespaces,
double *  errors,
double *  cell_parameters 
)

calculate errors to given function

Here is the call graph for this function:

char* TFEFunction3D::GetName ( )
inline

return name

Here is the caller graph for this function:

double* TFEFunction3D::GetValues ( )
inline

return vector of data

Here is the caller graph for this function:

void TFEFunction3D::Interpolate ( DoubleFunct3D *  Exact)

calculate the interpolation of an exact function

Here is the call graph for this function:

void TFEFunction3D::Interpolate ( int  N_Coord,
double *  Coords,
int  N_AuxFeFcts,
TFEFunction3D **  AuxFeFcts,
DoubleFunctND *  Exact 
)

interpolation of an exact function with give FeFunction values

calculate the interpolation of an exact function

Here is the call graph for this function:

void TFEFunction3D::Interpolate_vector_valued_function ( std::vector< DoubleFunct3D * >  Exact)

interpolate a vector valued function

Parameters
[in]Exactmust be of length 3 (= space dimension)
Warning
EvalAll must be correctly implemented for the used finite element

Here is the call graph for this function:

void TFEFunction3D::InterpolateSuper ( DoubleFunct3D *  Exact)

calculate the super-convergence interpolation of an exact function

Here is the call graph for this function:

void TFEFunction3D::project_into_L20 ( double  a = 0.0)

project this functions into the space L20 (having zero mean value)

After a call to this function the mean value (integral of this function devided by the measure of its domain) has the value a. This is for example needed for the pressure in a Stokes problem with Dirichlet conditions on all boundaries.

Parameters
[in]aset mean value of this FEFunction3D to a

project function into the space L20 (having zero mean value, or in general a mean value)

Here is the call graph for this function:

void TFEFunction3D::SetDirichletBC ( BoundCondFunct3D *  BoundaryCondition,
BoundValueFunct3D *  BoudaryValue 
)

Set Dirichlet values according to boundary conditions.

Set Dirichlet values according to boundary conditions

cout << "USE_ISOPARAMETRIC: " << endl;

cout << "Non_ISOPARAMETRIC: " << endl;

endif

for m<N_Joints

endfor i<N_Cells

Here is the call graph for this function:

Member Data Documentation

char* TFEFunction3D::Description
protected

some more words describing the function

TFESpace3D* TFEFunction3D::FESpace3D
protected

space to which this function belongs to

int TFEFunction3D::Length
protected

length of vector

char* TFEFunction3D::Name
protected

name of the function

double* TFEFunction3D::Values
protected

double vector according to FE isomorphism


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