21 #ifndef __EXPRESSION_H 22 #define __EXPRESSION_H 26 #include <Eigen/Dense> 27 #include <dolfin/common/Array.h> 28 #include "GenericFunction.h" 69 Expression(std::size_t dim0, std::size_t dim1);
98 const ufc::cell& cell)
const override;
108 virtual void eval(Eigen::Ref<Eigen::VectorXd> values,
109 Eigen::Ref<const Eigen::VectorXd> x,
110 const ufc::cell& cell)
const override;
126 virtual void eval(Eigen::Ref<Eigen::VectorXd> values,
127 Eigen::Ref<const Eigen::VectorXd> x)
const override;
133 virtual std::size_t
value_rank()
const override;
148 virtual std::vector<std::size_t>
value_shape()
const override;
184 const Cell& dolfin_cell,
185 const double* coordinate_dofs,
186 const ufc::cell& ufc_cell)
const override;
195 const Mesh& mesh)
const override;
202 virtual std::shared_ptr<const FunctionSpace>
function_space()
const override;
207 std::vector<std::size_t> _value_shape;
virtual std::vector< std::size_t > value_shape() const override
Definition: Expression.cpp:119
Expression()
Create scalar expression.
Definition: Expression.cpp:32
virtual void set_generic_function(std::string name, std::shared_ptr< GenericFunction > f)
Definition: Expression.cpp:139
Definition: Expression.h:49
A Cell is a MeshEntity of topological codimension 0.
Definition: Cell.h:42
virtual void compute_vertex_values(std::vector< double > &vertex_values, const Mesh &mesh) const override
Definition: Expression.cpp:165
virtual std::size_t value_dimension(std::size_t i) const override
Definition: Expression.cpp:107
virtual std::shared_ptr< dolfin::GenericFunction > get_generic_function(std::string name) const
Definition: Expression.cpp:146
virtual void eval(Array< double > &values, const Array< double > &x, const ufc::cell &cell) const override
Definition: Expression.cpp:67
virtual double get_property(std::string name) const
Definition: Expression.cpp:131
virtual void restrict(double *w, const FiniteElement &element, const Cell &dolfin_cell, const double *coordinate_dofs, const ufc::cell &ufc_cell) const override
Definition: Expression.cpp:154
virtual std::size_t value_rank() const override
Definition: Expression.cpp:102
std::string name() const
Return name.
Definition: Variable.cpp:71
virtual ~Expression()
Destructor.
Definition: Expression.cpp:62
Definition: GenericFunction.h:53
virtual std::shared_ptr< const FunctionSpace > function_space() const override
Definition: Expression.cpp:202
virtual void set_property(std::string name, double value)
Definition: Expression.cpp:124
This is a wrapper for a UFC finite element (ufc::finite_element).
Definition: FiniteElement.h:35