((dim==2) ?
4+4*(degree-1) :
8+12*(degree-1)+6*(degree-1)*(degree-1))),
- n_shape_functions(Utilities::fixed_power<dim>(degree+1)),
use_mapping_q_on_all_cells (use_mapping_q_on_all_cells
|| (dim != spacedim)),
feq(degree),
line_support_points(degree+1)
{
- Assert(n_inner+n_outer==n_shape_functions, ExcInternalError());
+ Assert(n_inner+n_outer==Utilities::fixed_power<dim>(degree+1),
+ ExcInternalError());
// build laplace_on_quad_vector
if (degree>1)
degree(mapping.degree),
n_inner(mapping.n_inner),
n_outer(mapping.n_outer),
- n_shape_functions(mapping.n_shape_functions),
use_mapping_q_on_all_cells (mapping.use_mapping_q_on_all_cells),
feq(degree),
line_support_points(degree+1)
const unsigned int n_q_points=quadrature.size();
InternalData quadrature_data(degree);
- quadrature_data.shape_derivatives.resize(n_shape_functions * n_q_points);
+ quadrature_data.shape_derivatives.resize(quadrature_data.n_shape_functions *
+ n_q_points);
quadrature_data.compute_shape_function_values(quadrature.get_points());
// Compute the stiffness matrix of the inner dofs
}
// Now, q1_data should have the right tensors in it and we call the base
- // classes transform function
+ // class's transform function
MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
}
// Now, q1_data should have the right tensors in it and we call the base
- // classes transform function
+ // class's transform function
MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
}
// Now, q1_data should have the right tensors in it and we call the base
- // classes transform function
+ // class's transform function
MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
}
// Now, q1_data should have the right tensors in it and we call the base
- // classes transform function
+ // class's transform function
MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
}
// Now, q1_data should have the right tensors in it and we call the base
- // classes transform function
+ // class's transform function
MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
#include <deal.II/base/derivative_form.h>
#include <deal.II/base/quadrature.h>
#include <deal.II/base/qprojector.h>
+#include <deal.II/base/quadrature_lib.h>
+#include <deal.II/base/tensor_product_polynomials.h>
#include <deal.II/base/memory_consumption.h>
#include <deal.II/base/std_cxx11/array.h>
#include <deal.II/base/std_cxx11/unique_ptr.h>
#include <deal.II/fe/fe.h>
#include <deal.II/fe/fe_values.h>
#include <deal.II/fe/mapping_q1.h>
-#include <deal.II/fe/mapping_q.h>
-#include <deal.II/fe/mapping_q1_eulerian.h>
#include <cmath>
#include <algorithm>
DEAL_II_NAMESPACE_OPEN
-template <int dim, int spacedim>
-const unsigned int MappingQ1<dim,spacedim>::n_shape_functions;
-
-
-
template<int dim, int spacedim>
MappingQ1<dim,spacedim>::InternalData::InternalData (const unsigned int polynomial_degree)
: