27 template<
unsigned int dim,
unsigned int spacedim>
32 return fe_values_.shape_value_component(function_no, point_no, component_);
35 template<
unsigned int dim,
unsigned int spacedim>
40 return fe_values_.shape_grad_component(function_no, point_no, component_);
43 template<
unsigned int dim,
unsigned int spacedim>
45 {
return fe_values_; }
50 template<
unsigned int dim,
unsigned int spacedim>
55 arma::vec::fixed<spacedim> v;
56 for (
unsigned int c=0; c<spacedim; ++c)
57 v(c) = fe_values_.shape_value_component(function_no, point_no, first_vector_component_+c);
61 template<
unsigned int dim,
unsigned int spacedim>
66 arma::mat::fixed<spacedim,spacedim> g;
67 for (
unsigned int c=0; c<spacedim; ++c)
68 g.col(c) = fe_values_.shape_grad_component(function_no, point_no, first_vector_component_+c);
72 template<
unsigned int dim,
unsigned int spacedim>
77 arma::mat::fixed<spacedim,spacedim> g = grad(function_no, point_no);
78 return 0.5*(g+trans(g));
81 template<
unsigned int dim,
unsigned int spacedim>
87 for (
unsigned int c=0; c<spacedim; ++c)
88 div += fe_values_.shape_grad_component(function_no, point_no, first_vector_component_+c)(first_vector_component_+c);
92 template<
unsigned int dim,
unsigned int spacedim>
94 {
return fe_values_; }
98 template<
unsigned int dim,
unsigned int spacedim>
103 arma::mat::fixed<spacedim,spacedim> v;
104 for (
unsigned int c=0; c<spacedim*spacedim; ++c)
105 v(c/spacedim,c%spacedim) = fe_values_.shape_value_component(function_no, point_no, first_tensor_component_+c);
109 template<
unsigned int dim,
unsigned int spacedim>
111 unsigned int variable_no,
112 unsigned int function_no,
113 unsigned int point_no)
const
118 arma::mat::fixed<spacedim,spacedim> g;
119 for (
unsigned int c=0; c<spacedim*spacedim; ++c)
120 g(c/spacedim,c%spacedim) = fe_values_.shape_grad_component(function_no, point_no, first_tensor_component_+c)[first_tensor_component_+variable_no];
124 template<
unsigned int dim,
unsigned int spacedim>
129 arma::vec::fixed<spacedim> div;
131 for (
unsigned int c=0; c<spacedim*spacedim; ++c)
132 div(c%spacedim) += fe_values_.shape_grad_component(function_no, point_no, first_tensor_component_+c)[first_tensor_component_+c/spacedim];
136 template<
unsigned int dim,
unsigned int spacedim>
138 {
return fe_values_; }