Public Types | Static Public Member Functions | Static Public Attributes

DerivativeApproximation::Gradient< dim > Class Template Reference

List of all members.

Public Types

typedef Tensor< 1, dim > Derivative
typedef double ProjectedDerivative

Static Public Member Functions

template<class InputVector , int spacedim>
static ProjectedDerivative get_projected_derivative (const FEValues< dim, spacedim > &fe_values, const InputVector &solution, const unsigned int component)
static double derivative_norm (const Derivative &d)
static void symmetrize (Derivative &derivative_tensor)

Static Public Attributes

static const UpdateFlags update_flags

Detailed Description

template<int dim>
class DerivativeApproximation::Gradient< dim >

The following class is used to describe the data needed to compute the finite difference approximation to the gradient on a cell. See the general documentation of this class for more information on implementational details.

Author:
Wolfgang Bangerth, 2000

Definition at line 344 of file derivative_approximation.h.


Member Typedef Documentation

template<int dim>
typedef Tensor<1,dim> DerivativeApproximation::Gradient< dim >::Derivative

Declare the data type which holds the derivative described by this class.

Definition at line 360 of file derivative_approximation.h.

template<int dim>
typedef double DerivativeApproximation::Gradient< dim >::ProjectedDerivative

Likewise declare the data type that holds the derivative projected to a certain directions.

Definition at line 368 of file derivative_approximation.h.


Member Function Documentation

template<int dim>
template<class InputVector , int spacedim>
static ProjectedDerivative DerivativeApproximation::Gradient< dim >::get_projected_derivative ( const FEValues< dim, spacedim > &  fe_values,
const InputVector &  solution,
const unsigned int  component 
) [static]

Given an FEValues object initialized to a cell, and a solution vector, extract the desired derivative at the first quadrature point (which is the only one, as we only evaluate the finite element field at the center of each cell).

template<int dim>
static double DerivativeApproximation::Gradient< dim >::derivative_norm ( const Derivative d) [static]

Return the norm of the derivative object. Here, for the gradient, we choose the Euclidian norm of the gradient vector.

template<int dim>
static void DerivativeApproximation::Gradient< dim >::symmetrize ( Derivative derivative_tensor) [static]

If for the present derivative order, symmetrization of the derivative tensor is necessary, then do so on the argument.

For the first derivatives, no such thing is necessary, so this function is a no-op.


Member Data Documentation

template<int dim>
const UpdateFlags DerivativeApproximation::Gradient< dim >::update_flags [static]

Declare which data fields have to be updated for the function get_projected_derivative to work.

Definition at line 353 of file derivative_approximation.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

deal.II documentation generated on Thu May 17 2012 20:05:29 by doxygen 1.7.3