From 1a57133975e461f1cd9e6b22de613e6623e4d9e7 Mon Sep 17 00:00:00 2001 From: Roy Stogner Date: Thu, 23 Mar 2023 16:53:33 -0500 Subject: [PATCH] discontinuous_spline_extraction file option This gets us a lot more flexibility with what IGA meshes we can support. Refs #18768 --- framework/src/meshgenerators/FileMeshGenerator.C | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/framework/src/meshgenerators/FileMeshGenerator.C b/framework/src/meshgenerators/FileMeshGenerator.C index 1141ec97b522..c3f44099f670 100644 --- a/framework/src/meshgenerators/FileMeshGenerator.C +++ b/framework/src/meshgenerators/FileMeshGenerator.C @@ -45,6 +45,14 @@ FileMeshGenerator::validParams() "If clear_spline_nodes=true, IsoGeometric Analyis spline nodes " "and constraints are removed from an IGA mesh, after which only " "C^0 Rational-Bernstein-Bezier elements will remain."); + params.addParam("discontinuous_spline_extraction", + false, + "If discontinuous_spline_extraction=true, " + "Rational-Bernstein-Bezier elements extracted from a spline mesh " + "will be disconnected from neighboring elements, coupled only via " + "their extraction operators. This may be less efficient than the " + "default C^0 extracted mesh, but may be necessary if the extracted " + "mesh is non-conforming."); params.addClassDescription("Read a mesh from a file."); return params; } @@ -87,6 +95,9 @@ FileMeshGenerator::generate() { if (mesh->processor_id() == 0) { + if (getParam("discontinuous_spline_extraction")) + exreader->set_discontinuous_bex(true); + exreader->read(_file_name); if (getParam("clear_spline_nodes"))