]> https://gitweb.dealii.org/ - dealii.git/log
dealii.git
7 years agoRemove an unnecessary cast. 4635/head
Wolfgang Bangerth [Wed, 19 Jul 2017 18:06:01 +0000 (12:06 -0600)]
Remove an unnecessary cast.

7 years agoMerge pull request #4629 from masterleinad/fix_construct_chebyshev
Wolfgang Bangerth [Wed, 19 Jul 2017 13:12:58 +0000 (07:12 -0600)]
Merge pull request #4629 from masterleinad/fix_construct_chebyshev

Use appropriate constructor for QGaussChebyshev*

7 years agoUse appropriate constructor for QGaussChebyshev* 4629/head
Daniel Arndt [Wed, 19 Jul 2017 11:15:01 +0000 (13:15 +0200)]
Use appropriate constructor for QGaussChebyshev*

7 years agoMerge pull request #4624 from bangerth/dofhandler-update
Bruno Turcksin [Wed, 19 Jul 2017 01:59:26 +0000 (21:59 -0400)]
Merge pull request #4624 from bangerth/dofhandler-update

DoFHandler policy update

7 years agoSimplify an assertion. 4624/head
Wolfgang Bangerth [Wed, 19 Jul 2017 00:36:08 +0000 (18:36 -0600)]
Simplify an assertion.

7 years agoMore small cleanups.
Wolfgang Bangerth [Tue, 18 Jul 2017 23:48:50 +0000 (17:48 -0600)]
More small cleanups.

Most documentation changes, renaming of variables, and general housekeeping.

7 years agoLet a function return its product, rather than use a reference argument.
Wolfgang Bangerth [Tue, 18 Jul 2017 23:26:06 +0000 (17:26 -0600)]
Let a function return its product, rather than use a reference argument.

This is the same patch as the previous commit, except for the multilevel
version of the function: p::d::Triangulation::fill_level_vertices_with_ghost_neighbors().

7 years agoLet a function return its product, rather than use a reference argument.
Wolfgang Bangerth [Tue, 18 Jul 2017 23:16:11 +0000 (17:16 -0600)]
Let a function return its product, rather than use a reference argument.

While there, also make the function 'const', which requires a bit of surgery in a variety
of places where we did not accurately propagate constness.

7 years agoMore random cleanups.
Wolfgang Bangerth [Tue, 18 Jul 2017 22:56:59 +0000 (16:56 -0600)]
More random cleanups.

7 years agoMerge pull request #4626 from drwells/add-time-dependent-iterator-check
Wolfgang Bangerth [Tue, 18 Jul 2017 18:10:46 +0000 (12:10 -0600)]
Merge pull request #4626 from drwells/add-time-dependent-iterator-check

Add an extra iterator validation check.

7 years agoAdd an extra iterator validation check. 4626/head
David Wells [Tue, 18 Jul 2017 16:22:21 +0000 (12:22 -0400)]
Add an extra iterator validation check.

Coverity complains about this, so we may as well add an extra check for
iterator correctness.

7 years agoRename a couple of variables.
Wolfgang Bangerth [Tue, 18 Jul 2017 02:15:36 +0000 (20:15 -0600)]
Rename a couple of variables.

7 years agoMerge pull request #4620 from bangerth/avoid-raw-pointers
Bruno Turcksin [Tue, 18 Jul 2017 01:01:18 +0000 (21:01 -0400)]
Merge pull request #4620 from bangerth/avoid-raw-pointers

Avoid raw pointers. Use std::unique_ptr instead.

7 years agoMerge pull request #4622 from bangerth/simplify-pointer-class
Bruno Turcksin [Tue, 18 Jul 2017 00:57:28 +0000 (20:57 -0400)]
Merge pull request #4622 from bangerth/simplify-pointer-class

Use a clearer initialization syntax.

7 years agoMerge pull request #4623 from bangerth/add-changelog
Bruno Turcksin [Tue, 18 Jul 2017 00:56:40 +0000 (20:56 -0400)]
Merge pull request #4623 from bangerth/add-changelog

Add a changelog entry for hp::DoFHandler vs. p::s::Triangulation.

7 years agoMinor doc update.
Wolfgang Bangerth [Mon, 17 Jul 2017 23:55:23 +0000 (17:55 -0600)]
Minor doc update.

7 years agoFix a bug: Also catch the hp case in testing a policy pointer.
Wolfgang Bangerth [Mon, 17 Jul 2017 23:46:55 +0000 (17:46 -0600)]
Fix a bug: Also catch the hp case in testing a policy pointer.

7 years agoProvide the ParallelDistributed policy with a DoFHandler template argument.
Wolfgang Bangerth [Mon, 17 Jul 2017 23:45:51 +0000 (17:45 -0600)]
Provide the ParallelDistributed policy with a DoFHandler template argument.

7 years agoAdd a changelog entry for hp::DoFHandler vs p::s::Triangulation. 4623/head
Wolfgang Bangerth [Mon, 17 Jul 2017 23:31:15 +0000 (17:31 -0600)]
Add a changelog entry for hp::DoFHandler vs p::s::Triangulation.

7 years agoUse a clearer initialization syntax. 4622/head
Wolfgang Bangerth [Mon, 17 Jul 2017 23:11:20 +0000 (17:11 -0600)]
Use a clearer initialization syntax.

Specifically, we used the syntax
  Type object = initializer;
in contexts where the initializer is of a different type and the
compiler automatically converted this into
  Type object(initializer);
where the constructor called was just a regular constructor
that did something with the initializer, but specifically did not
copy the object. This is confusing. Use the latter syntax instead.

7 years agoMerge pull request #4621 from bangerth/doc-update
Timo Heister [Mon, 17 Jul 2017 20:54:09 +0000 (16:54 -0400)]
Merge pull request #4621 from bangerth/doc-update

Fix a minor spelling problem in a heading.

7 years agoFix a minor spelling problem in a heading. 4621/head
Wolfgang Bangerth [Mon, 17 Jul 2017 20:52:31 +0000 (14:52 -0600)]
Fix a minor spelling problem in a heading.

7 years agoAvoid raw pointers. Use std::unique_ptr instead. 4620/head
Wolfgang Bangerth [Mon, 17 Jul 2017 20:51:23 +0000 (14:51 -0600)]
Avoid raw pointers. Use std::unique_ptr instead.

This patch changes SparsityPattern and classes that use it.

7 years agoMerge pull request #4619 from jppelteret/change_tutorial_cmake_msg_4600
Wolfgang Bangerth [Mon, 17 Jul 2017 17:14:44 +0000 (11:14 -0600)]
Merge pull request #4619 from jppelteret/change_tutorial_cmake_msg_4600

Update CMake error message in tutorials.

7 years agoTutorial CMake error message now displays configured options. 4619/head
Jean-Paul Pelteret [Mon, 17 Jul 2017 13:26:39 +0000 (15:26 +0200)]
Tutorial CMake error message now displays configured options.

7 years agoMerge pull request #4617 from bangerth/fix-error-messages
David Wells [Mon, 17 Jul 2017 11:20:58 +0000 (07:20 -0400)]
Merge pull request #4617 from bangerth/fix-error-messages

Replace message-less exceptions with ones that say what's happening.

7 years agoUpdate CMake error message in tutorials.
Jean-Paul Pelteret [Mon, 17 Jul 2017 07:08:10 +0000 (09:08 +0200)]
Update CMake error message in tutorials.

This removes any ambiguity in the outputted message previously caused by
double negation.

Fixes #4600

7 years agoReplace message-less exceptions with ones that say what's happening. 4617/head
Wolfgang Bangerth [Sun, 16 Jul 2017 16:39:05 +0000 (10:39 -0600)]
Replace message-less exceptions with ones that say what's happening.

7 years agoMerge pull request #4618 from drwells/namespace-grid
Wolfgang Bangerth [Mon, 17 Jul 2017 02:29:42 +0000 (20:29 -0600)]
Merge pull request #4618 from drwells/namespace-grid

Reorganize (some of) the internal grid functions.

7 years agoReorganize (some of) the internal grid functions. 4618/head
David Wells [Sun, 16 Jul 2017 19:50:21 +0000 (15:50 -0400)]
Reorganize (some of) the internal grid functions.

This is similar to 6310b2dee3 and 52bef21ac2: these functions should be in
specific namespaces to avoid clashes if we want to support unity builds.

7 years agoMerge pull request #4615 from tamiko/bugfix_gmg_2
Matthias Maier [Sun, 16 Jul 2017 16:55:59 +0000 (11:55 -0500)]
Merge pull request #4615 from tamiko/bugfix_gmg_2

Bugfix: Do not assume a fully functional matrix interface for mg matrices

7 years agoAdd a changes entry 4615/head
Matthias Maier [Fri, 14 Jul 2017 22:03:38 +0000 (17:03 -0500)]
Add a changes entry

7 years agoBugfix: Do not assume a fully functional matrix interface for mg matrices
Matthias Maier [Fri, 14 Jul 2017 19:10:50 +0000 (14:10 -0500)]
Bugfix: Do not assume a fully functional matrix interface for mg matrices

7 years agoBugfix: Add overload for linear_operator that takes a LinearOperator exemplar
Matthias Maier [Fri, 14 Jul 2017 21:56:51 +0000 (16:56 -0500)]
Bugfix: Add overload for linear_operator that takes a LinearOperator exemplar

This allows to copy the reinit functions from a LinearOperator directly.

7 years agoBugfix: Initialize with a linear_operator
Matthias Maier [Fri, 14 Jul 2017 18:17:19 +0000 (13:17 -0500)]
Bugfix: Initialize with a linear_operator

7 years agoMerge pull request #4616 from drwells/namespace-fes
Wolfgang Bangerth [Sun, 16 Jul 2017 15:16:19 +0000 (09:16 -0600)]
Merge pull request #4616 from drwells/namespace-fes

Put internal FE functions in specific namespaces.

7 years agoPut internal FE functions in specific namespaces. 4616/head
David Wells [Sun, 9 Jul 2017 18:04:17 +0000 (14:04 -0400)]
Put internal FE functions in specific namespaces.

This is the finite element equivalent to 6310b2dee3e and is also necessary for
the (possible) unity build patch.

7 years agoMerge pull request #4601 from vishalkenchan/new/solver_fire
Daniel Arndt [Sat, 15 Jul 2017 09:13:45 +0000 (11:13 +0200)]
Merge pull request #4601 from vishalkenchan/new/solver_fire

new SolverFIRE inertial relaxation algorithm

7 years agoupdated authors 4601/head
vishalkenchan [Wed, 12 Jul 2017 10:15:02 +0000 (12:15 +0200)]
updated authors

7 years agoupdated documentation
vishalkenchan [Wed, 12 Jul 2017 08:30:53 +0000 (10:30 +0200)]
updated documentation

7 years agonew SolverFIRE inertial relaxation algorithm
vishalkenchan [Tue, 11 Jul 2017 14:51:00 +0000 (16:51 +0200)]
new SolverFIRE inertial relaxation algorithm

7 years agoMerge pull request #4587 from kronbichler/master
Wolfgang Bangerth [Fri, 14 Jul 2017 22:14:46 +0000 (16:14 -0600)]
Merge pull request #4587 from kronbichler/master

Initialize mapping support point weights through fast diagonalization method

7 years agoMerge pull request #4607 from tamiko/deprecate_pointer_matrix
Wolfgang Bangerth [Fri, 14 Jul 2017 20:15:42 +0000 (14:15 -0600)]
Merge pull request #4607 from tamiko/deprecate_pointer_matrix

Deprecate PointerMatrix

7 years agoMerge pull request #4614 from drwells/rename-c++11-output-files
Wolfgang Bangerth [Fri, 14 Jul 2017 20:05:13 +0000 (14:05 -0600)]
Merge pull request #4614 from drwells/rename-c++11-output-files

Remove 'with_cxx11' checks from test output files.

7 years agoRemove 'with_cxx11' checks from test output files. 4614/head
David Wells [Fri, 14 Jul 2017 18:08:44 +0000 (14:08 -0400)]
Remove 'with_cxx11' checks from test output files.

7 years agoMerge pull request #4612 from tamiko/bugfix_gmg
Denis Davydov [Fri, 14 Jul 2017 17:39:12 +0000 (19:39 +0200)]
Merge pull request #4612 from tamiko/bugfix_gmg

Bugfix: Revert an accidential change of an unrelated function

7 years agoBugfix: Revert an accidential change of an unrelated function 4612/head
Matthias Maier [Fri, 14 Jul 2017 15:18:44 +0000 (10:18 -0500)]
Bugfix: Revert an accidential change of an unrelated function

7 years agoadd a changes entry 4607/head
Matthias Maier [Fri, 14 Jul 2017 12:48:48 +0000 (07:48 -0500)]
add a changes entry

7 years agoDeprecate PointerMatrix
Matthias Maier [Thu, 13 Jul 2017 19:44:40 +0000 (14:44 -0500)]
Deprecate PointerMatrix

7 years agoMerge pull request #4606 from tamiko/do_not_user_pointer_matrix_internally
Bruno Turcksin [Fri, 14 Jul 2017 12:38:24 +0000 (08:38 -0400)]
Merge pull request #4606 from tamiko/do_not_user_pointer_matrix_internally

Cleanup: Remove internal PointerMatrix usage

7 years agoAdd changelog 4587/head
Martin Kronbichler [Tue, 11 Jul 2017 06:42:15 +0000 (08:42 +0200)]
Add changelog

7 years agoUse tensor product matrix in MappingQGeneric.
Martin Kronbichler [Fri, 7 Jul 2017 20:19:11 +0000 (22:19 +0200)]
Use tensor product matrix in MappingQGeneric.

7 years agoAdd new class TensorProductMatrix
Martin Kronbichler [Mon, 10 Jul 2017 19:00:27 +0000 (21:00 +0200)]
Add new class TensorProductMatrix

Tests for new TensorProductMatrix class

7 years agoMerge pull request #4597 from bangerth/cleanup-table-indices
Daniel Arndt [Fri, 14 Jul 2017 12:05:26 +0000 (14:05 +0200)]
Merge pull request #4597 from bangerth/cleanup-table-indices

Deprecate filling TableIndices indices with invalid numbers.

7 years agoBugfix: Use operator exemplars for preconditioners 4606/head
Matthias Maier [Fri, 14 Jul 2017 03:08:36 +0000 (22:08 -0500)]
Bugfix: Use operator exemplars for preconditioners

Further, work around an issue with MG wrappers not exposing vector space
information.

7 years agomake astyle happy
Matthias Maier [Thu, 13 Jul 2017 19:49:53 +0000 (14:49 -0500)]
make astyle happy

7 years agoWork around an incompatibility of MatrixBlockArray with linear_operator()
Matthias Maier [Thu, 13 Jul 2017 19:19:12 +0000 (14:19 -0500)]
Work around an incompatibility of MatrixBlockArray with linear_operator()

7 years agomultigrid/transfer_matrix_free_11: Only run if MPI=on, P4EST=on
Matthias Maier [Thu, 13 Jul 2017 18:54:09 +0000 (13:54 -0500)]
multigrid/transfer_matrix_free_11: Only run if MPI=on, P4EST=on

7 years agoRemove obsolete includes
Matthias Maier [Thu, 13 Jul 2017 18:45:30 +0000 (13:45 -0500)]
Remove obsolete includes

7 years agoCleanup: Use LinearOperator instead of PointerMatrix
Matthias Maier [Thu, 13 Jul 2017 17:57:53 +0000 (12:57 -0500)]
Cleanup: Use LinearOperator instead of PointerMatrix

7 years agoCleanup: Use LinearOperator instead of PointerMatrix
Matthias Maier [Thu, 13 Jul 2017 17:57:47 +0000 (12:57 -0500)]
Cleanup: Use LinearOperator instead of PointerMatrix

7 years agoCleanup: Use LinearOperator instead of PointerMatrix
Matthias Maier [Thu, 13 Jul 2017 17:57:36 +0000 (12:57 -0500)]
Cleanup: Use LinearOperator instead of PointerMatrix

7 years agoCleanup: Use LinearOperator instead of PointerMatrix
Matthias Maier [Thu, 13 Jul 2017 17:56:56 +0000 (12:56 -0500)]
Cleanup: Use LinearOperator instead of PointerMatrix

7 years agoMerge pull request #4605 from bangerth/delete-constructors
David Wells [Thu, 13 Jul 2017 18:00:00 +0000 (14:00 -0400)]
Merge pull request #4605 from bangerth/delete-constructors

Mark some constructors '=delete'.

7 years agoMerge pull request #4602 from bangerth/doc-update
Bruno Turcksin [Wed, 12 Jul 2017 21:04:13 +0000 (17:04 -0400)]
Merge pull request #4602 from bangerth/doc-update

Clarify that namespace GridRefinement is about *marking*, not *refinement*.

7 years agoMerge pull request #4593 from bangerth/dofhandler-cleanup-2
Bruno Turcksin [Wed, 12 Jul 2017 20:08:42 +0000 (16:08 -0400)]
Merge pull request #4593 from bangerth/dofhandler-cleanup-2

Make hp::DoFHandler work with parallel::shared::Triangulation

7 years agoDelete one unimplemented constructor. 4605/head
Wolfgang Bangerth [Wed, 12 Jul 2017 17:12:16 +0000 (11:12 -0600)]
Delete one unimplemented constructor.

While there, also let the compiler generate the default implementation
for copy constructors.

7 years agoClarify a statement.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:37:29 +0000 (10:37 -0600)]
Clarify a statement.

7 years agoDelete the copy constructor of class Triangulation.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:32:52 +0000 (10:32 -0600)]
Delete the copy constructor of class Triangulation.

7 years agoDelete a copy operator that wasn't implemented anyway.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:31:05 +0000 (10:31 -0600)]
Delete a copy operator that wasn't implemented anyway.

7 years agoDelete, rather than just mark as unnecessary, some constructors.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:27:34 +0000 (10:27 -0600)]
Delete, rather than just mark as unnecessary, some constructors.

7 years agoDelete a constructor instead of making it private.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:18:21 +0000 (10:18 -0600)]
Delete a constructor instead of making it private.

7 years agoDelete the constructor of MultithreadInfo.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:17:14 +0000 (10:17 -0600)]
Delete the constructor of MultithreadInfo.

It is not necessary because all members are static. In fact, the class should
probably be converted to a namespace.

7 years agoDelete a constructor instead of making it private.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:14:30 +0000 (10:14 -0600)]
Delete a constructor instead of making it private.

7 years agoDelete the constructor of p::s::Triangulation when no MPI is available.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:25:21 +0000 (10:25 -0600)]
Delete the constructor of p::s::Triangulation when no MPI is available.

7 years agoDelete the constructor of p::d::Triangulation when no p4est is available.
Wolfgang Bangerth [Wed, 12 Jul 2017 16:11:39 +0000 (10:11 -0600)]
Delete the constructor of p::d::Triangulation when no p4est is available.

7 years agoClarify that namespace GridRefinement is about *marking*, not *refinement*. 4602/head
Wolfgang Bangerth [Tue, 11 Jul 2017 21:22:22 +0000 (15:22 -0600)]
Clarify that namespace GridRefinement is about *marking*, not *refinement*.

7 years agoMerge pull request #4604 from bangerth/avoid-raw-pointers
Matthias Maier [Wed, 12 Jul 2017 02:35:18 +0000 (21:35 -0500)]
Merge pull request #4604 from bangerth/avoid-raw-pointers

Use a std::unique_ptr instead of a raw pointer in (Chunk)SparseMatrix.

7 years agoMerge pull request #4603 from bangerth/make-sync-iterators-private
Matthias Maier [Wed, 12 Jul 2017 02:33:41 +0000 (21:33 -0500)]
Merge pull request #4603 from bangerth/make-sync-iterators-private

Make SynchronousIterators::iterators private.

7 years agoUse a std::unique_ptr instead of a raw pointer in ChunkSparseMatrix. 4604/head
Wolfgang Bangerth [Wed, 12 Jul 2017 01:19:45 +0000 (19:19 -0600)]
Use a std::unique_ptr instead of a raw pointer in ChunkSparseMatrix.

7 years agoUse a std::unique_ptr instead of a raw pointer in SparseMatrix.
Wolfgang Bangerth [Tue, 11 Jul 2017 23:30:33 +0000 (17:30 -0600)]
Use a std::unique_ptr instead of a raw pointer in SparseMatrix.

7 years agoAdd changelog. 4603/head
Wolfgang Bangerth [Tue, 11 Jul 2017 22:06:30 +0000 (16:06 -0600)]
Add changelog.

7 years agoMake SynchronousIterators::iterators private.
Wolfgang Bangerth [Tue, 11 Jul 2017 22:04:15 +0000 (16:04 -0600)]
Make SynchronousIterators::iterators private.

This is a member that should have been private all along, but wasn't. It
is now possible to access it via operator*.

7 years agoMerge pull request #4599 from drwells/remove-manifold-1d-check
Martin Kronbichler [Tue, 11 Jul 2017 15:53:34 +0000 (17:53 +0200)]
Merge pull request #4599 from drwells/remove-manifold-1d-check

Make some manifold checks in MappingQGeneric dimension independent.

7 years agoMake some manifold checks in MappingQGeneric dimension independent. 4599/head
David Wells [Tue, 11 Jul 2017 12:32:58 +0000 (08:32 -0400)]
Make some manifold checks in MappingQGeneric dimension independent.

As of db5ea0f52db we support get_manifold on 1D manifolds, so we can remove the
overload workaround here for 1D. This changes the behavior of this function
slightly: we now correctly calculate all_manifold_ids_are_equal = false if the
cell manifold, in 1D, does not equal one of the face (vertex) manifolds.

Note that in 2D lines are faces, so we still check all lines.

7 years agoMerge pull request #4596 from bangerth/simplify-data-structures
Martin Kronbichler [Tue, 11 Jul 2017 07:12:01 +0000 (09:12 +0200)]
Merge pull request #4596 from bangerth/simplify-data-structures

No longer store dofs_per_vertex for each MG vertex.

7 years agoMerge pull request #4592 from drwells/namespace-free-functions
Martin Kronbichler [Tue, 11 Jul 2017 06:09:41 +0000 (08:09 +0200)]
Merge pull request #4592 from drwells/namespace-free-functions

Improve namespaces for non-member functions.

7 years agoAdd a test that truly tests hp::DoFHandler on shared triangulations. 4593/head
Wolfgang Bangerth [Mon, 10 Jul 2017 22:45:29 +0000 (16:45 -0600)]
Add a test that truly tests hp::DoFHandler on shared triangulations.

In particular, extend a previously added test to really do use different
finite elements on different cells.

Comparing the output for these two tests shows that indeed
the test with different (and higher order) elements is more
accurate, as one might have surmised.

7 years agoAdd some more converted tests.
Wolfgang Bangerth [Mon, 10 Jul 2017 21:16:33 +0000 (15:16 -0600)]
Add some more converted tests.

7 years agoMake a constructor 'explicit'. 4597/head
Wolfgang Bangerth [Mon, 10 Jul 2017 19:48:49 +0000 (13:48 -0600)]
Make a constructor 'explicit'.

7 years agoAdd changelog entry.
Wolfgang Bangerth [Mon, 10 Jul 2017 19:33:36 +0000 (13:33 -0600)]
Add changelog entry.

7 years agoDeprecate filling TableIndices indices with invalid numbers.
Wolfgang Bangerth [Mon, 10 Jul 2017 19:30:52 +0000 (13:30 -0600)]
Deprecate filling TableIndices indices with invalid numbers.

The TableIndices constructor would just take however many indices
it was given and padded the rest with invalid unsigned ints. This
is against the spirit we usually apply everywhere else by requiring
code to be explicit about what they want to happen. It also leads
to awkward to track issues such as the one reported in #4565.

Fix this by providing TableIndices with constructors for various
numbers of arguments, and ensuring via static_asserts that the
correct constructor is the only one that can be called.

This also required a bit of working around issues in the
SymmetricTensor accessor machinery, but nothing major.

7 years agoMerge pull request #4527 from tcclevenger/periodicity_for_MG_transfer
Martin Kronbichler [Mon, 10 Jul 2017 19:11:39 +0000 (21:11 +0200)]
Merge pull request #4527 from tcclevenger/periodicity_for_MG_transfer

add periodicity to MGTransfer matrix free and prebuilt

7 years agoMerge pull request #4595 from bangerth/reduce-code-duplication
Martin Kronbichler [Mon, 10 Jul 2017 19:09:48 +0000 (21:09 +0200)]
Merge pull request #4595 from bangerth/reduce-code-duplication

Reduce code duplication.

7 years agoNo longer store dofs_per_vertex for each MG vertex. 4596/head
Wolfgang Bangerth [Mon, 10 Jul 2017 14:50:10 +0000 (08:50 -0600)]
No longer store dofs_per_vertex for each MG vertex.

In #4564, I already noted that the way we store vertex DoF indices in the MG
case was not particularly efficient because we kept around a dynamically
sized 'offset' array for each vertex whose entries were computable: they were
successive multiples of dofs_per_cell. So #4564 replaces that by just storing
dofs_per_cell itself for each vertex.

But that, of course, is also wasteful: why store it once per vertex when that
will be the same number for every vertex. Rather, what this patch does is
to pass that number to the functions that access these DoF indices, so that
we can use the global fe.dofs_per_vertex instead. This saves 4 bytes per
vertex, and maybe a few cycles of CPU time on top of it.

7 years agoAdd changelog entry. 4595/head
Wolfgang Bangerth [Mon, 10 Jul 2017 14:08:36 +0000 (08:08 -0600)]
Add changelog entry.

7 years agoAdd tests.
Wolfgang Bangerth [Mon, 10 Jul 2017 14:07:05 +0000 (08:07 -0600)]
Add tests.

7 years agoReduce code duplication.
Wolfgang Bangerth [Mon, 10 Jul 2017 14:06:40 +0000 (08:06 -0600)]
Reduce code duplication.

The (hp::)DoFHandler::n_boundary_dofs() functions were specialized for
the 1d case back in the day when faces in 1d were not usable the same
way faces in 2d/3d were accessible via iterators. Because C++ doesn't
allow partial specialization of member functions, the code was also
replicated three times for the <1,1>, <1,2>, and <1,3> cases.

Fix this: We can now always use the generic approach since the necessary
iterators were added several years ago. This also fixes a bug: in <1,2>
and <1,3>, we allow triangulations to have more than 2 end points,
which the existing code was not equipped to deal with.

7 years agoMerge pull request #4594 from drwells/nedelec-umfpack-tests
Wolfgang Bangerth [Sun, 9 Jul 2017 19:59:48 +0000 (13:59 -0600)]
Merge pull request #4594 from drwells/nedelec-umfpack-tests

Require UMFPACK explicitly in some Nedelec element tests.

7 years agoReorganize the internal mapping functions. 4592/head
David Wells [Sat, 8 Jul 2017 18:48:48 +0000 (14:48 -0400)]
Reorganize the internal mapping functions.

If we want to ultimately use a unity build then we will need to avoid duplicate
function names. This commit adds a new policy for avoiding these (a namespacing
scheme) and applies the fix to the mapping classes.


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.