DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
dftfe::utils::FECell< dim > Class Template Reference

This class provides the specialisation for Finite element cell. This class provides the function defintions for shape function calculation at an arbitrary point inside the cell, checks if a point lies within a cell by computing its parametric points. More...

#include <FECell.h>

Inheritance diagram for dftfe::utils::FECell< dim >:
dftfe::utils::Cell< dim >

Public Types

using DealiiFECellIterator
 

Public Member Functions

 FECell (typename dealii::DoFHandler< dim >::active_cell_iterator dealiiFECellIter, const dealii::FiniteElement< dim, dim > &fe)
 
void reinit (DealiiFECellIterator dealiiFECellIter)
 
void getVertices (std::vector< std::vector< double > > &points) const override
 
void getVertex (size_type i, std::vector< double > &point) const override
 
std::pair< std::vector< double >, std::vector< double > > getBoundingBox () const override
 
bool isPointInside (const std::vector< double > &point, const double tol) const override
 
std::vector< double > getParametricPoint (const std::vector< double > &realPoint) const override
 
std::vector< double > getParametricPointForAllPoints (unsigned int numPoints, const std::vector< double > &realPoint) const
 
DealiiFECellIteratorgetDealiiFECellIter ()
 
void getShapeFuncValuesFromParametricPoints (unsigned int numPointsInCell, const std::vector< double > &parametricPoints, std::vector< dataTypes::number > &shapeFuncValues, unsigned int cellShapeFuncStartIndex, unsigned int numDofsPerElement) const
 
void getShapeFuncValues (unsigned int numPointsInCell, const std::vector< double > &coordinatesOfPointsInCell, std::vector< dataTypes::number > &shapeFuncValues, unsigned int cellShapeFuncStartIndex, unsigned int numDofsPerElement) const override
 
- Public Member Functions inherited from dftfe::utils::Cell< dim >
 Cell ()
 
 Cell (const std::vector< double > &ll, const std::vector< double > &ur)
 

Private Attributes

std::vector< double > d_lowerLeft
 
std::vector< double > d_upperRight
 
DealiiFECellIterator d_dealiiFECellIter
 
dealii::MappingQ1< dim, dim > d_mappingQ1
 
const dealii::FiniteElement< dim, dim > & d_feCell
 

Detailed Description

template<size_type dim>
class dftfe::utils::FECell< dim >

This class provides the specialisation for Finite element cell. This class provides the function defintions for shape function calculation at an arbitrary point inside the cell, checks if a point lies within a cell by computing its parametric points.

Author
Vishal Subramanian, Bikash Kanungo

Member Typedef Documentation

◆ DealiiFECellIterator

template<size_type dim>
using dftfe::utils::FECell< dim >::DealiiFECellIterator
Initial value:
typename dealii::DoFHandler<dim>::active_cell_iterator

Constructor & Destructor Documentation

◆ FECell()

template<size_type dim>
dftfe::utils::FECell< dim >::FECell ( typename dealii::DoFHandler< dim >::active_cell_iterator dealiiFECellIter,
const dealii::FiniteElement< dim, dim > & fe )

Member Function Documentation

◆ getBoundingBox()

template<size_type dim>
std::pair< std::vector< double >, std::vector< double > > dftfe::utils::FECell< dim >::getBoundingBox ( ) const
overridevirtual

Reimplemented from dftfe::utils::Cell< dim >.

◆ getDealiiFECellIter()

template<size_type dim>
DealiiFECellIterator & dftfe::utils::FECell< dim >::getDealiiFECellIter ( )

◆ getParametricPoint()

template<size_type dim>
std::vector< double > dftfe::utils::FECell< dim >::getParametricPoint ( const std::vector< double > & realPoint) const
overridevirtual

Reimplemented from dftfe::utils::Cell< dim >.

◆ getParametricPointForAllPoints()

template<size_type dim>
std::vector< double > dftfe::utils::FECell< dim >::getParametricPointForAllPoints ( unsigned int numPoints,
const std::vector< double > & realPoint ) const

◆ getShapeFuncValues()

template<size_type dim>
void dftfe::utils::FECell< dim >::getShapeFuncValues ( unsigned int numPointsInCell,
const std::vector< double > & coordinatesOfPointsInCell,
std::vector< dataTypes::number > & shapeFuncValues,
unsigned int cellShapeFuncStartIndex,
unsigned int numDofsPerElement ) const
overridevirtual

◆ getShapeFuncValuesFromParametricPoints()

template<size_type dim>
void dftfe::utils::FECell< dim >::getShapeFuncValuesFromParametricPoints ( unsigned int numPointsInCell,
const std::vector< double > & parametricPoints,
std::vector< dataTypes::number > & shapeFuncValues,
unsigned int cellShapeFuncStartIndex,
unsigned int numDofsPerElement ) const

◆ getVertex()

template<size_type dim>
void dftfe::utils::FECell< dim >::getVertex ( size_type i,
std::vector< double > & point ) const
overridevirtual

Reimplemented from dftfe::utils::Cell< dim >.

◆ getVertices()

template<size_type dim>
void dftfe::utils::FECell< dim >::getVertices ( std::vector< std::vector< double > > & points) const
overridevirtual

Reimplemented from dftfe::utils::Cell< dim >.

◆ isPointInside()

template<size_type dim>
bool dftfe::utils::FECell< dim >::isPointInside ( const std::vector< double > & point,
const double tol ) const
overridevirtual

Reimplemented from dftfe::utils::Cell< dim >.

◆ reinit()

template<size_type dim>
void dftfe::utils::FECell< dim >::reinit ( DealiiFECellIterator dealiiFECellIter)

Member Data Documentation

◆ d_dealiiFECellIter

template<size_type dim>
DealiiFECellIterator dftfe::utils::FECell< dim >::d_dealiiFECellIter
private

◆ d_feCell

template<size_type dim>
const dealii::FiniteElement<dim, dim>& dftfe::utils::FECell< dim >::d_feCell
private

◆ d_lowerLeft

template<size_type dim>
std::vector<double> dftfe::utils::FECell< dim >::d_lowerLeft
private

◆ d_mappingQ1

template<size_type dim>
dealii::MappingQ1<dim, dim> dftfe::utils::FECell< dim >::d_mappingQ1
private

◆ d_upperRight

template<size_type dim>
std::vector<double> dftfe::utils::FECell< dim >::d_upperRight
private

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