...DoFHandler<dim>::active_cell_iterator &cell
...
// update the Jacobian matrix at the center of the cell
Point<dim> center_point;
for (unsigned int i = 0; i < dim; ++i)
center_point[i] = 0.5;
Quadrature<dim> center_quadrature(center_point);
FE_Nothing<dim> fe_nothing;
MappingQ1<dim> mapping;
FEValues<dim> temp_fe_values(mapping, fe_nothing, center_quadrature, update_jacobians);
temp_fe_values.reinit(cell);
DerivativeForm<1, dim, dim> center_jacobian = temp_fe_values.jacobian(0);
double det_J0 = center_jacobian.determinant();