From 06207c0707fa3f22061967ba9559b772bb377fd7 Mon Sep 17 00:00:00 2001 From: FEA-eng <59876896+FEA-eng@users.noreply.github.com> Date: Sun, 28 Jul 2024 19:18:28 -0300 Subject: [PATCH] Fem: Add missing Gmsh 2D algorithm (Quasi-structured Quad) --- src/Mod/Fem/femmesh/gmshtools.py | 4 +++- src/Mod/Fem/femobjects/mesh_gmsh.py | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Mod/Fem/femmesh/gmshtools.py b/src/Mod/Fem/femmesh/gmshtools.py index 487d8da2fc..523746b5bf 100644 --- a/src/Mod/Fem/femmesh/gmshtools.py +++ b/src/Mod/Fem/femmesh/gmshtools.py @@ -101,6 +101,8 @@ class GmshTools: self.algorithm2D = "8" elif algo2D == "Packing Parallelograms": self.algorithm2D = "9" + elif algo2D == "Quasi-structured Quad": + self.algorithm2D = "11" else: self.algorithm2D = "2" @@ -839,7 +841,7 @@ class GmshTools: ) geo.write( "// 2D mesh algorithm (1=MeshAdapt, 2=Automatic, " - "5=Delaunay, 6=Frontal, 7=BAMG, 8=DelQuad, 9=Packing Parallelograms)\n" + "5=Delaunay, 6=Frontal, 7=BAMG, 8=DelQuad, 9=Packing Parallelograms, 11=Quasi-structured Quad)\n" ) if len(self.bl_setting_list) and self.dimension == 3: geo.write("Mesh.Algorithm = " + "DelQuad" + ";\n") # Frontal/DelQuad are tested diff --git a/src/Mod/Fem/femobjects/mesh_gmsh.py b/src/Mod/Fem/femobjects/mesh_gmsh.py index df66bd8acd..df1f3cc134 100644 --- a/src/Mod/Fem/femobjects/mesh_gmsh.py +++ b/src/Mod/Fem/femobjects/mesh_gmsh.py @@ -230,6 +230,7 @@ class MeshGmsh(base_fempythonobject.BaseFemPythonObject): "BAMG", "DelQuad", "Packing Parallelograms", + "Quasi-structured Quad", ], ) ) @@ -276,7 +277,10 @@ class MeshGmsh(base_fempythonobject.BaseFemPythonObject): for prop in self._get_properties(): try: obj.getPropertyByName(prop.name) - if prop.name == "Algorithm3D": + if prop.name == "Algorithm2D": + # refresh the list of known 2D algorithms + obj.Algorithm2D = prop.value + elif prop.name == "Algorithm3D": # refresh the list of known 3D algorithms obj.Algorithm3D = prop.value elif prop.name == "HighOrderOptimize":