Dylan Copeland
afded067a7
Replace absdof.
2026-02-24 11:17:54 -08:00
Will Pazner
16f1935531
Fix alias memory bug in GetLVectorFaceNbrData
...
gf.ExchangeFaceNbrData() may change the pointer validity of the underlying
(aliased) vector, and so the base vector's flags need to be synced.
2025-08-08 10:37:24 -07:00
Will Pazner
3474158bf6
Consistent naming of gather and scatter in L2InterfaceFaceRestriction
2025-08-08 10:37:24 -07:00
Will Pazner
4a5ae97be5
Support nonconforming meshes in L2InterfaceFaceRestriction
2025-08-08 10:37:24 -07:00
Will Pazner
c0fe8c599b
Handle AMR faces in L2InterfaceFaceRestriction
2025-08-08 10:37:24 -07:00
Will Pazner
7cda1566e2
Support AMR meshes in NormalTraceJumpIntegrator::AssembleEAInteriorFaces
...
Handle map type INTEGRAL in InterpolationManager.
For point matrices corresponding to non-conforming faces, the Jacobian may be
inverted.
2025-08-08 10:37:24 -07:00
Will Pazner
e83191f54e
In InterpolationManager::GetCoarseToFineInterpolation, don't flip point matrix
...
Flipping the point matrix causes negative Jacobians. Instead, reverse row
indices of the interpolation matrix.
2025-08-08 10:37:24 -07:00
Will Pazner
985dfe2749
Cache InterpolationManager in FiniteElementSpace
...
The InterpolationManager used in ParNCH1FaceRestriction is still a bit
different.
2025-08-08 10:37:24 -07:00
Will Pazner
34addd59c5
Fix shadowed variables
2025-08-08 07:01:54 -07:00
Will Pazner
0e22b182a6
Rename MultUnsigned to AbsMult in restriction classes
...
Deprecate 'MultUnsigned' and related functions
2025-05-22 10:49:28 -07:00
Veselin Dobrev
214313291b
Merge branch 'master' into dev/abs-diag-smoothers
...
Fixed conflicts:
CHANGELOG
fem/bilinearform_ext.cpp
fem/bilinearform_ext.hpp
2025-04-14 13:56:38 -07:00
Vladimir Z Tomov
48a270679c
Merge branch 'master' into tmop-periodic
2025-04-01 16:18:06 -07:00
Gabriel Pinochet-Soto
328c914481
Add AbsMult for restriction operators; address code duplication comment
2025-03-28 22:13:22 -07:00
Vladimir Z Tomov
94d7d2fd0a
Merge branch 'master' into tmop-periodic
2025-03-27 09:08:04 -07:00
Tzanio Kolev
6558b84cb2
Merge branch 'master' into hybridization-gpu
2025-03-26 13:44:31 -07:00
Vladimir Z Tomov
ae400812cf
style
2025-03-24 12:39:38 -07:00
Vladimir Z Tomov
6bef88f661
Allow NodalFiniteElements in ElementRestriction.
2025-03-24 11:14:16 -07:00
Dylan Copeland
8bb331cefa
Check for variable-order space in ElementRestriction.
2025-02-26 16:11:16 -08:00
Will Pazner
53365490b7
Merge remote-tracking branch 'origin/master' into hybridization-gpu
...
# Conflicts:
# tests/unit/fem/test_assembly_levels.cpp
2025-02-20 09:12:41 -08:00
Will Pazner
e797278779
Merge remote-tracking branch 'origin/master' into hybridization-gpu
...
# Conflicts:
# fem/integ/bilininteg_mass_pa.cpp
# tests/unit/fem/test_assembly_levels.cpp
2025-02-07 14:24:06 -08:00
Tzanio Kolev
bd48e8e4b9
Merge branch 'master' into fa-mesh-connectivity
2025-02-04 14:54:52 -08:00
Tzanio Kolev
e4c2152419
Update Copyright to 2010-2025
2025-02-03 12:17:26 -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
Will Pazner
6ddea3ff47
Merge remote-tracking branch 'origin/master' into pa-empty-partitions
2025-01-03 09:36:06 -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
Arturo Vargas
dba53a19a2
Merge branch 'master' into hybridization-gpu
2024-12-12 14:58:03 -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
b4dfb8660d
static_cast size_t to int
2024-10-31 18:07:45 +08:00
Will Pazner
9a6048658b
Merge remote-tracking branch 'origin/master' into hybridization-gpu
...
# Conflicts:
# fem/hybridization.cpp
# fem/hybridization.hpp
# linalg/CMakeLists.txt
# linalg/densemat.cpp
# linalg/densemat.hpp
2024-08-16 12:29:07 -07:00
samuelpmishLLNL and Will Pazner
36d28c6e3e
Update fem/restriction.cpp
...
Co-authored-by: Will Pazner <11493037+pazner@users.noreply.github.com >
2024-06-28 12:03:56 -07:00
Sam Mish
b5b4b5da7d
improve error message when encountering unsupported element types, and update doxygen entry
2024-06-28 11:29:03 -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
Will Pazner
5218b40945
Call HostRead in ElementRestriction::ElementRestriction
...
Avoid issues with debug device if device pointer is valid
2024-06-11 17:11:08 -04:00
Will Pazner
67e3b289b6
Provide access to gather map in L2InterfaceFaceRestriction
2024-06-11 17:11:07 -04:00
Will Pazner
c07e081832
Implement L2InterfaceFaceRestriction::AddMultTranspose
2024-06-11 17:11:07 -04:00
Will Pazner
0c10a41589
Add L2InterfaceFaceRestriction
2024-06-11 17:11:07 -04:00
Julian Andrej
086f6c9847
assert -> verify
2024-06-10 10:30:58 -07:00
Julian Andrej
480e90b41b
actually throw an error when using native ordering in FaceRestriction
2024-06-10 08:11:07 -07:00
Will Pazner
63f977d03f
Use FiniteElementSpace::GetTypicalTraceElement throughout the PA code
2024-05-01 09:50:23 -07:00
Will Pazner
a7eed94562
Replace many instances of GetFaceGeometry(0) with GetTypicalFaceGeometry()
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
Veselin Dobrev
966143b0ce
Some additions and tweaks to get ex14p to work with empty partitions
2024-04-22 17:35:14 -07:00
Will Pazner
94906f661d
In GetLVectorFaceNbrData, read base vector before creating alias
2024-04-12 20:07:49 -07:00
Will Pazner
936d128833
Avoid repeated calls to ExchangeFaceNbrData in PA mult
2024-04-12 11:02:28 -07:00
Will Pazner
36f5782404
Merge remote-tracking branch 'origin/master' into dg-diffusion
...
# Conflicts:
# examples/ex14.cpp
# examples/ex14p.cpp
2024-04-08 14:39:51 -07:00
Tzanio Kolev
687ef84488
Merge pull request #4056 from mfem/yohann/fa-dg-amr
...
Add support for `AssemblyLevel::FULL` for DG on `NCMesh`.
2024-04-03 08:34:29 -07:00
Yohann
61cf6735db
Update fem/restriction.cpp
...
Omitted `double`
2024-04-02 09:32:30 -07:00
Yohann
c0924ad9e6
Apply suggestions from code review
...
Replace `double` with `real_t`.
2024-04-02 09:31:51 -07:00
Dylan Copeland
046a874cfb
Merge branch 'master' of github.com:mfem/mfem into float
2024-02-06 10:56:41 -08:00