Rheolef  7.1
an efficient C++ finite element environment
form_field_expr.h
Go to the documentation of this file.
1 # ifndef _RHEOLEF_FORM_FIELD_EXPR_H
2 # define _RHEOLEF_FORM_FIELD_EXPR_H
3 
24 #include "rheolef/form.h"
25 #include "rheolef/field_component.h"
26 #include "rheolef/field_indirect.h"
27 #include "rheolef/field_expr.h"
28 namespace rheolef {
29 
30 // -----------------------------------------------------------------------
31 // form*field_expr
32 // -----------------------------------------------------------------------
33 #define _RHEOLEF_form_mult_field_var(field_var) \
34 template <class T, class M> \
35 inline \
36 field_basic<T,M> \
37 operator* (const form_basic<T,M>& a, const field_var<T,M>& expr) \
38 { \
39  field_basic<T,M> eh = expr; \
40  return a.operator* (eh); \
41 }
46 #undef _RHEOLEF_form_mult_field_var
47 
48 template <class T, class M, class Expr>
49 inline
50 typename
51 std::enable_if<
55 >::type
56 operator* (const form_basic<T,M>& a, const Expr& expr)
57 {
58  field_basic<T,M> eh = expr;
59  return a.operator* (eh);
60 }
61 
62 }// namespace rheolef
63 # endif /* _RHEOLEF_FORM_FIELD_EXPR_H */
mkgeo_ball.expr
expr
Definition: mkgeo_ball.sh:361
rheolef::operator*
csr< T, sequential > operator*(const T &lambda, const csr< T, sequential > &a)
Definition: csr.h:437
rheolef::field_component_const
Definition: field_component.h:143
rheolef::field_indirect_const
Definition: field_indirect.h:266
rheolef::field_indirect
Definition: field_indirect.h:39
a
Definition: diffusion_isotropic.h:25
eh
field_basic< T, M > eh
Definition: form_field_expr.h:58
rheolef::type
rheolef::std type
rheolef::field_basic
Definition: field.h:235
rheolef::field_component
Definition: field_component.h:61
rheolef
This file is part of Rheolef.
Definition: compiler_eigen.h:37
rheolef::form_basic
Definition: form.h:144
rheolef::_RHEOLEF_form_mult_field_var
_RHEOLEF_form_mult_field_var(field_component) _RHEOLEF_form_mult_field_var(field_component_const) _RHEOLEF_form_mult_field_var(field_indirect) _RHEOLEF_form_mult_field_var(field_indirect_const) template< class T
rheolef::details::is_field
Definition: field_expr_terminal.h:61
rheolef::details::is_field_convertible
Definition: field_expr_terminal.h:65