Compare commits

...
Author SHA1 Message Date
Stowell, Mark L. ef5f729245 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev
# Conflicts:
#	fem/bilininteg.hpp
#	fem/coefficient.cpp
#	fem/coefficient.hpp
#	linalg/hypre.cpp
#	linalg/hypre.hpp
#	linalg/solvers.cpp
#	makefile
#	miniapps/common/pfem_extras.hpp
#	miniapps/electromagnetics/tesla_solver.hpp
2025-03-13 17:43:24 -07:00
Tzanio Kolev 10c0c2da44 Merge pull request #4726 from mfem/blf-print
Bug fix for printing BilinearForm [blf-print]
2025-03-13 07:50:55 -07:00
Tzanio Kolev 3e769111c2 Update tests/unit/fem/test_bilinearform.cpp 2025-03-13 07:50:02 -07:00
Tzanio Kolev 12f9fbbd89 Merge branch 'master' into blf-print 2025-03-12 13:12:56 -07:00
Tzanio Kolev 2fbc743d47 Merge pull request #4483 from mfem/solver-monitor-controller
Allow IterativeSolverMonitor to indicate early convergence
2025-03-11 16:19:43 -07:00
Julian Andrej 6470f9aa55 Merge branch 'solver-monitor-controller' of github.com:mfem/mfem into solver-monitor-controller
# Conflicts:
#	CHANGELOG
2025-03-11 15:25:54 -07:00
Julian Andrej 69a08aab26 add changelog 2025-03-11 15:23:58 -07:00
Tzanio Kolev 7415254146 Merge branch 'master' into solver-monitor-controller 2025-03-11 14:21:30 -07:00
Jan Nikl ada6f722a6 Merge pull request #4733 from mfem/solver-monitor-controller-fix
Fixed ex19(p) to not duplicate the last printout.
2025-03-10 09:53:59 -07:00
Tzanio Kolev d9d7ea7557 Merge pull request #4730 from mfem/4729-submesh-fix
Fix construction of 2D submeshes with internal boundaries [4729-submesh-fix]
2025-03-09 18:59:21 -07:00
Jan Nikl 5dde59d4ae Fixed ex19(p) to not duplicate the last printout. 2025-03-05 21:01:21 -08:00
Sohail Reddy cd6d55599c Merge branch 'master' into blf-print 2025-03-04 16:12:33 -08:00
Sohail Reddy 3d9df1ddf7 minor cosmetic changes 2025-03-04 16:11:44 -08:00
Jan van Dijk a0cbf383a3 Fix indentation. 2025-03-02 00:26:57 +01:00
Jan van Dijk 1acaa6af3e Use GetSubMeshEdgeFromParent for 2D meshes.
In AddBoundaryElements, use GetSubMeshEdgeFromParent(parentFaceIdx), not
GetSubMeshFaceFromParent(parentFaceIdx) for 2D meshes. This fixes an assert
failure/segfault when constructing a submesh with internal boundaries in 2D.

Fixes #4729
2025-03-02 00:14:18 +01:00
Tzanio Kolev 9c162692de Merge pull request #4452 from mfem/update-gko-cpp-std
Increase minimum Ginkgo version to 1.9.0
2025-03-01 09:45:55 -08:00
Sohail Reddy b7f75bdcfa Merge branch 'master' into blf-print 2025-02-27 11:12:03 -08:00
nbeams aeefd775ef Add Google Benchmark to grouped C++ version check in Makefile build 2025-02-27 16:01:22 +00:00
nbeams 9281e125ba Merge branch 'master' into update-gko-cpp-std 2025-02-27 15:57:21 +00:00
Tzanio Kolev 31a60b4476 Merge pull request #4723 from mfem/google-benchmark
Update benchmarks
2025-02-27 06:00:54 -08:00
Tzanio Kolev 674e952a28 Merge pull request #4704 from mfem/spiral-transformation
Spiral transformation
2025-02-27 05:59:49 -08:00
John Camier 3b993a8791 Merge branch 'master' into google-benchmark 2025-02-27 05:29:02 -08:00
Tzanio Kolev 00c88ccfca Merge pull request #4706 from mfem/tupek/newmark_bugfix
Address some subtle bugs in the changed Newmark integration method.
2025-02-26 15:54:15 -08:00
Sohail Reddy a1fcf6ab14 Removed hidden overlead from print in operator 2025-02-26 15:46:14 -08:00
Tzanio Kolev 5dedbda5ac Merge pull request #4716 from mfem/macos_single_precision
macos single precision build fix
2025-02-26 15:38:29 -08:00
Sohail Reddy 45dfde0fb7 fixed shadow declaration 2025-02-26 15:06:43 -08:00
Sohail Reddy 16fec0a8ac fixed ostream in print 2025-02-26 14:52:36 -08:00
Sohail Reddy 5d3945e72e Added BilinearForm tag to unit test 2025-02-26 14:17:33 -08:00
Sohail Reddy a2fc578081 Fixed issue with printing BilinearForm and MixedBilinearForm 2025-02-26 14:13:26 -08:00
camierjs 6bcd0ca208 Fix vector BPs 2025-02-25 18:12:20 -08:00
camierjs b75b58faad Merge branch 'master' into google-benchmark 2025-02-25 15:51:41 -08:00
camierjs 1b83c64055 google-benchmark now with c++14 2025-02-25 15:40:36 -08:00
nbeams 4606b273d8 Group checks for C++ version in Makefile build;
ensure Ginkgo C++17 requirement isn't overwritten
2025-02-25 20:11:06 +00:00
Michael Tupek 921b09e9e4 Merge branch 'master' into tupek/newmark_bugfix 2025-02-25 11:57:39 -08:00
John Camier 09bb0a7bbd Merge branch 'master' into macos_single_precision 2025-02-25 11:41:29 -08:00
Michael Tupek ba36f8f7df Update ode.cpp
Move state increment to be consistent with other second order time integrators.
2025-02-25 11:17:05 -08:00
Veselin Dobrev 8447e62735 Merge pull request #4712 from mfem/fix-4683
Fix typo in SumIntegrator::AddMultMF / AddMultTransposeMF
2025-02-25 11:12:34 -08:00
Michael Tupek b55e674f55 Update ode.cpp
Trying to guess at failing mfem tests.  Having Newmark fixed quickly would be great.
2025-02-25 07:20:19 -08:00
Michael Tupek 65f638f01f Merge branch 'master' into tupek/newmark_bugfix 2025-02-24 14:53:09 -08:00
Julian Andrej b5fec915cd fix the fix 2025-02-24 11:11:04 -08:00
camierjs a0723083c6 Update CHANGELOG 2025-02-24 09:09:53 -08:00
Ketan Mittal ba14712ca2 Merge branch 'master' into spiral-transformation 2025-02-23 11:27:00 -08:00
camierjs 2758d32f2e cmake MFEM_ENABLE_BENCHMARKS all fix 2025-02-23 09:42:06 -08:00
camierjs 768c7a10a1 Update benchmarks 2025-02-23 09:35:50 -08:00
Tzanio Kolev 819d6c7880 Merge pull request #4721 from mfem/suppress-warning-quad-interp
Suppress a warning from `icpc`
2025-02-22 09:35:28 -08:00
Tzanio Kolev 9b2a92ec93 Merge pull request #4717 from koparasy/export-use-hip-cmake
Expose MFEM_USE_HIP on cmake
2025-02-22 09:35:01 -08:00
Veselin Dobrev 1ff89e8348 Suppress a warning from 'icpc' 2025-02-21 11:03:08 -08:00
camierjs 31f3ec78dd Remove extra space 2025-02-20 17:07:47 -08:00
Konstantinos Parasyris a6841beab6 Merge branch 'master' into export-use-hip-cmake 2025-02-20 16:43:54 -08:00
koparasy 4cd89753b9 Expose MFEM_USE_HIP on cmake 2025-02-20 16:13:30 -08:00
camierjs b153759440 revert unwanted changes 2025-02-20 12:58:21 -08:00
camierjs cde249d51e macos single and distclean fix 2025-02-20 10:52:21 -08:00
Tzanio Kolev 72fd8bac9d Merge pull request #4669 from mfem/hdiv-quad-interp
Add support for H(div) spaces in class QuadratureInterpolator
2025-02-20 08:59:45 -08:00
Tzanio Kolev 493120efb3 Merge pull request #4707 from mfem/tmop-skew-restore
Restore TMOP skew metric
2025-02-20 08:20:01 -08:00
Veselin Dobrev a183be3ca0 Merge branch 'master' into hdiv-quad-interp 2025-02-19 18:40:48 -08:00
Veselin Dobrev d272b9e181 Added a bullet to CHANGELOG about H(div) support in QuadratureInterpolator 2025-02-19 18:25:18 -08:00
Veselin DobrevandTzanio Kolev f0b72c3714 Apply suggestions from code review
Co-authored-by: Tzanio Kolev <tzanio@llnl.gov>
2025-02-19 18:02:22 -08:00
Tzanio Kolev d17f75a8b4 Merge pull request #4646 from mfem/fa-mesh-connectivity
Support full assembly on highly connected meshes
2025-02-19 13:51:17 -08:00
nbeams 8058cb0838 Increase minimum Ginkgo version to 1.9.0 2025-02-19 16:13:36 +00:00
Tzanio Kolev 2d8fface64 Merge pull request #4675 from mfem/bltp
BlockLowerTriangularPreconditioner GPU support
2025-02-18 14:49:51 -08:00
Michael Tupek a360e2a860 Merge pull request #4713 from mfem/tupek/newmark_bugfix-patch
Suggestion for PR 4706 to fix bug identified in that PR
2025-02-18 13:02:27 -08:00
Mittal, Ketan 7195563387 update CHANGELOG 2025-02-18 11:55:15 -08:00
Christopher vogl 9edb7b5a75 fix to address bug affecting NewmarkSolver and GeneralizedAlpha2Solver 2025-02-18 11:49:13 -08:00
Christopher vogl 741638cb9b Revert "Address some subtle bugs in the changed Newtmark integration method."
This reverts commit cdc4a92c57.
2025-02-18 11:36:03 -08:00
Justin Laughlin ffbc04777f Fix typo in SumIntegrator::AddMultMF / AddMultTransposeMF 2025-02-18 09:26:38 -08:00
Mittal, Ketan 3eabf0746b make style 2025-02-17 15:51:40 -08:00
camierjs 87aacf79c1 CHANGELOG update 2025-02-16 14:44:08 -08:00
John Camier c907f84265 Merge branch 'master' into bltp 2025-02-15 10:15:26 -08:00
Mittal, Ketan 8233a2ea14 make style 2025-02-14 15:34:52 -08:00
Mittal, Ketan a48c16b424 Add AD for skew2D metric 2025-02-14 15:33:33 -08:00
Mittal, Ketan 9b5003026b restore skew metric 2025-02-14 15:22:49 -08:00
Michael Tupek cdc4a92c57 Address some subtle bugs in the changed Newtmark integration method. 2025-02-14 13:07:23 -08:00
Mittal, Ketan 9f11cb489c minor 2025-02-14 11:50:19 -08:00
Mittal, Ketan 8e5ea695d5 initial commit 2025-02-14 11:28:53 -08:00
Tzanio Kolev 9f3d67e45f Merge pull request #3605 from mfem/debug-device-test
Update debug unit test with SIGBUS error
2025-02-13 07:51:52 -08:00
Julian Andrej eae2eae657 remove lbfgs monitor 2025-02-12 11:28:20 -08:00
Julian AndrejandJan Nikl 23bce015d9 Update linalg/solvers.cpp
Co-authored-by: Jan Nikl <nikl1@llnl.gov>
2025-02-12 10:59:44 -08:00
Julian Andrej d8f489013b added final monitor calls to common solver implementation 2025-02-12 09:57:07 -08:00
Julian Andrej b3c333df22 Merge branch 'solver-monitor-controller' of github.com:mfem/mfem into solver-monitor-controller 2025-02-12 09:45:42 -08:00
Julian Andrej 3b24d0d7cf removed wrong converged flag 2025-02-12 09:45:16 -08:00
camierjs f62a2f100f Move HostRead outside of bilininteg 2025-02-11 11:34:51 -08:00
John Camier 67e4bb4355 Merge branch 'master' into debug-device-test 2025-02-11 09:42:32 -08:00
John Camier dc4e51b61c Merge branch 'master' into bltp 2025-02-11 09:42:22 -08:00
Tzanio Kolev c001fb4303 Merge pull request #4680 from mfem/hughcars/missing-override
Fix missing override on STRUMPKACKSolverBase::ArrayMult
2025-02-11 07:36:24 -08:00
John Camier ea31648a9c Merge branch 'master' into debug-device-test 2025-02-10 05:05:46 -08:00
John Camier bc650c0bcc Merge branch 'master' into bltp 2025-02-10 05:05:34 -08:00
Tzanio Kolev 2d31636115 Merge pull request #4670 from mfem/ex40_update
Updates to ex40
2025-02-08 17:10:35 -08:00
Brendan Keith 315bbd1b0d Merge branch 'master' into ex40_update 2025-02-08 15:21:01 -05:00
camierjs 6b7b9985e7 Merge branch 'master' into bltp 2025-02-06 20:21:29 -08:00
camierjs bc56be2092 Replace GetIJData with HostReads 2025-02-06 20:21:21 -08:00
Veselin Dobrev c87ded944f Merge pull request #4651 from adam-sim-dev/cpardiso_iparm41
Set correct value for cpardiso iparm[41]
2025-02-06 00:07:38 -08:00
Tzanio Kolev feb1989879 Merge branch 'master' into update-gko-cpp-std 2025-02-04 14:55:15 -08:00
Tzanio Kolev bd48e8e4b9 Merge branch 'master' into fa-mesh-connectivity 2025-02-04 14:54:52 -08:00
Tzanio Kolev 8669338cca Merge branch 'master' into solver-monitor-controller 2025-02-04 14:53:17 -08:00
camierjs 21c693ec7e Update copyright to 2010-2025 2025-02-04 13:01:23 -08:00
John Camier 5df9fa2539 Merge branch 'master' into debug-device-test 2025-02-04 12:54:25 -08:00
camierjs 999d6e9e94 Merge branch 'master' into bltp 2025-02-04 12:53:53 -08:00
Tzanio Kolev 4c60cac99c Merge branch 'master' into cpardiso_iparm41 2025-02-04 12:52:11 -08:00
Tzanio Kolev e2da2103df Merge pull request #4682 from mfem/2025-copyright
Update COPYRIGHT to 2010-2025
2025-02-04 12:50:48 -08:00
Brendan Keith f3a54176be remove A11 from ex40 2025-02-04 14:02:59 -05:00
camierjs e9a12955e2 Merge branch 'master' into bltp 2025-02-04 10:32:50 -08:00
camierjs ea041467ae Address reviewers comments 2025-02-04 10:32:44 -08:00
Julian Andrej 9dfd486f55 move monitor call into if condition in bicgstab 2025-02-04 08:53:39 -08:00
Tzanio Kolev e4c2152419 Update Copyright to 2010-2025 2025-02-03 12:17:26 -08:00
Tzanio Kolev c9db272586 Merge pull request #4557 from david-kamensky/david/integ-base
Integrator base class unifying logic for selecting IntegrationRule
2025-02-03 11:03:53 -08:00
David Kamensky ae117fa580 Merge branch 'master' into david/integ-base 2025-02-03 10:35:40 -08:00
David Kamensky ee0e35c94b Updating CHANGELOG with note about Integrator base class. 2025-02-03 11:18:24 -07:00
Hugh Carson 35abd32129 Fix missing override on STRUMPKACKSolverBase::ArrayMult 2025-02-03 10:57:47 -05:00
John Camier 3ed10c0114 Merge branch 'master' into bltp 2025-01-31 14:18:24 -08:00
Brendan Keith 7c0074dd14 Merge branch 'master' into ex40_update 2025-01-31 14:38:44 -05:00
adam-sim-dev e27d97b292 Merge branch 'master' into cpardiso_iparm41 2025-01-31 18:28:44 +08:00
camierjs 9f94279247 Fix real_t vs double 2025-01-30 16:06:44 -08:00
John Camier 68690e1ff7 Merge branch 'master' into debug-device-test 2025-01-30 13:30:44 -08:00
Veselin Dobrev a0c3bdc93e Merge pull request #4652 from mfem/spiral-dev
😵‍💫 New toy miniapp: Spiral
2025-01-30 11:13:19 -08:00
Veselin Dobrev 2a1dd3d9c2 Merge pull request #4610 from lindsayad/netcdf-name-support
Allow reading exodus block/boundary names into corresponding attribute sets
2025-01-30 11:11:03 -08:00
Tzanio Kolev 2277c3729f Merge pull request #4637 from mfem/mesh-explorer-elem-fix
Fix element visualization in Mesh Explorer
2025-01-30 07:49:17 -08:00
Tzanio Kolev afb7aaa2a5 Merge pull request #4630 from mfem/mark-external-faces-dev
Experimental solution to BC selection issue in ex1 and ex1p [mark-external-faces-dev]
2025-01-30 07:48:38 -08:00
Tzanio Kolev 34cb75622a Merge pull request #4484 from mfem/hughcars/gmsh-reader-periodic-bugfix
Do not remove internal boundaries when loading a gmsh periodic mesh
2025-01-30 07:47:40 -08:00
camierjs 27c526578d Use device vectors in solvers 2025-01-29 11:45:24 -08:00
camierjs eef7f76109 Merge master in bltp 2025-01-29 09:00:30 -08:00
adam-sim-dev 3048309467 Apply the reviewer's suggestion 2025-01-29 17:24:20 +08:00
adam-sim-dev c5d2b70bd8 Merge branch 'master' into cpardiso_iparm41 2025-01-29 17:17:40 +08:00
camierjs b033a91ce1 Cleanup & style 2025-01-28 16:46:09 -08:00
Jan Nikl 2d998865be Merge branch 'master' into solver-monitor-controller 2025-01-28 16:39:24 -08:00
camierjs 4e16e5edd1 Add block operators tests 2025-01-28 16:29:36 -08:00
Julian Andrej 861d3d1422 rename and other reviewer comments 2025-01-28 13:53:12 -08:00
Stowell, Mark L. 5dc85da306 Updating CHANGELOG with notices of the new methods 2025-01-28 11:46:56 -08:00
Tzanio Kolev 3f810f3591 Merge pull request #4649 from mfem/face-geom-jacobians
Compute derivatives in FaceQuadratureInterpolator, compute Jacobian matrices in FaceGeometricFactors
2025-01-28 11:35:26 -08:00
camierjs 7dd6305d34 Init bltp miniapp from incompressible 2025-01-28 10:39:18 -08:00
Mark L. StowellandVeselin Dobrev b60df76e98 Update mesh/mesh.cpp
Co-authored-by: Veselin Dobrev <v-dobrev@users.noreply.github.com>
2025-01-28 10:21:33 -08:00
Tzanio Kolev 21537ec6c6 Separate array for element partitioning in Mesh Explorer 2025-01-27 18:05:16 -08:00
David Kamensky 5ba722dd2f Adding a link to Integrator::SetIntRule in the documentation for Integrator::SetIntegrationRule. 2025-01-27 16:56:25 -07:00
adam-sim-dev 53f9bf05a6 Merge branch 'master' into cpardiso_iparm41 2025-01-27 21:45:42 +08:00
David Kamensky 4a9a6e3ba3 Avoiding assignment in conditional to fix debug build. 2025-01-24 09:34:56 -07:00
David Kamensky c4e672c71a Keep IntRule and patchRules mutually exclusive through setter methods and update documentation. 2025-01-24 09:15:36 -07:00
Stowell, Mark L. 7bb9027c82 Changes suggested by v-dobrev 2025-01-23 15:46:20 -08:00
Tzanio Kolev 7150b9e9bd Merge pull request #4668 from dect-cf/master
Fix bug in KnotVector initialization to enable nonopen knot vectors
2025-01-22 17:40:00 -08:00
Tzanio Kolev 2105441b2c Merge pull request #4598 from mfem/fes-move-dim-fns-dev
Move VectorDim, CurlDim to FiniteElementSpace (Redo)
2025-01-22 17:39:32 -08:00
David KamenskyandJustin Laughlin 55dc0f4b97 Fix typo in Doxygen comment.
Co-authored-by: Justin Laughlin <justinglaughlin@gmail.com>
2025-01-22 16:16:44 -08:00
Stowell, Mark L. 4de1e1bad3 Altering examples code comments as per Tzanio's suggestion 2025-01-22 09:49:29 -08:00
Mark L. Stowell dfec0c0281 Merge branch 'master' into mark-external-faces-dev 2025-01-22 09:40:33 -08:00
Stowell, Mark L. 61d4d6bbc2 Renaming "Remove" -> "Unmark" 2025-01-21 20:26:41 -08:00
Stowell, Mark L. e2ed642f5b Correcting the comments in the examples 2025-01-21 20:26:17 -08:00
Stowell, Mark L. 0656bc02cf Merge branches 'mark-external-faces-dev' and 'mark-external-faces-dev' of github.com:mfem/mfem into mark-external-faces-dev 2025-01-21 16:36:04 -08:00
Stowell, Mark L. 5b002f9452 Using the new MarkExternalBoundary methods in ex1, ex1p, and ex11p 2025-01-21 15:47:31 -08:00
Stowell, Mark L. f65afa6f7b Modifying behavior of MarkExternalBoundaries and adding named set versions (un)mark methods 2025-01-21 15:46:47 -08:00
Stowell, Mark L. 72dc6dd9df Adding "const" versions of select attribute set methods 2025-01-21 15:45:49 -08:00
Hugh Carson d4b8071871 Merge remote-tracking branch 'origin/master' into hughcars/gmsh-reader-periodic-bugfix 2025-01-21 15:02:44 -05:00
Will Pazner 006e348182 Merge remote-tracking branch 'origin/master' into face-geom-jacobians 2025-01-21 11:51:36 -08:00
Will Pazner f280d43ac9 Remove unneeded check in FaceQuadratureInterpolator
Derivatives are now supported. Also, the check was buggy, it should have been
!(eval_flags & DERIVATIVES)
2025-01-21 11:51:27 -08:00
Will Pazner abe37e5ed7 Remove unneeded check if non-null
FiniteElementSpace::GetTypicalFE always returns non-null pointer
2025-01-21 11:11:21 -08:00
David Kamensky d9fef7f574 Avoiding unnecessary dynamic cast in Integrator::GetIntegrationRule; minor adjacent formatting changes. 2025-01-21 08:59:12 -07:00
Tzanio Kolev 65585868a7 Merge pull request #4572 from mfem/bugfix-4570
Bug in VectorDiffusionIntegrator::AssembleElementVector.
2025-01-21 07:14:12 -08:00
Tzanio Kolev 0e0b81d87f Merge pull request #4657 from mfem/device_info
added helper functions for querying various device properties
2025-01-21 07:13:15 -08:00
adam-sim-dev b471f44bec Merge branch 'master' into cpardiso_iparm41 2025-01-20 08:42:07 +08:00
Veselin Dobrev e04f56db3f Add a unit test for H(div) evaluations with QuadratureInterpolator.
Add triangle and tet meshes in the unit test for H1 evaluations with
QuadratureInterpolator; also, switch to checking relative norms of the
errors.
2025-01-19 16:10:26 -08:00
Brendan Keith 22b182e4ca style 2025-01-19 13:58:58 -05:00
Brendan Keith e853ef0ee3 switch to MINRES and add safeguards to parallel version 2025-01-19 13:58:11 -05:00
Veselin Dobrev ba9f282df7 Suppress a doxygen warning 2025-01-17 18:19:44 -08:00
Veselin Dobrev d6beffe42e In class QuadratureInterpolator, add a new EvalFlags option for
vector fields: PHYSICAL_MAGNITUDES. The option is implemented only
for H(div) spaces.
2025-01-17 18:08:00 -08:00
Veselin Dobrev 811a498fe5 Add support for H(div) spaces in class QuadratureInterpolator.
For now, only evaluation of vector values (reference or physical)
on quad and hex elements is supported.

The code still needs to be tested.
2025-01-17 13:39:57 -08:00
David Kamensky 56bc30fa75 Changing const pointer arguments to Integrator::Get(Default)IntegrationRule to const references. 2025-01-17 13:23:40 -07:00
Brendan Keith e88b2d7723 update ex40 to match paper 2025-01-17 15:17:08 -05:00
Mark L. Stowell 0d306df7ec Merge branch 'master' into mark-external-faces-dev 2025-01-17 09:48:45 -08:00
dect-cf 60aea56a1d Merge branch 'master' into master 2025-01-17 09:34:44 -07:00
David Kamensky f13d975c21 Adding @brief to short Doxygen comments in integrator.hpp. 2025-01-17 09:17:32 -07:00
Tzanio Kolev a496df4734 Merge pull request #4522 from mfem/TMOP_AD_ms
AD implementation for selected TMOP metrics
2025-01-17 07:56:12 -08:00
Derek Thomas 5b1171aae9 Fix bug in alternate KnotVector initialization to enable nonopen knot vectors 2025-01-17 05:54:52 +00:00
Philipp Dumitrescu 8ce411f481 Restore GetTypicalFE changes; tweak comments 2025-01-16 16:21:13 -08:00
Stowell, Mark L. bd3d1b6dcc ex1p showing four proposed solutions 2025-01-16 15:54:11 -08:00
Stowell, Mark L. 7d7ec1fa6a Bug fixes 2025-01-16 15:52:18 -08:00
Stowell, Mark L. c42fd1ccd5 Adding remove_interior option to suggested (Par)FiniteElementSpace methods 2025-01-16 14:49:29 -08:00
Will Pazner 350c2c1281 Reduce memory usage in ElementRestriction FillI and FillJAndData
Use offsets array to handle mesh connectivity; computing maximum mesh
connectivity is not required.
2025-01-16 12:21:56 -08:00
Will Pazner 7e59798592 Merge remote-tracking branch 'origin/master' into fa-mesh-connectivity 2025-01-16 12:20:36 -08:00
Stowell, Mark L. 7e1884ca65 Merge remote-tracking branch 'origin/master' into mark-external-faces-dev
# Conflicts:
#	mesh/mesh.cpp
2025-01-16 11:04:22 -08:00
adam-sim-dev 687902dd97 Merge branch 'master' into cpardiso_iparm41 2025-01-16 12:38:48 +08:00
Stowell, Mark L. 3ac922ac32 Using new functions in ex1 and ex1p 2025-01-15 17:18:45 -08:00
Stowell, Mark L. e09decae30 Adding suggested functions to ParMesh class 2025-01-15 16:55:58 -08:00
Stowell, Mark L. 2e326c97bf Adding recommended functions to Mesh class 2025-01-15 16:37:05 -08:00
Philipp Dumitrescu c0ad0924cd Merge branch 'master' into fes-move-dim-fns-dev 2025-01-15 16:35:18 -08:00
Tzanio Kolev 109b2f3eb3 Merge pull request #4513 from mfem/najlkin/impro-hyperbolic
Improvements of general hyperbolic framework
2025-01-15 07:10:03 -08:00
Tzanio Kolev 2dddad5381 Merge pull request #4574 from lindsayad/petsc-container-ctx-update
PetscContainerSetUserDestroy -> PetscContainerSetCtxDestroy
2025-01-15 07:08:14 -08:00
Tzanio Kolev 2fdac5753b Merge pull request #4621 from mfem/cmake-petsc-config-fix
CMake: fix an issue when finding PETSc
2025-01-15 07:07:45 -08:00
Andrew HoandVeselin Dobrev 5c53d66dc4 Update general/device.hpp
Co-authored-by: Veselin Dobrev <v-dobrev@users.noreply.github.com>
2025-01-13 08:32:50 -08:00
Andrew HoandVeselin Dobrev dfb72d01f6 Update general/device.hpp
Co-authored-by: Veselin Dobrev <v-dobrev@users.noreply.github.com>
2025-01-13 08:32:37 -08:00
adam-sim-dev 7b6750fe38 Merge branch 'master' into cpardiso_iparm41 2025-01-13 12:09:10 +08:00
Alex Lindsay dd8c1241a5 Add netcdf read capability for boundary ids-name pairs 2025-01-09 17:38:09 -07:00
Andrew Ho db323179f1 Merge branch 'master' into device_info 2025-01-09 14:41:57 -08:00
Andrew Ho 4983d81eb9 removed cuda < 10 since MFEM doesn't support this anyways 2025-01-09 14:40:08 -08:00
Andrew Ho 13b9e14526 Moved implementations to cpp file
removed host/device since this could lead to some ODR violations
2025-01-09 14:28:15 -08:00
Tzanio Kolev 7324c70027 Merge branch 'master' into najlkin/impro-hyperbolic 2025-01-09 02:20:52 -08:00
Vladimir Z Tomov 3bb7b0bcfe Merge branch 'master' into TMOP_AD_ms 2025-01-08 18:14:21 -08:00
Vladimir Z Tomov 6932e2038f changelog, changed a sample run. 2025-01-08 18:13:44 -08:00
Vladimir Z Tomov dbbb7b6b5d minor 2025-01-08 15:15:39 -08:00
Veselin Dobrev e7cf9fb5ac Merge pull request #4650 from mfem/actions-concurrency
Use 'concurrency' in GitHub CI instead of external action
2025-01-08 14:28:35 -08:00
Vladimir Z Tomov 15accf0271 minor 2025-01-08 12:47:35 -08:00
Vladimir Z Tomov 47afa5868b Merge branch 'actions-concurrency' into TMOP_AD_ms 2025-01-08 12:04:46 -08:00
Ketan Mittal 7fe2ba5e92 Merge branch 'master' into TMOP_AD_ms 2025-01-08 10:34:31 -08:00
Mittal, Ketan ae033ff089 minor 2025-01-08 10:32:19 -08:00
Mittal, Ketan 2f09f46776 add 3D VOS metric mu_342 2025-01-08 10:25:38 -08:00
Tzanio Kolev 09d9b0b1de Merge pull request #4619 from mfem/tmop-bg-bug
TMOP correction for background grids
2025-01-07 17:14:15 -08:00
Tzanio Kolev 99958b1c67 Merge pull request #4260 from mfem/pa-empty-partitions
Better support for PA with empty mesh partitions
2025-01-07 17:13:41 -08:00
Tzanio Kolev 7c78f98552 Merge pull request #4647 from mfem/getenv-wrapper
Rename getenv wrapper to GetEnv
2025-01-07 17:13:00 -08:00
Jan Nikl 6c2f6a9e7f Fixed typo. 2025-01-07 14:33:59 -08:00
Andrew Ho 96a0320f2c typo 2025-01-07 10:47:41 -08:00
Andrew Ho 04b09171dc documentation 2025-01-07 10:44:14 -08:00
Will Pazner 97bbd21b16 Fix YAML error in build analysis workflow 2025-01-07 09:31:45 -08:00
Will Pazner 810eb3dc09 Explicitly specify Ubuntu and clang version in sanitizer action
Also remove temporary workaround that is not needed on the newer Ubuntu runner.
2025-01-07 09:19:22 -08:00
Andrew Ho 6e1101f058 added helper functions for querying various device properties 2025-01-06 18:33:23 -08:00
Mittal, Ketan 9b4086319a minor 2025-01-06 14:45:43 -08:00
Mittal, Ketan e3e0eccc86 remove fd-based sample runs 2025-01-06 14:39:56 -08:00
Mittal, Ketan caa7ff4a95 minor 2025-01-06 13:18:17 -08:00
Mittal, Ketan e1c1fcc3fa simplify logic to remove duplication in metric definition for AD 2025-01-06 11:38:59 -08:00
David Kamensky c4e853a8ee Favoring GetIntRule over zero-argument GetIntegrationRule as direct accessor for IntRule. 2025-01-06 11:06:42 -07:00
David Kamensky 07db30222c Minor cosmetic changes: consistent const style, GetIntRule calls GetIntegrationRule, removing excess blank lines. 2025-01-06 09:06:49 -07:00
Tzanio Kolev b521859413 Uninitialized variables 2025-01-03 20:08:47 -08:00
Tzanio Kolev 88ae946755 Spiral: Added a note about mfem/data 2025-01-03 19:35:45 -08:00
Tzanio Kolev d9758bd216 New toy miniapp: Spiral 2025-01-03 19:32:24 -08:00
David Kamensky 3e0c373ee2 Formatting; replacing some overloads with default parameters; documentation updates. 2025-01-03 17:35:21 -07:00
Vladimir Z Tomov c6bbe85b21 Moved the implementations to EvalWMatrixForm()
since all new metrics are evaluated through their matrix forms.
2025-01-03 16:12:29 -08:00
Jan Nikl 837333b88a Renamed Godunov flux to upwinded flux. 2025-01-03 13:03:53 -08:00
David Kamensky b249a4de62 Wrapping some existing GetRule methods of Integrator subclasses with overrides of Integrator::GetDefaultIntegrationRule. 2025-01-03 13:30:58 -07:00
Jan Nikl 72de1e5d50 Elaborated dox of RusanovFlux. 2025-01-03 11:55:19 -08:00
David Kamensky 5bcba26e08 Additional minor changes requested during review. 2025-01-03 12:49:25 -07:00
Will Pazner 6ddea3ff47 Merge remote-tracking branch 'origin/master' into pa-empty-partitions 2025-01-03 09:36:06 -08:00
Ketan Mittal e97ff1222e Merge branch 'master' into tmop-bg-bug 2025-01-03 09:35:11 -08:00
Will Pazner 697c21aa7e Add more tests directories to 'make style' 2025-01-03 09:34:29 -08:00
Will Pazner 78e593bea1 Ensure meshgen is set on empty ranks 2025-01-03 09:32:23 -08:00
Will Pazner d85c8fb65a Revert unnecessary changes in kdtree.cpp 2025-01-03 09:31:56 -08:00
Ketan Mittal 178a4db5c8 Merge branch 'master' into TMOP_AD_ms 2025-01-03 09:12:36 -08:00
adam-sim-dev 1e5e3779bd Set correct value for iparm[41] 2025-01-03 10:35:32 +08:00
Mittal, Ketan dc241f8298 reviewer comments 2025-01-02 15:49:26 -08:00
Veselin Dobrev 701d3875c5 Merge pull request #4643 from mfem/array-move-ctor-fix
Array move constructor fix
2025-01-02 12:00:34 -08:00
Will Pazner 3bdbfb51f9 Don't explicitly specify clang version in sanitizer CI 2025-01-01 08:40:25 -08:00
Will Pazner 8d254f488e Use 'concurrency' in GitHub CI instead of external action
This is a built-in way to limit the CI to one job per workflow (canceling
previous runs).
2025-01-01 08:24:33 -08:00
Alex Lindsay 92e927ccf8 Add .vscode dir to .gitignore 2024-12-31 16:00:00 -07:00
Alex Lindsay b8a120ec3e Add unit test 2024-12-31 16:00:00 -07:00
Vladimir Z Tomov d10c9f7952 Merge branch 'master' into tmop-bg-bug 2024-12-31 14:54:09 -08:00
Alex Lindsay 50f5fcc42e Apply style 2024-12-31 12:33:42 -07:00
Alex Lindsay 4d5054c197 Change assert message 2024-12-31 12:33:42 -07:00
Alex Lindsay 845ff55e3f Exodus at least only ever writes NC_CHAR 2024-12-31 12:33:42 -07:00
Alex Lindsay ecfee97b37 Apparently working implementation for var_type == NC_CHAR 2024-12-31 12:33:42 -07:00
Alex Lindsay 8eaae0ff87 Read block names in NetCDF and add to attribute sets
Refs #4602
2024-12-31 12:33:42 -07:00
Will Pazner 0345861c6f Compute derivatives in FaceQuadratureInterpolator, compute Jacobian matrices in FaceGeometricFactors
Also add "Face geometric factor Jacobians" unit test
2024-12-31 09:32:12 -08:00
Vladimir Z Tomov 01d57ee7f8 minor 2024-12-28 20:57:02 -08:00
Vladimir Z Tomov 900385e06d minor 2024-12-28 20:45:52 -08:00
Vladimir Z Tomov 678d44a01e Merge branch 'master' into TMOP_AD_ms 2024-12-28 20:19:36 -08:00
Vladimir Z Tomov bf312430a7 style 2024-12-28 20:18:56 -08:00
Vladimir Z Tomov f35689d7bc Added all new metrics to tmop-check-metric. 2024-12-28 19:26:09 -08:00
Tzanio Kolev df18bedc02 Merge branch 'master' into fa-mesh-connectivity 2024-12-27 22:02:37 -08:00
Tzanio Kolev c45b3ef3ee Merge pull request #4578 from mfem/positive-lp-err-dev
Returning positive errors from GridFunction::ComputeLpError etc...
2024-12-27 22:00:49 -08:00
Tzanio Kolev 598413e2fc Merge pull request #4635 from mfem/bug-fix-par-green-ref-2d
Bug-Fix: Parallel Green Refinement in 2D
2024-12-27 21:59:37 -08:00
Tzanio Kolev 81cf9ed9a1 Merge pull request #4603 from adam-sim-dev/operator_equal
operator= for (Par)ComplexLinearForm
2024-12-27 21:59:05 -08:00
Will Pazner 33efde9e81 Add Doxygen comment for GetEnv 2024-12-26 21:33:27 -08:00
Will Pazner 19a1750527 Rename getenv wrapper to GetEnv
Also use getenv wrapper in KernelReporter
2024-12-26 16:55:45 -08:00
Will Pazner 761be16003 Support full assembly on highly connected meshes
Instead of using a constant estimate for the maximum mesh valence (16 by
default), compute the maximum mesh connectivity, and use global memory in
ElementRestriction::FillI and ElementRestriction::FillJAndData to store the
arrays needed to deduplicate assembly.

Adds a unit test with highly connected meshes.
2024-12-26 11:17:00 -08:00
Will Pazner d08c019d4c Avoid initializing data twice in Array constructors 2024-12-24 18:19:37 -08:00
Will Pazner 1deaa1cb57 Add Memory constructor given host MemoryType 2024-12-24 18:19:37 -08:00
Will Pazner e69ad849ff Ensure *this is initialized in Array move constructor 2024-12-24 18:19:37 -08:00
Alex Lindsay 49450e3db7 Switch to PETSC_VERSION_LT 2024-12-23 16:56:35 -07:00
David Kamensky 14255ad4f4 Shortening some lines. 2024-12-23 08:49:22 -07:00
Tzanio Kolev d9850f4baa minor 2024-12-22 10:38:53 -08:00
Tzanio Kolev 4219887355 Added helpful information for GLVis visualization of mesh elements in Mesh Explorer 2024-12-22 10:36:07 -08:00
Tzanio Kolev f51d715503 Fix element visualization in Mesh Explorer 2024-12-21 19:48:21 -08:00
Stowell, Mark L. 3d35c66864 Removing unused doxygen anchor 2024-12-21 16:40:59 -08:00
Stowell, Mark L. b626908505 Expanding explanation of Coefficient array arguments 2024-12-21 16:40:39 -08:00
Stowell, Mark L. 8b95b3353b Expanding explanation of integration rule argument 2024-12-21 16:40:04 -08:00
Stowell, Mark L. bc2b87e891 Adding the negative quadrature note in a few places where it was missed 2024-12-21 16:36:42 -08:00
Stowell, Mark L. e01407f82b Applying doxygen reference fix in other locations 2024-12-20 18:26:42 -08:00
Stowell, Mark L. 88a10cb42b Attempting to fix doxygen reference error 2024-12-20 18:22:12 -08:00
Stowell, Mark L. 17cd445e8b Fixing shadowed variable error 2024-12-20 17:36:56 -08:00
Stowell, Mark L. 20fce49843 Attempting to fix deprecation error 2024-12-20 17:29:21 -08:00
Stowell, Mark L. c53f1c9188 Attempting to fix Doxygen error 2024-12-20 17:29:07 -08:00
Stowell, Mark L. 085f779379 Trying another way to bypass a deprecation error 2024-12-20 17:24:52 -08:00
Stowell, Mark L. 48ce125336 Moving implementation involving newly deprecated function to avoid compiler errors 2024-12-20 17:00:52 -08:00
Stowell, Mark L. 2bbdafa9f4 Adding CHANGELOG entry 2024-12-20 17:00:05 -08:00
Stowell, Mark L. 76fd3575d1 Adding documentation to parallel Compute*Error methods 2024-12-20 16:47:35 -08:00
adam-sim-dev b22b2158bf Merge branch 'master' into operator_equal 2024-12-21 08:03:29 +08:00
Stowell, Mark L. a1c279ee79 Cleaning up LaTeX and link errors 2024-12-20 15:02:37 -08:00
Mark L. Stowell a1429e80e2 Merge branch 'positive-lp-err-dev' of github.com:mfem/mfem into positive-lp-err-dev 2024-12-19 17:30:16 -08:00
Mark L. Stowell 8bfa001844 style adjustment 2024-12-19 17:28:22 -08:00
Mark L. Stowell 3230923742 Adding documentation for Sobolev norms 2024-12-19 17:27:54 -08:00
Mark L. Stowell 5038e96f34 Adding documentation for Max norms 2024-12-19 17:27:22 -08:00
Mark L. Stowell c421146f47 Documenting element-wise error functions 2024-12-19 13:24:18 -08:00
Mark L. Stowell 86336f1c51 Adding documentation for L1 and W11 error computations 2024-12-19 11:45:45 -08:00
Mark L. Stowell 699bb4d422 Fixing typos 2024-12-19 11:45:13 -08:00
Mark L. Stowell ce0bda7a35 Ensuring positive integrals in GridFunction::ComputeW11Error 2024-12-19 10:50:49 -08:00
Veselin Dobrev e2a20d381c Merge pull request #4624 from LeSnow-Ye/patch-1
CMake: fix `mpi.h` not being found when finding SLEPc.
2024-12-18 16:46:54 -08:00
adam-sim-dev 1f38748b11 Merge branch 'master' into operator_equal 2024-12-19 04:49:36 +08:00
Mark L. Stowell 42300d0fca Merge branch 'master' into bug-fix-par-green-ref-2d 2024-12-18 11:49:04 -08:00
Mark L. Stowell 7db0a9a8d3 Use spaceDim to ensure all necessary components of new vertices are computed 2024-12-18 11:03:10 -08:00
Tzanio Kolev 16a9b2be3c Merge pull request #4371 from mfem/ncmesh-spacing
General NCMesh spacing
2024-12-18 06:50:43 -08:00
Tzanio Kolev e731d2dd69 Merge pull request #4583 from lindsayad/install-miniapp-content
Install miniapp content
2024-12-18 06:20:39 -08:00
Tzanio Kolev 6afc7e6fe8 minor 2024-12-17 17:24:25 -08:00
Tzanio Kolev 2a4fd1121e Merge pull request #4467 from mfem/gslib-findpts-device-vol
FindPointsGSLIB on GPUs
2024-12-17 16:31:12 -08:00
Tzanio Kolev d5f029f016 Merge branch 'master' into ncmesh-spacing 2024-12-17 11:29:58 -08:00
Tzanio Kolev 06e7948445 Merge branch 'master' into positive-lp-err-dev 2024-12-17 11:29:53 -08:00
Veselin DobrevandAndrew Ho 1bd9ed53b3 Update CMakeLists.txt
Co-authored-by: Andrew Ho <ho37@llnl.gov>
2024-12-16 16:09:15 -08:00
Veselin Dobrev f72bfcce92 Additional tweaks based on PR reviews 2024-12-16 14:31:11 -08:00
Veselin DobrevandNuno Nobre 971864c3a1 Apply suggestions from code review
Co-authored-by: Nuno Nobre <nuno.nobre@stfc.ac.uk>
2024-12-16 13:06:16 -08:00
Veselin DobrevandNuno Nobre b11a4e2c6a Update CMakeLists.txt
Co-authored-by: Nuno Nobre <nuno.nobre@stfc.ac.uk>
2024-12-16 13:02:37 -08:00
Mark L. Stowell 2a109bd2ea Fixing return value comment 2024-12-16 11:36:27 -08:00
Alex Lindsay 9fce164b33 Veselin patch 2 2024-12-14 21:24:48 -07:00
adam-sim-dev faf6ea6ca6 Merge branch 'master' into operator_equal 2024-12-15 09:34:17 +08:00
Mark L. Stowell cbac9063ad Merge branch 'master' into mark-external-faces-dev 2024-12-13 14:26:30 -08:00
Mark L. Stowell 66c3474eb3 Adding support for AMR meshes 2024-12-13 14:03:22 -08:00
David Kamensky 61fd002be4 Updating documentation and formatting, and re-ordering attributes/methods of Integrator in header. 2024-12-13 13:07:47 -07:00
Jan Nikl 24da41f6bb Mentioned renaming of RiemannSolver in Changelog. 2024-12-13 10:03:34 -08:00
Jan Nikl 9943072dca Removed the switch for numerical fluxes from ex18(p). 2024-12-13 09:59:27 -08:00
Jan NiklandChris Vogl f8b638c569 Docs improvement in hyperbolic.hpp
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-13 09:13:49 -08:00
Mark L. Stowell 0c88591848 make style 2024-12-12 15:46:07 -08:00
Mark L. Stowell 1cdc2eb295 Testing the new method with change from PR #4484 2024-12-12 14:53:31 -08:00
Mark L. Stowell c8aa01fbe6 Using new methods to find essential BC DoFs in ex1 and ex1p 2024-12-12 14:52:48 -08:00
Mark L. Stowell 03c874a199 Adding GetExterior(VDofs|TrueDofs) functions to finite element space classes 2024-12-12 14:52:13 -08:00
Mark L. Stowell 3e69daedf7 Adding (Par)Mesh::GetExteriorFaceMarker to identify exterior faces of a mesh 2024-12-12 14:51:07 -08:00
Jan Nikl 1e4f2b5d2b Renamed GodunovFlux to ScalarGodunovFlux to make clear it is component-wise. 2024-12-12 12:08:51 -08:00
Jan Nikl e94e997790 Generalized gradient of RusanovFlux for systems. 2024-12-12 11:28:05 -08:00
Alex Lindsay 8b7b8bc4af Apply Veselin patch 2024-12-12 11:39:32 -07:00
Vladimir Z Tomov 8a63fe8a49 Merge branch 'master' into bugfix-4570 2024-12-12 09:23:44 -08:00
Vladimir Z Tomov 08d8058ce1 Edited the doxygen based on review comments. 2024-12-12 09:21:01 -08:00
David Kamensky ca48beb934 Adding integrator base class to unify quadrature rule selection. 2024-12-12 09:30:58 -07:00
Tzanio Kolev 9a9087e20b Merge pull request #4504 from helloworld922/master
Fix CUDA-enabled HYPRE finalization order issue
2024-12-12 07:26:37 -08:00
adam-sim-dev d7370c8518 Merge branch 'master' into operator_equal 2024-12-12 15:33:46 +08:00
Jan Nikl ef2636e4e9 Minor docs fix in hyperbolic.hpp. 2024-12-11 09:33:43 -08:00
Jan Nikl 0e1f45f060 Renamed rsolver to numFlux in HyperbolicFormIntegrator. 2024-12-11 09:30:17 -08:00
Jan Nikl 8cc9877716 Renamed Riemann solver to numerical flux in ex18(p). 2024-12-11 09:27:06 -08:00
Jan Nikl 0d389eed75 Fixed definitions of the characteristic speed. 2024-12-11 09:09:59 -08:00
Mark L. Stowell 029d0ee306 Adding improved documentation including parameter descriptions 2024-12-10 20:26:55 -08:00
Jan Nikl 46ab66d499 Moved warning about component-wise Godunov to its constructor. 2024-12-10 16:47:53 -08:00
Jan Nikl 144db3a53c Fixed maximal characteristic velocity definitions. 2024-12-10 15:39:12 -08:00
Jan Nikl 5895c08ff2 Minor doxygen change for RusanovFlux. 2024-12-10 15:33:52 -08:00
Dylan Copeland 74e93755fa Bug fix. 2024-12-10 13:36:56 -08:00
Mark L. Stowell acb91a69ab Merge branch 'positive-lp-err-dev' of github.com:mfem/mfem into positive-lp-err-dev 2024-12-10 13:26:48 -08:00
Mark L. Stowell 59b656a18c Improving documentation as suggested by @najlkin 2024-12-10 13:25:42 -08:00
Mark L. Stowell 4305f39092 Repalcing if/else blocks with fabs where appropriate 2024-12-10 10:59:17 -08:00
Mark L. StowellandJan Nikl 367266ee95 Update fem/gridfunc.cpp
Co-authored-by: Jan Nikl <nikl1@llnl.gov>
2024-12-10 10:51:05 -08:00
Jan Nikl afbaca05de Merge branch 'master' into najlkin/impro-hyperbolic 2024-12-10 10:33:48 -08:00
Jan Nikl 5780c2c21c Minor docs improvement. 2024-12-10 10:22:32 -08:00
Jan Nikl 16e0bad850 Renamed RiemannSolver to NumericalFlux with depracation of the old name. 2024-12-10 09:37:09 -08:00
Jan NiklandChris Vogl 5c0bd60944 Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:35:14 -08:00
Jan NiklandChris Vogl 44438536af Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:33:53 -08:00
Jan NiklandChris Vogl 3d488cd2fd Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:33:18 -08:00
Jan NiklandChris Vogl 099c3493b2 Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:32:46 -08:00
Jan NiklandChris Vogl 655623ca9b Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:31:29 -08:00
Jan NiklandChris Vogl f91f3d12a6 Minor docs improvement.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-10 09:30:37 -08:00
LeSnow Ye fc8312383f Fix mpi.h file not being found. 2024-12-10 13:43:30 +08:00
Vladimir Z Tomov 947bcc2b80 Removed leftover code from the previous approach. 2024-12-09 18:04:39 -08:00
Vladimir Z Tomov 4ff80fbb80 style 2024-12-09 17:48:20 -08:00
Vladimir Z Tomov 915fc1e910 fixed more warnings 2024-12-09 17:46:19 -08:00
Veselin Dobrev 6324806008 In CMake, fix an issue when finding PETSc with C compiler that is
not an MPI C wrapper.
2024-12-09 11:50:25 -08:00
Tzanio Kolev c3771b3352 Merge pull request #4613 from mfem/artv3/fix-ea-ho-lor-transfer-mem-leaks
Fix memory leaks in EA-HO-LOR transfer operators
2024-12-09 10:52:50 -08:00
Andrew Ho 51a75893f7 Changes from Veselin 2024-12-09 08:21:57 -08:00
Vladimir Z Tomov b164ad53a2 style 2024-12-08 18:18:22 -08:00
Vladimir Z Tomov aab51f6935 Fixed -Wall errors. 2024-12-08 18:15:57 -08:00
Vladimir Z Tomov 23afe83964 minor comment 2024-12-08 17:15:18 -08:00
Vladimir Z Tomov 7845bca7be doc error 2024-12-08 17:08:43 -08:00
Vladimir Z Tomov 98bbecd492 Simplification 2024-12-08 16:56:34 -08:00
Vladimir Z Tomov e079915f76 style 2024-12-08 16:49:48 -08:00
Vladimir Z Tomov ce253361c6 deprecated message 2024-12-08 16:46:33 -08:00
Vladimir Z Tomov 718a86594c Added ComputeAtGivenPositions. 2024-12-08 15:22:35 -08:00
Vladimir Z Tomov d24fd7d447 switched to the new function 2024-12-08 14:49:00 -08:00
Veselin Dobrev cac27438f5 In GitHub CI, use custom install dir for CMake on Ubuntu 2024-12-08 13:45:10 -08:00
Veselin Dobrev 7f2a2692dd In GNU make, during header installation, skip source directories that
do not have *.hpp files in them.
2024-12-08 13:08:50 -08:00
Veselin Dobrev 48c1a80fdc In the GitHub CI, add tests for the install targets 2024-12-08 13:01:27 -08:00
Vladimir Z Tomov 29a2501f8c Comments, renamed the space. 2024-12-08 12:48:48 -08:00
Vladimir Z Tomov ad7d173497 Added FESpace::GetNodePositions. 2024-12-08 09:51:53 -08:00
adam-sim-dev 9d2b6007ed Merge branch 'master' into operator_equal 2024-12-08 18:03:25 +08:00
Tzanio Kolev 35bbdc75c9 Merge pull request #4608 from Heinrich-BR/master
Conduit file path fix
2024-12-07 14:53:06 -08:00
Philipp Dumitrescu 88416db438 Fix style 2024-12-06 12:02:47 -08:00
Philipp Dumitrescu 00616cfccf Adjust docstrings for Vector/CurlDim 2024-12-06 11:58:34 -08:00
Vladimir Z Tomov b7c8d66a3d Only comments and renamed variables. 2024-12-06 10:20:17 -08:00
Vladimir Z Tomov c992bd681c minor 2024-12-05 23:13:44 -08:00
Andrew Ho 9bee2fcac8 Merge branch 'master' into master 2024-12-05 22:45:36 -08:00
Andrew Ho f1304374e0 Changed back to not use hypre's internal state tracker for calling init/finalize.
This will mean users can initialize hypre themself, and mfem won't
automatically finalize hypre for them in this situation.
2024-12-05 22:43:05 -08:00
Nuno Nobre d835203da0 Install miniapp content w/ GNU make 2024-12-05 15:42:01 -08:00
Alex Lindsay 49e4bd9d3d Install miniapp content 2024-12-05 15:41:55 -08:00
Alex Lindsay a3137917cd Ignore TAGS 2024-12-05 14:10:12 -08:00
Mittal, Ketan 965959e88c make sure fes_nodes are on device 2024-12-05 13:06:12 -08:00
Arturo Vargas 1136a2f283 remove unused destructor 2024-12-05 12:25:14 -08:00
Arturo Vargas baf6ba5d66 Merge branch 'artv3/fix-ea-ho-lor-transfer-mem-leaks' of github.com:mfem/mfem into artv3/fix-ea-ho-lor-transfer-mem-leaks 2024-12-05 12:23:19 -08:00
Arturo Vargas 3fb7697ffb use unique_ptr 2024-12-05 12:21:44 -08:00
Mittal, Ketan 6d288efd68 merge with master and resolve conflicts 2024-12-05 12:00:12 -08:00
Dylan Copeland 4b87236e73 Simplify interface for RefineElement function. 2024-12-05 11:40:57 -08:00
Dylan Copeland 8464088792 Merge branch 'master' of github.com:mfem/mfem into ncmesh-spacing 2024-12-05 10:44:59 -08:00
Dylan Copeland c03257233f New interface for RefineElement function. 2024-12-05 10:44:34 -08:00
adam-sim-dev 0f3df57632 Merge branch 'master' into operator_equal 2024-12-06 02:39:22 +08:00
Dylan Copeland 5c4d967f6c Indentation 2024-12-05 10:26:05 -08:00
Dylan CopelandandChris Vogl 436d1fa2ff Indentation
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-12-05 10:17:51 -08:00
Arturo Vargas 4f3bc873cc Merge branch 'master' into artv3/fix-ea-ho-lor-transfer-mem-leaks 2024-12-05 10:04:23 -08:00
Arturo Vargas cf90e56850 remove potential double free 2024-12-05 10:01:30 -08:00
Tzanio Kolev 7a6caccf99 Merge pull request #4600 from mfem/tmop-ae-space
Support in InterpolatorFP for mesh and gridfunction to have a different space
2024-12-05 08:33:50 -08:00
Tzanio Kolev f319ddef60 Merge pull request #4595 from adam-sim-dev/otmp
Ignore the .o.tmp temporary files generated by the Intel LLVM compiler
2024-12-05 08:33:22 -08:00
Arturo Vargas 8f4c1dbe79 make style 2024-12-04 10:57:18 -08:00
Arturo Vargas 1e838ff45e fix memory leaks 2024-12-04 10:30:57 -08:00
dylan-copeland 45c130f77b Revert another change for the distance miniapp. 2024-12-03 21:07:20 -08:00
dylan-copeland b805f2a48d Revert changes to distance miniapp. 2024-12-03 21:03:12 -08:00
dylan-copeland 6b87974c70 Merge branch 'master' of github.com:mfem/mfem into ncmesh-spacing 2024-12-03 20:52:40 -08:00
dylan-copeland 181030cc29 Minor fixes. 2024-12-03 20:39:47 -08:00
Mittal, Ketan 04c43fa7b9 Merge branch 'master' of https://github.com/mfem/mfem into gslib-findpts-device-vol 2024-12-03 11:40:25 -08:00
Mittal, Ketan 0dc0d1fcb9 fix comment for doxygen 2024-12-03 11:33:38 -08:00
Mittal, Ketan b96db37ab8 set discrete field order to 1 2024-12-03 11:29:23 -08:00
Andrew Ho 79834fa003 use hypre's internal state manager when possible, allow re-initialization 2024-12-03 09:50:07 -08:00
Andrew Ho 25a1f0b3c6 Merge branch 'master' into master 2024-12-03 09:18:14 -08:00
Mittal, Ketan aba31a53be guard MPI_Barrier and update sample runs 2024-12-02 16:30:03 -08:00
Mittal, Ketan 54982a700a merge with master and resolve conflicts 2024-12-02 13:03:51 -08:00
Mittal, Ketan d47622eed2 minor doxygen 2024-12-02 13:01:34 -08:00
“Henrique 6bcd940840 Conduit file path fix 2024-12-02 14:53:35 +00:00
Vladimir Z Tomov 93c07b5c1c bug 2024-11-29 15:12:02 -08:00
Vladimir Z Tomov 90e77b9ca1 minor 2024-11-29 14:40:10 -08:00
Vladimir Z Tomov 3bd439a3c4 Merge branch 'master' into tmop-ae-space 2024-11-29 14:39:24 -08:00
Vladimir Z Tomov 5b825515f7 fixed a warning. 2024-11-29 14:38:00 -08:00
Vladimir Z Tomov d4da37d89a FD assume mesh_order = field_order for discrete adaptivity. 2024-11-29 00:40:07 -08:00
Vladimir Z Tomov deb8bc7ed3 minor 2024-11-27 17:58:17 -08:00
Vladimir Z Tomov 982583068a Renamed some things, references instead of copies. 2024-11-27 17:49:19 -08:00
adam-sim-dev a6fdbe53b5 Use the operator= to init the (Par)ComplexLinearForm to zero 2024-11-28 09:13:46 +08:00
adam-sim-dev 21bf9c3c10 operator= for (Par)ComplexLinearForm 2024-11-27 17:12:40 +08:00
Tzanio Kolev 899a96b769 Merge pull request #4566 from david-kamensky/nurbs-constructors
Adding new constructors for NURBS patches
2024-11-26 15:51:38 -08:00
Ketan Mittal b4bd2f7e63 Merge branch 'master' into tmop-ae-space 2024-11-26 11:45:02 -08:00
David Kamensky 9837922654 Exceptions when calling serial prolongation/restriction setters for parallel FE space. 2024-11-26 11:05:24 -07:00
Veselin Dobrev 5ec2931690 Merge pull request #4564 from mfem/array-init-list
Use std::initializer_list for braced-list construction
2024-11-25 19:16:23 -08:00
Veselin Dobrev 911511ed1d Merge pull request #4550 from e-aranda/master
fix username std conflict
2024-11-25 19:14:48 -08:00
Mittal, Ketan d7e8d78ca4 Merge branch 'tmop-ae-space' of https://github.com/mfem/mfem into tmop-ae-space 2024-11-25 17:02:56 -08:00
Mittal, Ketan bbc37c5236 make style and test in mesh-optimizer as well 2024-11-25 17:02:39 -08:00
Ketan Mittal 4ca2e5cef2 Merge branch 'master' into tmop-ae-space 2024-11-25 17:00:03 -08:00
Mittal, Ketan c09c15c0b2 add check for adaptive limiting 2024-11-25 16:59:50 -08:00
Mittal, Ketan d6d3e30832 make style 2024-11-25 15:20:23 -08:00
Mittal, Ketan 9129e51b86 fix to make any vdim work 2024-11-25 15:20:02 -08:00
Tzanio Kolev 0797adb30a Merge pull request #4562 from adam-sim-dev/warning
Fix part of warnings for MSVC
2024-11-24 13:50:03 -08:00
Tzanio Kolev 3945247cf5 Merge pull request #4540 from mfem/get-serial-gf
Add version of ParGridFunction::GetSerialGridFunction using existing FiniteElementSpace
2024-11-24 13:49:37 -08:00
Mittal, Ketan de6ac02a8d minor 2024-11-22 17:24:53 -08:00
Mittal, Ketan 873a6aa84c fix advectorCG and interpolatorFP for fields of different order 2024-11-22 17:19:09 -08:00
Will Pazner 2ac825abe8 Merge remote-tracking branch 'origin/master' into pa-empty-partitions
# Conflicts:
#	fem/bilininteg.cpp
#	fem/quadinterpolator.cpp
2024-11-22 11:05:49 -08:00
adam-sim-dev 1262d17e8b Merge branch 'master' into warning 2024-11-22 11:18:32 +08:00
Philipp Dumitrescu 211baab557 Move VectorDim, CurlDim to FiniteElementSpace 2024-11-21 16:50:50 -08:00
adam-sim-dev d6e1063c5e Update globals.cpp 2024-11-22 08:40:09 +08:00
Tzanio Kolev fe9bd03f4b Merge pull request #4585 from mfem/tmop-conv-warning
Fix verbosity levels for NewtonSolver in TMOP miniapps
2024-11-21 16:05:35 -08:00
Will Pazner 7645bce2b5 Merge remote-tracking branch 'origin/master' into array-init-list
# Conflicts:
#	general/array.hpp
#	tests/unit/general/test_array.cpp
2024-11-21 13:27:02 -08:00
Mittal, Ketan 7cb81d5916 minor 2024-11-21 09:38:17 -08:00
Mittal, Ketan 128882200d add checks to ensure size consistency 2024-11-21 09:37:13 -08:00
adam-sim-dev 3f4dd4db7f Resolve the review comments by Veselin 2024-11-21 15:17:47 +08:00
camierjs 2835cd7e3a Merge master in debug-device-test 2024-11-20 20:17:50 -08:00
adam-sim-dev 73dbd7446f Merge branch 'master' into warning 2024-11-21 11:16:21 +08:00
Tzanio Kolev 7c1a0eb5e3 Merge pull request #4576 from mfem/kernel-dispatch-ensure-init
Ensure kernel specializations are instantiated
2024-11-20 12:59:40 -08:00
Mittal, Ketan fc0a1eb8da update get obb 2024-11-19 16:10:01 -08:00
Mittal, Ketan e458e579e0 merge with master and resolve conflict 2024-11-19 15:27:57 -08:00
Mittal, Ketan f6dbf49709 Merge branch 'gslib-findpts-device-vol' of https://github.com/mfem/mfem into gslib-findpts-device-vol 2024-11-19 15:27:00 -08:00
Mittal, Ketan f4be9104f5 add method to get AABB and OBB info 2024-11-19 15:26:46 -08:00
Mittal, Ketan 3183af1b3c Merge branch 'tmop-conv-warning' of https://github.com/mfem/mfem into tmop-conv-warning 2024-11-19 14:39:32 -08:00
Mittal, Ketan ced884b231 update rtol for LBFGS run 2024-11-19 14:39:12 -08:00
Will Pazner afbd1a1ba5 Improve Doxygen and unit tests for ParGridFunction::GetSerialGridFunction 2024-11-19 10:49:38 -08:00
Mittal, Ketan 314ae7ed36 out -> outm 2024-11-19 09:46:10 -08:00
adam-sim-dev 72dc18cccb Ignore the .o.tmp temporary file generated by the Intel LLVM compiler 2024-11-19 17:12:49 +08:00
Mittal, Ketan 119d257bb1 clean up 2024-11-18 18:37:51 -08:00
Mittal, Ketan 4559bd4bea minor, and add nu_49 and 50 2024-11-18 18:19:36 -08:00
Justin Laughlin 8e3674396f Merge branch 'master' into nurbs-constructors 2024-11-18 11:49:58 -08:00
Ketan Mittal 4c0c3f822a Merge branch 'master' into get-serial-gf 2024-11-18 11:49:31 -08:00
adam-sim-dev cba0739740 Code style edit 2024-11-18 10:29:35 +08:00
adam-sim-dev 75f0ed1b67 static_cast size_t to int 2024-11-18 09:40:58 +08:00
adam-sim-dev 8853f574da static_cast _Ty (it's int) to int 2024-11-18 08:53:35 +08:00
adam-sim-dev 645b7ba0dc static_cast _Ty (it's int) to int 2024-11-18 08:52:07 +08:00
adam-sim-dev e90cff6413 static_cast _Ty (it's int) to int 2024-11-18 08:42:56 +08:00
Mittal, Ketan 0fc4ee363b add nu51 2024-11-17 12:43:42 -08:00
Ketan Mittal 449778485d Merge branch 'master' into tmop-conv-warning 2024-11-16 13:19:01 -08:00
Mittal, Ketan 59a033b3ea rel norm at the end of Newton and LBFGS 2024-11-16 13:18:20 -08:00
adam-sim-dev bf47bc9210 Update socketstream.cpp 2024-11-16 16:18:05 +08:00
adam-sim-dev 4eac35a79a Fix conversion of pointer differences __int64 to int. Suggested by najlkin 2024-11-16 16:08:20 +08:00
adam-sim-dev dffee6b764 Merge pull request #2 from adam-sim-dev/master
Merge master into warning
2024-11-16 15:29:40 +08:00
David Kamensky a954ed2046 Adding exception for NURBS mesh with no patches. 2024-11-15 10:35:16 -07:00
Ketan Mittal 064c5261a7 Merge branch 'master' into gslib-findpts-device-vol 2024-11-15 09:21:26 -08:00
David Kamensky 6e814df8cd Simplifying/clarifying KnotVector constructor and adding consistency checks. 2024-11-15 08:56:22 -07:00
adam-sim-dev fe3a6cba80 Merge pull request #1 from adam-sim-dev/_CRT_SECURE_NO_WARNINGS
Define a wrapper for getenv() to turn off CRT deprecation warnings
2024-11-15 09:40:31 +08:00
adam-sim-dev 8883f34f5d Define a wrapper for getenv() to turn off CRT deprecation warnings 2024-11-15 09:28:11 +08:00
737d9032d7 Adding new constructors for NURBS meshes.
This adds some convenience constructors for NURBS patches, and also includes a test exercising the new functionality.

Co-authored-by: Derek Thomas <derek@coreform.com>
Co-authored-by: Kevin Tew <kevin@coreform.com>
Co-authored-by: David Kamensky <david@coreform.com>
Co-authored-by: Justin Laughlin <laughlin6@llnl.gov>
2024-11-14 12:08:15 -07:00
Mittal, Ketan 4993d5e715 update some sample runs 2024-11-14 10:31:23 -08:00
Will Pazner 9148e14b6f Remove unneeded Doxygen comments in cpp file 2024-11-14 09:00:46 -08:00
David KamenskyandDerek Thomas e8c5dbd885 Methods to set prolongation and restriction operators.
Co-authored-by: Derek Thomas <derek@coreform.com>
Co-authored-by: David Kamensky <david@coreform.com>
2024-11-14 08:58:06 -07:00
Will Pazner e561db6d0a MFEM_EXPORT for static kernel dispatch members
For compatibility with Windows/MSVC
2024-11-13 22:41:29 -08:00
Will Pazner 40dbb933e7 Attempt workaround for MSVC segfault
Potential compiler bug with delegated constructors in MSVC
2024-11-13 19:55:17 -08:00
Mark L. Stowell 71a25ca7fa Adding documentation explaining this new behavior 2024-11-13 14:30:16 -08:00
Mark L. Stowell d06d5e2a5a Taking absolute value in each element to avoid cancellation between elements 2024-11-13 13:51:56 -08:00
Mittal, Ketan 026c5c9808 make style 2024-11-13 10:38:34 -08:00
Mittal, Ketan 7587dcad87 compile kernels for v1.0.9 or higher 2024-11-13 10:38:17 -08:00
Mittal, Ketan 3bcd024ca4 fix memory bug for nu11 2024-11-13 07:50:31 -08:00
Ernesto Aranda 701f109c1b Update convection-diffusion.cpp 2024-11-13 12:32:59 +01:00
Ernesto Aranda e250112b1b Update pconvection-diffusion.cpp 2024-11-13 12:32:04 +01:00
Ernesto Aranda 70af0843a6 Update convection-diffusion.cpp 2024-11-13 12:30:21 +01:00
Ernesto Aranda 9176c2b95f Merge branch 'mfem:master' into master 2024-11-13 09:14:35 +01:00
adam-sim-dev 79afc9f006 Merge branch 'master' into warning 2024-11-13 10:55:38 +08:00
Mittal, Ketan 57ebd5f0a1 minor 2024-11-12 17:58:51 -08:00
Mittal, Ketan df8989a28a Merge branch 'master' of https://github.com/mfem/mfem into TMOP_AD_ms 2024-11-12 17:26:11 -08:00
Mittal, Ketan 6377476998 Backwards compatibility for gslib v1.0.7 2024-11-12 17:18:40 -08:00
adam-sim-dev aeeadfe5d0 Revert "Remove #define _CRT_SECURE_NO_WARNINGS"
This reverts commit 941c6c2bac.
2024-11-13 09:10:34 +08:00
adam-sim-dev 29417aed77 Revert "define _CRT_SECURE_NO_WARNINGS for MSVC"
This reverts commit bee8df8b42.
2024-11-13 09:10:26 +08:00
adam-sim-dev 1f6abc2e0b Merge branch 'master' into warning 2024-11-13 05:21:58 +08:00
Will Pazner 293b5f78e8 Change kernel specialization instantiation to use local static variable in constructor
This is in order to avoid issues with the static member variable being optimized
away by the compiler.
2024-11-12 12:55:08 -08:00
Will Pazner 2ebe3efde8 Add unit test for kernel specializations
Adds const reference accessor for the kernel dispatch table
2024-11-12 12:06:14 -08:00
Mittal, Ketan 7399d8a8e0 fix for fitting miniapp 2024-11-11 18:45:30 -08:00
Mittal, Ketan 6ae591075c set verbosity level to always output warnings and errors 2024-11-11 18:15:33 -08:00
Mittal, Ketan 5f69535a0e AD for mu11 2024-11-11 13:16:44 -08:00
Mittal, Ketan df13f75834 use dmu/dW in gradient for mu(A,W) 2024-11-11 12:15:57 -08:00
adam-sim-dev e49747c49b Merge branch 'master' into warning 2024-11-11 08:41:10 +08:00
Mittal, Ketan b0b726a2a9 merge and resolve conflicts 2024-11-09 16:09:15 -08:00
Mark L. Stowell 86b2599e50 Returning positive errors from GridFunction::ComputeLpError and related functions 2024-11-09 15:07:11 -08:00
Will Pazner 8007b5073f MFEM_EXPORT static member variables
Move QuadratureInterpolator::Kernels to static local variable
2024-11-09 07:31:08 -08:00
Will Pazner 780eaeda5a Don't inline Kernels::EnsureInitialized()
Prevent the compiler from optimizing out the calls
2024-11-08 14:15:48 -08:00
Will Pazner 8a4bb61a2a Ensure kernel dispatch tables are initialized
The kernel dispatch tables are initialized in the constructor of a static member
variable.

If this variable is not odr-used, then it may be optimized away, and the
initialization code is never called. This commit ensures the initialization occurs
by adding a no-op EnsureInitialized member function to the Kernels class that can
be called from the integrator constructor.
2024-11-08 12:05:33 -08:00
Alex Lindsay dc1b1ce0ec PetscContainerSetUserDestroy -> PetscContainerSetCtxDestroy 2024-11-08 11:39:20 -08:00
Vladimir Z Tomov cd34967081 minor 2024-11-08 10:26:19 -08:00
Vladimir Z Tomov f2496c3599 minor 2024-11-08 10:22:39 -08:00
Vladimir Tomov 1ad507217d Merge pull request #4573 from hifabian/bugfix-4570
Correct scaling for VectorDiffusionIntegrator
2024-11-08 09:10:35 -08:00
hifabian 5ea5e37c9f Correct scaling for VectorDiffusionIntegrator
This corrects the scaling for VectorCoefficient and MatrixCoefficient in
the AssembleElementVector member function for VectorDiffusionIntegrator.
The integration was incorrect before due to the wrong scaling.

This resolves issue #4570
2024-11-08 12:40:47 +09:00
Vladimir Z Tomov 909272fc0d Unit test for VectorDiffusionIntegrator related to github issue 4570. 2024-11-07 11:38:04 -08:00
adam-sim-dev ff4544771b Merge branch 'master' into warning 2024-11-06 21:45:59 +08:00
adam-sim-dev 255c0c77e0 Merge branch 'master' into warning 2024-11-05 08:43:11 +08:00
Hugh Carson 1fcea2faf4 Merge branch 'master' into hughcars/gmsh-reader-periodic-bugfix 2024-11-04 11:41:39 -05:00
adam-sim-dev 470698bb28 Merge branch 'master' into warning 2024-11-04 08:27:54 +08:00
Jan Nikl 8a4df331fe Replaced plain pointer by the std unique pointer. 2024-11-01 17:28:24 -07:00
Jan Nikl 6c07f873ef Merge branch 'master' into najlkin/impro-hyperbolic 2024-11-01 17:24:06 -07:00
Jan Nikl 7068d022f8 Added notes about usage of some methods. 2024-11-01 17:17:37 -07:00
Will Pazner c232029d84 Add unit test for convertible type Vector constructor
Also add include for type_traits header
2024-11-01 15:56:35 -07:00
Will Pazner c9cf2ec345 Add unit test for convertible type Array constructor 2024-11-01 14:45:51 -07:00
Will Pazner 7195af90b1 Compile-time check for Array convertible-type constructor 2024-11-01 14:43:39 -07:00
adam-sim-dev 325929278d Update communication.hpp 2024-11-01 08:33:52 +08:00
Vladimir Z Tomov 833ed331e1 style and minor formatting. 2024-10-31 14:46:18 -07:00
Will Pazner ea6ab76762 Change order of Vector constructor template parameters to match Array 2024-10-31 13:59:33 -07:00
Will Pazner b4efd401b8 Re-add C-style array constructor for Vector
Also small adjustments to the Vector and Array unit tests
2024-10-31 13:58:11 -07:00
Will Pazner c7bb0201c0 Re-add C-style array constructor for Array 2024-10-31 10:09:59 -07:00
Will Pazner 8a19254fc6 In Vector braced list constructor, use enable_if to select only types convertible to real_t 2024-10-31 10:00:41 -07:00
Will Pazner ff0b016126 Use std::initializer_list for braced-list construction
In the previous implementation, Array<T>({1}) would select the Array<T>(int)
constructor rather than the braced-list constructor.
2024-10-31 09:32:01 -07:00
adam-sim-dev 88f90717b1 Format the code style 2024-10-31 20:38:02 +08:00
adam-sim-dev 256995a053 Format the code style 2024-10-31 20:24:24 +08:00
adam-sim-dev 941c6c2bac Remove #define _CRT_SECURE_NO_WARNINGS 2024-10-31 20:14:22 +08:00
adam-sim-dev de235a0660 static_cast size_t to int 2024-10-31 18:11:24 +08:00
adam-sim-dev bee8df8b42 define _CRT_SECURE_NO_WARNINGS for MSVC 2024-10-31 18:08:23 +08:00
adam-sim-dev 4e17193a11 convert time_t to int 2024-10-31 18:08:00 +08:00
adam-sim-dev b4dfb8660d static_cast size_t to int 2024-10-31 18:07:45 +08:00
Dylan Copeland 95a5c503b1 Remove assert. 2024-10-30 11:53:45 -07:00
dylan-copeland e05a13bc98 Merge branch 'master' of github.com:mfem/mfem into ncmesh-spacing 2024-10-30 11:23:57 -07:00
dylan-copeland e5cfc35f87 Removed int type for refinements. 2024-10-30 11:23:41 -07:00
Ernesto Aranda e1b98c30ec Update pconvection-diffusion.cpp (tab problem?) 2024-10-28 23:06:23 +01:00
Ernesto Aranda 33cbfac042 Merge branch 'master' of https://github.com/e-aranda/mfem 2024-10-28 19:32:18 +01:00
Ernesto Aranda 41d94a5528 correcting style 2024-10-28 19:27:31 +01:00
Tzanio Kolev a7382dd25e Update pconvection-diffusion.cpp 2024-10-28 11:24:42 -07:00
Tzanio Kolev c83264e825 Update pconvection-diffusion.cpp 2024-10-28 11:24:04 -07:00
Tzanio Kolev 70a4d67169 Update convection-diffusion.cpp 2024-10-28 11:23:27 -07:00
Ernesto Aranda 498d539f68 Update pconvection-diffusion.cpp fix typo 2024-10-28 18:21:28 +01:00
Ernesto Aranda a7cdb86334 Update convection-diffusion.cpp fixed typo 2024-10-28 18:20:35 +01:00
Ernesto Aranda 4259ecc48b Update pconvection-diffusion.cpp code style 2024-10-28 17:43:55 +01:00
Ernesto Aranda 1382f6c771 Update convection-diffusion.cpp code-style 2024-10-28 17:42:32 +01:00
Ernesto Aranda d0b1f760eb fix username std conflict 2024-10-28 16:55:20 +01:00
Tzanio Kolev 846c63d53e Merge branch 'master' into get-serial-gf 2024-10-27 15:50:53 -07:00
Dylan Copeland 91f14abe6e Disallow inconsistent refinement scalings on an edge. 2024-10-25 12:39:55 -07:00
Will Pazner acf8bdb43e Close stream before calling std::remove 2024-10-15 19:50:14 -07:00
Will Pazner c99c7581d8 Add version of ParGridFunction::GetSerialGridFunction using existing FiniteElementSpace
Also update the associated unit test
2024-10-15 16:15:40 -07:00
Julian Andrej 33cb37689b double -> real 2024-10-15 13:00:46 -07:00
Julian Andrej f460048de7 Merge branch 'master' into solver-monitor-controller
# Conflicts:
#	linalg/solvers.cpp
#	linalg/solvers.hpp
2024-10-15 12:52:48 -07:00
dylan-copeland 17d29a8390 Minor fix. 2024-10-15 12:05:09 -07:00
dylan-copeland e5de10c9d9 Restoring backwards compatibility. 2024-10-15 11:55:02 -07:00
Tzanio Kolev 33e507ccbc Merge branch 'master' into master 2024-10-14 17:23:45 -07:00
dylan-copeland db75ba5bed Merge branch 'master' of github.com:mfem/mfem into ncmesh-spacing 2024-10-11 21:00:04 -07:00
dylan-copeland a926841cf9 Improved interface for Refinement. 2024-10-11 20:08:05 -07:00
Jan Nikl 976234b376 Fixed initialization of max char speed in HyperbolicFormIntegrator. 2024-10-08 14:42:40 -07:00
Jan Nikl 09b7d0a251 A fix for Windows CI. 2024-10-02 15:34:55 -07:00
Jan Nikl 607775421c Added a note about component-wise Godunov flux to example 18. 2024-10-02 15:23:48 -07:00
Jan Nikl 3d226227d8 Added tolerance for comparison of states. 2024-10-02 15:17:30 -07:00
Andrew Ho 48c1be8fb5 Changes suggested by Will
- fixed accidentally copying the singleton
- deleted copy/move constructors to prevent future accidental copying
2024-09-27 14:39:30 -07:00
Jan Nikl ab15daf765 Specified the maximal velocity in FluxFunction. 2024-09-26 12:31:11 -07:00
Jan Nikl a8ca317754 Added notes about treatment of systems in Rusanov and Godunov. 2024-09-26 10:22:01 -07:00
Jan Nikl 2a703daa56 Added a note about gradients for systems in Rusanov and Godunov. 2024-09-26 09:51:44 -07:00
Andrew Ho b3323ef6e4 Merge remote-tracking branch 'refs/remotes/origin/master' 2024-09-25 18:42:45 -07:00
Andrew Ho 345957aae2 Have Hypre track if it was initialized in addition to finalized.
Moved where HYPRE_Init gets called.
2024-09-25 18:27:10 -07:00
Mathias Rainer Schmidt e85a96e745 - documentation 2024-09-25 14:07:03 -07:00
Mathias Rainer Schmidt 7719196373 - added documentation 2024-09-25 14:01:28 -07:00
Mathias Rainer Schmidt 601ea3a147 Merge remote-tracking branch 'origin/master' into TMOP_AD_ms 2024-09-25 13:54:49 -07:00
Mathias Rainer Schmidt 8e85dcfbc8 - added AD computation of residual and hassian for selected tmop metrics 2024-09-25 13:39:35 -07:00
Jan Nikl f8e809903b Updated CHANGELOG. 2024-09-24 09:52:08 -07:00
Jan Nikl ae6a90e383 Revert "Added a note about average flux for systems."
This reverts commit cd20285435.
2024-09-24 09:40:06 -07:00
Jan Nikl cd20285435 Added a note about average flux for systems. 2024-09-23 17:36:04 -07:00
Jan Nikl e31e40b4fb Replaced latex by unicode for average fluxes. 2024-09-23 17:27:09 -07:00
Jan Nikl 3320cbda43 Make style. 2024-09-23 16:01:57 -07:00
Jan Nikl b269d1dc2f Clarified the definition of the average flux. 2024-09-23 16:00:30 -07:00
Jan Nikl 381abe9002 Fixed and updated the file dox. 2024-09-23 15:59:46 -07:00
Jan Nikl 2496d2af00 Fixed the definition of jump in hyperbolic. 2024-09-23 15:59:46 -07:00
Jan Nikl 8d077885a2 Fixed beggining -> beginning. 2024-09-23 15:31:14 -07:00
Jan NiklandChris Vogl d929df70c2 Fixed a typo in dox.
Co-authored-by: Chris Vogl <vogl2@llnl.gov>
2024-09-23 15:28:20 -07:00
Ketan Mittal 343c4812a6 use required number of threads in kernels 2024-09-19 20:22:14 -07:00
Jan Nikl beae628d98 Removed Engquist-Osher flux as it conincides with Godunov. 2024-09-19 10:35:18 -07:00
Jan Nikl d9814767a2 Added the new Riemann solvers to ex18(p). 2024-09-19 09:17:14 -07:00
Jan Nikl b6c7920a3d Fixed zeros for real_t type. 2024-09-18 17:46:14 -07:00
Jan Nikl 00a1775659 Fixed shadowing in HyperbolicFormIntegrator::AssembleElementGrad(). 2024-09-18 17:32:16 -07:00
Jan Nikl 8c4f7851b3 Fixed dox of FluxFunction. 2024-09-18 17:27:23 -07:00
Jan Nikl ac0a593a6e Fixed shadowing in FluxFunction. 2024-09-18 17:24:04 -07:00
Jan Nikl b1c328aafb Minor fix of dox in hyperbolic. 2024-09-18 15:41:23 -07:00
Jan Nikl dd3fa25da7 Fixed @see usage in hyperbolic. 2024-09-18 15:41:23 -07:00
Jan Nikl f3814356d3 Added names to the flux functions. 2024-09-18 15:41:23 -07:00
Jan Nikl 7a708f4d64 Minor unification of dox in hyperbolic. 2024-09-18 15:41:23 -07:00
Jan Nikl 969077f526 Added face gradient to HyperbolicFormIntegrator. 2024-09-18 15:41:23 -07:00
Jan Nikl 825e8224a2 Added gradient to Riemann solvers. 2024-09-18 15:39:58 -07:00
Jan Nikl f645bae11a Minor dox improvement in hyperbolic. 2024-09-18 15:39:58 -07:00
Jan Nikl e05b0bcb44 Improved Engquist-Osher Jacobian of average flux to use the limit form. 2024-09-18 15:39:58 -07:00
Jan Nikl 52945319b2 Improved Godunov Jacobian of average flux to use the limit form. 2024-09-18 15:39:58 -07:00
Jan Nikl 13cd22c4b2 Added side=1 implementation of Jacobian to RusanovFlux. 2024-09-18 15:39:58 -07:00
Jan Nikl f920464b4d Added side=1 implementation of Jacobian to GodunovFlux. 2024-09-18 15:39:57 -07:00
Jan Nikl 48cfa24e8e Added side=1 implementation of Jacobian to EngquistOsherFlux. 2024-09-18 15:39:57 -07:00
Jan Nikl 8d2402e654 Minor dox improvement in hyperbolic. 2024-09-18 15:39:57 -07:00
Jan Nikl c0ac027e72 Added Engquist-Osher flux. 2024-09-18 15:39:57 -07:00
Jan Nikl 90ce12cb2f Minor doc fix for GodunovFlux. 2024-09-18 15:39:57 -07:00
Jan Nikl 97619c08f7 Changed non-decreasing to monotonous for Riemann solvers, which accounts for different signs. 2024-09-18 15:39:43 -07:00
Jan Nikl db38490daf Unified fluxes to use indexing parenthesis. 2024-09-18 15:39:43 -07:00
Jan Nikl ffaa345807 Added Godunov average and average Jacobian. 2024-09-18 15:39:43 -07:00
Jan Nikl 91f8956649 Minor dox fixup in hyperbolic. 2024-09-18 15:39:43 -07:00
Jan Nikl 03007510f3 Added Godunov flux. 2024-09-18 15:39:43 -07:00
Jan Nikl af1d533330 Minor fix of dox in hyperbolic. 2024-09-18 15:39:43 -07:00
Jan Nikl 51af7963da Added Rusanov flux Average(Grad)(). 2024-09-18 15:39:07 -07:00
Jan Nikl fa467ebf11 Added a note about monotonicity of F in Rusanov. 2024-09-18 15:39:07 -07:00
Jan Nikl 6d461e600d Minor dox fixes in hyperbolic.hpp. 2024-09-18 15:39:07 -07:00
Jan Nikl 4e52184594 Minor cleanup of RusanovFlux. 2024-09-18 15:39:07 -07:00
Jan Nikl 3dda022825 Added average fluxes to advection and Burgers FluxFunctions. 2024-09-18 15:39:07 -07:00
Jan Nikl be17af796b Added average gradient method to RiemannSolver. 2024-09-18 15:39:07 -07:00
Jan Nikl 130aa7072b Added normal fluxes to advection and Burgers FluxFunctions. 2024-09-18 15:39:07 -07:00
Jan Nikl c36623d665 Added average numerical flux to RiemannSolver. 2024-09-18 15:39:07 -07:00
Jan Nikl dad4e4cf2e Added average (normal) flux methods to FluxFunction. 2024-09-18 15:39:07 -07:00
Jan Nikl cb5470b63c Dimensions clarification in FluxFunction. 2024-09-18 15:39:07 -07:00
Jan Nikl 4aa52f4d61 Changed face/el information -> transformation. 2024-09-18 15:39:07 -07:00
Jan Nikl 39ee3831e7 Minor fix of dox for RiemannSolver::Eval(). 2024-09-18 15:39:07 -07:00
Jan Nikl 824ae129c5 Added Jacobians to AdvectionFlux. 2024-09-18 15:39:07 -07:00
Jan Nikl 7a824a4489 Optimized Burgers taking into account it has num_equations=1. 2024-09-18 15:39:07 -07:00
Jan Nikl f42b4d5789 Extended documentation in hyperbolic.hpp. 2024-09-18 15:39:07 -07:00
Jan Nikl 87638e3f26 Added JdotN to Burgers. 2024-09-18 15:39:07 -07:00
Jan Nikl 77095f5bc8 Moved the constructor of HyperbolicFormIntegrator to the top. 2024-09-18 15:32:47 -07:00
Jan Nikl c4d26dd313 Fixed dim of nor in HyperbolicFormIntegrator::AssembleFaceVector(). 2024-09-18 15:32:46 -07:00
Jan Nikl 093670e070 Fixed physical dshape dimension in HyperbolicFormIntegrator. 2024-09-18 15:32:46 -07:00
Jan Nikl 612e0777d8 Added gradient to HyperbolicFormIntegrator. 2024-09-18 15:32:46 -07:00
Jan Nikl e75359d87f Added optinal sign parameter to HyperbolicFormIntegrator. 2024-09-18 15:32:46 -07:00
Jan Nikl 78aea079ff Added Jacobian to BurgersFlux. 2024-09-18 15:32:46 -07:00
Jan Nikl 985b4c121e Added ComputeFluxJacobianDotN(). 2024-09-18 15:32:46 -07:00
Jan Nikl 07230f9d47 Improved documentation in hyperbolic.hpp. 2024-09-18 15:32:37 -07:00
Jan Nikl 3eacfe9d7e Changed allocation of flux in FluxFunction on-demand. 2024-09-18 14:12:42 -07:00
Ketan Mittal 98e0932f63 reviewer comments 2024-09-16 18:46:28 -07:00
Tzanio Kolev 7f6cbffd82 Merge branch 'master' into master 2024-09-16 08:53:05 -07:00
Andrew Ho f61629c5a5 Whitespace formatting from astyle 2024-09-13 18:02:16 -07:00
Andrew Ho b3fff9267a Moved Hypre::Finalize earlier in Device::~Device, only finalize HYPRE if it's been initialized.
Moving Hypre::Finalize earlier ensures that early return paths in
Device::~Device don't prevent Hypre::Finalize from executing.
2024-09-13 17:55:09 -07:00
Andrew Ho c253f00ddc Added ifdef guard for MFEM_USE_MPI
Hypre singleton doesn't exist otherwise
2024-09-13 12:16:54 -07:00
Andrew Ho cc43f03baa Merge branch 'mfem:master' into master 2024-09-13 11:57:52 -07:00
Andrew Ho cd5a72fabe Ensure that HYPRE is finalized inside the main function.
This fixes a bug where the Hypre singleton is currently cleaned up
after the main function returns, which causes errors with cleaning up
internal Cuda objects in HYPRE.
2024-09-13 11:52:06 -07:00
dylan-copeland f08544c863 Mac fix 2024-09-12 15:24:35 -07:00
Dylan Copeland 17929e4781 Scaled refinement in unit tests. 2024-09-12 14:10:50 -07:00
Dylan Copeland 37dd6b32d3 CHANGELOG 2024-09-12 13:00:40 -07:00
Dylan Copeland fd270b6c5f Merge branch 'master' of github.com:mfem/mfem into ncmesh-spacing 2024-09-12 12:16:56 -07:00
Dylan Copeland 910e840fda Documentation and minor fixes. 2024-09-12 12:15:06 -07:00
dylan-copeland 6194522f56 make clean 2024-09-11 12:28:52 -07:00
dylan-copeland 99cbad4040 Increase tolerance for single precision. 2024-09-11 12:05:37 -07:00
dylan-copeland fa7adc73eb Wshadow 2024-09-11 11:43:28 -07:00
dylan-copeland 7d3a46e95b Fix mac build. 2024-09-11 11:29:22 -07:00
Dylan Copeland 9bc55b81b4 Output of v1.1. Modified distance miniapp to do scaled AMR based on distance. 2024-09-11 11:11:43 -07:00
Dylan Copeland b541898594 Generalized for refinement of an element in more than 1 direction, with different spacings in each direction. 2024-09-10 13:15:40 -07:00
Mittal, Ketan 4a9f7f683d remove headers 2024-09-05 10:06:39 -07:00
Mittal, Ketan 9d89d1abef remove stopwatch timers 2024-09-05 10:05:59 -07:00
Mittal, Ketan 2ea08bacb4 make style 2024-09-04 09:24:48 -07:00
Hugh Carson b3ab618e6e Do not remove all internal boundaries if loading a periodic mesh 2024-09-04 10:48:38 -04:00
Ketan Mittal 66a2f5439d minor 2024-09-03 15:37:42 -07:00
Ketan Mittal 60326c575e minor fix, use edge/face mask only with thread 0, and remove bbox if block 2024-09-03 15:36:23 -07:00
Mittal, Ketan a9ae482df0 merge with master and resolve conflicts 2024-09-01 14:26:19 -07:00
Mittal, Ketan 04c7fa0f1c clean up code setting logic for points locally and on other ranks 2024-09-01 14:16:49 -07:00
Mittal, Ketan c65e6ad71c merge with master and resolve conflicts 2024-08-30 15:46:54 -07:00
Mittal, Ketan 8537c16f3d update miniapp to match original.. and add comments to kernel 2024-08-30 15:38:01 -07:00
Dylan Copeland 551c7a2a72 Fixed unit tests. 2024-08-29 20:04:20 -07:00
dylan-copeland 66981ac2fa Fix mac build. 2024-08-29 17:03:16 -07:00
Dylan Copeland 9b331b608d New NC mesh file format for scaling. 2024-08-29 16:40:24 -07:00
Dylan Copeland 11e2e7f039 Created a miniapp to demonstrate random 3:1 refinement in 2D and 3D. Reverted ex1. 2024-08-29 16:05:27 -07:00
Mittal, Ketan 9827a0f33e set gsl_mfem_elem 2024-08-27 08:56:32 -07:00
Mittal, Ketan eb6a485bc2 minor fix for L2 at element face 2024-08-26 17:38:43 -07:00
Mittal, Ketan 24532a295f automatically move data to host depending on field type 2024-08-26 14:10:51 -07:00
Mittal, Ketan 9ae249c2fc refactoring and renaming 2024-08-26 12:14:48 -07:00
Mittal, Ketan 312ed03ffd add way to randomize points in the mesh 2024-08-20 14:59:15 -07:00
Ketan Mittal 1b16534745 bug fix in new interpolation kernel and mapping in findpoints 2024-08-19 17:13:25 -07:00
Mittal, Ketan 81dcc8cdb1 dont need to map refpos for GPU version since it is done locally before communication during find now 2024-08-19 13:01:51 -07:00
Mittal, Ketan cfc96fa055 alternate kernel for interpolate using N^D threads 2024-08-19 09:52:09 -07:00
nbeams 8de4c778a6 Require C++17 if using Ginkgo 2024-08-15 20:07:19 +00:00
Mittal, Ketan 1c768998a4 rename functions and clean up 2024-08-14 14:18:55 -07:00
Mittal, Ketan a9f6fc53da get rid of some changes that were put in for surface meshes 2024-08-14 10:36:31 -07:00
Mittal, Ketan 3e967ff7b7 template interpolation kernel 2024-08-13 21:52:52 -07:00
Mittal, Ketan 1bd5b19ad4 fix shared memory array sizes 2024-08-13 13:45:51 -07:00
Mittal, Ketan b0971b1f80 rename and cosmetic changes 2024-08-13 11:27:17 -07:00
Mittal, Ketan 0284105a59 make style 2024-08-12 18:44:04 -07:00
Mittal, Ketan 5830a87b75 bring in changes from other branch 2024-08-12 18:43:53 -07:00
Dylan Copeland b062c59580 Debugged the 2D case and added 2D tests to ex1. 2024-07-17 18:30:30 -07:00
Dylan Copeland 1fce567e82 Fixed 3:1 refinement function by finding correct children in general. Added random test. 2024-07-16 23:23:57 -07:00
Dylan Copeland c06e6d6431 More bug fixes for special cases. 2024-07-16 14:47:55 -07:00
dylan-copeland 8fc7079174 Bug fix. 2024-07-16 11:14:24 -07:00
Dylan Copeland 5fe5e0068d Generalized spacing for forced refinements. 2024-07-15 21:24:42 -07:00
dylan-copeland 4e67781c2c Corrected node scaling with respect to orientation. 2024-07-06 12:29:11 -07:00
dylan-copeland 65daeaa533 Bug fix. 2024-07-05 21:13:24 -07:00
dylan-copeland 281c0182be Generalized to 3D. 2024-07-05 16:41:37 -07:00
Will Pazner f88486fda1 Use Mesh::meshgen directly in Mesh::GetTypicalElementGeometry 2024-06-26 13:20:58 -07:00
Will Pazner d8df6b8020 Add new overload of DGTraceIntegrator::GetRule
Also bring back old overload of DGDiffusionIntegrator::GetRule
2024-06-26 12:23:53 -07:00
dylan-copeland 061b6109a2 Added scale to mesh file format. Generalized TraverseEdge to use scale. 2024-06-25 16:03:48 -07:00
Will Pazner 1241960dc4 Merge remote-tracking branch 'origin/master' into pa-empty-partitions
# Conflicts:
#	fem/gridfunc.cpp
2024-06-24 10:16:56 -07:00
Dylan Copeland ee501168de Generalized NCMesh to use arbitrary relative spacing in refinement. 2024-06-21 19:37:19 -07:00
Will Pazner 4c96ebc652 Revert 'GetTypicalFE' changes in tmop-check-metric miniapp 2024-06-21 08:39:20 -07:00
Will Pazner 06f60e28d5 Revert 'GetTypicalFE' changes to KDTree 2024-06-21 08:37:12 -07:00
Mittal, Ketan 10705f397f [wip performace] minor + make style 2024-05-15 15:11:04 -07:00
Mittal, Ketan bbb78602a4 WIP analyze fpt kernel performance theoretical vs actual speed 2024-05-15 14:48:10 -07:00
Mittal, Ketan 040c5b2450 minor clean up and documentation 2024-05-08 15:30:39 -07:00
Mittal, Ketan 8e7428fbc3 Merge branch 'master' of https://github.com/mfem/mfem into gslib-findpts-device 2024-05-07 16:37:04 -07:00
Mittal, Ketan 5cda5516ff make style 2024-05-07 16:28:18 -07:00
Mittal, Ketan b0060c136d add leaner version of pfindpts 2024-05-07 11:55:55 -07:00
Mittal, Ketan 3d162b51a8 start miniapp for surface meshes 2024-05-02 12:03:28 -07:00
Mittal, Ketan 961882055b fix 2D bug for bounding box check 2024-05-01 21:15:37 -07:00
Will Pazner d86613219c Fix bug in SubMeshUtils::BuildVdofToVdofMap 2024-05-01 10:51:34 -07:00
Will Pazner 63f977d03f Use FiniteElementSpace::GetTypicalTraceElement throughout the PA code 2024-05-01 09:50:23 -07:00
Will Pazner ccccdf1736 Add FiniteElementSpace::GetTypicalTraceElement 2024-05-01 09:50:08 -07:00
Will Pazner 3b6c6ce6fb Variable order support in FiniteElementSpace::GetTraceElement 2024-05-01 09:49:55 -07:00
Will Pazner c768c5f579 Add FiniteElementCollection::GetTraceFE
This is a variable-order version of TraceFiniteElementForGeometry, analogous to
FiniteElementCollection::GetFE, which is a variable-order version of
FiniteElementForGeometry.
2024-05-01 09:49:34 -07:00
Mittal, Ketan 30091d6561 add sample run to getsubmesh 2024-04-24 14:45:21 -07:00
Mittal, Ketan c2722880b5 merge and resolve conflict 2024-04-24 14:44:28 -07:00
Mittal, Ketan 02def42421 add monitor for newton iterations and example to extract boundary meshes using submesh 2024-04-24 14:41:59 -07:00
Will Pazner 9aba2322fc Replace some instances of GetElementBaseGeometry(0) with m.GetTypicalElementGeometry 2024-04-23 14:45:30 -07:00
Will Pazner 4af8539ec3 Support empty partitions in FaceQuadratureSpace 2024-04-23 14:45:30 -07:00
Will Pazner a7eed94562 Replace many instances of GetFaceGeometry(0) with GetTypicalFaceGeometry() 2024-04-23 14:45:30 -07:00
Will Pazner ec535699d8 Change signature of DGDiffusionIntegrator::GetRule 2024-04-23 14:45:30 -07:00
Will Pazner 8184de5c57 Support Mesh::EnsureNodes with empty partitions and "legacy" nodal FEC 2024-04-23 14:45:30 -07:00
Will Pazner 54f6694c16 Add Mesh::GetTypicalFaceGeometry
Analogous to Mesh::GetTypicalElementGeometry
2024-04-23 14:45:30 -07:00
Will Pazner ef9043a122 Replace many instances of GetFE(0) with GetTypicalFE()
Also replace many instances of GetElementTransformation(0) with
GetTypicalElementTransformation() and instances of GetElementGeometry(0) with
GetTypicalElementGeometry().

Remove some "early returns" in PA code with empty partitions. The reasoning is
that the early returns create divergent code paths among different MPI ranks,
which can cause deadlocks if e.g. collectives are used in code paths on not all
ranks.
2024-04-23 14:45:30 -07:00
Will Pazner d3855adba0 Use "typical" mesh elements in mass and convection PA 2024-04-22 18:15:18 -07:00
Will Pazner a981a24dcc Add Mesh::GetTypicalElementTransformation 2024-04-22 18:14:39 -07:00
Will Pazner aab735263b Add Element::TypeFromGeometry 2024-04-22 18:14:24 -07:00
Veselin Dobrev 966143b0ce Some additions and tweaks to get ex14p to work with empty partitions 2024-04-22 17:35:14 -07:00
Ketan Mittal 01b3d0ae8b fix typo in get_edge 2024-03-26 17:11:40 -07:00
Mittal, Ketan ae862ca52d kernel with alternate implementation 2024-03-26 14:20:15 -07:00
Mittal, Ketan 051499f343 output bounding box mesh and add findpts kernel utilizing more threads 2024-03-26 13:37:51 -07:00
Ketan Mittal 98ee0c0047 use gsl_mesh for nodes 2024-03-19 12:01:27 -07:00
Mittal, Ketan d8a13d8da6 hash box test typo 2024-03-18 14:02:30 -07:00
Mittal, Ketan 87a9aa9f69 template kernel and minor refactoring 2024-03-18 13:12:42 -07:00
Ketan Mittal e315b66aeb minor - missing const specifier 2024-03-04 11:39:39 -08:00
Mittal, Ketan fb54c7c59a template 2D kernel and refactor loop over threads in 2D 2024-03-04 09:50:35 -08:00
Mittal, Ketan 72277751d7 copyright 2024-02-15 10:12:23 -08:00
Mittal, Ketan c5ae059755 minor 2024-02-15 10:10:41 -08:00
Ketan Mittal 56eded3dc3 fix bug in 2D 2024-02-13 15:02:22 -08:00
Mittal, Ketan 08a4ed8197 try2: restore max size for shared memory 2024-02-13 11:18:46 -08:00
Mittal, Ketan 7026c0eba2 restore max size for shared memory 2024-02-13 11:16:15 -08:00
Mittal, Ketan 650dec9528 minor refactor 2024-02-13 10:58:38 -08:00
Mittal, Ketan 1f2e93b391 Merge branch 'master' of https://github.com/mfem/mfem into gslib-findpts-device 2024-02-12 15:26:22 -08:00
Mittal, Ketan 9792e8dbdd working in 2D 2024-02-12 15:22:46 -08:00
Will Pazner 6e4baa3e4a Allow IterativeSolverMonitor to indicate early convergence 2024-01-04 14:13:50 -08:00
Ketan Mittal 0bf89c6b62 working on lassen 2023-12-01 17:30:20 -08:00
Mittal, Ketan cd01ff94f5 minor 2023-11-29 13:02:29 -08:00
Ketan Mittal ab1c6c8652 working on lassen 2023-11-28 21:06:10 -08:00
Mittal, Ketan 13032f8ee9 interpolate local and make style 2023-11-20 14:56:36 -08:00
Ketan Mittal 393277c410 minor changes to make it work on lassen 2023-11-20 14:55:53 -08:00
Mittal, Ketan 75dbd8dd14 Merge branch 'master' of https://github.com/mfem/mfem into gslib-findpts-device 2023-11-20 13:39:36 -08:00
Mittal, Ketan 9047821947 add timers 2023-11-20 13:39:21 -08:00
Mittal, Ketan a6fac7c19b minor 2023-11-07 13:03:24 -08:00
Mittal, Ketan 128c3f7d73 interp local 2023-11-07 12:56:22 -08:00
Mittal, Ketan 0bc03e1128 make style 2023-10-30 17:37:53 -07:00
Mittal, Ketan 21fb6bc10f remove use of static variables 2023-10-30 17:30:04 -07:00
Mittal, Ketan ae4acc54d8 initial implementation for findpoints-local 2023-10-30 17:01:39 -07:00
camierjs a280109316 Merge master in debug-device-test 2023-08-29 08:31:32 -07:00
Tzanio Kolev 9a8b604d84 Merge branch 'master' into debug-device-test 2023-06-04 13:33:52 -07:00
camierjs ff79851e88 Merge master in debug-device-test 2023-05-14 09:50:35 -07:00
camierjs 02311615b6 Merge master in debug-device-test 2023-05-08 14:31:45 -07:00
camierjs 63b872bc1a Merge master in debug-device-test 2023-05-04 08:57:00 -07:00
camierjs 9fc942016c Merge master in debug-device-test 2023-05-03 15:46:37 -07:00
camierjs fdb7de9df1 Merge master in debug-device-test 2023-04-18 13:31:02 -07:00
camierjs bccace6aae Merge master in debug-device-test 2023-04-18 10:37:34 -07:00
camierjs a49d1f4e97 Merge master in debug-device-test 2023-04-17 08:22:39 -07:00
camierjs 9bb956700e Avoid Windows inconsistent configuration with Catch signals 2023-04-14 10:52:12 -07:00
camierjs 4dbb958837 Merge master in debug-device-test 2023-04-14 10:23:42 -07:00
camierjs 85eea867fc Update with Linux vs. macOS specificities 2023-04-14 10:22:45 -07:00
camierjs a04705310c Update test_debug_device test unit with SIGBUS errors 2023-04-14 09:27:34 -07:00
Stowell, Mark L 6fa5a0b096 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev
# Conflicts:
#	fem/coefficient.cpp
#	fem/coefficient.hpp
2019-04-01 11:27:41 -07:00
Stowell, Mark L 3bd8349909 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-11-08 18:00:03 -08:00
Stowell, Mark L af82ee8560 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-10-20 12:18:07 -07:00
Stowell, Mark L 2ac542c720 Attempting to support 2D curl cleaning 2018-10-20 12:17:00 -07:00
Mark L. Stowell e6f828a5fe Attempting to add curl free projection... 2018-10-18 13:07:44 -07:00
Mark L. Stowell 4d756edd80 Adding DivergenceFree/Irrotational projectors for RT spaces 2018-10-18 10:29:50 -07:00
Stowell, Mark L cf5bd1f5cc make style 2018-10-18 00:17:32 -07:00
Stowell, Mark L 7173dd2002 Adding H1 diffusion solver 2018-10-18 00:16:56 -07:00
Stowell, Mark L 50182bf440 Adding perturbed elliptic case 2018-10-17 19:51:12 -07:00
Stowell, Mark L 24bfcc5165 Initializing a solution vector before solve 2018-10-17 10:20:38 -07:00
Stowell, Mark L 302f22f297 Switching to analytic evaluation of b vector field 2018-10-16 15:34:29 -07:00
Stowell, Mark L 1637fcd933 Adding argument to control lower bound of mesh size 2018-10-16 13:13:56 -07:00
Stowell, Mark L 2563506174 make style 2018-10-14 16:14:31 -07:00
Stowell, Mark L 60640c3f7e Adding computation of full thermal flux 2018-10-14 10:39:39 -07:00
Stowell, Mark L f221521203 make style 2018-10-14 10:12:37 -07:00
Stowell, Mark L 1d9e736af6 Adding a miniapp which solve for thermal flux in HDiv 2018-10-14 10:10:55 -07:00
Stowell, Mark L d80dbfd99a Adding flux computation 2018-10-10 16:46:17 -07:00
Stowell, Mark L 3f44043e60 Adding steady state anisotropic diffusion solver 2018-10-10 12:48:07 -07:00
Stowell, Mark L b218959bca Inserting the thermal flux solver 2018-10-03 10:33:45 -07:00
Stowell, Mark L aee7bc9d43 Adding first draft of hybrid diffusion solver 2018-10-01 16:14:53 -07:00
Stowell, Mark L 31cac320d4 Bugfix in activation of nonlinear solver 2018-10-01 15:08:15 -07:00
Stowell, Mark L e7e0fb0a88 Adding a specialized miniapp to duplicate results from the van Es papper 2018-09-30 21:47:54 -07:00
Stowell, Mark L ba71d13980 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-09-25 13:04:15 -07:00
Stowell, Mark L 5c326a5535 Fixing a typo in a comment 2018-09-25 13:02:39 -07:00
Stowell, Mark L 9457f7e5b6 Switching to nonlinear solver 2018-09-24 15:45:49 -07:00
Stowell, Mark L ff030ee970 Adding another time dependent test case 2018-09-24 12:45:36 -07:00
Stowell, Mark L 2be9e1f36c Adding a steady state solver to the thermal miniapps 2018-09-24 12:45:03 -07:00
Stowell, Mark L 7671cd9f36 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-09-16 13:17:34 -07:00
Stowell, Mark L f89a633fda make style 2018-09-14 14:41:13 -07:00
Stowell, Mark L 4ce1cef6b8 Adding SetOperator methods to HyprePCG, HypreGMRES, HypreDiagScale, and HypreParaSails 2018-09-14 14:34:13 -07:00
Stowell, Mark L c667bf3025 Fixing HypreGMRES::SetOperator method in the presence of a preconditioner 2018-09-14 13:47:29 -07:00
Stowell, Mark L e1678afe40 Using new HypreGMRES with SetOperator method 2018-09-10 16:46:25 -07:00
Stowell, Mark L c0291398ed Implementing HypreGMRES::SetOperator method 2018-09-10 16:45:59 -07:00
Stowell, Mark L 0b4f10d79d Debugging gradient check 2018-09-09 16:29:15 -07:00
Stowell, Mark L 8dfd0e1547 Adding NewtonSolver method to validate gradient 2018-09-09 16:28:18 -07:00
Stowell, Mark L caf239c99a Updating with time dependent source and exact solution 2018-09-09 00:39:58 -07:00
Stowell, Mark L 44c33aece0 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-09-08 23:59:16 -07:00
Stowell, Mark L ed49856390 Merge branch 'aniso-diffusion-dev' of github.com:mfem/mfem into aniso-diffusion-dev 2018-09-06 14:13:18 -07:00
Stowell, Mark L 4fef6ca298 make style 2018-09-06 14:12:28 -07:00
Stowell, Mark L d9d809e81c Adding "thermal" to miniapps subdirectories 2018-09-06 14:12:16 -07:00
Stowell, Mark L 51e85ccd84 Fixing nonlinear solve and applying 'make style' 2018-09-06 14:11:54 -07:00
Mark L. Stowell 4304159303 Merge branch 'aniso-diffusion-dev' of github.com:mfem/mfem into aniso-diffusion-dev 2018-09-05 16:56:05 -07:00
Stowell, Mark L 6276268e52 Retain zeros to maintain sparsity pattern 2018-09-05 16:54:59 -07:00
Mark L. Stowell 580ae34842 Retaining zeros to maintain sparsity pattern 2018-09-05 16:51:10 -07:00
Stowell, Mark L 97eaf8efbc Parallelizing the linear solves 2018-09-05 15:48:28 -07:00
Stowell, Mark L e6621c9b0c Parallel bug 2018-09-05 15:25:18 -07:00
Stowell, Mark L 461246f80e Adding a missing overload 2018-09-05 13:29:10 -07:00
Stowell, Mark L a5941ee72f Bugfix: reinitializing matrices before reassembling 2018-09-05 11:10:09 -07:00
Stowell, Mark L c4c2ceab59 Linear case now working 2018-09-05 10:15:17 -07:00
Stowell, Mark L 88b99a1719 Fixing vector dimension in vector grid functions 2018-09-05 10:14:52 -07:00
Stowell, Mark L 7aa7b4ee53 Adjusting initialization order so that vector size is known earlier 2018-09-03 11:19:27 -07:00
Stowell, Mark L bcf87fee29 Modifying VectorGridFunctionCoefs to accept NULL pointers 2018-09-03 11:06:32 -07:00
Stowell, Mark L 2949dc5a46 Adding makefile for miniapps/thermal 2018-09-03 10:48:11 -07:00
Stowell, Mark L b0dbadd007 Adding first draft of non-linear thermal diffusion solver 2018-09-03 10:19:34 -07:00
Stowell, Mark L 6ca1f95979 Adding scalar multiplication by a constant 2018-08-31 22:54:36 -07:00
Stowell, Mark L 39794585c4 Adding an Identity Matrix Coefficient 2018-08-31 16:50:02 -07:00
Stowell, Mark L 65a71259f1 Merge remote-tracking branch 'origin/elementwise-error-dev' into aniso-diffusion-dev 2018-08-31 16:49:37 -07:00
Stowell, Mark L 3f4e8324d4 Adding a coefficient which computes a unit vector field from a vector field 2018-08-29 14:26:29 -07:00
Stowell, Mark L 9fca398741 Adding ability to alter derived coefficients 2018-08-29 13:59:38 -07:00
Stowell, Mark L a2b8f7a129 Merge remote-tracking branch 'origin/master' into aniso-diffusion-dev 2018-08-29 09:28:15 -07:00
Stowell, Mark L a367631ce5 Adding various coefficients which are sums or products of other coefficients 2018-08-28 16:34:13 -07:00
Stowell, Mark L d7718f5c57 make style 2018-08-28 14:51:48 -07:00
Stowell, Mark L fe88c4685d Adding coefficients to compute div, grad, or curl of grid functions. 2018-08-28 14:24:15 -07:00
1016 changed files with 26430 additions and 3352 deletions
+22 -8
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -29,6 +29,10 @@ on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
HYPRE_ARCHIVE: v2.19.0.tar.gz
HYPRE_TOP_DIR: hypre-2.19.0
@@ -92,6 +96,7 @@ jobs:
build-system: cmake
hypre-target: int32
precision: fp64
config-opts: '-DCMAKE_INSTALL_PREFIX=../cmake-install'
# This option can be set to pass additional configuration options to
# the MFEM configuration command.
# config-opts: '-DCMAKE_VERBOSE_MAKEFILE=ON'
@@ -114,13 +119,6 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
# This external action allows to interrupt a workflow already running on
# the same branch to save resources.
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ github.token }}
# Fix 'No space left on device' errors for Ubuntu builds.
- name: Run Actions Cleaner
if: matrix.os == 'ubuntu-latest'
@@ -306,6 +304,22 @@ jobs:
ctest --rerun-failed --output-on-failure -C ${CTEST_CONFIG}
shell: bash
- name: make install
if: matrix.build-system == 'make'
run: |
cd ${{ env.MFEM_TOP_DIR }} && make install
- name: cmake install
if: matrix.build-system == 'cmake'
run: |
CONFIG="Release"
[[ ${{ matrix.target }} == 'dbg' ]] && CONFIG="Debug"
TARGET="install"
[[ ${{ matrix.os }} == 'windows-latest' ]] && TARGET="INSTALL"
cd ${{ env.MFEM_TOP_DIR }} && \
cmake --build build --target ${TARGET} --config ${CONFIG}
shell: bash
# Code coverage (process and upload reports)
- name: codecov
if: matrix.codecov == 'YES'
+4
View File
@@ -18,6 +18,10 @@ on:
# The branches below must be a subset of the branches above
branches: ["master"]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
analyze:
name: Analyze
+5 -6
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -22,6 +22,10 @@ on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
HYPRE_ARCHIVE: v2.19.0.tar.gz
HYPRE_TOP_DIR: hypre-2.19.0
@@ -34,11 +38,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ github.token }}
- name: checkout MFEM
uses: actions/checkout@v4
with:
+7 -14
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -22,22 +22,15 @@ on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
Serial:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- name: Temporary workaround for sanitizer crashes
# See https://github.com/actions/runner-images/issues/9491
# The issue should be fixed in the next runner image for Ubuntu 22.04,
# see https://github.com/actions/runner-images/pull/9513
run: sudo sysctl vm.mmap_rnd_bits=28
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ github.token }}
- name: MFEM Checkout
uses: actions/checkout@v4
with:
@@ -55,7 +48,7 @@ jobs:
build-system: make
library-only: false
config-options:
CXX="clang++-14"
CXX="clang++-18"
CXXFLAGS="-g -O1 -std=c++11
-fsanitize=address
-fno-omit-frame-pointer
+5 -6
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -19,6 +19,10 @@ on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
# This workflow is run on pushes to any branch in the MFEM repo (with or without
# PRs), as well as on updates to PRs from forks. In particular, we do not
# duplicate work by running on both pushes and updates to local PRs. We do that
@@ -33,11 +37,6 @@ jobs:
(github.event_name == 'push' ||
github.event.pull_request.head.repo.full_name != github.repository)
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ github.token }}
- name: checkout mfem
uses: actions/checkout@v4
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+11
View File
@@ -8,6 +8,7 @@
# Object and library files
*.o
*.o.tmp
/libmfem.*
/miniapps/common/libmfem-common.*
@@ -226,6 +227,7 @@ miniapps/meshing/extruder
miniapps/meshing/fit-node-position
miniapps/meshing/trimmer
miniapps/meshing/reflector
miniapps/meshing/ref321
miniapps/meshing/mesh-optimizer
miniapps/meshing/pmesh-optimizer
miniapps/meshing/pmesh-fitting
@@ -245,6 +247,8 @@ miniapps/meshing/shaper.mesh
miniapps/meshing/extruder.mesh
miniapps/meshing/trimmer.mesh
miniapps/meshing/reflected.mesh
miniapps/meshing/ref321.mesh
miniapps/meshing/sol.gf
miniapps/meshing/optimized*
miniapps/meshing/perturbed*
miniapps/meshing/polar-nc.mesh
@@ -339,6 +343,7 @@ miniapps/toys/rubik
miniapps/toys/snake
miniapps/toys/lissajous
miniapps/toys/mondrian
miniapps/toys/spiral
miniapps/toys/snake-init.mesh
miniapps/toys/snake-user.mesh
miniapps/toys/snake-joined.mesh
@@ -427,3 +432,9 @@ pkg.gitcommit
# Jupyter Notebook Checkpoints
.ipynb_checkpoints
# emacs tag file
TAGS
# vs code
.vscode
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+70
View File
@@ -12,6 +12,8 @@ Version 4.7.1 (development)
===========================
- Refactored ALGOIM cut integration rules. The interface is unified with
the interface for moment based cut integration rules.
- Altered (Par)GridFunction::Compute*Error functions to ensure they return
non-negative values and therefore behave as "norms".
Discretization improvements
---------------------------
@@ -22,11 +24,30 @@ Discretization improvements
- Added support for external boundary submeshes with nonconformal mesh adaptation.
- Added assembly of Jacobians to `HyperbolicFormIntegrator`.
- Added average fluxes to `NumericalFlux` (formerly `RiemannSolver`)
and `FluxFunction`.
- Added component-wise upwinded flux (`ComponentwiseUpwindFlux`).
- Added support for H(div) spaces in class QuadratureInterpolator. For now, only
(vector) VALUES, (vector) PHYSICAL_VALUES, and PHYSICAL_MAGNITUDES evaluations
are implemented. [PR #4669]
Meshing improvements
--------------------
- Added native AD support for numerous TMOP metrics that didn't have first or
second derivative implementations.
- The ExodusII reader now handles pyramid and wedge element types. Mixed meshes
are also supported.
- Added support for nonuniform anisotropic (nonconforming) mesh refinement with
arbitrary spacing in each direction, for quadrilateral (2D) and hexahedral
(3D) meshes. This enables in particular 3:1 refinement, as demonstrated in the
new meshing miniapp ref321.
New and updated examples and miniapps
-------------------------------------
- Added miniapps to demonstrate the H(div) and H(curl) NURBS elements.
@@ -34,6 +55,9 @@ New and updated examples and miniapps
- Added an MFEM example for the eikonal equation. This new solver is based on
the proximal Galerkin method introduced by Keith and Surowiec.
- Added a new toy miniapp that animates an interesting fidget spiral cone toy.
See miniapps/toys/spiral.cpp.
- Added a command line option to all miniapps (`-p` or `--send-port`) for
specifying the GLVis server socket port (19916 by default).
@@ -58,6 +82,13 @@ GPU computing
high-order transfer operators. New kernels can be offloaded as device
kernels. Example usage may be found in lor-transfer.cpp under miniapps/tools.
- Added support for GPU accelerated FindPointsGSLIB. Note that this will require
the users to switch from gslib v1.0.7 to v1.0.9.
- Allow BlockLowerTriangularPreconditioner to run on GPU.
- Use device vectors in GMRES, FGMRES and other iterative methods.
Miscellaneous
-------------
- Added support for SUNDIALS v7. See the section "API changes" for some small
@@ -75,10 +106,49 @@ Miscellaneous
- Added support for custom interpolation procedure in FindPointsGSLIB.
- `FiniteElementSpace` has new methods to directly set prolongation and
restriction operators to arbitrary sparse matrices.
- There are new convenience constructors for NURBS patches and knot vectors.
- Added convenience methods for manipulating boundary attribute marker arrays;
`(Par)Mesh::MarkExternalBoundaries`, `(Par)Mesh::UnmarkInternalBoundaries`,
`(Par)Mesh::MarkNamedBoundaries`, and `(Par)Mesh::UnmarkNamedBoundaries`.
See examples `ex1.cpp`, `ex1p.cpp`, and `ex11p.cpp` for basic usage.
- Added `(Par)Mesh::GetExteriorFaceMarker` for identifying faces on the
exterior of the mesh irrespective of their presence in the list of "boundary
elements".
- Added methods to `(Par)FiniteElementSpace` to identify all degrees of freedom
located on the exterior of the domain without reference to the list of
"boundary elements"; `GetExteriorVDofs` and `GetExteriorTrueDofs`.
- `LinearFormIntegrator` and `NonlinearFormIntegrator` (including
`BilinearFormIntegrator`) now all inherit from a base class `Integrator`
that combines some logic related to selecting quadrature rules. This includes
a virtual method `Integrator::GetDefaultIntegrationRule`, which should be
favored over directly defining a default integration rule in the element-level
assembly routines (although the latter is still possible, by leaving the new
virtual method as its default base implementation of returning `NULL`).
- Updated the benchmarks (in tests/benchmarks) to work with the latest Google
Benchmarks classes (version 1.9.1). Renamed the MFEM_ENABLE_GOOGLE_BENCHMARKS
CMake option to just MFEM_ENABLE_BENCHMARKS.
- Changed the name of `IterativeSolverMonitor` to `IterativeSolverController`
which now allows for declaring convergence by a user defined criterion. For
backward compatibility, the old name is still available.
API changes
-----------
- API change: 'TMOP_Metric_skew2D' has been marked as deprecated.
- API change: in class GridFunction, 'fec' was renamed to 'fec_owned'.
- API change: `RiemannSolver` was renamed to `NumericalFlux` (the old name has
been been deprecated through typedef)
- API change: support for SUNDIALS v7:
* the SUNDIALS types `realtype` and `booleantype` are no longer defined by v7
and therefore MFEM now uses the new type names `sunrealtype` and
+58 -32
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -87,13 +87,16 @@ if (MFEM_USE_STRUMPACK OR MFEM_USE_MUMPS)
# Just needed to find the MPI_Fortran libraries to link with
set(XSDK_ENABLE_Fortran ON)
endif()
# SUNDIALS, STRUMPACK, Ginkgo, Tribol, RAJA and Umpire require C++14:
if ((MFEM_USE_SUNDIALS OR
MFEM_USE_STRUMPACK OR
MFEM_USE_GINKGO OR
MFEM_USE_TRIBOL OR
MFEM_USE_RAJA OR
MFEM_USE_UMPIRE) AND
# Ginkgo requires C++17:
if ((MFEM_USE_GINKGO) AND ("${CMAKE_CXX_STANDARD}" LESS "17"))
set(CMAKE_CXX_STANDARD 17 CACHE STRING "C++ standard to use." FORCE)
# Google Benchmark, SUNDIALS, STRUMPACK, Tribol, RAJA and Umpire require C++14:
elseif ((MFEM_USE_BENCHMARK OR
MFEM_USE_SUNDIALS OR
MFEM_USE_STRUMPACK OR
MFEM_USE_TRIBOL OR
MFEM_USE_RAJA OR
MFEM_USE_UMPIRE) AND
("${CMAKE_CXX_STANDARD}" LESS "14"))
set(CMAKE_CXX_STANDARD 14 CACHE STRING "C++ standard to use." FORCE)
endif()
@@ -618,15 +621,37 @@ set(MASTER_HEADERS
${PROJECT_SOURCE_DIR}/mfem.hpp
${PROJECT_SOURCE_DIR}/mfem-performance.hpp)
set(_lib_path "${CMAKE_INSTALL_PREFIX}/lib")
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH ON CACHE BOOL "")
set(CMAKE_INSTALL_RPATH "${_lib_path}" CACHE PATH "")
set(CMAKE_INSTALL_NAME_DIR "${_lib_path}" CACHE PATH "")
# Installation options (we use GNUInstallDirs but prefer lib by default)
set(MFEM_USE_GNUINSTALLDIRS OFF CACHE BOOL
"Use CMAKE_INSTALL_LIBDIR as defined by the GNUInstallDirs CMake module.")
if (NOT MFEM_USE_GNUINSTALLDIRS)
mfem_cache_path(CMAKE_INSTALL_LIBDIR "lib" "Object code libraries (lib)")
endif()
include(GNUInstallDirs)
mfem_cache_path(INSTALL_INCLUDE_DIR "${CMAKE_INSTALL_INCLUDEDIR}"
"Relative or absolute path for installing header files.")
mfem_cache_path(INSTALL_BIN_DIR "${CMAKE_INSTALL_BINDIR}"
"Relative or absolute path for installing the binaries.")
mfem_cache_path(INSTALL_LIB_DIR "${CMAKE_INSTALL_LIBDIR}"
"Relative or absolute path for installing the library.")
mfem_cache_path(INSTALL_SHARE_DIR "${CMAKE_INSTALL_DATAROOTDIR}"
"Relative or absolute path for installing shared data.")
# other options: "share/mfem/cmake", "lib/mfem/cmake"
mfem_cache_path(INSTALL_CMAKE_DIR "${INSTALL_LIB_DIR}/cmake/mfem"
"Relative or absolute path for installing cmake config files.")
set(MFEM_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH
"The MFEM source directory" FORCE)
set(MFEM_INSTALL_DIR ${CMAKE_INSTALL_PREFIX} CACHE PATH
"The MFEM install directory" FORCE)
mfem_path_to_fullpath("${INSTALL_LIB_DIR}" "${CMAKE_INSTALL_PREFIX}" _lib_path)
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH ON CACHE BOOL "")
if(NOT DEFINED CMAKE_INSTALL_RPATH)
set(CMAKE_INSTALL_RPATH "${_lib_path}")
endif()
if(NOT DEFINED CMAKE_INSTALL_NAME_DIR)
set(CMAKE_INSTALL_NAME_DIR "${_lib_path}")
endif()
# Variables used when generating _config.hpp, and config.mk
set(MFEM_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(MFEM_INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
# Declaring the library
mfem_add_library(mfem ${SOURCES} ${HEADERS} ${MASTER_HEADERS})
@@ -722,11 +747,17 @@ if (MFEM_ENABLE_TESTING)
add_mfem_target(${MFEM_ALL_TESTS_TARGET_NAME} OFF)
add_subdirectory(tests EXCLUDE_FROM_ALL)
# Create a target for all benchmarks and, optionally, enable it.
set(MFEM_ALL_BENCHMARKS_TARGET_NAME benchmarks)
add_mfem_target(${MFEM_ALL_BENCHMARKS_TARGET_NAME}
${MFEM_ENABLE_GOOGLE_BENCHMARKS})
add_subdirectory(tests/benchmarks EXCLUDE_FROM_ALL)
if (MFEM_USE_BENCHMARK)
# Create a target for all benchmarks and, optionally, enable it.
set(MFEM_ALL_BENCHMARKS_TARGET_NAME benchmarks)
add_mfem_target(${MFEM_ALL_BENCHMARKS_TARGET_NAME}
${MFEM_ENABLE_BENCHMARKS})
if (MFEM_ENABLE_BENCHMARKS)
add_subdirectory(tests/benchmarks) #install benchmarks if enabled
else()
add_subdirectory(tests/benchmarks EXCLUDE_FROM_ALL)
endif()
endif()
endif()
# Define a target that all examples and miniapps will depend on.
@@ -745,7 +776,11 @@ endif()
# Create a target for all miniapps and, optionally, enable it.
set(MFEM_ALL_MINIAPPS_TARGET_NAME miniapps)
add_mfem_target(${MFEM_ALL_MINIAPPS_TARGET_NAME} ${MFEM_ENABLE_MINIAPPS})
add_subdirectory(miniapps EXCLUDE_FROM_ALL)
if (MFEM_ENABLE_MINIAPPS)
add_subdirectory(miniapps) #install miniapps if enabled
else()
add_subdirectory(miniapps EXCLUDE_FROM_ALL)
endif()
# Target to build all executables, i.e. everything.
add_custom_target(exec)
@@ -795,15 +830,6 @@ add_subdirectory(doc)
#-------------------------------------------------------------------------------
message(STATUS "CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}")
set(INSTALL_INCLUDE_DIR include
CACHE PATH "Relative path for installing header files.")
set(INSTALL_BIN_DIR bin
CACHE PATH "Relative path for installing the binaries.")
set(INSTALL_LIB_DIR lib
CACHE PATH "Relative path for installing the library.")
# other options: "share/mfem/cmake", "lib/mfem/cmake"
set(INSTALL_CMAKE_DIR lib/cmake/mfem
CACHE PATH "Relative path for installing cmake config files.")
target_include_directories(mfem BEFORE
PUBLIC
@@ -828,7 +854,7 @@ foreach(Header mfem.hpp mfem-performance.hpp)
endforeach()
install(FILES ${MASTER_HEADERS} DESTINATION ${INSTALL_INCLUDE_DIR}/mfem)
# Install the headers; currently, the miniapps headers are excluded
# Install the headers (except common miniapp which is installed from its subdir)
install(DIRECTORY ${MFEM_SOURCE_DIRS}
DESTINATION ${INSTALL_INCLUDE_DIR}/mfem
FILES_MATCHING PATTERN "*.hpp")
+27 -13
View File
@@ -220,9 +220,10 @@ An optional installation of the library and the headers can be performed with
make install [PREFIX=<dir>]
The library will be installed in $(PREFIX)/lib, the headers in
$(PREFIX)/include, and the configuration makefile (config.mk) in
$(PREFIX)/share/mfem. The PREFIX option can also be set during configuration.
The library will be installed in ${PREFIX}/lib, the headers in
${PREFIX}/include, and the configuration and testing makefiles (config.mk and
test.mk) in ${PREFIX}/share/mfem. The PREFIX option can also be set during
configuration.
Information about the current build configuration can be viewed using
@@ -271,8 +272,9 @@ Build options:
Installation options:
PREFIX - Specify the installation directory. The library (libmfem.a) will be
installed in $(PREFIX)/lib, the headers in $(PREFIX)/include, and
the configuration makefile (config.mk) in $(PREFIX)/share/mfem.
installed in ${PREFIX}/lib, the headers in ${PREFIX}/include, and
the configuration and testing makefiles (config.mk and test.mk) in
${PREFIX}/share/mfem.
INSTALL - Specify the install program, default = /usr/bin/install
INSTALL_DEF_PERM - Specify the default install permissions. This affects
headers and configuration makefiles, default = 644
@@ -702,12 +704,12 @@ The specific libraries and their options are:
Versions: STRUMPACK >= 3.0.0.
- Ginkgo (optional), used when MFEM_USE_GINKGO = YES. Note that Ginkgo needs a
C++ compiler that supports the C++-14 standard. For additional requirements
C++ compiler that supports the C++-17 standard. For additional requirements
and dependencies of specific modules, see the Ginkgo webpage below.
URL: https://ginkgo-project.github.io
Options: GINKGO_OPT, GINKGO_LIB, GINKGO_DIR, GINKGO_BUILD_TYPE (Release or
Debug).
Versions: Ginkgo >= 1.4.0.
Versions: Ginkgo >= 1.9.0.
- AmgX (optional), used when MFEM_USE_AMGX = YES.
URL: https://github.com/NVIDIA/AMGX
@@ -791,14 +793,14 @@ The specific libraries and their options are:
Versions: 1.9.3
- GSLIB (optional), used when MFEM_USE_GSLIB = YES. The gslib library must be
built prior to the MFEM build, as follows: download gslib-1.0.7, untar it at
the same level as MFEM and create a symbolic link: "ln -s gslib-1.0.7 gslib".
built prior to the MFEM build, as follows: download gslib-1.0.9, untar it at
the same level as MFEM and create a symbolic link: "ln -s gslib-1.0.9 gslib".
Build gslib in parallel or in serial based on the desired MFEM build: "make
clean; make CC=mpicc" or "make clean; make CC=gcc MPI=0". Build MFEM with
MFEM_USE_GSLIB=YES.
URL: https://github.com/gslib/gslib/archive/v1.0.7.tar.gz
URL: https://github.com/gslib/gslib/archive/v1.0.9.tar.gz
Options: GSLIB_OPT, GSLIB_LIB.
Versions: GSLIB >= 1.0.7.
Versions: GSLIB >= 1.0.9.
- ALGOIM (optional), used when MFEM_USE_ALGOIM=YES. The library provides only
headers so it just needs to be downloaded at the same level as MFEM. Download
@@ -980,8 +982,20 @@ or
cmake --build . --config Release --target install [Xcode]
cmake --build . --config Release --target INSTALL [Visual Studio]
The library will be installed in <PREFIX>/lib, the headers in <PREFIX>/include,
and the configuration CMake files in <PREFIX>/lib/cmake/mfem.
By default, the library will be installed in ${CMAKE_INSTALL_PREFIX}/lib, the
headers in ${CMAKE_INSTALL_PREFIX}/include, the configuration CMake files in
${CMAKE_INSTALL_PREFIX}/lib/cmake/mfem, and the configuration and testing GNU
make files in ${CMAKE_INSTALL_PREFIX}/share/mfem. For fine-tuning the
installation directories the following variables can be used:
INSTALL_INCLUDE_DIR, INSTALL_LIB_DIR, INSTALL_BIN_DIR (e.g. for dll files on
Windows), INSTALL_SHARE_DIR, and INSTALL_CMAKE_DIR; alternatively, with lower
precedence, the CMake GNUInstallDirs variables can also be used:
CMAKE_INSTALL_INCLUDEDIR, CMAKE_INSTALL_LIBDIR, CMAKE_INSTALL_BINDIR and
CMAKE_INSTALL_DATAROOTDIR. Note that the default for INSTALL_LIB_DIR and
CMAKE_INSTALL_LIBDIR is lib. This is in contrast to the default behavior for
GNUInstallDirs, which defines a platform-dependent default value for
CMAKE_INSTALL_LIBDIR (lib or lib64 or lib/<multiarch-tuple> on Debian). To
restore this behavior, the user can set MFEM_USE_GNUINSTALLDIRS=YES.
Configuration variables (CMake)
+1 -1
View File
@@ -1,6 +1,6 @@
BSD 3-Clause License
Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC
Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC
All rights reserved.
Redistribution and use in source and binary forms, with or without
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+2 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -50,6 +50,7 @@ set(MFEM_USE_FMS @MFEM_USE_FMS@)
set(MFEM_USE_CONDUIT @MFEM_USE_CONDUIT@)
set(MFEM_USE_PUMI @MFEM_USE_PUMI@)
set(MFEM_USE_CUDA @MFEM_USE_CUDA@)
set(MFEM_USE_HIP @MFEM_USE_HIP@)
set(MFEM_USE_OCCA @MFEM_USE_OCCA@)
set(MFEM_USE_RAJA @MFEM_USE_RAJA@)
set(MFEM_USE_CEED @MFEM_USE_CEED@)
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -117,8 +117,8 @@ macro (MULTIPASS_SOURCE_RUNS includes libraries source runs language)
math (EXPR _tmp "${MULTIPASS_TEST_COUNT} + 1") # Why can't I add to a cache variable?
set (MULTIPASS_TEST_COUNT ${_tmp} CACHE INTERNAL "Unique test ID")
set (testname MULTIPASS_TEST_${MULTIPASS_TEST_COUNT}_${runs})
set (CMAKE_REQUIRED_INCLUDES ${includes})
set (CMAKE_REQUIRED_LIBRARIES ${libraries})
set (CMAKE_REQUIRED_INCLUDES ${includes} ${MPI_${language}_INCLUDE_PATH})
set (CMAKE_REQUIRED_LIBRARIES ${libraries} ${MPI_${language}_LIBRARIES})
if(${language} STREQUAL "C")
check_c_source_runs ("${source}" ${testname})
elseif(${language} STREQUAL "CXX")
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+2 -2
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -14,7 +14,7 @@
# - SLEPC_INCLUDE_DIRS
# - SLEPC_LIBRARIES
set(SLEPc_REQUIRED_PACKAGES "PETSC" CACHE STRING
set(SLEPc_REQUIRED_PACKAGES "PETSC" "MPI" CACHE STRING
"Additional packages required by SLEPc")
include(MfemCmakeUtilities)
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+47 -6
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -138,6 +138,8 @@ macro(add_mfem_miniapp MFEM_EXE_NAME)
# Actually add the executable
mfem_add_executable(${MFEM_EXE_NAME} ${MAIN_LIST}
${EXTRA_SOURCES_LIST} ${EXTRA_HEADERS_LIST})
install(TARGETS ${MFEM_EXE_NAME}
RUNTIME DESTINATION miniapps)
add_dependencies(${MFEM_ALL_MINIAPPS_TARGET_NAME} ${MFEM_EXE_NAME})
add_dependencies(${MFEM_EXE_NAME} ${MFEM_EXEC_PREREQUISITES_TARGET_NAME})
@@ -825,6 +827,20 @@ function(mfem_get_target_options Target CompileOptsVar LinkOptsVar)
endfunction(mfem_get_target_options)
#
# If ${Path} is not an absolute path, assign ${Prefix}/${Path} to the variable
# ${OutVar}. If ${Path} is an absolute path, assign ${Path} to the variable
# ${OutVar}.
#
function(mfem_path_to_fullpath Path Prefix OutVar)
if(IS_ABSOLUTE "${Path}")
set(${OutVar} "${Path}" PARENT_SCOPE)
else()
set(${OutVar} "${Prefix}/${Path}" PARENT_SCOPE)
endif()
endfunction()
#
# Function that creates 'config.mk' from 'config.mk.in' for the both the
# build- and the install-locations and define install rules for 'config.mk'
@@ -991,9 +1007,12 @@ function(mfem_export_mk_files)
"${PROJECT_BINARY_DIR}/config/test.mk" COPYONLY)
# Update variables for the install-tree version of 'config.mk'
set(MFEM_INC_DIR "${CMAKE_INSTALL_PREFIX}/include")
set(MFEM_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib")
set(MFEM_TEST_MK "${CMAKE_INSTALL_PREFIX}/share/mfem/test.mk")
mfem_path_to_fullpath(
"${INSTALL_INCLUDE_DIR}" "${CMAKE_INSTALL_PREFIX}" MFEM_INC_DIR)
mfem_path_to_fullpath(
"${INSTALL_LIB_DIR}" "${CMAKE_INSTALL_PREFIX}" MFEM_LIB_DIR)
mfem_path_to_fullpath(
"${INSTALL_SHARE_DIR}/mfem/test.mk" "${CMAKE_INSTALL_PREFIX}" MFEM_TEST_MK)
set(MFEM_CONFIG_EXTRA "")
# Create the install-tree version of 'config.mk'
@@ -1003,8 +1022,30 @@ function(mfem_export_mk_files)
# Install rules for 'config.mk' and 'test.mk'
install(FILES ${PROJECT_SOURCE_DIR}/config/test.mk
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/mfem/)
DESTINATION ${INSTALL_SHARE_DIR}/mfem/)
install(FILES ${PROJECT_BINARY_DIR}/config/config-install.mk
DESTINATION ${CMAKE_INSTALL_PREFIX}/share/mfem/ RENAME config.mk)
DESTINATION ${INSTALL_SHARE_DIR}/mfem/
RENAME config.mk)
endfunction()
#
# Function similar to the macro _GNUInstallDirs_cache_path from the module
# GNUInstallDirs. Used to process variables like INSTALL_LIB_DIR if they are
# set on the cmake command line without specifying type: -DINSTALL_LIB_DIR=lib.
# Without this special treatment, relative paths are expanded to full paths
# and we want to avoid that.
#
function(mfem_cache_path PathVar DefaultPath HelpStr)
if(NOT DEFINED ${PathVar})
set(${PathVar} "${DefaultPath}" CACHE PATH "${HelpStr}")
endif()
get_property(cache_type CACHE ${PathVar} PROPERTY TYPE)
if(cache_type STREQUAL "UNINITIALIZED")
file(TO_CMAKE_PATH "${${PathVar}}" cmakepath)
set_property(CACHE ${PathVar} PROPERTY TYPE PATH)
set_property(CACHE ${PathVar} PROPERTY VALUE "${cmakepath}")
set_property(CACHE ${PathVar} PROPERTY HELPSTRING "${HelpStr}")
endif()
endfunction()
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+2 -2
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -86,7 +86,7 @@ set(MFEM_MPI_NP 4 CACHE STRING "Number of processes used for MPI tests")
option(MFEM_ENABLE_TESTING "Enable the ctest framework for testing" ON)
option(MFEM_ENABLE_EXAMPLES "Build all of the examples" OFF)
option(MFEM_ENABLE_MINIAPPS "Build all of the miniapps" OFF)
option(MFEM_ENABLE_GOOGLE_BENCHMARKS "Build all of the Google benchmarks" OFF)
option(MFEM_ENABLE_BENCHMARKS "Build all of the benchmarks" OFF)
# Setting CXX/MPICXX on the command line or in user.cmake will overwrite the
# autodetected C++ compiler.
+10 -20
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -271,10 +271,6 @@ POSIX_CLOCKS_LIB = -lrt
# For sundials_nvecmpiplusx and nvecparallel remember to build with MPI_ENABLE=ON
# and modify cmake variables for hypre for sundials
SUNDIALS_DIR = @MFEM_DIR@/../sundials-5.0.0/instdir
# SUNDIALS >= 6.4.0 requires C++14:
ifeq ($(MFEM_USE_SUNDIALS),YES)
BASE_FLAGS = -std=c++14
endif
SUNDIALS_OPT = -I$(SUNDIALS_DIR)/include
SUNDIALS_LIB = $(XLINKER)-rpath,$(SUNDIALS_DIR)/lib64\
$(XLINKER)-rpath,$(SUNDIALS_DIR)/lib\
@@ -353,9 +349,6 @@ MUMPS_LIB += -lmumps_common -lpord $(SCALAPACK_LIB) $(LAPACK_LIB) $(MPI_FORTRAN_
# STRUMPACK library configuration
STRUMPACK_DIR = @MFEM_DIR@/../STRUMPACK-build
ifeq ($(MFEM_USE_STRUMPACK),YES)
BASE_FLAGS = -std=c++14
endif
STRUMPACK_OPT = -I$(STRUMPACK_DIR)/include $(SCOTCH_OPT)
# If STRUMPACK was build with OpenMP support, the following may be need:
# STRUMPACK_OPT += $(OPENMP_OPT)
@@ -366,9 +359,6 @@ STRUMPACK_LIB = -L$(STRUMPACK_DIR)/lib -lstrumpack $(MPI_FORTRAN_LIB)\
GINKGO_DIR = @MFEM_DIR@/../ginkgo/install
GINKGO_SEARCH_DIR = $(subst @MFEM_DIR@,$(MFEM_DIR),$(GINKGO_DIR))
GINKGO_BUILD_TYPE=Release
ifeq ($(MFEM_USE_GINKGO),YES)
BASE_FLAGS = -std=c++14
endif
GINKGO_OPT = -isystem $(GINKGO_DIR)/include
GINKGO_LIB_DIR = $(sort $(dir $(wildcard\
$(GINKGO_SEARCH_DIR)/lib*/libginkgo*.a\
@@ -562,9 +552,6 @@ CEED_OPT = -I$(CEED_DIR)/include
CEED_LIB = $(XLINKER)-rpath,$(CEED_DIR)/lib -L$(CEED_DIR)/lib -lceed
# RAJA library configuration
ifeq ($(MFEM_USE_RAJA),YES)
BASE_FLAGS = -std=c++14
endif
RAJA_DIR = @MFEM_DIR@/../raja
RAJA_OPT = -I$(RAJA_DIR)/include
ifdef CUB_DIR
@@ -579,9 +566,6 @@ endif
RAJA_LIB = $(XLINKER)-rpath,$(RAJA_DIR)/lib -L$(RAJA_DIR)/lib -lRAJA $(CAMP_LIB)
# UMPIRE library configuration
ifeq ($(MFEM_USE_UMPIRE),YES)
BASE_FLAGS = -std=c++14
endif
UMPIRE_DIR = @MFEM_DIR@/../umpire
UMPIRE_OPT = -I$(UMPIRE_DIR)/include $(if $(CAMP_DIR), -I$(CAMP_DIR)/include)
UMPIRE_LIB = -L$(UMPIRE_DIR)/lib -lumpire $(CAMP_LIB)
@@ -609,9 +593,6 @@ PARELAG_OPT = -I$(PARELAG_DIR)/src -I$(PARELAG_DIR)/build/src
PARELAG_LIB = -L$(PARELAG_DIR)/build/src -lParELAG
# Tribol library configuration
ifeq ($(MFEM_USE_TRIBOL),YES)
BASE_FLAGS = -std=c++14
endif
AXOM_DIR = @MFEM_DIR@/../axom
TRIBOL_DIR = @MFEM_DIR@/../tribol
TRIBOL_OPT = -I$(TRIBOL_DIR)/include -I$(AXOM_DIR)/include
@@ -634,6 +615,15 @@ ENZYME_VERSION ?= 14
ENZYME_OPT = -fno-experimental-new-pass-manager -Xclang -load -Xclang $(ENZYME_DIR)/ClangEnzyme-$(ENZYME_VERSION).so
ENZYME_LIB = ""
# Google Benchmark, SUNDIALS >= 6.4.0, STRUMPACK, RAJA, UMPIRE, and Tribol require C++14:
ifneq ($(filter YES,$(MFEM_USE_BENCHMARK) $(MFEM_USE_SUNDIALS) $(MFEM_USE_STRUMPACK) $(MFEM_USE_RAJA) $(MFEM_USE_UMPIRE) $(MFEM_USE_TRIBOL)),)
BASE_FLAGS = -std=c++14
endif
# Ginkgo requires C++17:
ifeq ($(MFEM_USE_GINKGO),YES)
BASE_FLAGS = -std=c++17
endif
# If YES, enable some informational messages
VERBOSE = NO
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+3 -3
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -36,8 +36,8 @@ cd $(git rev-parse --show-toplevel)
# copyright check
copyright=true
if [[ "${option}" == "--copyright" || "${option}" == "" ]]; then
if git grep -n "^\(#\|//\).*Copyright.*2010-20\(2[^4]\|[^2].\)" > matches.txt; then
echo "Please update the following files to Copyright (c) 2010-2024:"
if git grep -n "^\(#\|//\).*Copyright.*2010-20\(2[^5]\|[^2].\)" > matches.txt; then
echo "Please update the following files to Copyright (c) 2010-2025:"
cat matches.txt
copyright=false
fi
+3 -2
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
@@ -110,4 +110,5 @@ config-mk:
clean:
rm -f $(CONFIG_HPP) $(CONFIG_MK) sample-runs-build.log
rm -f $(GHV) $(GHV).out $(GMV) $(GMV).out *.dSYM
rm -f $(GHV) $(GHV).out $(GMV) $(GMV).out
rm -rf *.dSYM
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+1 -1
View File
@@ -1,4 +1,4 @@
# Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
# Copyright (c) 2010-2025, Lawrence Livermore National Security, LLC. Produced
# at the Lawrence Livermore National Laboratory. All Rights reserved. See files
# LICENSE and NOTICE for details. LLNL-CODE-806117.
#
+8 -3
View File
@@ -163,13 +163,18 @@ int main(int argc, char *argv[])
// 6. Determine the list of true (i.e. conforming) essential boundary dofs.
// In this example, the boundary conditions are defined by marking all
// the boundary attributes from the mesh as essential (Dirichlet) and
// converting them to a list of true dofs.
// the external boundary attributes from the mesh as essential (Dirichlet)
// and converting them to a list of true dofs.
Array<int> ess_tdof_list;
if (mesh.bdr_attributes.Size())
{
Array<int> ess_bdr(mesh.bdr_attributes.Max());
ess_bdr = 1;
ess_bdr = 0;
// Apply boundary conditions on all external boundaries:
mesh.MarkExternalBoundaries(ess_bdr);
// Boundary conditions can also be applied based on named attributes:
// mesh.MarkNamedBoundaries(set_name, ess_bdr)
fespace.GetEssentialTrueDofs(ess_bdr, ess_tdof_list);
}
+5 -1
View File
@@ -192,7 +192,11 @@ int main(int argc, char *argv[])
if (pmesh->bdr_attributes.Size())
{
ess_bdr.SetSize(pmesh->bdr_attributes.Max());
ess_bdr = 1;
ess_bdr = 0;
// Apply boundary conditions on all external boundaries:
pmesh->MarkExternalBoundaries(ess_bdr);
// Boundary conditions can also be applied based on named attributes:
// pmesh->MarkNamedBoundaries(set_name, ess_bdr)
}
ParBilinearForm *a = new ParBilinearForm(fespace);
+1 -1
View File
@@ -59,7 +59,7 @@ private:
void GeneralResidualMonitor::MonitorResidual(int it, real_t norm,
const Vector &r, bool final)
{
if (print_level == 1 || (print_level == 3 && (final || it == 0)))
if ((print_level == 1 && !final) || (print_level == 3 && (final || it == 0)))
{
mfem::out << prefix << " iteration " << setw(2) << it
<< " : ||r|| = " << norm;
+1 -1
View File
@@ -73,7 +73,7 @@ private:
void GeneralResidualMonitor::MonitorResidual(int it, real_t norm,
const Vector &r, bool final)
{
if (print_level == 1 || (print_level == 3 && (final || it == 0)))
if ((print_level == 1 && !final) || (print_level == 3 && (final || it == 0)))
{
mfem::out << prefix << " iteration " << setw(2) << it
<< " : ||r|| = " << norm;
+8 -3
View File
@@ -190,13 +190,18 @@ int main(int argc, char *argv[])
// 8. Determine the list of true (i.e. parallel conforming) essential
// boundary dofs. In this example, the boundary conditions are defined
// by marking all the boundary attributes from the mesh as essential
// (Dirichlet) and converting them to a list of true dofs.
// by marking all the external boundary attributes from the mesh as
// essential (Dirichlet) and converting them to a list of true dofs.
Array<int> ess_tdof_list;
if (pmesh.bdr_attributes.Size())
{
Array<int> ess_bdr(pmesh.bdr_attributes.Max());
ess_bdr = 1;
ess_bdr = 0;
// Apply boundary conditions on all external boundaries:
pmesh.MarkExternalBoundaries(ess_bdr);
// Boundary conditions can also be applied based on named attributes:
// pmesh.MarkNamedBoundaries(set_name, ess_bdr)
fespace.GetEssentialTrueDofs(ess_bdr, ess_tdof_list);
}
+1 -1
View File
@@ -206,7 +206,7 @@ int main(int argc, char *argv[])
// 7. Set up the linear form b(.) which corresponds to the right-hand side of
// the FEM linear system.
ComplexLinearForm b(fespace, conv);
b.Vector::operator=(0.0);
b = 0.0;
// 8. Define the solution vector u as a complex finite element grid function
// corresponding to fespace. Initialize u with initial guess of 1+0i or

Some files were not shown because too many files have changed in this diff Show More