Model.wind_tunnel_mesh#

Model.wind_tunnel_mesh(collection, elem_size, interface_clearance, front_space, rear_space, side_space, top_space, tet_bl_first_layer_thickness=DBL_MAX, tet_bl_growth_rate=DBL_MAX, tet_bl_number_of_boundary_layers=DBL_MAX, bottom_bl_first_layer_thickness=DBL_MAX, bottom_bl_growth_rate=DBL_MAX, bottom_bl_number_of_boundary_layers=DBL_MAX)#

Generates a hex mesh for the far-field, a tetra mesh for the interface clearance, and a 3D boundary-layer mesh on the body.

Parameters:
  • collection (Collection) – The collection containing the component entities to create a 3D boundary layer.

  • elem_size (double) – The target far-field hex element size.

  • interface_clearance (double) – Clearance value from body. The tetra mesh is generated to the clearance volume.

  • front_space (double) – Far-field front space from body.

  • rear_space (double) – Far-field rear space from body.

  • side_space (double) – Far-field side space from body.

  • top_space (double) – Far-field top space from body.

  • tet_bl_first_layer_thickness (double) – First layer thickness for the 3D boundary layer for the body.

  • tet_bl_growth_rate (double) – Growth rate for the 3D boundary layer for the body.

  • tet_bl_number_of_boundary_layers (double) – Number of boundary layers for the 3D boundary layer for the body.

  • bottom_bl_first_layer_thickness (double) – First layer thickness for the 3D boundary layer for the bottom side hex mesh.

  • bottom_bl_growth_rate (double) – Growth rate for the 3D boundary layer for the bottom side hex mesh.

  • bottom_bl_number_of_boundary_layers (double) – Number of boundary layers for the 3D boundary layer for the bottom side hex mesh.

Example#

Generate a wind tunnel mesh use all components for the body , a hex size of 10.0 , an interface clearance of 20.0 , a far - field size of 300.0 ( front ) , 400.0 ( rear ) , 200.0 ( side ) , 200.0 ( top ) , and specific boundary layer mesh parameters#
import hm
import hm.entities as ent

model = hm.Model()

# Creating a collection that contains all the components
component_collection = hm.Collection(model, ent.Component)

model.wind_tunnel_mesh(
    collection=component_collection,
    elem_size=10.0,
    interface_clearance=20.0,
    front_space=300.0,
    rear_space=400.0,
    side_space=200.0,
    top_space=200.0,
    tet_bl_first_layer_thickness=11.0,
    tet_bl_growth_rate=0.01,
    tet_number_of_boundary_layers=1.2,
    bottom_bl_first_layer_thickness=5,
    bottom_bl_growth_rate=0.1,
    bottom_bl_number_of_boundary_layers=1.3,
)