1#ifndef _RHEOLEF_PIOLA_FEM_GRAD_POST_ICC
2#define _RHEOLEF_PIOLA_FEM_GRAD_POST_ICC
35 const details::differentiate_option& gopt,
39 if (gopt.surfacic &&
p.map_d + 1 ==
p.
d) {
51 const details::differentiate_option& gopt,
52 const point_basic<T>&
u,
55 if (gopt.symmetrized) {
65 if (! gopt.symmetrized) {
74 size_t i_comp_theta = 2;
75 const T& ur =
u [i_comp_r];
76 const T& r =
p.F [i_comp_r];
80 check_macro (1+abs(r) != 1,
"grad(): singular axisymmetric (1/r) weight (HINT: avoid interpolate() or change quadrature formulae)");
81 grad_u (i_comp_theta, i_comp_theta) = ur/r;
90 const details::differentiate_option& gopt,
91 const tensor_basic<T>&
u,
check_macro(expr1.have_homogeneous_space(Xh1), "dual(expr1,expr2); expr1 should have homogeneous space. HINT: use dual(interpolate(Xh, expr1),expr2)")
This file is part of Rheolef.
csr< T, sequential > trans(const csr< T, sequential > &a)
trans(a): see the form page for the full documentation