From a70a7f9a5f81a6bcc82764a23fe987cff21b4d06 Mon Sep 17 00:00:00 2001 From: Yaqi Wang Date: Tue, 17 Mar 2020 19:10:31 -0600 Subject: [PATCH] allow loading elemental variables in exodus file for setting extra element integers #14916 --- .../meshgenerators/FileMeshGenerator.md | 3 ++ framework/include/auxkernels/ElemExtraIDAux.h | 31 ++++++++++++++++ framework/src/auxkernels/ElemExtraIDAux.C | 35 ++++++++++++++++++ .../src/meshgenerators/FileMeshGenerator.C | 25 ++++++++++++- .../exodus_file_mesh_with_id.i | 35 ++++++++++++++++++ .../gold/exodus_file_mesh_with_id_out.e | Bin 0 -> 27428 bytes .../mesh_with_material_id.e | Bin 0 -> 27176 bytes .../meshgenerators/file_mesh_generator/tests | 10 +++++ 8 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 framework/include/auxkernels/ElemExtraIDAux.h create mode 100644 framework/src/auxkernels/ElemExtraIDAux.C create mode 100644 test/tests/meshgenerators/file_mesh_generator/exodus_file_mesh_with_id.i create mode 100644 test/tests/meshgenerators/file_mesh_generator/gold/exodus_file_mesh_with_id_out.e create mode 100644 test/tests/meshgenerators/file_mesh_generator/mesh_with_material_id.e diff --git a/framework/doc/content/source/meshgenerators/FileMeshGenerator.md b/framework/doc/content/source/meshgenerators/FileMeshGenerator.md index 57402f34a6ec..c1078c860eb7 100644 --- a/framework/doc/content/source/meshgenerators/FileMeshGenerator.md +++ b/framework/doc/content/source/meshgenerators/FileMeshGenerator.md @@ -23,6 +23,9 @@ supports reading and writing a large number of formats and could be extended to | .xda, .xdr | libMesh formats | | .vtk, .pvtu | Visualization Toolkit | +When reading a mesh file in Sandia's ExodusII format, users can use parameter *exodus_extra_element_integers* to load elemental variables for setting extra element integers of the mesh. +The names of the extra element integers will be the same as the names of the element variables in the mesh file. + ## Further FileMeshGenerator Documentation !syntax parameters /MeshGenerators/FileMeshGenerator diff --git a/framework/include/auxkernels/ElemExtraIDAux.h b/framework/include/auxkernels/ElemExtraIDAux.h new file mode 100644 index 000000000000..990b491c973d --- /dev/null +++ b/framework/include/auxkernels/ElemExtraIDAux.h @@ -0,0 +1,31 @@ +//* This file is part of the MOOSE framework +//* https://www.mooseframework.org +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#pragma once + +#include "AuxKernel.h" + +// Forward Declarations +class ElemExtraIDAux; + +template <> +InputParameters validParams(); + +class ElemExtraIDAux : public AuxKernel +{ +public: + static InputParameters validParams(); + + ElemExtraIDAux(const InputParameters & parameters); + +protected: + virtual Real computeValue() override; + + const dof_id_type & _id; +}; diff --git a/framework/src/auxkernels/ElemExtraIDAux.C b/framework/src/auxkernels/ElemExtraIDAux.C new file mode 100644 index 000000000000..1cccfc3c364e --- /dev/null +++ b/framework/src/auxkernels/ElemExtraIDAux.C @@ -0,0 +1,35 @@ +//* This file is part of the MOOSE framework +//* https://www.mooseframework.org +//* +//* All rights reserved, see COPYRIGHT for full restrictions +//* https://github.com/idaholab/moose/blob/master/COPYRIGHT +//* +//* Licensed under LGPL 2.1, please see LICENSE for details +//* https://www.gnu.org/licenses/lgpl-2.1.html + +#include "ElemExtraIDAux.h" + +registerMooseObject("MooseApp", ElemExtraIDAux); + +defineLegacyParams(ElemExtraIDAux); + +InputParameters +ElemExtraIDAux::validParams() +{ + InputParameters params = AuxKernel::validParams(); + params.addRequiredParam>("extra_id_name", + "The extra ID name in the mesh"); + params.addClassDescription("Puts element extra IDs into an aux variable."); + return params; +} + +ElemExtraIDAux::ElemExtraIDAux(const InputParameters & parameters) + : AuxKernel(parameters), _id(getElementID("extra_id_name")) +{ +} + +Real +ElemExtraIDAux::computeValue() +{ + return _id; +} diff --git a/framework/src/meshgenerators/FileMeshGenerator.C b/framework/src/meshgenerators/FileMeshGenerator.C index 1b4145fa8a79..97ea346e83c1 100644 --- a/framework/src/meshgenerators/FileMeshGenerator.C +++ b/framework/src/meshgenerators/FileMeshGenerator.C @@ -12,6 +12,8 @@ #include "libmesh/replicated_mesh.h" #include "libmesh/face_quad4.h" +#include "libmesh/exodusII_io.h" +#include "libmesh/mesh_communication.h" registerMooseObject("MooseApp", FileMeshGenerator); @@ -23,6 +25,9 @@ FileMeshGenerator::validParams() InputParameters params = MeshGenerator::validParams(); params.addRequiredParam("file", "The filename to read."); + params.addParam>( + "exodus_extra_element_integers", + "The variable names in the mesh file for loading extra element integers"); return params; } @@ -37,7 +42,25 @@ FileMeshGenerator::generate() { auto mesh = _mesh->buildMeshBaseObject(); - mesh->read(_file_name); + bool exodus = + _file_name.rfind(".exd") < _file_name.size() || _file_name.rfind(".e") < _file_name.size(); + bool has_exodus_integers = isParamValid("exodus_extra_element_integers"); + if (exodus && has_exodus_integers) + { + if (mesh->processor_id() == 0) + { + ExodusII_IO io(*mesh); + io.set_extra_integer_vars( + getParam>("exodus_extra_element_integers")); + io.read(_file_name); + } + MeshCommunication().broadcast(*mesh); + mesh->prepare_for_use(false, false); + } + else if (!has_exodus_integers) + mesh->read(_file_name); + else + mooseError("\"exodus_extra_element_integers\" should be given only for Exodus mesh files"); return dynamic_pointer_cast(mesh); } diff --git a/test/tests/meshgenerators/file_mesh_generator/exodus_file_mesh_with_id.i b/test/tests/meshgenerators/file_mesh_generator/exodus_file_mesh_with_id.i new file mode 100644 index 000000000000..667b0bf7b852 --- /dev/null +++ b/test/tests/meshgenerators/file_mesh_generator/exodus_file_mesh_with_id.i @@ -0,0 +1,35 @@ +[Mesh] + [material_id_mesh] + type = FileMeshGenerator + file = mesh_with_material_id.e + exodus_extra_element_integers = material_id + [] +[] + +[AuxVariables] + [material_id] + family = MONOMIAL + order = CONSTANT + [] +[] + +[AuxKernels] + [set_material_id] + type = ElemExtraIDAux + variable = material_id + extra_id_name = material_id + [] +[] + +[Problem] + kernel_coverage_check = false + solve = false +[] + +[Executioner] + type = Steady +[] + +[Outputs] + exodus = true +[] diff --git a/test/tests/meshgenerators/file_mesh_generator/gold/exodus_file_mesh_with_id_out.e b/test/tests/meshgenerators/file_mesh_generator/gold/exodus_file_mesh_with_id_out.e new file mode 100644 index 0000000000000000000000000000000000000000..9b8b6fcfdab056684e5da17197c8bff00f11771b GIT binary patch literal 27428 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 literal 0 HcmV?d00001 diff --git a/test/tests/meshgenerators/file_mesh_generator/mesh_with_material_id.e b/test/tests/meshgenerators/file_mesh_generator/mesh_with_material_id.e new file mode 100644 index 0000000000000000000000000000000000000000..43098b91cf9e347b778c2ce1a58655cbe6367bf5 GIT binary patch literal 27176 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ˤlV6}x$hRrIZ>;aqD z{*EKRHE zXZQB@r~A_$tHSD>Od6_=cGxc6kMD6Ttqxdew`yiu$S$0{gL}$ojJMU-oIn$EHo!)BV1z!*M{y0*(jMr3q-p59G1!vsHDV)G-$Nqy@%s z`1CT_ZtH0{9@Fc2 zVapk}bIZ}petuX0bog58rbDBm{rpg$JkX!@8Um7py@kyvC~tWP7`gq3%~vyg(W?kj zjL!tf(=1i0D&yp7dq7YB7{bF@r5vOf!OUUr?%u)P_P#pU zyMx2+yZ4>lyE~PSalGptN3DKU4bIZa`k?*jK8jdr@7SI0oExPR_Ip7z+~34JaQj9% z#Fr8a0OhECk>|eBj$^f6jD6~|X<6F7>&^X5DqCsy+j{bml8rc@`D=^2tA4fRP(VgRjbN-Kjd2b<&-_FZ@2U8LAbK0zKD(4{C zi-J<)7nBNsw|6tFsopJkhO-gl2Q>NvpE=ARVm~+tAQptiJyq-hBmJuY^99m@VR_7c zfQ@nD0%rwd#~>$q?<2>L~_doxKsT{^A z;oyY%jcL`czwPjaIrh8{czbb-@7Ch@6V81_*pmyf^&LL(Vt$*DyOK@2A8qh00IQn( zRRDh>75mLI?|=^gk8t`viU;!~?Lqc#V-6l>=hMnwILoBn@8A@p=djii9u<+Q%&_fS z`H>fgSQeLGmX(jD*#qV~KI0+nC!Bib8ukMmC&rO>p1r}ZkNN#@Q)YV$tFf|HwpwVf z>Ae86xzKRq*vBx2*>U3H5Sf|H+FLmBK%?z=7(YP^;|I|WzGhx>YL>aKer_?==<|m> zIN`R;@62#&Ni4=v6X$vMMb;-IaSlB>!Gl14kwV){m;sOn8YTNEw+F;n6DB>J@55)b z$2g-sAP{x$x5UY5Q5N6eOSUynjo7FZJ_D*GuqUj{^&)M*d>skjm~ST>6)AkqZ~O zaOq#drGE(*xp0vS7hK_jD_rElMJ`-$g$u55kqZ~OaOvN|rGE<-xp0vSm;NQZ)X(z% XUv*t@g$u55kqZ~OaKROBdH+8H9#yx4 literal 0 HcmV?d00001 diff --git a/test/tests/meshgenerators/file_mesh_generator/tests b/test/tests/meshgenerators/file_mesh_generator/tests index 30ca80b88e11..c928bb50c2e0 100644 --- a/test/tests/meshgenerators/file_mesh_generator/tests +++ b/test/tests/meshgenerators/file_mesh_generator/tests @@ -11,4 +11,14 @@ design = 'meshgenerators/FileMeshGenerator.md' issues = '#11640' [../] + [./extra_integer_test] + type = 'Exodiff' + input = 'exodus_file_mesh_with_id.i' + exodiff = 'exodus_file_mesh_with_id_out.e' + recover = false + + requirement = 'The system shall have the ability to assign element extra integers with elemental variables in an Exodus mesh file.' + design = 'meshgenerators/FileMeshGenerator.md' + issues = '#14916' + [../] []