gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
SolverField< T > Class Template Reference

#include <solverField.h>

Inheritance diagram for SolverField< T >:
Collaboration diagram for SolverField< T >:

Public Types

typedef TensorialTraits< T >::ValType ValType
 
typedef TensorialTraits< T >::GradType GradType
 
typedef TensorialTraits< T >::HessType HessType
 
- Public Types inherited from FunctionSpace< T >
typedef TensorialTraits< T >::ValType ValType
 
typedef TensorialTraits< T >::GradType GradType
 
typedef TensorialTraits< T >::HessType HessType
 
typedef TensorialTraits< T >::ThirdDevType ThirdDevType
 

Public Member Functions

 SolverField (dofManager< double > *dm_, FunctionSpace< T > *fs_)
 
virtual int getNumKeys (MVertex *ver) const
 
virtual int getNumKeys (MElement *ele) const
 
virtual void f (MElement *ele, double u, double v, double w, ValType &val) const
 
virtual void f (MElement *ele, double u, double v, double w, std::vector< ValType > &vals) const
 
virtual void gradf (MElement *ele, double u, double v, double w, GradType &grad) const
 
virtual void gradf (MElement *ele, double u, double v, double w, std::vector< GradType > &grads) const
 
virtual void hessfuvw (MElement *ele, double u, double v, double w, std::vector< HessType > &hess) const
 
- Public Member Functions inherited from FunctionSpace< T >
virtual int getId (void) const
 
virtual void fuvw (MElement *ele, double u, double v, double w, std::vector< ValType > &vals) const
 
virtual void gradfuvw (MElement *ele, double u, double v, double w, std::vector< GradType > &grads) const
 
virtual void hessf (MElement *ele, double u, double v, double w, std::vector< HessType > &hess) const
 
virtual void thirdDevfuvw (MElement *ele, double u, double v, double w, std::vector< ThirdDevType > &third) const
 
virtual void thirdDevf (MElement *ele, double u, double v, double w, std::vector< ThirdDevType > &third) const
 
- Public Member Functions inherited from FunctionSpaceBase
virtual ~FunctionSpaceBase ()
 
virtual void getKeysOnVertex (MElement *ele, MVertex *v, const std::vector< int > &comp, std::vector< Dof > &keys) const
 
virtual FunctionSpaceBaseclone (const int id) const
 

Private Member Functions

virtual void getKeys (MElement *ele, std::vector< Dof > &keys) const
 
virtual void getKeys (MVertex *ver, std::vector< Dof > &keys) const
 

Private Attributes

dofManager< double > * dm
 
FunctionSpace< T > * fs
 

Additional Inherited Members

- Protected Attributes inherited from FunctionSpace< T >
int _iField
 

Detailed Description

template<class T>
class SolverField< T >

Definition at line 20 of file solverField.h.

Member Typedef Documentation

◆ GradType

template<class T >
typedef TensorialTraits<T>::GradType SolverField< T >::GradType

Definition at line 28 of file solverField.h.

◆ HessType

template<class T >
typedef TensorialTraits<T>::HessType SolverField< T >::HessType

Definition at line 29 of file solverField.h.

◆ ValType

template<class T >
typedef TensorialTraits<T>::ValType SolverField< T >::ValType

Definition at line 27 of file solverField.h.

Constructor & Destructor Documentation

◆ SolverField()

template<class T >
SolverField< T >::SolverField ( dofManager< double > *  dm_,
FunctionSpace< T > *  fs_ 
)
inline

Definition at line 36 of file solverField.h.

Member Function Documentation

◆ f() [1/2]

template<class T >
virtual void SolverField< T >::f ( MElement ele,
double  u,
double  v,
double  w,
std::vector< ValType > &  vals 
) const
inlinevirtual

Implements FunctionSpace< T >.

Definition at line 66 of file solverField.h.

Here is the call graph for this function:

◆ f() [2/2]

template<class T >
virtual void SolverField< T >::f ( MElement ele,
double  u,
double  v,
double  w,
ValType val 
) const
inlinevirtual

Definition at line 53 of file solverField.h.

Referenced by thermicSolver::computeL2Norm(), elasticitySolver::computeL2Norm(), thermicSolver::computeLagNorm(), and SolverField< T >::f().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getKeys() [1/2]

template<class T >
virtual void SolverField< T >::getKeys ( MElement ele,
std::vector< Dof > &  keys 
) const
inlineprivatevirtual

Implements FunctionSpace< T >.

Definition at line 43 of file solverField.h.

Here is the call graph for this function:

◆ getKeys() [2/2]

template<class T >
virtual void SolverField< T >::getKeys ( MVertex ver,
std::vector< Dof > &  keys 
) const
inlineprivatevirtual

Definition at line 47 of file solverField.h.

Here is the call graph for this function:

◆ getNumKeys() [1/2]

template<class T >
virtual int SolverField< T >::getNumKeys ( MElement ele) const
inlinevirtual

Implements FunctionSpace< T >.

Definition at line 40 of file solverField.h.

◆ getNumKeys() [2/2]

template<class T >
virtual int SolverField< T >::getNumKeys ( MVertex ver) const
inlinevirtual

Definition at line 39 of file solverField.h.

◆ gradf() [1/2]

template<class T >
virtual void SolverField< T >::gradf ( MElement ele,
double  u,
double  v,
double  w,
GradType grad 
) const
inlinevirtual

Definition at line 74 of file solverField.h.

Referenced by SolverField< T >::gradf().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gradf() [2/2]

template<class T >
virtual void SolverField< T >::gradf ( MElement ele,
double  u,
double  v,
double  w,
std::vector< GradType > &  grads 
) const
inlinevirtual

Implements FunctionSpace< T >.

Definition at line 104 of file solverField.h.

Here is the call graph for this function:

◆ hessfuvw()

template<class T >
virtual void SolverField< T >::hessfuvw ( MElement ele,
double  u,
double  v,
double  w,
std::vector< HessType > &  hess 
) const
inlinevirtual

Implements FunctionSpace< T >.

Definition at line 111 of file solverField.h.

Member Data Documentation

◆ dm

template<class T >
dofManager<double>* SolverField< T >::dm
private

Definition at line 32 of file solverField.h.

Referenced by SolverField< T >::f(), and SolverField< T >::gradf().

◆ fs

template<class T >
FunctionSpace<T>* SolverField< T >::fs
private

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