performs MPI initialization using MPI_Init_thread; added method
Mpi::Init_auto that selects what MPI init mode to use based on
the configured external packages used by MFEM -- currently it
calls Mpi::Init_thread(MPI_THREAD_MULTIPLE) when using STRUMPACK
built with SLATE or PT-Scotch, otherwise it calls Mpi::Init.
In the examples that can use STRUMPACK, use Mpi::Init_auto instead
of Mpi::Init.
Fix a small unrelated issue noticed during testing: in
miniapps/multidomain/multidomain.cpp, do not open GLVis socket
connections when visualization is disabled.
STRUMPACKSolver::DisableMatching, STRUMPACKSolver::EnableMatching
and STRUMPACKSolver::EnableParallelMatching.
This avoids the preprocessor macros in the ex11p.cpp example code.
The last routine is only enabled when compiling with STRUMPACK version >= 3.
* Removed the fixed low-order finite element classes for wedges.
* Replace more cases of 'int' variables with 'Geometry::Type',
mainly in class FiniteElement and its derived classes.
* Use constants from BasisType (instead of Quadrature1D) in the
parameters of the *WedgeElement finite element classes.
* Impose ordering on the construction of some global objects by
moving them into the same translation unit: specifically, moved
the objects 'TriangleFE', 'TetrahedronFE', 'WedgeFE', and
'Geometries' into fem/fe.cpp.
* In switchs on 'Geometry::Type', move the 'Geometry::PRISM' case
last - just to follow the order in the enumeration.
* Add a new method CoarseFineTransformations::GetPointMatrices
that simplifies some code that uses CoarseFineTransformations.
* Removed the 'INVALID' and 'MIXED' constants from the enum
Element::Type.
* Remove the static method Element::GeometryType.
* Tweak some doxygen comments in the classes Embedding and
CoarseFineTransformations.
* Generate an error if the method Wedge::GetNFaces is called:
its parameter 'nFaceVertices' does not make sense for wedges.