Skip to content

Commit 57f55d0

Browse files
authored
feat(): Translates face curvatureResolutionAngle from simulation to mesher config (#1631)
* translate face curvatureResolutionAngle from simulation to mesher config * adds curvatureResolutionAngle to faces json
1 parent 2c24f97 commit 57f55d0

File tree

5 files changed

+39
-16
lines changed

5 files changed

+39
-16
lines changed

flow360/component/simulation/translator/surface_meshing_translator.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,9 @@ def SurfaceEdgeRefinement_to_edges(obj: SurfaceEdgeRefinement):
6464

6565

6666
# pylint: disable=invalid-name
67-
def SurfaceRefinement_to_faces(obj: SurfaceRefinement, global_max_edge_length):
67+
def SurfaceRefinement_to_faces(
68+
obj: SurfaceRefinement, global_max_edge_length, global_curvature_resolution_angle
69+
):
6870
"""
6971
Translate SurfaceRefinement to faces.
7072
"""
@@ -74,6 +76,11 @@ def SurfaceRefinement_to_faces(obj: SurfaceRefinement, global_max_edge_length):
7476
if obj.max_edge_length is not None
7577
else global_max_edge_length.value.item()
7678
),
79+
"curvatureResolutionAngle": (
80+
obj.curvature_resolution_angle.to("degree").value.item()
81+
if obj.curvature_resolution_angle is not None
82+
else global_curvature_resolution_angle.to("degree").value.item()
83+
),
7784
}
7885

7986

@@ -532,6 +539,7 @@ def legacy_mesher_json(input_params: SimulationParams):
532539
SurfaceRefinement,
533540
translation_func=SurfaceRefinement_to_faces,
534541
translation_func_global_max_edge_length=input_params.meshing.defaults.surface_max_edge_length,
542+
translation_func_global_curvature_resolution_angle=input_params.meshing.defaults.curvature_resolution_angle,
535543
use_sub_item_as_key=True,
536544
)
537545

tests/simulation/translator/ref/surface_meshing/airplane.json

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,44 @@
11
{
22
"faces": {
33
"body01_face001": {
4-
"maxEdgeLength": 1.5
4+
"maxEdgeLength": 1.5,
5+
"curvatureResolutionAngle": 15.0
56
},
67
"body01_face002": {
7-
"maxEdgeLength": 1.5
8+
"maxEdgeLength": 1.5,
9+
"curvatureResolutionAngle": 15.0
810
},
911
"body01_face003": {
10-
"maxEdgeLength": 1.5
12+
"maxEdgeLength": 1.5,
13+
"curvatureResolutionAngle": 15.0
1114
},
1215
"body01_face004": {
13-
"maxEdgeLength": 1.5
16+
"maxEdgeLength": 1.5,
17+
"curvatureResolutionAngle": 15.0
1418
},
1519
"body01_face005": {
16-
"maxEdgeLength": 0.7000000000000001
20+
"maxEdgeLength": 0.7000000000000001,
21+
"curvatureResolutionAngle": 15.0
1722
},
1823
"body01_face006": {
19-
"maxEdgeLength": 0.7000000000000001
24+
"maxEdgeLength": 0.7000000000000001,
25+
"curvatureResolutionAngle": 15.0
2026
},
2127
"body01_face007": {
22-
"maxEdgeLength": 0.7000000000000001
28+
"maxEdgeLength": 0.7000000000000001,
29+
"curvatureResolutionAngle": 15.0
2330
},
2431
"body01_face008": {
25-
"maxEdgeLength": 0.5
32+
"maxEdgeLength": 0.5,
33+
"curvatureResolutionAngle": 15.0
2634
},
2735
"body01_face009": {
28-
"maxEdgeLength": 0.5
36+
"maxEdgeLength": 0.5,
37+
"curvatureResolutionAngle": 15.0
2938
},
3039
"body01_face010": {
31-
"maxEdgeLength": 0.5
40+
"maxEdgeLength": 0.5,
41+
"curvatureResolutionAngle": 15.0
3242
}
3343
},
3444
"curvatureResolutionAngle": 15.0,

tests/simulation/translator/ref/surface_meshing/om6wing_tutorial_aspect_ratio.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@
2525
},
2626
"faces": {
2727
"body01_face001": {
28-
"maxEdgeLength": 0.14
28+
"maxEdgeLength": 0.14,
29+
"curvatureResolutionAngle": 10
2930
}
3031
},
3132
"boundaries": {

tests/simulation/translator/ref/surface_meshing/om6wing_tutorial_ignore_global.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
},
2222
"faces": {
2323
"body01_face001": {
24-
"maxEdgeLength": 0.14
24+
"maxEdgeLength": 0.14,
25+
"curvatureResolutionAngle": 10
2526
}
2627
},
2728
"boundaries": {

tests/simulation/translator/ref/surface_meshing/rotor.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,16 @@
3636
},
3737
"faces": {
3838
"body01_face001": {
39-
"maxEdgeLength": 10
39+
"maxEdgeLength": 10,
40+
"curvatureResolutionAngle": 15
4041
},
4142
"body01_face002": {
42-
"maxEdgeLength": 10
43+
"maxEdgeLength": 10,
44+
"curvatureResolutionAngle": 15
4345
},
4446
"body01_face003": {
45-
"maxEdgeLength": 0.1
47+
"maxEdgeLength": 0.1,
48+
"curvatureResolutionAngle": 15
4649
}
4750
},
4851
"boundaries": {

0 commit comments

Comments
 (0)