|
| Expression () |
| Create scalar expression.
|
|
| Expression (std::size_t dim) |
|
| Expression (std::size_t dim0, std::size_t dim1) |
|
| Expression (std::vector< std::size_t > value_shape) |
|
| Expression (const Expression &expression) |
|
virtual | ~Expression () |
| Destructor.
|
|
virtual void | eval (Array< double > &values, const Array< double > &x, const ufc::cell &cell) const override |
|
virtual void | eval (Eigen::Ref< Eigen::VectorXd > values, Eigen::Ref< const Eigen::VectorXd > x, const ufc::cell &cell) const override |
|
virtual void | eval (Array< double > &values, const Array< double > &x) const override |
|
virtual void | eval (Eigen::Ref< Eigen::VectorXd > values, Eigen::Ref< const Eigen::VectorXd > x) const override |
|
virtual std::size_t | value_rank () const override |
|
virtual std::size_t | value_dimension (std::size_t i) const override |
|
virtual std::vector< std::size_t > | value_shape () const override |
|
virtual void | set_property (std::string name, double value) |
|
virtual double | get_property (std::string name) const |
|
virtual void | set_generic_function (std::string name, std::shared_ptr< GenericFunction > f) |
|
virtual std::shared_ptr< dolfin::GenericFunction > | get_generic_function (std::string name) const |
|
virtual void | restrict (double *w, const FiniteElement &element, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const override |
|
virtual void | compute_vertex_values (std::vector< double > &vertex_values, const Mesh &mesh) const override |
|
virtual std::shared_ptr< const FunctionSpace > | function_space () const override |
|
| GenericFunction () |
| Constructor.
|
|
virtual | ~GenericFunction () |
| Destructor.
|
|
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 |
|
| 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)
|
|
This class represents a user-defined expression. Expressions can be used as coefficients in variational forms or interpolated into finite element spaces.
An expression is defined by overloading the eval() method. Users may choose to overload either a simple version of eval(), in the case of expressions only depending on the coordinate x, or an optional version for expressions depending on x and mesh data like cell indices or facet normals.
The geometric dimension (the size of x) and the value rank and dimensions of an expression must supplied as arguments to the constructor.