*rebuild_mesh

Remeshes selected shell elements with quality and flow considerations.

Syntax

*rebuild_mesh mark_id

Type

HyperMesh Tcl Modify Command

Description

This command rebuilds an existing mesh such that the new mesh has good quality and flow. It uses the same parameter and criteria files as used by BatchMesher to specify the quality criteria and mesh parameters.

The command expects that the criteria and parameter files are properly set and registered before execution. It utilizes the following fields from the parameter file:

1. Surface hole recognition table

2. Feature angle during element cleanup

3. Element type

4. Mesh type

1Ds attached input shell elements are used as features and they significantly impact mesh quality and flow. If no 1Ds are present in the shells of the input elements, the specified feature angle is internally used to recognize features.

Rebuild is currently supported for first-order shell elements that are not attached to solid elements.

Inputs

mark_id
The ID of the mark containing the elements to rebuild. Valid values are 1 and 2.

Examples

To remesh the displayed shell elements with 5 mm criteria and parameter file settings:

*createstringarray 14 " 0 penalty value              0.00    0.00    0.50    1.00    5.00" \
  "  1 min length        1 2.0   5.000   4.333   3.666   3.000   2.833    2" \
  "  2 max length        1 1.5   5.000   6.200   7.320   9.000  11.290    0" \
  "  3 aspect ratio      1 1.0   1.000   2.000   4.000   5.000  10.000    0" \
  "  4 warpage           1 2.0   0.000   5.000  15.000  20.000  40.000    0" \
  "  5 max angle quad    1 1.0  90.000 110.000 140.000 150.000 165.000    0" \
  "  6 min angle quad    1 1.0  90.000  70.000  40.000  30.000  15.000    0" \
  "  7 max angle tria    1 1.0  60.000  80.000 120.000 130.000 155.000    0" \
  "  8 min angle tria    1 1.0  60.000  50.000  30.000  20.000  10.000    0" \
  "  9 skew              1 1.5   0.000  10.000  50.000  60.000  75.000    0" \
  " 10 jacobian          1 2.0   1.000   0.900   0.600   0.500   0.350    0" \
  " 11 chordal dev       0 0.0   0.000   0.300   0.800   1.000   2.000    0" \
  " 12 taper             0 1.0   0.000   0.200   0.500   0.600   0.900    0" \
  " 13 % of trias        1 2.0   0.000   3.000   4.500   6.000   9.000    0"
*setqualitycriteria 1 14 0
*createstringarray 105 "geometry_cleanup_flag    1" "meshing_flag                      5" \
  "element_size                      5.0" "element_type                      2" \
  "mesh_align                        3" "element_order                     1" \
  "surf_component                    1" "feature_angle                     30.0" \
  "holes_table_begin" "appl_surf(1)" "appl_solid(0)" "appl_cordsfiles(0)" "appl_flanged_suppr(1)" \
  "flanged_suppr_height(1.4)" "narrow_slots_type(0)" "abs_fixed_nodes_count_max(-8)" \
  "rad(0.0,2.2) do action(1) washer(0) " "rad(2.2,3.01) do action(0) elems(4) washer(0) " \
  "rad(3.01,4.7) do action(0) elems(6) washer(1) layers(3.5) " "rad(4.7,9.0) do action(0) elems(8) washer(1) layers(0.75*radius) " \
  "rad(9.0,11.0) do action(0) elems(8) washer(1) layers(7.0) " "rad(11.0,20) do action(0) elems(8) washer(1) layers(auto) " \
  "rad(0.0,2.2) solid(1) do action(1) " "rad(2.2,3.01) solid(1) do action(0) elems(4) " \
  "rad(3.01,20) solid(1) do action(0) elems(6) " "holes_table_end" "edge_fillet_recognition           1" \
  "max_fillet_radius                 5.0" "surface_fillet_table_begin" "surface_fillet_recognition(1)" \
  "minimize_transitions(1)" "rad(0,2.2) wid(3.0,6.2) do split(suppress_on)" \
  "rad(2.2,15) wid(3.4,6.2) do elems(1)" "rad(0,25.0) wid(6.2,9.2) do elems(2)" \
  "rad(0,35.0) wid(9.2,12.5) do elems(3)" "rad(0,40.0) wid(12.5,25.0) do chordal_deviation(0.2)" \
  "surface_fillet_table_end" "del_dupl_surfs_flag               2" "del_dupl_surfs_tol                -1" \
  "edges_stitch_flags                0" "max_edges_stitch_tol              -1.0" \
  "fix_overlapsurfs_flag             1" "overlapsurfs_maxtangangle         -1.0" \
  "narrow_surfs_merge_width          -1.0" "narrow_surfs_treat_flags          3" \
  "beads_suppression                 1" "beads_recognition                 1" \
  "minimal_beads_height              1.4" "beads_treat_flags                 0" \
  "flange_recognition                1" "flange_elements_across            3" \
  "flange_max_width                  30.0" "flange_min_width                  8.0" \
  "flanges_treat_flags               1" "flange_max_remove_width           -1.0" \
  "appl_tria_reduction               1" "tria_redu_max_elemsize            auto" \
  "tria_redu_min_elemsize            auto" "trias_around_holes                0" \
  "common_mesh_flow                  0" "extract_thinsolids                1" \
  "midsurf_method                    3" "thinsolid_ratio                   0.3" \
  "max_thickness                     10.0" "extract_feature_angle             25.0" \
  "pre_midsurf_cleanup               1" "direct_midmesh                    0" \
  "ignore_flat_edges                 1" "flatten_connections               0" \
  "defeat_open_width_on              1" "defeat_open_width                 1.0" \
  "supp_proxim_edges_on              1" "supp_proxim_edges                 0.5" \
  "combine_nonmanifold_on            1" "combine_nonmanifold               0.5" \
  "midmesh_extact_elem_size          10.0" "remove_logo                       1" \
  "logo_max_size                     30.0" "logo_max_height                   1.4" \
  "logo_min_concavity                1.0" "threads_removal                   0" \
  "threads_toremove_max_depth        5.0" "threads_replacediametertype       -2" \
  "folded_elems_angle                150.0" "smooth_elems_target               0.2" \
  "fillets_mesh_flow                 0" "failed_elems_cleanup_flgs         8" \
  "move_nodes_across_feature_edges   1" "featureedge_nodes_moveacross_max  0.1" \
  "move_nodes_across_free_edges      1" "freeedge_nodes_moveacross_max     0.05" \
  "move_normal_flag                  1" "move_normal_dist                  0.8" \
  "divide_warped_quads               1" "ignore_comps_boundary             0" \
  "gen_topology_prepare_flags        7" "cleanup_comp_flag                 0 " \
  "comp_select                        " "use_wildcards_for_compsnames      0" \
  "cleanup_tolerances                auto" "suppress_features_rate            0" \
  "feat_charsize_method              0" "custom_feat_suppr_maxangle        25.0" \
  "uncond_constr_lines_suppress      0" "aggressive_fillet_lines_suppress  0"
*createbatchparamsfromstrings 1 105
*createmark elements 1 displayed 
*rebuild_mesh 1

Errors

Incorrect usage results in a Tcl error. To detect errors, you can use the catch command:
if { [ catch {command_name...} ] } {
   # Handle error
}

Version History

2019