]> https://gitweb.dealii.org/ - dealii.git/commit
Make the type of normal vectors a Tensor. 1408/head
authorWolfgang Bangerth <bangerth@math.tamu.edu>
Fri, 21 Aug 2015 02:11:21 +0000 (21:11 -0500)
committerWolfgang Bangerth <bangerth@math.tamu.edu>
Fri, 21 Aug 2015 13:55:09 +0000 (08:55 -0500)
commit8e44a50bf14fb82e3573efcf8539b1dd55435e41
tree3804b902246e1889c7399cd601fd77cd4d8b3bc5
parent06d63583992b2d89260acd2b67c7e22e7c5208ad
Make the type of normal vectors a Tensor.

As discussed in #496, normal vectors are currently returned by FEValues
as Point<spacedim> objects, but since they are differential vectors, the
correct data type should be Tensor<1,dim>. This patch implements the solution
discussed in #496 by
* changing the return type of FEValues::normal_vector()
* deprecating FEValues::get_normal_vectors()
* introducing FEValues::get_all_normal_vectors() that returns a vector
  of tensors.

The old get_normal_vectors() function was deprecated. In order to
make it work, I also had to change the return type from a reference
to a straight array. This array may be bound to a reference in
many places in user codes, but the style we have used everywhere
is to make these reference variables very localized in scope and
so I don't foresee any problems.
36 files changed:
doc/news/changes.h
examples/step-12/step-12.cc
examples/step-30/step-30.cc
examples/step-33/step-33.cc
examples/step-34/step-34.cc
examples/step-51/step-51.cc
include/deal.II/fe/fe_update_flags.h
include/deal.II/fe/fe_values.h
include/deal.II/fe/mapping_cartesian.h
include/deal.II/integrators/elasticity.h
include/deal.II/integrators/laplace.h
include/deal.II/integrators/maxwell.h
include/deal.II/matrix_free/mapping_data_on_the_fly.h
include/deal.II/numerics/vector_tools.templates.h
source/fe/fe_values.cc
source/fe/mapping_cartesian.cc
source/numerics/data_out_faces.cc
source/numerics/error_estimator.cc
source/numerics/matrix_tools.cc
tests/aniso/mesh_3d_21.cc
tests/bits/rt_2.cc
tests/bits/step-12.cc
tests/bits/step-51.cc
tests/bits/step-51p.cc
tests/codim_one/bem.cc
tests/codim_one/bem_integration.cc
tests/codim_one/gradients.cc
tests/codim_one/surface.cc
tests/deal.II/nedelec_non_rect_face.cc
tests/deal.II/project_boundary_rt_01.cc
tests/fe/fe_q_dg0.cc
tests/fe/mapping.cc
tests/fe/mapping_c1.cc
tests/fe/rt_normal_02.cc
tests/grid/mesh_3d_6.cc
tests/hp/step-12.cc

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.