Reference documentation for deal.II version Git 9deac93 2014-10-24 21:41:49 -0500
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
FEFaceValuesBase< dim, spacedim > Class Template Reference

#include <deal.II/fe/fe_values.h>

Inheritance diagram for FEFaceValuesBase< dim, spacedim >:
[legend]

Public Member Functions

 FEFaceValuesBase (const unsigned int n_q_points, const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe, const Quadrature< dim-1 > &quadrature)
 
const Tensor< 1, spacedim > & boundary_form (const unsigned int i) const
 
const std::vector< Tensor
< 1, spacedim > > & 
get_boundary_forms () const
 
unsigned int get_face_index () const
 
const Quadrature< dim-1 > & get_quadrature () const
 
std::size_t memory_consumption () const
 
- Public Member Functions inherited from FEValuesBase< dim, spacedim >
 FEValuesBase (const unsigned int n_q_points, const unsigned int dofs_per_cell, const UpdateFlags update_flags, const Mapping< dim, spacedim > &mapping, const FiniteElement< dim, spacedim > &fe)
 
 ~FEValuesBase ()
 
 DeclException1 (ExcAccessToUninitializedField, char *,<< ("You are requesting information from an FEValues/FEFaceValues/FESubfaceValues ""object for which this kind of information has not been computed. What ""information these objects compute is determined by the update_* flags you ""pass to the constructor. Here, the operation you are attempting requires ""the <")<< arg1<< "> flag to be set, but it was apparently not specified upon construction.")
 
 DeclException0 (ExcCannotInitializeField)
 
 DeclException0 (ExcInvalidUpdateFlag)
 
 DeclException0 (ExcFEDontMatch)
 
 DeclException1 (ExcShapeFunctionNotPrimitive, int,<< "The shape function with index "<< arg1<< " is not primitive, i.e. it is vector-valued and "<< "has more than one non-zero vector component. This "<< "function cannot be called for these shape functions. "<< "Maybe you want to use the same function with the "<< "_component suffix?")
 
 DeclException0 (ExcFENotPrimitive)
 
const doubleshape_value (const unsigned int function_no, const unsigned int point_no) const
 
double shape_value_component (const unsigned int function_no, const unsigned int point_no, const unsigned int component) const
 
const Tensor< 1, spacedim > & shape_grad (const unsigned int function_no, const unsigned int quadrature_point) const
 
Tensor< 1, spacedim > shape_grad_component (const unsigned int function_no, const unsigned int point_no, const unsigned int component) const
 
const Tensor< 2, spacedim > & shape_hessian (const unsigned int function_no, const unsigned int point_no) const
 
const Tensor< 2, spacedim > & shape_2nd_derivative (const unsigned int function_no, const unsigned int point_no) const DEAL_II_DEPRECATED
 
Tensor< 2, spacedim > shape_hessian_component (const unsigned int function_no, const unsigned int point_no, const unsigned int component) const
 
Tensor< 2, spacedim > shape_2nd_derivative_component (const unsigned int function_no, const unsigned int point_no, const unsigned int component) const DEAL_II_DEPRECATED
 
template<class InputVector , typename number >
void get_function_values (const InputVector &fe_function, std::vector< number > &values) const
 
template<class InputVector , typename number >
void get_function_values (const InputVector &fe_function, std::vector< Vector< number > > &values) const
 
template<class InputVector , typename number >
void get_function_values (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< number > &values) const
 
template<class InputVector , typename number >
void get_function_values (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< Vector< number > > &values) const
 
template<class InputVector >
void get_function_values (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, VectorSlice< std::vector< std::vector< double > > > values, const bool quadrature_points_fastest) const
 
template<class InputVector >
void get_function_gradients (const InputVector &fe_function, std::vector< Tensor< 1, spacedim > > &gradients) const
 
template<class InputVector >
void get_function_gradients (const InputVector &fe_function, std::vector< std::vector< Tensor< 1, spacedim > > > &gradients) const
 
template<class InputVector >
void get_function_gradients (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< Tensor< 1, spacedim > > &gradients) const
 
template<class InputVector >
void get_function_gradients (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, VectorSlice< std::vector< std::vector< Tensor< 1, spacedim > > > > gradients, bool quadrature_points_fastest=false) const
 
template<class InputVector >
void get_function_grads (const InputVector &fe_function, std::vector< Tensor< 1, spacedim > > &gradients) const DEAL_II_DEPRECATED
 
template<class InputVector >
void get_function_grads (const InputVector &fe_function, std::vector< std::vector< Tensor< 1, spacedim > > > &gradients) const DEAL_II_DEPRECATED
 
template<class InputVector >
void get_function_grads (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< Tensor< 1, spacedim > > &gradients) const DEAL_II_DEPRECATED
 
template<class InputVector >
void get_function_grads (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< std::vector< Tensor< 1, spacedim > > > &gradients, bool quadrature_points_fastest=false) const DEAL_II_DEPRECATED
 
template<class InputVector >
void get_function_hessians (const InputVector &fe_function, std::vector< Tensor< 2, spacedim > > &hessians) const
 
template<class InputVector >
void get_function_hessians (const InputVector &fe_function, std::vector< std::vector< Tensor< 2, spacedim > > > &hessians, bool quadrature_points_fastest=false) const
 
template<class InputVector >
void get_function_hessians (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< Tensor< 2, spacedim > > &hessians) const
 
template<class InputVector >
void get_function_hessians (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, VectorSlice< std::vector< std::vector< Tensor< 2, spacedim > > > > hessians, bool quadrature_points_fastest=false) const
 
template<class InputVector >
void get_function_2nd_derivatives (const InputVector &, std::vector< Tensor< 2, spacedim > > &) const DEAL_II_DEPRECATED
 
template<class InputVector >
void get_function_2nd_derivatives (const InputVector &, std::vector< std::vector< Tensor< 2, spacedim > > > &, bool=false) const DEAL_II_DEPRECATED
 
template<class InputVector , typename number >
void get_function_laplacians (const InputVector &fe_function, std::vector< number > &laplacians) const
 
template<class InputVector , typename number >
void get_function_laplacians (const InputVector &fe_function, std::vector< Vector< number > > &laplacians) const
 
template<class InputVector , typename number >
void get_function_laplacians (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< number > &laplacians) const
 
template<class InputVector , typename number >
void get_function_laplacians (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< Vector< number > > &laplacians) const
 
template<class InputVector , typename number >
void get_function_laplacians (const InputVector &fe_function, const VectorSlice< const std::vector< types::global_dof_index > > &indices, std::vector< std::vector< number > > &laplacians, bool quadrature_points_fastest=false) const
 
const Point< spacedim > & quadrature_point (const unsigned int q) const
 
const std::vector< Point
< spacedim > > & 
get_quadrature_points () const
 
double JxW (const unsigned int quadrature_point) const
 
const std::vector< double > & get_JxW_values () const
 
const DerivativeForm< 1, dim,
spacedim > & 
jacobian (const unsigned int quadrature_point) const
 
const std::vector
< DerivativeForm< 1, dim,
spacedim > > & 
get_jacobians () const
 
const DerivativeForm< 2, dim,
spacedim > & 
jacobian_grad (const unsigned int quadrature_point) const
 
const std::vector
< DerivativeForm< 2, dim,
spacedim > > & 
get_jacobian_grads () const
 
const DerivativeForm
< 1, spacedim, dim > & 
inverse_jacobian (const unsigned int quadrature_point) const
 
const std::vector
< DerivativeForm< 1, spacedim,
dim > > & 
get_inverse_jacobians () const
 
const Point< spacedim > & normal_vector (const unsigned int i) const
 
const std::vector< Point
< spacedim > > & 
get_normal_vectors () const
 
void transform (std::vector< Tensor< 1, spacedim > > &transformed, const std::vector< Tensor< 1, dim > > &original, MappingType mapping) const
 
const Point< spacedim > & cell_normal_vector (const unsigned int i) const DEAL_II_DEPRECATED
 
const std::vector< Point
< spacedim > > & 
get_cell_normal_vectors () const DEAL_II_DEPRECATED
 
const FEValuesViews::Scalar
< dim, spacedim > & 
operator[] (const FEValuesExtractors::Scalar &scalar) const
 
const FEValuesViews::Vector
< dim, spacedim > & 
operator[] (const FEValuesExtractors::Vector &vector) const
 
const
FEValuesViews::SymmetricTensor
< 2, dim, spacedim > & 
operator[] (const FEValuesExtractors::SymmetricTensor< 2 > &tensor) const
 
const FEValuesViews::Tensor
< 2, dim, spacedim > & 
operator[] (const FEValuesExtractors::Tensor< 2 > &tensor) const
 
const Mapping< dim, spacedim > & get_mapping () const
 
const FiniteElement< dim,
spacedim > & 
get_fe () const
 
UpdateFlags get_update_flags () const
 
const Triangulation< dim,
spacedim >::cell_iterator 
get_cell () const
 
CellSimilarity::Similarity get_cell_similarity () const
 
std::size_t memory_consumption () const
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
void subscribe (const char *identifier=0) const
 
void unsubscribe (const char *identifier=0) const
 
unsigned int n_subscriptions () const
 
void list_subscribers () const
 
 DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.")
 
 DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1)
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Static Public Attributes

static const unsigned int integral_dimension = dim-1
 
- Static Public Attributes inherited from FEValuesBase< dim, spacedim >
static const unsigned int dimension = dim
 
static const unsigned int space_dimension = spacedim
 

Protected Attributes

unsigned int present_face_index
 
const Quadrature< dim-1 > quadrature
 
- Protected Attributes inherited from FEValuesBase< dim, spacedim >
std::auto_ptr< const
CellIteratorBase > 
present_cell
 
boost::signals2::connection tria_listener
 
const SmartPointer< const
Mapping< dim, spacedim >
, FEValuesBase< dim, spacedim > > 
mapping
 
const SmartPointer< const
FiniteElement< dim, spacedim >
, FEValuesBase< dim, spacedim > > 
fe
 
SmartPointer< typename Mapping
< dim, spacedim >
::InternalDataBase,
FEValuesBase< dim, spacedim > > 
mapping_data
 
SmartPointer< typename Mapping
< dim, spacedim >
::InternalDataBase,
FEValuesBase< dim, spacedim > > 
fe_data
 
CellSimilarity::Similarity cell_similarity
 
- Protected Attributes inherited from FEValuesData< dim, spacedim >
ShapeVector shape_values
 
GradientVector shape_gradients
 
HessianVector shape_hessians
 
std::vector< doubleJxW_values
 
std::vector< DerivativeForm
< 1, dim, spacedim > > 
jacobians
 
std::vector< DerivativeForm
< 2, dim, spacedim > > 
jacobian_grads
 
std::vector< DerivativeForm
< 1, spacedim, dim > > 
inverse_jacobians
 
std::vector< Point< spacedim > > quadrature_points
 
std::vector< Point< spacedim > > normal_vectors
 
std::vector< Tensor
< 1, spacedim > > 
boundary_forms
 
std::vector< unsigned intshape_function_to_row_table
 
UpdateFlags update_flags
 

Additional Inherited Members

- Public Attributes inherited from FEValuesBase< dim, spacedim >
const unsigned int n_quadrature_points
 
const unsigned int dofs_per_cell
 
- Protected Types inherited from FEValuesData< dim, spacedim >
typedef Table< 2, doubleShapeVector
 
typedef std::vector
< std::vector< Tensor
< 1, spacedim > > > 
GradientVector
 
typedef std::vector
< std::vector< Tensor
< 2, spacedim > > > 
HessianVector
 
- Protected Member Functions inherited from FEValuesBase< dim, spacedim >
void invalidate_present_cell ()
 
void maybe_invalidate_previous_present_cell (const typename Triangulation< dim, spacedim >::cell_iterator &cell)
 
UpdateFlags compute_update_flags (const UpdateFlags update_flags) const
 
void check_cell_similarity (const typename Triangulation< dim, spacedim >::cell_iterator &cell)
 
- Protected Member Functions inherited from FEValuesData< dim, spacedim >
void initialize (const unsigned int n_quadrature_points, const FiniteElement< dim, spacedim > &fe, const UpdateFlags flags)
 
- Protected Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
void subscribe (const char *identifier=0) const
 
void unsubscribe (const char *identifier=0) const
 
unsigned int n_subscriptions () const
 
void list_subscribers () const
 
 DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.")
 
 DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1)
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Detailed Description

template<int dim, int spacedim = dim>
class FEFaceValuesBase< dim, spacedim >

Extend the interface of FEValuesBase to values that only make sense when evaluating something on the surface of a cell. All the data that is available in the interior of cells is also available here.

See FEValuesBase

Author
Wolfgang Bangerth, 1998, Guido Kanschat, 2000, 2001

Definition at line 2660 of file fe_values.h.

Constructor & Destructor Documentation

template<int dim, int spacedim = dim>
FEFaceValuesBase< dim, spacedim >::FEFaceValuesBase ( const unsigned int  n_q_points,
const unsigned int  dofs_per_cell,
const UpdateFlags  update_flags,
const Mapping< dim, spacedim > &  mapping,
const FiniteElement< dim, spacedim > &  fe,
const Quadrature< dim-1 > &  quadrature 
)

Constructor. Call the constructor of the base class and set up the arrays of this class with the right sizes. Actually filling these arrays is a duty of the derived class's constructors.

n_faces_or_subfaces is the number of faces or subfaces that this object is to store. The actual number depends on the derived class, for FEFaceValues it is 2*dim, while for the FESubfaceValues class it is 2*dim*(1<<(dim-1)), i.e. the number of faces times the number of subfaces per face.

Member Function Documentation

template<int dim, int spacedim = dim>
const Tensor<1,spacedim>& FEFaceValuesBase< dim, spacedim >::boundary_form ( const unsigned int  i) const

Boundary form of the transformation of the cell at the ith quadrature point. See GlossBoundaryForm .

Note
For this function to work properly, the underlying FEValues, FEFaceValues, or FESubfaceValues object on which you call it must have computed the information you are requesting. To do so, the update_boundary_forms flag must be an element of the list of UpdateFlags that you passed to the constructor of this object. See The interplay of UpdateFlags, Mapping and FiniteElement in FEValues for more information.
template<int dim, int spacedim = dim>
const std::vector<Tensor<1,spacedim> >& FEFaceValuesBase< dim, spacedim >::get_boundary_forms ( ) const

Return the list of outward normal vectors times the Jacobian of the surface mapping.

Note
For this function to work properly, the underlying FEValues, FEFaceValues, or FESubfaceValues object on which you call it must have computed the information you are requesting. To do so, the update_boundary_forms flag must be an element of the list of UpdateFlags that you passed to the constructor of this object. See The interplay of UpdateFlags, Mapping and FiniteElement in FEValues for more information.
template<int dim, int spacedim = dim>
unsigned int FEFaceValuesBase< dim, spacedim >::get_face_index ( ) const

Return the index of the face selected the last time the reinit() function was called.

template<int dim, int spacedim = dim>
const Quadrature<dim-1>& FEFaceValuesBase< dim, spacedim >::get_quadrature ( ) const

Return a reference to the copy of the quadrature formula stored by this object.

template<int dim, int spacedim = dim>
std::size_t FEFaceValuesBase< dim, spacedim >::memory_consumption ( ) const

Determine an estimate for the memory consumption (in bytes) of this object.

Member Data Documentation

template<int dim, int spacedim = dim>
const unsigned int FEFaceValuesBase< dim, spacedim >::integral_dimension = dim-1
static

Dimension of the object over which we integrate. For the present class, this is equal to dim-1.

Definition at line 2667 of file fe_values.h.

template<int dim, int spacedim = dim>
unsigned int FEFaceValuesBase< dim, spacedim >::present_face_index
protected

Index of the face selected the last time the reinit() function was called.

Definition at line 2727 of file fe_values.h.

template<int dim, int spacedim = dim>
const Quadrature<dim-1> FEFaceValuesBase< dim, spacedim >::quadrature
protected

Store a copy of the quadrature formula here.

Definition at line 2732 of file fe_values.h.


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