|
DOLFIN
DOLFIN C++ interface
|
#include <GenericFunction.h>


Public Member Functions | |
| GenericFunction () | |
| Constructor. | |
| virtual | ~GenericFunction () |
| Destructor. | |
| virtual std::size_t | value_rank () const =0 |
| Return value rank. | |
| virtual std::size_t | value_dimension (std::size_t i) const =0 |
| Return value dimension for given axis. | |
| virtual std::vector< std::size_t > | value_shape () const =0 |
| Return value shape. | |
| virtual void | eval (Array< double > &values, const Array< double > &x, const ufc::cell &cell) const |
| Evaluate at given point in given cell (deprecated) | |
| virtual void | eval (Array< double > &values, const Array< double > &x) const |
| Evaluate at given point (deprecated) | |
| virtual void | eval (Eigen::Ref< Eigen::VectorXd > values, Eigen::Ref< const Eigen::VectorXd > x, const ufc::cell &cell) const |
| Evaluate at given point in given cell. | |
| virtual void | eval (Eigen::Ref< Eigen::VectorXd > values, Eigen::Ref< const Eigen::VectorXd > x) const |
| Evaluate at given point. | |
| virtual void | restrict (double *w, const FiniteElement &element, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const =0 |
| Restrict function to local cell (compute expansion coefficients w) | |
| virtual void | compute_vertex_values (std::vector< double > &vertex_values, const Mesh &mesh) const =0 |
| Compute values at all mesh vertices. | |
| virtual void | update () const |
| Update off-process ghost coefficients. | |
| double | operator() (double x) const |
| Evaluation at given point (scalar function) | |
| double | operator() (double x, double y) const |
| Evaluation at given point (scalar function) | |
| double | operator() (double x, double y, double z) const |
| Evaluation at given point (scalar function) | |
| double | operator() (const Point &p) const |
| Evaluation at given point (scalar function) | |
| void | operator() (Array< double > &values, double x) const |
| Evaluation at given point (vector-valued function) | |
| void | operator() (Array< double > &values, double x, double y) const |
| Evaluation at given point (vector-valued function) | |
| void | operator() (Array< double > &values, double x, double y, double z) const |
| Evaluation at given point (vector-valued function) | |
| void | operator() (Array< double > &values, const Point &p) const |
| Evaluation at given point (vector-valued function) | |
| std::size_t | value_size () const |
| Evaluation at given point. More... | |
| virtual void | evaluate (double *values, const double *coordinates, const ufc::cell &cell) const override |
| virtual std::shared_ptr< const FunctionSpace > | function_space () const =0 |
| Pointer to FunctionSpace, if appropriate, otherwise NULL. | |
Public Member Functions inherited from dolfin::Variable | |
| Variable () | |
| Create unnamed variable. | |
| Variable (const std::string name, const std::string label) | |
| Create variable with given name and label. | |
| Variable (const Variable &variable) | |
| Copy constructor. | |
| virtual | ~Variable () |
| Destructor. | |
| const Variable & | operator= (const Variable &variable) |
| Assignment operator. | |
| void | rename (const std::string name, const std::string label) |
| Rename variable. | |
| std::string | name () const |
| Return name. | |
| std::string | label () const |
| Return label (description) | |
| std::size_t | id () const |
| virtual std::string | str (bool verbose) const |
| Return informal string representation (pretty-print) | |
Protected Member Functions | |
| void | restrict_as_ufc_function (double *w, const FiniteElement &element, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const |
| Restrict as UFC function (by calling eval) | |
Additional Inherited Members | |
Public Attributes inherited from dolfin::Variable | |
| Parameters | parameters |
| Parameters. | |
This is a common base class for functions. Functions can be evaluated at a given point and they can be restricted to a given cell in a finite element mesh. This functionality is implemented by sub-classes that implement the eval() and restrict() functions.
DOLFIN provides two implementations of the GenericFunction interface in the form of the classes Function and Expression.
Sub-classes may optionally implement the update() function that will be called prior to restriction when running in parallel.
|
overridevirtual |
Evaluate function at given point in cell
| values | (double*) |
| coordinates | (const double*) |
| cell | (ufc::cell&) |
| std::size_t GenericFunction::value_size | ( | ) | const |
Evaluation at given point.
Return value size (product of value dimensions)
1.8.13