KASKADE 7 development version
|
FEFunctionSpace and FunctionSpaceElement and the like. More...
#include <cassert>
#include <map>
#include <sstream>
#include <boost/mpl/int.hpp>
#include <boost/mpl/range_c.hpp>
#include <boost/multi_array.hpp>
#include <boost/signals2.hpp>
#include <boost/type_traits/remove_pointer.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include <boost/fusion/algorithm.hpp>
#include <boost/fusion/sequence.hpp>
#include "dune/common/config.h"
#include "dune/common/fmatrixev.hh"
#include "dune/geometry/quadraturerules.hh"
#include "dune/istl/bvector.hh"
#include "fem/gridmanager.hh"
#include "fem/pshapefunctions.hh"
#include "fem/shapefunctioncache.hh"
#include "linalg/crsutil.hh"
#include "utilities/detailed_exception.hh"
Go to the source code of this file.
Classes | |
struct | Kaskade::SpaceType< Spaces, Idx > |
Extracts the type of FE space with given index from set of spaces. More... | |
class | Kaskade::FunctionSpaceElement< FunctionSpace, m > |
A class for representing finite element functions. More... | |
class | Kaskade::FunctionSpace_Detail::ToDomainRepresentation< FEFunction > |
class | Kaskade::FunctionSpace_Detail::ToDomainRepresentation< FunctionSpaceElement< FEFunctionSpace< BoundaryMapper< DomainMapper, Scalar, GridView > >, m > > |
class | Kaskade::FEFunctionSpace< LocalToGlobalMapper > |
A representation of a finite element function space defined over a domain covered by a grid. More... | |
struct | Kaskade::FEFunctionSpace< LocalToGlobalMapper >::Element< m > |
DEPRECATED use Element_t<m> instead. More... | |
struct | Kaskade::FEFunctionSpace< LocalToGlobalMapper >::Evaluator |
A helper class that stores all informations necessary to evaluate FE functions at a certain point. More... | |
class | Kaskade::GetEvaluators< Cache > |
A boost::fusion functor for creating an evaluator from the space, using a shape function cache that is given on construction of the functor. More... | |
class | Kaskade::GetEvaluatorTypes |
A boost::fusion functor for extracting the evaluator type from a pointer to a FE space. This is more or less redundant to GetEvaluators, but no shape function cache type needs to be provided. More... | |
class | Kaskade::GetVarArgs< Evaluators > |
A boost::fusion functor for creating a variational arg from the space, using a shape function cache that is given on construction of the functor. More... | |
struct | Kaskade::GetVarArgs< Evaluators >::result< T > |
struct | Kaskade::GetVarArgs< Evaluators >::result< GetVarArgs(VD)> |
Namespaces | |
namespace | Kaskade |
namespace | Kaskade::FunctionSpace_Detail |
Typedefs | |
template<class Spaces > | |
using | Kaskade::Evaluators = typename boost::fusion::result_of::as_vector< typename boost::fusion::result_of::transform< Spaces, GetEvaluatorTypes >::type >::type |
the heterogeneous sequence type of Evaluators for the given spaces More... | |
Enumerations | |
enum | Kaskade::ProblemType { Kaskade::VariationalFunctional , Kaskade::WeakFormulation } |
A type for describing the nature of a PDE problem. More... | |
Functions | |
template<class Cell , class ctype > | |
std::pair< Cell, Dune::FieldVector< ctype, Cell::dimension > > | Kaskade::findCellOnLevel (Cell cell, Dune::FieldVector< ctype, Cell::dimension > xi, int level=std::numeric_limits< int >::max()) |
Returns a descendant or ancestor cell of the given cell containing the specified local coordinate. More... | |
template<class GridView > | |
Cell< GridView > | Kaskade::findCell (GridView const &gv, GlobalPosition< GridView > global) |
Returns a cell of the given grid containing the specified global coordinate. More... | |
template<class Space , int m, class InIter > | |
InIter | Kaskade::vectorFromSequence (FunctionSpaceElement< Space, m > &v, InIter in) |
template<class Evaluators , class Cell > | |
void | Kaskade::moveEvaluatorsToCell (Evaluators &evals, Cell const &cell) |
Moves all provided evaluators to the given cell. More... | |
template<class Evaluators , class Cell , class Index > | |
void | Kaskade::moveEvaluatorsToCell (Evaluators &evals, Cell const &cell, Index idx) |
Moves all provided evaluators to the given cell with provided index. More... | |
template<class Evaluator , class QuadratureRule > | |
void | Kaskade::useQuadratureRuleInEvaluators (Evaluator &evals, QuadratureRule const &qr, int subId) |
Tells all evaluators to use the given quadrature rule on the given subentity. More... | |
template<class Evaluators , class CoordType , int dim, int subDim> | |
void | Kaskade::moveEvaluatorsToIntegrationPoint (Evaluators &evals, Dune::FieldVector< CoordType, dim > const &x, Dune::QuadratureRule< CoordType, subDim > const &qr, int ip, int subId) |
Moves all provided evaluators to the given integration point, evaluating the shape functions there. More... | |
template<class Evaluators , class CoordType , int dim> | |
void | Kaskade::moveEvaluatorsToIntegrationPoint (Evaluators &evals, Dune::FieldVector< CoordType, dim > const &x) |
Moves all provided evaluators to the given integration point, evaluating the shape functions there. More... | |
template<class Evaluators > | |
int | Kaskade::maxOrder (Evaluators const &evals) |
Computes the maximum ansatz order used in a collection of evaluators. More... | |
FEFunctionSpace and FunctionSpaceElement and the like.
This file contains a number of core classes of Kaskade, needed to define a problem. The important ones are:
The other classes are auxilliary
Definition in file functionspace.hh.