fem_conn_fastener_create | (id, pname, method, fmt, gs, ga, gb, pata, patb) |
Description: | ||
This function will create fastener connectors. | ||
Input: | ||
INTEGER | id | The starting id for the new connector(s). If zero, then fetch the next available id from the database. |
STRING[] | pname[] | The connector property name. |
STRING[] | method | The connector creation method (Projection or Axis). |
STRING[] | fmt | The weld format (ELPAT, PARTPAT, ALIGN, ELEMID, or GRIDID). |
STRING[] | gs | List of connector locations (nodeds or xyz). |
STRING[] | ga | List of surface A pierce nodes. |
STRING[] | gb | List of surface B pierce nodes. |
STRING[] | pata | List of surface A patch identifiers. |
STRING[] | patb | List of surface B patch identifiers. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 if successful. |
Error Conditions: | ||
MSG_FEM_CONN_ZERO_DIAM MSG_FEM_CONN_GS_OR_GA_REQD MSG_FEM_CONN_ALIGN_GA_GB_REQD MSG_FEM_CONN_PATA_PATB_REQD MSG_FEM_CONN_BAD_POINT_PATCH MSG_FEM_CONN_GS_NODE_ID_REQD MSG_FEM_CONN_PROP_NOT_FOUND |
fem_conn_fastener_prop_create | (name, diameter, kti, kri, mass, mcid, mflag, id) |
Description: | ||
This function will create a fastener connector property record in the database. | ||
Input: | ||
STRING[] | name | The name of the connector property. |
REAL | diameter | The connector diameter. |
REAL(3) | kti | Stiffness values in directions 1 to 3. |
REAL (3) | kri | Rotation stiffness values in directions 1 to 3. |
REAL | mass | The lumped mass of the fastener. |
INTEGER | mcid | The element stiffness coordinate system (-1 = use element coordinate system). |
INTEGER | mflag | Defines whether the coordinate system specified for mcid is absolute (1) or relative (0). |
Output: | ||
INTEGER | id | The ID of the new connector property. |
INTEGER | <Return Value> | This function returns a value of 0 if successful. |
Error Conditions: | ||
DbDuplicateEntry DbMaterialNotFound |
fem_conn_property_create | (name, type, mat, rvals, ivals, id) |
Description: | ||
This function will create a connector property record in the database. | ||
Input: | ||
STRING[] | name | The name of the connector property. |
STRING[] | type | The type of connector property (General, Spot Weld). |
STRING[] | mat | Name of the reference material property. |
REAL() | rvals | Real property values (diameter, Idmin, Idmax, etc.). |
INTEGER() | ivals | Integer property values. |
Output: | ||
INTEGER | id | The ID of the new connector property. |
INTEGER | <Return Value> | This function returns a value of 0 if successful. |
Error Conditions: | ||
DbDuplicateEntry DbMaterialNotFound |
fem_conn_spotweld_create | (id, pname, method, fmt, gs, ga, gb, pata, patb, sptyp) |
Description: | ||
This function will create a spot weld connector property record in the database. | ||
Input: | ||
INTEGER | id | The starting id for the new connector(s). If zero, then fetch the next available id from the database. |
STRING[] | pname[] | The connector property name. |
STRING[] | method | The connector creation method (Projection or Axis). |
STRING[] | fmt | The weld format (ELPAT, PARTPAT, ALIGN, ELEMID, or GRIDID). |
STRING[] | gs | List of connector locations (nodeds or xyz). |
STRING[] | ga | List of surface A pierce nodes. |
STRING[] | gb | List of surface B pierce nodes. |
STRING[] | pata | List of surface A patch identifiers. |
STRING[] | patb | List of surface B patch identifiers. |
STRING[] | sptyp | Surface patch types (GRIDID format only). Q4Q8 = quad4/quad8, Q4T6 = quad4/tri6, etc. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 if successful. |
Error Conditions: | ||
MSG_FEM_CONN_ZERO_DIAM MSG_FEM_CONN_GS_OR_GA_REQD MSG_FEM_CONN_ALIGN_GA_GB_REQD MSG_FEM_CONN_PATA_PATB_REQD MSG_FEM_CONN_BAD_POINT_PATCH MSG_FEM_CONN_GS_NODE_ID_REQD MSG_FEM_CONN_PROP_NOT_FOUND |
fem_conn_spotweld_prop_create | (name, mat, diameter, imset, id) |
Description: | ||
This function will create spot weld connectors. | ||
Input: | ||
STRING[] | name | The name of the connector property. |
STRING[] | mat | Name of the reference material property. |
REAL | diameter | The connector diameter. |
INTEGER | imset | The M-set flag (0=OFF, 1=ON). |
Output: | ||
INTEGER | id | The ID of the new connector property. |
INTEGER | <Return Value> | This function returns a value of 0 if successful. |
Error Conditions: | ||
DbDuplicateEntry DbMaterialNotFound |
fem_create_nodes_1 | (ref_coord_frame, anly_coord_frame, flag_geometry, node_select, point_select, fem_nodes_created) |
Description: | ||
This function will create and display new FEM nodes. | ||
Input: | ||
STRING | ref_coord_frame[] | This value specifies an identifier for the reference coordinate frame. |
STRING | anly_coord_frame[] | This value specifies an identifier for the analysis coordinate frame. |
INTEGER | flag_geometry | This value of 1 for the old associated being true and 2 to use the new numbering control scheme. |
STRING | node_select[] | This value specifies a selection of node identifiers to be used for the FEM nodes being created. |
STRING | point_select[] | This value specifies a selection of points defining the locations of the FEM nodes to be created. |
Output: | ||
STRING | fem_nodes_created[VIRTUAL] | This value returns a description of the FEM nodes created. |
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_create_elems_1 | (shape, element_type, element_select, connection_pattern, flag, corner1_node_select, corner2_node_select, corner3_node_select, corner4_node_select, corner5_node_select, corner6_node_select, corner7_node_select, corner8_node_select, fem_elements_created) |
Description: | ||
This function will create and display new elements. | ||
Input: | ||
STRING | shape[] | This value specifies the shape of the elements to be created. Currently, this value is not used. |
STRING | element_type[31] | This value specifies the element type to be created. See the remarks below. |
STRING | element_select[] | This value specifies a selection of element identifiers to be used for the elements being created. |
STRING | connection_pattern[31] | This value specifies the type of connection made between elements. This case sensitive value may be defined as “Elem Edge”, “Elem Face”, “PWL”, and “Standard”. Setting this argument to any other value will cause the default or “Standard” behavior to be used. |
INTEGER | flag | This value of 1 for the old midnode_flag being true and 2 to use the new numbering control scheme. |
STRING | corner1_node_select[] | This value specifies a selection of entities used to define the nodes for the first corner of the elements being created. |
STRING | corner2_node_select[] | This value specifies a selection of entities used to define the nodes for the second corner of the elements being created. |
STRING | corner3_node_select[] | This value specifies a selection of entities used to define the nodes for the third corner of the elements being created. |
STRING | corner4_node_select[] | This value specifies a selection of entities used to define the nodes for the fourth corner of the elements being created. |
STRING | corner5_node_select[] | This value specifies a selection of entities used to define the nodes for the fifth corner of the elements being created. |
STRING | corner6_node_select[] | This value specifies a selection of entities used to define the nodes for the sixth corner of the elements being created. |
STRING | corner7_node_select[] | This value specifies a selection of entities used to define the nodes for the seventh corner of the elements being created. |
STRING | corner8_node_select[] | This value specifies a selection of entities used to define the nodes for the eighth corner of the elements being created. |
Output: | ||
STRING | fem_elements_created[] | This value returns a description of the elements created. The storage space for this string must be allocated before this function is called. Unfortunately, the exact length requirements for this string is indeterminate. A good working value for the length of this string is: “the string length of the input value element_select + 256”. |
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
Type Value | Type Value |
Point | Tet14 |
Bar2 | Tet15 |
Bar3 | Tet16 |
Bar4 | Tet40 |
Tria3 | Wedge6 |
Tria4 | Wedge7 |
Tria6 | Wedge15 |
Tria7 | Wedge16 |
Tria9 | Wedge20 |
Tria13 | Wedge21 |
Quad4 | Wedge24 |
Quad5 | Wedge52 |
Quad8 | Hex8 |
Quad9 | Hex9 |
Quad12 | Hex20 |
Quad16 | Hex21 |
Tet4 | Hex26 |
Tet5 | Hex27 |
Tet10 | Hex32 |
Tet11 | Hex64 |
fem_create_mpc_cyclic_symmetry | (mpc_id, tolerance, cyl_coord_frame, dependent_region, independent_region) |
Description: | ||
This function will create and display a cyclic symmetry nodal MPC. | ||
Input: | ||
INTEGER | mpc_id | This value specifies the ID value to be used to identify the created MPC. |
REAL | tolerance | This value specifies the tolerance used when comparing the coordinates of the FEM nodes in the dependent and independent regions. This argument must have a positive, nonzero value. |
STRING | cyl_coord_frame[] | This value specifies the cylindrical coordinate frame whose z axis is the axis of symmetry. |
STRING | dependent_region[] | This value specifies a selection of entities that defines the dependent region. Entities in this region can be nodes, 3D element faces, 2D element edges, points, curves, or surfaces. |
STRING | independent_region[] | This value specifies a selection of entities that defines the independent region. Entities in this region can be nodes, 3D element faces, 2D element edges, points, curves, or surfaces. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_create_mpc_nodal | (mpc_id, mpc_type, constant, num_terms, dependency_state, term_coefficients, node_select, freedom_select) |
Description: | ||
This function will create and display an MPC which has an association with a selection of specified FEM nodes. | ||
Input: | ||
INTEGER | mpc_id | This value specifies the ID value to be used to identify the created MPC. |
STRING | mpc_type[31] | This value specifies the type of the MPC that will be created. |
REAL | constant | This value specifies the constant term used with an MPC of the “Explicit” type. |
INTEGER | num_terms | This value specifies the number of terms in the MPC. |
LOGICAL | dependency_state(num_terms) | This value specifies the dependency state for each term in the MPC where setting an offset to TRUE indicates that the term is dependent and setting an offset to FALSE indicates that the term is independent. |
REAL | term_coefficients(num_terms) | This value specifies the coefficients for each term in the MPC. |
STRING | node_select[](num_terms) | This value specifies the identifiers for the nodes used for each term in the MPC. |
STRING | freedom_select[](num_terms) | This value specifies the degrees of freedom for each term in the MPC. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
This is only a partial list of the error values that can be returned by this function. | ||
-1 | This is an internal status condition. There is no corresponding status message in the message database. | |
1 | This is an internal status condition. There is no corresponding status message in the message database. |
fem_create_mpc_nodal2 | (mpc_id, mpc_type, constant, num_terms, dependency_state, term_coefficients, node_select, freedom_select) |
Description: | ||
This function will create and display an MPC which has an association with a selection of specified FEM nodes. | ||
Input: | ||
INTEGER | mpc_id | This value specifies the ID value to be used to identify the created MPC. |
STRING | mpc_type[32] | This value specifies the type of the MPC that will be created. |
REAL | constant | This value specifies the constant term used with an MPC of the “Explicit” type. |
INTEGER | num_terms | This value specifies the number of terms in the MPC. |
LOGICAL | dependency_state(num_terms) | This value specifies the dependency state for each term in the MPC where setting an offset to TRUE indicates that the term is dependent and setting an offset to FALSE indicates that the term is independent. |
STRING | term_coefficients(num_terms) | This value specifies the coefficients for each term in the MPC. |
STRING | node_select[](num_terms) | This value specifies the identifiers for the nodes used for each term in the MPC. |
STRING | freedom_select[](num_terms) | This value specifies the degrees of freedom for each term in the MPC. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
This is only a partial list of the error values that can be returned by this function. | ||
-1 | This is an internal status condition. There is no corresponding status message in the message database. | |
1 | This is an internal status condition. There is no corresponding status message in the message database. |
fem_create_mpc_sliding_surface | (mpc_id, tolerance, coord_option, coord_frame, normal_axis, dependent_region, independent_region) |
Description: | ||
This function will create and display a sliding surface nodal MPC. | ||
Input: | ||
INTEGER | mpc_id | This value specifies the ID value to be used to identify the created MPC. |
REAL | tolerance | This value specifies the tolerance used when comparing the coordinates of the FEM nodes in the dependent and independent regions. This argument must have a positive, nonzero value. |
STRING | coord_option[31] | This value specifies that a coordinate system is to be user specified or internally created. This argument accepts “User Specified” and “Automatic” as the only valid setting. |
STRING | coord_frame[] | This value specifies the normal coordinate frame. This argument is used only when the input value coord_option is set to “User Specified”. |
STRING | normal_axis[31] | This value specifies the axis that is normal to every FEM node. This argument accepts “Axis 1”, “Axis 2”, and “Axis 3” as the only valid settings. This argument is used only when the input value coord_option is set to “User Specified”. |
STRING | dependent_region[] | This value specifies a selection of entities that defines the dependent region. Entities in this region can be 2D element edges, 2D elements, 3D element faces, 3D surface edges, and 3D surfaces. |
STRING | independent_region[] | This value specifies a selection of entities that defines the independent region. Entities in this region can be 2D element edges, 2D elements, 3D element faces, 3D surface edges, and 3D surfaces. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
db_update_mesh_params | (smooth_factor, maximum_cycles, acceleration_factor, termination_factor, triangular_surf_mesh, triangle_rectangle) |
Description: | ||
This function will update isometric mesh parameters in the database. | ||
Input: | ||
REAL | smooth_factor | This value specifies the weighting factor for smoothing a mesh. This value can range from 0.0 to 1.0. |
INTEGER | maximum_cycles | This value specifies the maximum number of smoothing cycles. |
REAL | acceleration_factor | This value specifies the smoothing acceleration factor which ranges from 0.0 to 1.0. |
REAL | termination_factor | This value specifies the smoothing termination factor which ranges from 0.0 to 0.2. |
INTEGER | triangular_surf_mesh | This value specifies the mesh pattern for surfaces with a triangular shape and can have a value of either 1 or 2. |
INTEGER | triangle_rectangle | This value specifies the triangular element pattern for rectangular surfaces and can have a value that ranges from 1 to 4. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
This is only a partial list of the error values that can be returned by this function. | ||
13000004 | Duplicate entry exists in table | |
13000007 | An unspecified database error occurred | |
13000047 | Mesh not found |
fem_create_mesh_2curve_1 | (curve1_select, curve2_select, size_method, flag, global_edge_length, num_along_curve, num_across_curve, element_topology, node_select, element_select, anly_coord_frame, ref_coord_frame, num_fem_nodes, num_fem_elements, fem_nodes_created, fem_elements_created) |
Description: | ||
This function will create a FEM surface mesh between two curves using an isometric meshing operation. | ||
Input: | ||
STRING | curve1_select[] | This value specifies a selection of entities that defines the first set of curves. |
STRING | curve2_select[] | This value specifies a selection of entities that defines the second set of curves. |
INTEGER | size_method | This value specifies the method used to determine the size of the mesh. Setting this value to 1 will allow the function to use the input values num_along_curve and num_across_curve. Setting this value to anything other than 1 will allow the input value global_edge_length to be used. |
INTEGER | flag | This value to use new numbering control scheme. |
REAL | global_edge_length | This value specifies the global element edge length used in creating the mesh. |
INTEGER | num_along_curve | This value specifies the number of mesh elements created along the curves defining the area where the mesh will be placed. |
INTEGER | num_across_curve | This value specifies the number of elements created across the curves defining the area where the mesh will be placed. |
STRING | element_topology[31] | This value specifies the topology of the element to be created. See the remarks below. |
STRING | node_select[] | This value specifies an optional selection of node identifiers. |
STRING | element_select[] | This value specifies an optional selection of element identifiers. |
STRING | anly_coord_frame[] | This value specifies an identifier for the analysis coordinate frame. |
STRING | ref_coord_frame[] | This value specifies an identifier for the reference coordinate frame. |
Output: | ||
INTEGER | num_fem_nodes | This value returns the number of FEM nodes created. |
INTEGER | num_fem_elements | This value returns the number of elements created. |
STRING | fem_nodes_created [VIRTUAL] | This value returns a description of the FEM nodes created. |
STRING | fem_elements_created [VIRTUAL] | This value returns a description of the elements created. |
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
Topology Value | Topology Value |
Quad4 | Tria3 |
Quad5 | Tria4 |
Quad8 | Tria6 |
Quad9 | Tria7 |
Quad12 | Tria9 |
Quad16 | Tria13 |
fem_create_mesh_curv_1 | (curve_select, flag, global_edge_length, element_topology, node_select, element_select, anly_coord_frame, ref_coord_frame, num_fem_nodes, num_fem_elements, fem_nodes_created, fem_elements_created) |
Description: | ||
This function will create a FEM curve mesh using an isometric meshing operation. | ||
Input: | ||
STRING | curve_select[] | This value specifies a selection of curves to be meshed. |
INTEGER | flag | This value to use new numbering control scheme. |
REAL | global_edge_length | This value specifies the global element edge length to be used for the mesh. This value must be greater than 0. |
STRING | element_topology[31] | This value specifies the topology of the elements to be created and can be set to “Bar2”, “Bar3”, and “Bar4” only. |
STRING | node_select[] | This value specifies an optional selection of FEM node identifiers. |
STRING | element_select[] | This value specifies an optional selection of element identifiers. |
STRING | anly_coord_frame[] | This value specifies an identifier for the analysis coordinate frame. |
STRING | ref_coord_frame[] | This value specifies an identifier for the reference coordinate frame. |
Output: | ||
INTEGER | num_fem_nodes | This value returns the number of FEM nodes created by this function. |
INTEGER | num_fem_elements | This value returns the number of elements created by this function. |
STRING | fem_nodes_created [VIRTUAL] | This value returns a description of the FEM nodes created. |
STRING | fem_elements_created [VIRTUAL] | This value returns a description of the elements created. |
fem_create_mesh_sol_3 | (mesher, options_control, solid_select, num_values, value_array, element_topology, node_select, element_select, anly_coord_frame, ref_coord_frame, num_fem_nodes, num_fem_elements, fem_nodes_created, fem_elements_created) |
Description: | ||
This function will create a FEM solid mesh. | ||
Input: | ||
STRING | mesher[31] | This value specifies the type of mesher to be used to create the FEM mesh and can be set to either “IsoMesh” or “TetHybrid”. |
INTEGER | options_control | This value specifies the use of various options influencing the creation of the FEM mesh. |
STRING | solid_select[] | This value specifies a selection of solids to be meshed. |
INTEGER | num_values | This value specifies the number of entries in the input value value_array. |
REAL | value_array(num_values) | Values used by the meshers. |
STRING | element_topology[31] | This value specifies the topology of the elements to be created. See the remarks below. |
STRING | node_select[] | This value specifies an optional selection of FEM node identifiers. |
STRING | element_select[] | This value specifies an optional selection of element identifiers. |
STRING | anly_coord_frame[] | This value specifies an identifier for the analysis coordinate frame. |
STRING | ref_coord_frame[] | This value specifies an identifier for the reference coordinate frame. |
Output: | ||
INTEGER | num_fem_nodes | This value returns the number of FEM nodes created by this function. |
INTEGER | num_fem_elements | This value returns the number of elements created by this function. |
STRING | fem_nodes_created [VIRTUAL] | This value returns a description of the FEM nodes created. |
STRING | fem_elements_created [VIRTUAL] | This value returns a description of the elements created. |
Type Value | Type Value |
Tet4 | Wedge20 |
Tet5 | Wedge21 |
Tet10 | Wedge24 |
Tet11 | Wedge52 |
Tet14 | Hex8 |
Tet15 | Hex9 |
Tet16 | Hex20 |
Tet40 | Hex21 |
Wedge6 | Hex26 |
Wedge7 | Hex27 |
Wedge15 | Hex32 |
Wedge16 | Hex64 |
fem_create_mesh_sol_5 | (solid_list, mesher_pick, elem_topo, mesher_val_qtt, ac_mesher_val, flags, FMF_perform, FMF_make_dup_node, FMF_stop_when_interf_meshed, FMF_use_prox_tol, FMF_prox_tol, FMF_solid_neighbors, node_list, elem_list, a_coord_frame, r_coord_frame, num_nodes, num_elems, nodes_created, elems_created) |
Description: | ||
This function will call the appropriate solid mesher. | ||
Input: | ||
STRING | solid_list[] | List of solids to be meshed. Ex: “Solid 1:3” |
STRING | mesher_pick[] | Mesher to be used: “IsoMesh”, “TetState”, “TetAries” or “TetHybrid” (same mesher, different names), or “HexMesh.” |
STRING | elem_topo[] | Element topology (i.e. “Tet4”, “Tet10”, “Tet16”). |
INTEGER | mesher_val_qtt | Number of values in ac_mesher_val(). |
STRING | ac_mesher_val[] (1:NUMVAL) | Note that NUMVAL=4 (1) : Global Edge Length (2) : Maximum h/L curvature error. (3) : Minimum Edge Length as a ratio of the Global Edge Length. (4) : 0.0 |
INTEGER | flags | = 0 as default += 4 (FEM_MF_CREATE_P_ELEMENTS_F) --> Create P- Elements. += 1 (FEM_MF_PREVIEW_ON_F) --> Do a preview. += 16384 (FEM_MF_USE_NEW_NUMBERING_CONTROL_F) --> To use the new numbering control (we always want this). += 1048576 (FEM_MF_GRADE_MESH_F) --> Allow for mesh internal coarsening. += 16 (FEM_MF_CURVATURE_CHECK_F) --> Perform mesh curvature check. += 512 (FEM_MF_ALLOW_TRIS_IN_QUAD_MESH_F) --> If we allow Tris in Quad meshes. |
INTEGER | FMF_perform | Note: FMF_ stands for “force-matched face.” Force faces to match when they are non-congruent or doubled. This is known as assembly meshing. 1--> YES 0--> NO |
INTEGER | FMF_make_dup_node | For force-matched faces, create duplicate nodes. 1--> YES 0-> NO |
INTEGER | FMF_stop_when_interf_meshed | For force-matched solid faces, stop and return 2D meshes once established. 1--> YES 0--> NO |
INTEGER | FMF_use_prox_tol | For force-matched solid faces, to determine matching solid faces. A temporary parasolid geometric imprinting is always performed, but we should always use a proximity tolerance as well (used at geometric vertices and edge midpoints). 1--> YES 0--> NO |
REAL | FMF_prox_tol | For force-matched solid faces, this is the proximity tolerance value used to determine if they should match or not. |
STRING | FMF_solid_neighbors[] | For force-matched solid faces, this is a list of neighboring solids for which we will attempt to match existing meshed faces. Matching faces are determined by a proximity tolerance (FMF_prox_tol) on geometric vertices and edge midpoints. Ex: “Solid 4:5” |
STRING | node_list[] | List of output node IDs. Ex: “Node 1:100” |
STRING | elem_list[] | List of output element IDs. Ex: “Elm 1:100” |
STRING | a_coord_frame[] | Analysis coordinate frame. Ex: “Coord 0” |
STRING | r_coord_frame[] | Reference coordinate frame. Ex: “Coord 0” |
Output: | ||
INTEGER | num_nodes | Number of nodes created. |
INTEGER | num_elems | Number of elements created. |
STRING | nodes_created [] | IDs of nodes created. Ex: “Node 1:100” Allocation is done within, you need to release with sys_free_string(). |
STRING | elems_created [] | IDs of elements created. Ex: “Elm 1:100” Allocation is done within, you need to release with sys_free_string(). |
Type Value | Type Value |
Tet4 | Wedge20 |
Tet5 | Wedge21 |
Tet10 | Wedge24 |
Tet11 | Wedge52 |
Tet14 | Hex8 |
Tet15 | Hex9 |
Tet16 | Hex20 |
Tet40 | Hex21 |
Wedge6 | Hex26 |
Wedge7 | Hex27 |
Wedge15 | Hex32 |
Wedge16 | Hex64 |
fem_create_mesh_surf_3 | (mesher, options_control, surface_select, num_values, value_array, element_topology, node_select, element_select, anly_coord_frame, ref_coord_frame, num_fem_nodes, num_fem_elements, fem_nodes_created, fem_elements_created) |
Description: | ||
This function will create a FEM surface mesh. | ||
Input: | ||
STRING | mesher[31] | This value specifies the type of mesher to be used to create the FEM mesh and can be set to either “IsoMesh” or “Paver”. |
INTEGER | options_control | This value specifies the use of various options influencing the creation of the FEM mesh. See the remarks below. Multiple options can be set by adding together the values for the different options. For example: setting this input value to 9748 would turn on all of the options. |
STRING | surface_select[] | This value specifies a selection of surfaces to be meshed. |
INTEGER | num_values | This value specifies the number of entries in the input value value_array. This value should be set to 1 if the input value mesher is set to “IsoMesh” and 4 if the input value mesher is set to “Paver”. |
STRING | value_array(num_values)[] | This value specifies the global edge length in offset 1, the allowable curvature error for the curvature check in offset 2, the minimum desired edge length for the mesh in offset 3, and the maximum desired edge length for the mesh in offset four. The global edge length must be greater than 0.0. The allowable curvature error can range from 0.0 to 0.25. The desired edge length values must both be greater than zero and the maximum value must be greater than the minimum value. Offset 1 is used only when the input value mesher”is set to “IsoMesh” and the offsets 2, 3, and 4 are used only when the input value mesher is set to “Paver”. |
STRING | element_topology[31] | This value specifies the topology of the elements to be created. See the remarks below. |
STRING | node_select[] | This value specifies an optional list of FEM nodes. |
STRING | element_select[] | This value specifies an optional list of elements. |
STRING | anly_coord_frame[] | This value specifies an identifier for the analysis coordinate frame. |
STRING | ref_coord_frame[] | This value specifies an identifier for the reference coordinate frame. |
Output: | ||
INTEGER | num_fem_nodes | This value returns the number of FEM nodes created by this function. |
INTEGER | num_fem_elements | This value returns the number of elements created by this function. |
STRING | fem_nodes_created [VIRTUAL] | This value returns a description of the FEM nodes created. |
STRING | fem_elements_created [VIRTUAL] | This value returns a description of the elements created. |
Value | Option Description |
4 | Create a p-element mesh to be created. |
16 | Do a curvature check operation. |
512 | Allow triangular elements in a quad mesh |
1024 | Use the global space only. |
8192 | Use the desired edge lengths |
0 | Global Length |
1 | Maximum Deviation |
2 | Minimum Length |
3 | Maximum Length |
Type Value | Type Value | |
Quad4 | Tria3 | |
Quad5 | Tria4 | |
Quad8 | Tria6 | |
Quad9 | Tria7 | |
Quad12 | Tria9 | |
Quad16 | Tria13 |
fem_create_mesh_surf_4 | (mesher_pick, flag, surface_list, num_val, val_array_str, elem_topo, node_list, elem_list, a_coord_frame, r_coord_frame, num_nodes, num_elems, nodes_created, elems_created) |
Description: | ||
This function will deal with the various meanings of the val_array data. | ||
Input: | ||
STRING | mesher_pick[] | Mesher to be used: “IsoMesh” or “Paver”. |
INTEGER | flag | Flag word, not used yet. The integer input value flag can have the following values: Value Option Description 4 Create a p-element mesh to be created. 16 Do a curvature check operation. 512 Allow triangular elements in a quad mesh 1024 Use the global space only. 8192 Use the desired edge lengths |
STRING | surface_list[] | List of surfaces to be meshed. |
INTEGER | num_val | Number of float values. |
STRING | val_array_str[] | String values. The string input array val_array_str can have the following values: 0 Global Length 1 Maximum Deviation 2 Minimum Length 3 Maximum Length |
STRING | elem_topo[] | Element topology (i.e.; “Quad4”). |
STRING | node_list[] | List of output node IDs. |
STRING | elem_list[] | List of output element IDs. |
STRING | a_coord_frame[] | Analysis coordinate frame. |
STRING | r_coord_frame[] | Reference coordinate frame. |
Output: | ||
INTEGER | num_nodes | Number of nodes created. |
INTEGER | num_elems | Number of elements created. |
STRING | nodes_created [] | IDs of nodes created. |
STRING | elems_created [] | IDs of elements created. |
Type Value | Type Value |
Quad4 | Tria3 |
Quad5 | Tria4 |
Quad8 | Tria6 |
Quad9 | Tria7 |
Quad12 | Tria9 |
Quad16 | Tria13 |
fem_create_mesh_quad_4 | ( in_elem_list, bndy_vert_list, bndy_edge_list, bndy_seed_list, hard_node_list, hard_edge_list, soft_edge_list, hard_elem_list, user_node_id_list, user_elem_id_list, elem_type, elem_size, int_param, feature_param, num_out_elems, num_out_nodes, out_elem_list, out_node_list ) |
Description: | ||
These functions will convert an input shell mesh to a quad/tria mesh. | ||
Input: | ||
STRING | in_elem_list | A list of element ids ( "ELEM2D" ). If the "Guide elements" integer parameter ( offset 16 ) = 0 these are the elements on the input mesh. = 1 these are the guiding elements for the elements ids to be obtained from groups. |
STRING | bndy_vert_list | A list of 4 or less node ids defining the boundary verticies used for iso-meshing. See the "Use iso-meshing" ( offset 3 ) integer parameter. |
STRING | bndy_edge_list | A list of bar element ids defining input boundary edges. |
STRING | bndy_seed_list | A list of node ids defining boundary seeds. These boundary seeds may or may not be on the input mesh defined for in_elem_list. See the "Seed type" integer parameter ( offset 1 ). |
STRING | hard_node_list | A list of node ids for defining hard nodes. The nodes may or may not be on the input mesh and or the boundary of the input mesh. |
STRING | hard_edge_list | A list of bar element ids defining hard edges. The end nodes of the hard edges may or may not be on the input mesh and or the boundary of the of the input mesh. |
STRING | soft_edge_list | A list of bar element ids defining soft edges. The end nodes of the soft edges may or may not be on the input mesh and or the boundary of the of the input mesh. |
STRING | file_name | The input data file name. |
STRING | user_node_id_list | A list of output node ids defined by the user. |
STRING | user_elem_id_list | A list of output element ids defined by the user. |
STRING | elem_type | The output element type. Currently only "Quad4" and "Tria3" are supported. |
REAL | elem_size | The created element length. |
INTEGER | int_param | This value provides integer parameters. The fem_create_mesh_mom ( ) function call accepts a maximum of 30 integer parameters. The fem_create_mesh_quad_4 ( ) function call accepts a maximum of 8 integer parameters and should be considered to be OBSOLETE. See integer parameter definitions in Notes below. |
REAL | feature_param | This value provides real parameters. The fem_create_mesh_mom ( ) function call accepts a maximum of 30 real parameters. The fem_create_mesh_quad_4 ( ) function call accepts a maximum of 8 real parameters and should be considered to be OBSOLETE. See feature parameter definitions in Notes below. |
Output: | ||
INTEGER | num_out_elems | The number of elements created. |
INTEGER | num_out_nodes | The number of nodes created. |
STRING | out_elem_list [ VIRTUAL ] | A list of the created element ids. |
STRING | out_node_list [ VIRTUAL ] | A list of the created node ids. |
INTEGER | <return value> | A value of zero if the function executed correctly. |
fem_create_mshctl_surface.exec | (surface_list, global_edge_length) |
Description: | ||
This function creates a surface mesh control that will be used to mesh the interior of the surface. The mesh length given in the Create-Mesh form will continue to drive the element edge lengths on the boundary of the surfaces selected for meshing, irrespective of the mesh control applied to the surfaces. | ||
Input: | ||
STRING | surface_list[VIRTUAL] | This value specifies the list of surfaces to which surface mesh control must be applied. |
STRING | global_edge_length | Global element length for the surfaces in surface_list |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_create_surface_mesh_control | (surface_list, num_int_arg, int_arg_list, num_float_arg, float_arg_list) |
Description: | ||
This function creates a surface mesh control that will be used to mesh the interior of the surface. The mesh length given in the Create-Mesh form will continue to drive the element edge lengths on the boundary of the surfaces selected for meshing, irrespective of the mesh control applied to the surfaces. | ||
Input: | ||
STRING | surface_list[VIRTUAL] | This value specifies the list of surfaces to which surface mesh control must be applied. |
INTEGER | num_int_arg | This value specifies the number of arguments in the input array int_arg_list. |
INTEGER | int_arg_list(4) | This value specifies an array of integer values. The delimiter for each argument is a comma (,). The items in order in the list are as follows: Mesher Type: 1= Iso mesher, and 2 = Paver. Global Space Meshing Only: 1 = True, and 0 = False. Curvature Refinement: 1 = True, and 0 = False. p-Element Mesh: 1 = True, and 0 = False. |
INTEGER | num_float_arg | This value specifies the number of arguments in the input array float_arg_list. |
REAL | float_arg_list(3) | This value specifies an array of real (float) values. The delimiter for each item is a comma (,). The items in order in the list are as follows: Global element length for the surfaces in surface_list The next two fields are not used currently. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_mom_region_mesh | ( surf_list, feature_curve_list, feature_vertex_list, iso_mesh_flag, feature_flag, seed_type, num_val, val_array_str, elem_topo, node_list, elem_list, num_nodes, num_elems, nodes_created, elems_created ) |
Description: | ||
This function will create a shell mesh on a congruent surfaced model and preserve the feature curves and feature vertices on the output mesh. | ||
Input: | ||
STRING | surf_list | The list of surface to be meshed. |
STRING | feature_curve_list | The list of curves to be preserved. |
STRING | feature_vertex_list | The list of vertices on the boundary of the region or feature curves to be preserved. |
INTEGER | iso_mesh_flag | A value of 0 will turn this feature off. If the flag is on or 1, the program will iso-mesh a 3/4 sided region. The first 3/4 vertices on the feature_vertex_list will be the vertices of the region. |
INTEGER | feature_flag | A value of 0 will turn this feature off. If the flag is on or 1, the program will define the feature edge/vertex based on the feaure_edge_angle and feature_vertex_angle. |
INTEGER | seed_type | The following values can be used: 0 Uniform boundary seeding. 1 Curvature based boundary seeding. 2 Keep all boundary vertices. |
INTEGER | num_val | The number of offsets in the val_array_str array of strings. This value must be greater than 0 and less than or equal to 6. |
STRING | val_array_str | An array of strings providing input real values. The offsets are to be used as follows: Offset Description 1 Element size 2 Height/Length ratio 3 "Minimum size"/"Element Size" ratio 4 Maximum size 5 Feature edge angle 6 Feature vertex angle |
STRING | elem_topo | Element topology: "Quad" or "Tria" |
STRING | node_list | List of output node IDs. |
STRING | elem_list | List of output element IDs. |
Output: | ||
INTEGER | num_nodes | The number of nodes created. |
INTEGER | num_elems | The number of elements created. |
STRING | nodes_created | The ids of nodes created. |
STRING | elems_created | The ids of elements created. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_prj_nod_surf_norm | (node_select, surface_select) |
Description: | ||
This function will project FEM nodes onto surfaces using the closest approach method. | ||
Input: | ||
STRING | node_select[] | This value specifies a selection of FEM nodes to be projected onto the surfaces. |
STRING | surface_select[] | This value specifies a selection of surfaces on which the FEM nodes will be projected. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_prj_nod_surf_vect | (node_select, surface_select, projection_option, projection_vector, coord_frame) |
Description: | ||
This function will project FEM nodes onto surfaces using one of three possible methods. | ||
Input: | ||
STRING | node_select[] | This value specifies a selection of FEM nodes to be projected onto the surfaces. |
STRING | surface_select[] | This value specifies a selection of surfaces on which the FEM nodes will be projected. |
INTEGER | projection_option | This value specifies the method to be used in projecting the FEM nodes onto the surfaces: 1 = the closest approach method, 2 = use a vector projection method, and 3 = the view vector method. |
STRING | projection_vector[] | This value specifies the projection vector used when the input value projection_option is set to 2. |
STRING | coord_frame[] | This value specifies the coordinate frame used with the input value projection_vector. This value is only used when the input value projection_option is set to 2. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_prj_nod_curve_norm | (node_select, curve_select) |
Description: | ||
This function will project FEM nodes onto curves using the closest approach method. | ||
Input: | ||
STRING | node_select[] | This value specifies a selection of FEM nodes to be projected onto the curves. |
STRING | curve_select[] | This value specifies a selection of curves onto which the FEM nodes will be projected. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
fem_prj_nod_cplane | (node_select, direction, constant_value, coord_frame) |
Description: | ||
This function will project FEM nodes onto a constant plane. | ||
Input: | ||
STRING | node_select[] | This value specifies a selection of FEM nodes to be projected onto the plane. |
INTEGER | direction | This value specifies the direction of a vector used to project the nodes onto the plane and is normal to that plane. This value can be set to 1= X axis, 2 = Y axis, or 3 = Z axis. |
REAL | constant_value | This value specifies the distance from the origin along the axis specified by the input value direction at which the constant plane is defined. |
STRING | coord_frame[] | This value specifies the coordinate frame for the input value node_select and the constant plane. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
mesh_seed_create | (curve_select, seed_option, num_seeds, ratio, length_1, length_2) |
Description: | ||
This function will create and display FEM mesh seeds on a selection of curves based on a uniform, a one-way bias, or a two-way bias mesh seed spacing. | ||
Input: | ||
STRING | curve_select[] | This value specifies a selection of curves to be seeded. |
INTEGER | seed_option | This value specifies the options for this function. See the remarks below. |
INTEGER | num_seeds | This value specifies the number of seeds per edge for use when the input value seed_option is set to 1, 3, or 5. |
REAL | ratio | This value specifies the length ratio used when the input value seed_option is set to 3 or 5. This value must be greater than 0. |
REAL | length_1 | This value specifies the first element length used when the input value seed_option is set to 2, 4, or 6. This value must be greater than 0. |
REAL | length_2 | This value specifies the second element length used when the input value seed_option is set to 4 or 6. This value must be greater than the input value “length_1”. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
See the Status Messages for information on any error values returned by this function. |
Value | Description |
1 | Space the mesh seeds in a uniform manner using the input value num_seeds to define the number of mesh seeds per edge. |
2 | Space the mesh seeds in a uniform manner using the input value length_1 to define the distance between the mesh seeds. |
3 | Space the mesh seeds using a one way bias defined by the input values length_1 and ratio. |
4 | Space the mesh seeds using a one way bias defined by the input value length_2 divided by the input value length_1. |
5 | Space the mesh seeds using a two way bias defined by the input value num_seeds and ratio. |
6 | Space the mesh seeds using a two way bias defined by the input value length_2 divided by the input value length_1. |
mesh_seed_create_curv_based | (curve_select, element_length_type, allow_curve_error, constraint_option, minimum_id_length, maximum_id_length, minimum_number, maximum_number) |
Description: | ||
This function will create and display FEM mesh seeds on a selection of curves based on the allowable curve error and either the number of mesh seeds per element or the length of an element. | ||
Input: | ||
STRING | curve_select[] | This value specifies a selection of curves to be seeded. |
STRING | element_length_type[31] | This value specifies an element length type of either “Uniform” or “Variable”. |
REAL | allow_curve_error | This value specifies the allowable curvature error which must be greater than 0. |
STRING | constraint_option[31] | This value specifies the element constraint option of either “Length” or “Number”. This value is used to select between the use of the input values minimum_id_length and maximum_id_length or minimum_number and maximum_number. |
REAL | minimum_id_length | This value specifies the minimum length of an element that will be seeded. This value must be equal to or greater than 0 and is used only when the input value constraint_option is set to “Length”. |
REAL | maximum_id_length | This value specifies the maximum length of an element that will be seeded. This value must be greater than the input value minimum_id_length and is used only when the input value constraint_option is set to “Length”. |
INTEGER | minimum_number | This value specifies the minimum number of mesh seeds that will be placed on an element. This value must be greater than 0 and is used only when the input value constraint_option is set to “Number”. |
INTEGER | maximum_number | This value specifies the maximum number of mesh seeds that will be placed on an element. This value must be greater than the input value minimum_number and is used only when the input value constraint_option is set to “Number”. |
Output: | ||
None. | ||
Error Conditions: | ||
None. |
mesh_seed_create_tabular | (curve_select, coord_type, num_entries, table_of_values) |
Description: | ||
This function will create and display FEM mesh seeds at specific points on a selection of curves using a table of either percentage values of the arc length or of the parametric length of a curve. | ||
Input: | ||
STRING | curve_select[] | This value specifies a selection of curves to be seeded. |
STRING | coord_type[] | This value specifies the coordinate type used in the input value table_of_values and can be set to either “Arc Length” or “Parametric”. |
INTEGER | num_entries | This value specifies the number of entries in the input value table_of_values. |
REAL | table_of_values(num_entries + 2) | This value specifies a table of either percentage values of the arc length or of the parametric length of a curve. The number of offsets allocated for this array should be two greater than the input value num_entries to allow for the inclusion of the values 0.0 and 1.0. All entries in this table can range from 0.0 to 1.0. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
1 | This is an internal status condition. There is no corresponding status message in the message database. |
mesh_seed_create_tabular2 | (curve_select, coord_type, num_entries, table_of_values) |
Description: | ||
This function will create and display FEM mesh seeds at specific points on a selection of curves using a table of either percentage values of the arc length or of the parametric length of a curve. | ||
Input: | ||
STRING | curve_select[] | This value specifies a selection of curves to be seeded. |
STRING | coord_type[] | This value specifies the coordinate type used in the input value table_of_values and can be set to either “Arc Length” or “Parametric”. |
INTEGER | num_entries | This value specifies the number of entries in the input value table_of_values. |
STRING | table_of_values(num_entries + 2) | |
This value specifies a table of either percentage values of the arc length or of the parametric length of a curve. The number of offsets allocated for this array should be two greater than the input value num_entries to allow for the inclusion of the values 0.0 and 1.0. All entries in this table can range from 0.0 to 1.0. Table_of_values is a string array so that each element can support unevaluated PCL expressions. | ||
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
1 | This is an internal status condition. There is no corresponding status message in the message database. |
mesh_seed_create_tabular_points | (curve_list, point_list, tolerance) |
Description: | ||
This function will create a mesh seed on a curve or an edge using the nodes, points or locations provided in the point_list. The points (nodes) should lie within tolerance specified. | ||
Input: | ||
STRING | curve_list[VIRTUAL] | This value specifies a list of curves or edges on which mesh seed needs to be created. |
STRING | point_list[VIRTUAL] | This value specifies the list of locations. This value could be nodes, points, or [x y z] locations. |
REAL | tolerance | This value specifies the tolerance within which the items in the input value point_list should lie with respect to the curve to create a tabular mesh seed. |
Output: | ||
INTEGER | <Return Value> | This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error. |
Error Conditions: | ||
MSG_FEM_SEED_00_ADDED - Arc length ratio 0.0 added to seed table for start point of curve. MSG_FEM_SEED_10_ADDED - Arc length ratio 1.0 added to seed table for end point of curve. While the above two can be ignored all other error messages should be handled as the situation warrants. See the Status Messages for information on any error values returned by this function. |
mesh_seed_display_mgr.init | () |
Description: | ||
This function will initialize the mesh seed display manager. | ||
Input: | ||
None. | ||
Output: | ||
None. | ||
Error Conditions: | ||
None. |
mesh_seed_display_mgr.plot | () |
Description: | ||
This function will display all visible mesh seeds in the current viewport. | ||
Input: | ||
None. | ||
Output: | ||
None. | ||
Error Conditions: | ||
None. |
mesh_seed_display_mgr_erase | () |
Description: | ||
This function will erase all visible mesh seeds in the current viewport. | ||
Input: | ||
None. | ||
Output: | ||
None. | ||
Error Conditions: | ||
None. |
mesh_seed_display_mgr.refresh | () |
Description: | ||
This function will refresh the mesh seed shown in the current viewport if the mesh seeds are displayed. | ||
Input: | ||
None. | ||
Output: | ||
None. | ||
Error Conditions: | ||
None. |