Avoid setting the templated 'Number' to '0' (double) in trace(Tensor<2,dim,Number>).

Enables using trace also with e.g. Tensor<2,dim,VectorizedArray<double> >.
Merge pull request #123 from kronbichler/master

Avoid setting the templated 'Number' to '0' (double) in trace(Tensor<2,dim,Number>)
Add assertion for row index in TrilinosWrappers::SparseMatrix::set/add
Merge branch 'master' of https://github.com/dealii/dealii
Merge pull request #125 from kronbichler/master

Assert valid matrix row in TrilinosWrappers::SparseMatrix::add/set
Small bugfixes wrt DEAL_II_HAVE_AVX512

 - Use the same logic as for DEAL_II_HAVE_(SSE|AVX)
 - Update documentation
Refactor openmp-simd setup

 * The check for support of -(f)openmp-simd is now done in
   checks/check_01_cpu_features.cmake and guarded by
   DEAL_II_ALLOW_PLATFORM_INTROSPECTION

   The guard is important in order to allow for platform independent
   compilations (as required by Linux distributions)

   Furthermore, this allows for manual override via
   DEAL_II_HAVE_OPENMP_SIMD.

 * The pragma statement is refactored into a macro defined in
   config.h.in. With this, no -Wno-unknown-pragmas workarounds are
   necessary and picky compilers that choke on "#pragma" are happy.