Commit Graph
402 Commits
Author SHA1 Message Date
Dylan Copeland e9acfeccda Using new sign functions. 2026-01-14 12:10:07 -08:00
Dylan Copeland 6f280d81b5 Introducing new functions for flipping index signs. 2026-01-05 18:46:25 -08:00
Dylan Copeland db003bdf86 Merge branch 'master' of github.com:mfem/mfem into nurbs-nc 2025-09-17 09:47:43 -07:00
Dylan Copeland 712bee9cce Fixed a bug for repeated refinement in 3D. Added a 3D sample run for ex1. Minor refactoring. 2025-07-17 16:36:30 -07:00
Dylan Copeland 850c1813c3 Fixed ex1 for an NC-patch NURBS mesh without IGA. Improved variable naming and documentation. 2025-07-16 13:57:16 -07:00
Dylan Copeland 89346b597c Enabled parallel anisotropic refinement of hexahedral meshes without conflicting directions on faces. Added a new function to check whether a set of refinements has conflicts, as well as demonstration in miniapp phpref. 2025-06-23 21:02:54 -07:00
Dylan Copeland c55f3c13af More simplification and formatting. 2025-04-04 19:27:50 -07:00
Dylan Copeland 8d40910fd8 Using efficient search for NC patch edges and faces. 2025-04-04 15:03:36 -07:00
Dylan Copeland 01d92c7133 Fixed the 2D case for knotvector-dependent refinement factors. 2025-02-13 12:59:45 -08:00
Dylan Copeland 12896cd9ed Merge branch 'master' of github.com:mfem/mfem into nurbs-nc 2025-02-12 12:29:48 -08:00
Dylan Copeland 15ecbb5e6e Refactoring with a new struct. 2025-02-12 12:27:53 -08:00
Dylan Copeland b5ed99e1cd Added the capability to specify a refinement factor for each knotvector. Piecewise knotvectors can have multiple refinement factors. 2025-02-11 21:24:07 -08:00
Tzanio Kolev e4c2152419 Update Copyright to 2010-2025 2025-02-03 12:17:26 -08:00
Dylan Copeland b62aa1491f Merge branch 'master' of github.com:mfem/mfem into nurbs-nc 2024-12-30 17:54:54 -08:00
Dylan Copeland 74e93755fa Bug fix. 2024-12-10 13:36:56 -08:00
Dylan Copeland 4b87236e73 Simplify interface for RefineElement function. 2024-12-05 11:40:57 -08:00
Dylan Copeland c03257233f New interface for RefineElement function. 2024-12-05 10:44:34 -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 1c6d968ed7 Refinement by formulas in 2D. 2024-12-02 19:07:51 -08:00
Dylan Copeland d0f0e2c392 Merge branch 'master' of github.com:mfem/mfem into nurbs-nc 2024-11-25 14:58:54 -08:00
Dylan Copeland bf6d19e152 Refinement by formulas in 3D, starting from fully coarsened NC patches. 2024-11-25 14:40:07 -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
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 e5cfc35f87 Removed int type for refinements. 2024-10-30 11:23:41 -07:00
Dylan Copeland 91f14abe6e Disallow inconsistent refinement scalings on an edge. 2024-10-25 12:39:55 -07:00
dylan-copeland e5de10c9d9 Restoring backwards compatibility. 2024-10-15 11:55:02 -07:00
dylan-copeland a926841cf9 Improved interface for Refinement. 2024-10-11 20:08:05 -07:00
Hugh Carson 445e41bb77 Tidy up and style fix 2024-10-10 17:24:51 -04:00
Hugh Carson 6c17447045 Fix triangle ambiguity by only labeling children after tree is finished. 2024-10-10 17:19:22 -04:00
Hugh Carson 4cf617347f Handle the nodes in the case of center -> corner -> root. Non ambiguous paths now have the ability to reorganize all faces discovered. Not handling child reallocation correctly yet 2024-10-09 15:38:23 -04:00
Hugh Carson 708a8d92f8 Fix Rewrap error + compile error from method definition 2024-09-12 15:17:42 -04:00
Dylan Copeland 910e840fda Documentation and minor fixes. 2024-09-12 12:15:06 -07:00
Hugh Carson f3add08ae3 Address MR feedback:
- Rewrapping to 80
- Forward some base methods to public access
- Restore some old implementation methods in terms of new versions
- Doyxgen and comment fixes
2024-09-12 14:14:07 -04: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
Hugh Carson 2f6871e449 CI Fixes:
- Unused variables
- Memory leak
- Initialization order
- Remove std::vector usage
- Fix char index into arrays
- Early exit if an empty ncsubmesh is constructed
- Array list initalizer was hardcoded to int
- Remove anonynmous namespace from ncmesh_tables.hpp, use static and
  constexpr instead
- Remove unneeded table includes in ncsubmesh.cpp and pncsubmesh.cpp
- Move trivial type assertion of Array to class body from constructor
- Fix warning about use of abs over std::abs in batched linalg
- Add parent hashtable accessors to bypass access controls in parent
  classes.
- Change loop condition to avoid need for ncmesh_tables.hpp include
- Change [ParSubMesh] to [SubMesh] for Catch2 category, the parallel
  is implicit in [Parallel] label
- Missing include in mesh_test_utils.cpp
- Fix bug for array access with empty ncmesh
2024-09-09 15:10:25 -04:00
Hugh Carson f052af3d6b Make style 2024-09-09 15:10:25 -04:00
Hugh Carson 96ef25817c Convenience addElement method 2024-09-09 15:10:24 -04:00
Hugh Carson f96f8af545 Upgrade the internal face boundary attribute test for NC refinement of the volume submesh 2024-09-09 15:10:24 -04:00
Hugh Carson 4edd730ce7 ghost boundary attributes mean volume tests are passsing 2024-09-09 15:10:24 -04:00
Hugh Carson 92ff8c744f Reprotect some members of NCMesh, make exposed derived for testing, make hex nonconformal volume testing ok 2024-09-09 15:10:24 -04:00
Hugh Carson c269b1ea54 More bug fixes and testing
- Fix bug for higher order meshes
- Fix bug with missing fields in NCMesh copy ctor.
- Fix test_array double -> int casting.
- Add test for Hex volume submesh
2024-09-09 15:10:24 -04:00
Hugh Carson cc70734bc0 Add initializer_list constructor to Array, and fix some more edge cases from testing 2024-09-09 15:10:24 -04:00
Hugh Carson 013eace8a6 Fix issue where parent triangular faces discovered by child 3 might disagree with child 0,1,2. If an outer child rediscovers the face the parent face will be reordered. 2024-09-09 15:10:24 -04:00
Hugh Carson 8237b9212d Abandoning interior surfaces, the resulting spaces are too ambiguous and the results don't warrant the extra effort 2024-09-09 15:10:24 -04:00
Hugh Carson 009837f4c8 Collection of bug fixes:
- Fix to permute children if a grandchild discovers a different face node ordering. Running out of tests
- Fix bug for triangle faces where central face parent nodes were not being identified correctly.
- Fix bug in ParentFaceNodes where a central triangle face would discover parent nodes with a different orientation to the surrounding faces.
- Fix bug where check was on parent_nodes rather than face_nodes for a second node hit
2024-09-09 15:10:24 -04:00
Hugh Carson b991cb755e Rewrite of the parallel data structure, complete ncmesh is now built doing a leaf to root tree traversal. The ordering is inherited from the parent ncmesh, ensuring all ranks build the correct ncmesh structure. Can handle external nc boundaries, can't handle internal yet due to face instability. 2024-09-09 15:10:24 -04:00
Hugh Carson 5e3359a805 Preliminary work on developing NCSubMesh
Many small features and a lot of really quite dirty code, print statements etc. This comes from squashing a large number of commits together.
A few different strategies were tried and failed (partially building the NC structure, having ranks have different NC etc.) before arriving at
the final reverse tree traversal algorithm.
2024-09-09 15:10:24 -04:00
dylan-copeland 66981ac2fa Fix mac build. 2024-08-29 17:03:16 -07:00