You are on page 1of 676

C O N T E N T S

MSC.Acumen Toolkit
MSC.Acumen,
Volume
Function
Descriptions
1:
Function Descriptions MSC.Acumen Toolkit,
Function Descriptions

CHAPTER
1
Introduction ■ Introduction, 2
■ General Built-ins, 3
• is_batch, 3
• db_get_p3_version, 3
• utl_get_terse_version, 3
• utl_query_version_level, 4
■ Synchronizing with Startup, Exit, and Database Events, 5
• user_start, 5
• user_quit, 5
• user_db_new, 5
• user_db_open, 6
• user_db_close, 6

2
Model ■ General, 8
• db_get_db_version, 8
• db_get_general_field, 8
• db_get_general_field_length, 9
• db_get_model_file_suffix, 9
■ User Defined, 10
• db_create_client_data, 10
• db_count_client_labels_by_type, 11
• db_count_general_field, 11
• db_get_all_client_data, 11
• db_get_client_data, 12
• db_get_client_id_by_label, 13
• db_get_client_labels_by_type, 13
• db_get_client_label_by_id, 15
• db_get_next_client_entity_label, 15
• db_delete_client_data, 16

3
Files ■ General, 18
• file_is_directory, 18
• get_current_dir, 18
• p3_ps_get_xmt, 18
• set_current_dir, 19
Main Index
• utl_is_locked_file, 19
• utl_lock_file, 20
• utl_unlock_file, 20
• uil_file_open.open_db, 21
■ IGES and CAD Access, 22
• ugi_export_iges_v1, 22
• ugi_import_iges_v3, 22
■ Journal and Session, 25
• jou_file_write, 25
• sf_write_disable, 25
■ Neutral, 26
• neutral_export2, 26
• nf_write, 26
• nf_write2, 27
■ FrameMaker Files, 28
• ui_form_to_frame, 28
• ui_framemaker, 28

4
Graphics ■ General, 30
• ga_error, 30
• verify_boundaries_display_mgr.initialize, 30
• verify_boundaries_display_mgr.plot, 30
• verify_boundaries_display_mgr.erase, 31
■ Element Tables, 32
• ga_elem_scalar_create, 32
• ga_elem_scalar_single_create, 32
• ga_vector_create, 33
• ga_vector_get, 34
• ga_vector_number_get, 35
■ Light Source, 36
• ga_light_attenuation_get, 36
• ga_light_attenuation_set, 36
• ga_light_color_get, 36
• ga_light_color_set, 37
• ga_light_create, 37
• ga_light_delete, 38
• ga_light_direction_get, 38
• ga_light_direction_set, 38
• ga_light_icon_get, 39
• ga_light_icon_set, 39
• ga_light_intensity_get, 40
• ga_light_intensity_set, 40
• ga_light_lights_get, 40
• ga_light_location_get, 41
• ga_light_location_set, 41
• ga_light_movement_get, 42
• ga_light_movement_set, 42
• ga_light_nlights_get, 42
Main Index
• ga_light_nposted_get, 43
• ga_light_post, 43
• ga_light_posted_get, 43
• ga_light_type_get, 44
• ga_light_type_set, 44
• ga_light_unpost, 45
■ Color Look-up Tables, 46
• ga_lookup_colors_get, 46
• ga_lookup_colors_set, 46
• ga_lookup_create, 47
• ga_lookup_current_get, 47
• ga_lookup_current_set, 47
• ga_lookup_delete, 48
• ga_lookup_ncolors_get, 48
• ga_lookup_ntables_get, 49
• ga_lookup_rename, 49
• ga_lookup_tables_get, 49
■ Deformation Plots, 51
• ga_node_deform_create, 51
■ Ranges, 52
• ga_range_contour_get, 52
• ga_range_contour_set, 52
• ga_range_create, 52
• ga_range_delete, 53
• ga_range_exist_get, 53
• ga_range_nranges_get, 54
• ga_range_nvalues_get, 54
• ga_range_ranges_get, 54
• ga_range_rename, 55
• ga_range_startend_set, 55
• ga_range_threshold_set, 55
• ga_range_values_get, 56
• ga_range_values_set, 56
■ Spectrums, 58
• ga_spectrum_colors_get, 58
• ga_spectrum_colors_set, 58
• ga_spectrum_continuous_get, 59
• ga_spectrum_continuous_set, 59
• ga_spectrum_create, 59
• ga_spectrum_current_get, 60
• ga_spectrum_current_set, 60
• ga_spectrum_delete, 61
• ga_spectrum_interpolation_get, 61
• ga_spectrum_interpolation_set, 61
• ga_spectrum_ncolors_get, 62
• ga_spectrum_nspectrums_get, 62
• ga_spectrum_rename, 63
• ga_spectrum_spectrums_get, 63
■ Titles, 64
• ga_title_color_get, 64
• ga_title_color_set, 64
Main Index
• ga_title_create, 64
• ga_title_delete, 65
• ga_title_font_size_get, 65
• ga_title_font_size_set, 66
• ga_title_list_get, 66
• ga_title_loc_get, 66
• ga_title_loc_set, 67
• ga_title_nposted_get, 67
• ga_title_num_get, 68
• ga_title_posted_get, 68
• ga_title_rename, 68
■ Graphics Manager, 69
• db_get_current_viewport_id, 69
• ga_view_normal_get, 69
• gm_convert_name, 69
• gm_conv_device_to_subject, 70
• gm_database_current, 70
• gm_draw_entity, 70
• gm_fit_view, 71
• gm_fullcolor_mode, 71
• gm_graphics_off, 71
• gm_graphics_on, 72
• gm_hilight_clear, 72
• gm_hilight_entity, 72
• gm_hilight_string, 73
• gm_hilight_widget, 73
• gm_lookup_write, 73
• gm_mpeg_pause_recording, 74
• gm_mpeg_resume_recording, 74
• gm_mpeg_start_recording, 74
• gm_mpeg_stop_recording, 75
• gm_viewport_hardware_mode_get, 75
• gm_viewport_hardware_mode_set, 75
• gm_viewport_id_to_name, 76
• gm_viewport_limits_get, 76
• gm_viewport_ncolors_get, 76
• gm_viewport_refresh_off, 77
• gm_viewport_refresh_on, 77
• gm_viewport_refresh_status, 77
• gm_viewport_view_corners, 78
• gm_visibility_all, 78
• gm_visibility_widget, 78
• end_vrml_animation, 79
• gm_write_image, 79
• gm_write_vrml, 80
• start_vrml_animation, 80
■ Clipping Planes, 81
• ga_clip_plane_clip_planes_get, 81
• ga_clip_plane_create, 81
• ga_clip_plane_delete, 81
• ga_clip_plane_direction_get, 82
• ga_clip_plane_direction_set, 82
• ga_clip_plane_icon_get, 83
Main Index
• ga_clip_plane_icon_set, 83
• ga_clip_plane_location_get, 83
• ga_clip_plane_location_set, 84
• ga_clip_plane_movement_get, 84
• ga_clip_plane_movement_set, 85
• ga_clip_plane_nclip_planes_get, 85
• ga_clip_plane_nposted_get, 85
• ga_clip_plane_post, 86
• ga_clip_plane_posted_get, 86
• ga_clip_plane_unpost, 86
• ga_clip_plane_up_set, 87
• clip_plane_ar_calc, 87
• clip_plane_zoom_calc, 88

5
User Interface ■ Error Message Handling, 90
• appcode, 90
• app_db_err_msg, 90
• msg_format_string, 90
• msg_get_application, 91
• msg_string_more, 91
• msg_to_file, 91
• msg_to_string, 92
• user_message, 92
• notemessage.text, 93
■ List Processor, 94
- Include files, 94
• app_count_list, 94
• app_ids_to_vstring, 94
• app_int_array_to_vstring, 95
• asm_u_coord_global_to_local, 95
• asm_u_lp_get_entity_label, 96
• asm_u_lp_get_point, 96
• asm_u_lp_get_vector, 96
• lp_eval_cleanup, 97
• lp_geometry_text, 97
• lp_keyword_text, 98
■ General, 100
• uid_get_screen_info, 100
• uid_get_border_sizes, 100
• uid_get_font_heights, 101
• uid_set_sys_pix, 101
• uil_app_analysis.get_real_name, 101
• uil_pcntcomplete.close, 102
• uil_pcntcomplete.initlz, 102
• uil_primary.get_menubar_id, 102
• ui_sys_command, 103
• ui_sys_return, 103
• ui_text_select, 103
• ui_wid_exit, 104
• ui_wid_hide_forms, 104
Main Index
• ui_exec_command, 104
• ui_form_delete, 104
• ui_form_exists, 105
• ui_form_is_displayed, 105
• ui_graph_create, 106
• ui_is_initialized, 106
• ui_get_client, 106
• ui_get_server, 107
■ Widgets, 108
• ui_clear_focus, 108
• ui_wid_restore_widget, 108
• ui_wid_save_widget, 108
• uil_utils_listbox.select, 109
• uil_utils_listbox.select_none, 109
• uil_utils_listbox.select_list, 109
• uil_utils_listbox.create_list, 110
• uil_utils_listbox.append_list, 110
• uil_utils_listbox.get_selected, 110
• uil_utils_listbox.get_unselected, 111
• uil_utils_listbox.get_all, 111
• uil_utils_listbox.delete_item, 111
• uil_utils_listbox.delete_item_list, 112
• uil_utils_listbox.delete_selected, 112
• uil_utils_listbox.select_all, 112
■ Help, 113
• ui_get_help, 113
• ui_register_help, 113
• ui_add_help, 113

6
Group ■ General, 116
• db_get_group_name, 116
• db_count_entities_in_group, 116
• db_count_groups_for_entity, 116
• db_get_groups_for_entity, 117
• uil_entity_group_members_get, 117
■ FEM, 118
• db_get_groups_using_mpc, 118
• db_count_groups_using_mpc, 118
• db_count_orphan_mpcs, 119
• db_get_orphan_mpcs, 119
• count_orphan_elements, 120
• count_orphan_nodes, 120
• get_orphan_elements, 120
• get_orphan_nodes, 121
• db_add_mpc_to_group, 121
■ Geometry, 122
• db_count_orphan_curves, 122
• db_get_orphan_curves, 122
• db_count_orphan_points, 122
Main Index
• db_get_orphan_points, 123
• db_count_orphan_solids, 123
• db_get_orphan_solids, 123
• db_count_orphan_surfaces, 124
• db_get_orphan_surfaces, 124
• asm_db_count_asm_in_group, 124
• asm_db_get_grids_in_group, 125
• asm_db_get_hpats_in_group, 125
• asm_db_get_lines_in_group, 126
• asm_db_get_patches_in_group, 126
• sgm_db_count_iges_in_group, 127
• sgm_db_get_iges_in_group, 127
■ Graphics Application, 129
• ga_groups_load_vector_set, 129
• ga_group_color_get, 129
• ga_group_color_set, 130
• ga_group_current_get, 130
• ga_group_deform_get, 130
• ga_group_deform_set, 131
• ga_group_display_get, 131
• ga_group_elem_scalar_get, 132
• ga_group_elem_scalar_set, 132
• ga_group_entities_get, 132
• ga_group_exist_get, 133
• ga_group_groups_get, 133
• ga_group_label_get, 135
• ga_group_label_set, 135
• ga_group_load_vector_get, 135
• ga_group_load_vector_set, 136
• ga_group_nentities_get, 136
• ga_group_ngroups_get, 137
• ga_group_node_deform_set, 137
• ga_group_precision_get, 138
• ga_group_result_vector_get, 138
• ga_group_result_vector_set, 138
• ga_group_selectable_get, 139
• ga_group_selectable_set, 139
• ga_group_style_get, 140
• ga_group_style_set, 140
• ga_group_vector_load_get, 140
• ga_group_vector_load_set, 141
• ga_group_vector_result_get, 141
• ga_group_vector_result_set, 142

7
Geometry ■ General, 144
• db_get_geom_type, 144
• sgm_db_get_blob_size, 144
• sgm_db_get_company_of_origin, 145
• sgm_db_modify_entity_label, 146
• sgm_incongruent_geom_exist, 146

Main Index
• sgm_incongruent_geom_display, 146
• sgm_incongruent_geom_seg_exit, 147
• sgm_u_calc_mscale_mat, 147
• asm_u_coord_global_to_local, 147
■ Point, 149
• asm_db_create_grid, 149
• db_count_point, 149
• db_get_max_point_label, 150
• db_get_min_point_label, 150
• db_get_point_association_count, 150
• db_get_point_id, 151
• db_get_point_label, 151
• db_get_point_coo_and_type, 151
• asm_db_get_next_grid_label, 152
• sgm_db_get_point, 152
• sgm_edit_point_equivalence, 152
• sgm_get_close_points, 153
• sgm_node_on_point, 154
■ Curve, 155
• asm_db_get_curve_geo, 155
• asm_db_get_next_line_label, 155
• asm_const_curve_2d_arc2point_v2, 155
• asm_const_curve_2d_arc3point_v1, 158
• asm_const_curve_2d_circle_v1, 158
• asm_const_curve_project_v1, 159
• curve_arc_to_parm, 160
• curve_parm_to_arc, 161
• db_count_curve, 161
• db_get_curve_coo_and_type, 162
• db_get_curve_id, 162
• db_get_curve_label, 162
• db_get_max_curve_label, 163
• db_get_min_curve_label, 163
• sgm_associate_nodes_curve, 164
• sgm_const_curve_project_v1, 164
• sgm_create_curve_on_surface, 165
• sgm_curve_convert_s_to_u, 166
• sgm_curve_convert_u_to_s, 166
• sgm_curve_evaluate, 167
• sgm_db_get_curve, 168
• sgm_db_get_curve, 168
• sgm_get_arc_center_radius, 168
• sgm_get_curve_length, 169
• sgm_node_on_curve, 169
• sgm_show_angle_between_curves, 170
■ Surface, 171
• asm_db_get_next_patch_label, 171
• db_count_surface, 171
• db_get_max_surface_label, 171
• db_get_min_surface_label, 172
• db_get_surface_coo_and_type, 172
• db_get_surface_id, 172
Main Index
• db_get_surface_label, 173
• sgm_create_surface_composite_c, 173
• sgm_create_surface_comptrim_v1, 174
• sgm_create_surface_from_elems1, 175
• sgm_db_get_num_loops_face, 176
• sgm_db_get_surface, 176
• sgm_edit_surface_edge_match, 177
• sgm_edit_surface_sew, 177
• sgm_get_surface_area, 178
• sgm_node_on_surface, 178
• sgm_show_surface_normals, 179
• sgm_surface_evaluate, 180
■ Solid, 182
• db_count_solid, 182
• db_get_max_solid_label, 182
• db_get_min_solid_label, 182
• db_get_solid_coo_and_type, 183
• db_get_solid_id, 183
• db_get_solid_label, 183
• asm_db_get_next_hpat_label, 184
• sgm_construct_solid_brep, 184
• sgm_construct_solid_volume, 184
• sgm_db_get_num_vertices_body, 185
• sgm_db_get_solid, 185
• sgm_edit_brep_break_plane_v1, 186
• sgm_edit_brep_break_surface_v1, 186
• sgm_edit_solid_break, 187
• sgm_edit_solid_refit_v1, 187
• sgm_edit_solid_reverse, 188
• sgm_get_solid_volume, 188
• sgm_solid_evaluate, 188
• sgm_verify_solid_brep, 189
■ Coordinate Frame, 190
• app_db_get_ref_cid, 190
• asm_u_coord_local_to_global, 190
• db_check_coord_frame_exist, 191
• db_count_coordinate_frame, 191
• db_get_all_coord_frame_ids, 191
• db_get_next_coord_frame_ids, 192
• db_get_max_coord_label, 192
• db_get_min_coord_label, 193
• db_get_all_posted_coord, 193
• db_get_next_posted_coord, 194
• asm_db_get_next_cord_label, 194
• db_get_coord_frame_label, 195
• db_get_current_coord, 195
■ Point/Curve Relation, 196
• db_count_curves_for_point, 196
• db_get_curves_for_point, 196
• sgm_db_get_edge_vertex_ids, 196
• sgm_nearest_point_on_curve, 197
• sgm_nearest_point_on_curve_aea, 197
Main Index
• xy_curve_num_points_get, 198
■ Curve/Surface Relation, 199
• db_count_surfaces_for_edge, 199
• db_get_surfaces_for_edge, 199
• sgm_db_get_gen_face_edge_ids, 199
• sgm_db_get_gen_face_vertex_ids, 200
• sgm_db_get_num_edges_face, 200
■ Surface/Solid Relation, 201
• db_count_solids_for_surface, 201
• db_get_solids_for_surface, 201
• sgm_db_get_gen_body_face_ids, 201
• sgm_db_get_gen_body_vertex_ids, 202
• sgm_db_get_num_faces_body, 202
■ Transform, 203
• transform_pts, 203

8
Finite Element ■ Finite Elements, 206
Model • db_get_next_elem_id, 206
• db_get_min_elem_id, 206
• db_get_max_elem_id, 206
• fem_get_elem_assoc_groups, 207
• fem_get_elem_ids, 207
• fem_u_get_free_edges, 208
• fem_u_get_free_faces, 208
• db_update_elem_ids, 209
• db_count_elems_for_geo, 209
• db_update_elem_types, 210
• db_count_elem_topology_codes, 210
• db_count_elem_w_topology, 210
• db_count_nodes_for_geometry, 211
• db_get_elems, 211
• db_get_elems_by_lbc, 212
• db_get_elem_config_ntl, 212
• db_get_elem_dimens, 213
• db_get_elem_for_geo_type_and_id, 214
• db_get_elem_shape_for_id, 214
• db_get_elem_topology_codes, 215
• db_get_elem_topos_for_geom, 215
• db_get_elem_top_name, 215
• db_get_elem_verification_parms, 216
• db_get_etop_for_a_code, 216
• db_get_indep_nodes_in_sub_mpc, 217
■ MPCs, 218
• db_get_next_mpc_id, 218
• fem_get_mpc_assoc_nodes, 218
• fem_get_mpc_ids, 219
• db_count_valid_dofs_f_mpc_type, 219
• db_validate_mpc, 220
• db_count_valid_mpc_types, 220
Main Index
• db_get_all_valid_dof_f_mpc_type, 221
• db_get_nxt_valid_dof_f_mpc_type, 221
• db_get_all_valid_mpc_type, 221
• db_get_next_valid_mpc_type, 222
• db_get_dep_nodes_in_sub_mpc, 222
• db_get_dof_id, 223
• db_get_dof_name, 224
• db_get_mpc_type_id, 224
• db_get_mpc_type_name, 224
• db_get_valid_mpc_ids_in_group, 225
• fem_get_mpc_assoc_groups, 225
■ Nodes, 227
• db_get_nodal_association, 227
• db_get_node, 227
• db_get_nodes_by_lbc, 228
• db_get_nodes_for_geometry, 228
• db_get_next_node_id, 229
• db_get_min_node_id, 229
• db_get_max_node_id, 229
• fem_get_node_assoc_groups, 230
• fem_get_node_ids, 230
• db_verify_nodes_exist, 231
• db_count_unref_nodes, 231
• db_get_unreferenced_node_ids, 232
■ Mesh, 233
• fem_create_mesh_sol_3, 233
• fem_seed_display_dir_arrows, 233
• db_get_mesh_params, 234
• move_mesh, 234
• move_mesh_1, 235
■ Element/Node Relations, 236
• db_count_elems_using_node, 236
• db_count_mpcs_using_node, 236
• db_count_nodes_in_mpc, 237
• db_get_elems_using_nodes, 237
• db_get_elem_nodes, 238
• db_get_nodes_in_mpc, 238
• list_get_node_ass_el_edge, 239
• list_get_node_ass_el_face, 239
• list_get_node_ass_elem, 239
• list_get_node_ass_geo, 240
• list_get_node_ass_group, 240
• list_get_node_ass_mpc, 240
• list_get_node_att_fringe, 241
• list_get_node_att_value, 241

9
Load Cases ■ General, 244
• db_activate_load_case, 244
• db_delete_load_case, 244

Main Index
• db_find_load_case_id, 245
• db_count_load_cases, 245
• db_get_all_load_case_names, 245
• db_get_all_load_cases, 246
• db_get_next_load_case, 246
• db_get_lc_id_given_job_seq, 247

10
Element ■ General, 250
Properties • bl_create_std_beam_section, 250
• bl_get_std_beam_section_data, 250
• bl_modify_std_beam_section, 251
• blcomputeprincaxespoints, 251
• blgetalpha, 252
• blgetbuttonicon, 252
• blgetcenters, 252
• blgetdimfieldid, 253
• blgetdimvalue, 253
• blgetlabelicon, 253
• blgetlabels, 254
• blgetnumdimension, 254
• blgetnumplotpoints, 254
• blgetnumplotpointsbyid, 255
• blgetnumtypeinfo, 255
• blgetperim, 255
• blgetplotpoints, 256
• blgetplotpointsbyid, 256
• blgetplotpointsbyid2, 257
• blgetprop, 258
• blgetproplabels, 259
• blgettypeinfo, 259
• blmodifybeamdimension, 259
• db_create_selected_etype, 260
• db_count_elem_type, 261
• db_count_etop_for_a_code, 261
• db_get_all_dof_set_names, 261
• db_get_next_dof_set_names, 262
• db_get_all_form_opt_code_names, 262
• db_get_next_form_opt_code_names, 263
• db_get_all_geo_opt_code_names, 263
• db_get_next_geo_opt_code_names, 264
• db_get_all_lam_opt_code_names, 264
• db_get_next_lam_opt_code_names, 265
• db_get_region_for_geometry, 265
• db_get_region_ids_and_names, 266
• db_get_elements_in_region_exp, 266
• db_get_etop_for_a_code, 267
• db_get_a_phys_prop_w_nord, 267
• db_create_phys_prop_set_defn, 268
• db_get_phys_prop_set_defn, 268
• db_get_allowable_phys_prop, 269
• db_get_selected_prop_set, 270
Main Index
• db_delete_phys_prop_region, 270
• db_associate_geo_to_region, 271
• db_count_geo_in_region, 272
• db_get_geo_in_region, 272
• db_count_elements_in_region_exp, 273
• db_create_anl_elm_summary, 273
• db_get_anl_elm_summary, 274
• db_delete_anl_elm_summary, 274
• db_create_analysis_elements, 275
• db_delete_analysis_elements, 275
• db_get_analysis_elements, 276
• db_get_all_elem_defn, 276
• db_get_next_elem_defn, 277
• db_bulk_get_possible_dof_sets2, 277
• db_bulk_get_possible_lam_opts2, 278
• db_bulk_get_possible_form_opts2, 279
• db_bulk_get_possible_dof_sets1, 279
• db_bulk_get_possible_lam_opts1, 280
• db_bulk_get_possible_geo_opts1, 280
• db_bulk_get_possible_form_opts1, 281
• db_bulk_get_selected_etops_mat, 281
• db_bulk_get_possible_matl_dirs, 282
• db_bulk_get_possible_matl_lins, 283
• db_get_all_pp_ids_and_names, 284
• db_get_next_pp_ids_and_names, 284
• db_set_comp_lam, 285

11
Loads and ■ General, 288
Boundary • lbc_create, 288
Conditions • lbc_delete, 289
• lbc_eval_fem_by_lc, 289
• lbc_eval_fem_lbc, 289
• lbc_get_sdbx_datatype, 290
• lbc_gm, 290
• lbc_graphics_defn, 291
• lbc_lp_parse_sca, 291
• lbc_lp_parse_vec, 292
• lbc_plot_markers, 293
• lbc_show_plot_scalar, 293
• loadcase_create2, 294
• loadsbcs_get_appl_region_list, 294
• loadsbcs_lp_coord, 295
■ Database, 296
• db_bulk_get_lbc_ds, 296
• db_bulk_get_lbc_dv, 296
• db_bulk_get_lbc_ss, 297
• db_bulk_get_lbc_sv, 298
• db_count_appl_geo_region, 298
• db_count_lbc, 299
• db_count_lbc_appl_region_entity, 299

Main Index
• db_count_lbc_types, 300
• db_count_loads_for_element, 300
• db_count_load_cases_with_lbc, 300
• db_delete_lbc, 301
• db_delete_lbc_defn, 301
• db_get_all_appl_geo_regions, 301
• db_get_next_appl_geo_region, 302
• db_get_all_appl_reg_defns, 302
• db_get_next_appl_reg_defn, 303
• db_get_all_lbcs_new, 303
• db_get_next_lbcs_new, 303
• db_get_all_lbc_names, 304
• db_get_next_lbc_name, 304
• db_get_all_lbc_names_by_type, 305
• db_get_next_lbc_name_by_type, 305
• db_get_all_lbc_type_defns, 306
• db_get_next_lbc_type_defn, 306
• db_get_all_lbc_type_names, 307
• db_get_next_lbc_type_name, 308
• db_get_all_lbc_var_defns, 308
• db_get_next_lbc_var_defn, 308
• db_get_lbc_id, 309
• db_get_lbc_name, 309
• db_get_lbc_type_defn, 310
• db_get_lbc_var_defn, 311
• db_get_loads_for_element, 311
• db_get_load_cases_with_lbc, 312
• db_get_valid_cat_by_type, 312
• db_get_valid_eldim_by_type_cat, 313
• db_get_valid_lbc_var_ids, 313
• db_modify_load_case, 314

12
Materials ■ Database, 316
• db_bulk_get_possible_cond_opts1, 316
• db_bulk_get_possible_cond_opts2, 316
• db_bulk_get_possible_dof_sets, 317
• db_get_constitutive_model, 318
• db_get_valid_const_models_count, 318
• db_get_valid_const_models, 319
• db_mo_const_models_specified, 319
• db_delete_matl_const_model, 320
• db_get_matl_category, 320
• db_get_valid_mtl_category_cnt, 321
• db_get_valid_mtl_categories, 321
• db_create_mtl_allowable_magics, 322
• db_get_mtl_allowable_magic_cnt, 322
• db_count_options, 323
• db_get_mtl_allowable_magics, 323
• db_get_mtl_magics, 324
• db_get_mtl_magics_count, 324
• db_get_mtl_magics_defn, 325
Main Index
• db_get_mtl_magics_options, 325
• db_get_material_name_from_id, 326
• db_get_material_id_from_name, 326
• db_count_materials, 326
• db_get_all_material_names, 327
• db_get_next_material_name, 327
• db_modify_material, 328
• db_delete_material, 328
• db_get_all_cond_opt_code_names, 329
• db_get_next_cond_opt_code_names, 329
• db_get_all_lam_opt_code_names, 330
• db_get_next_lam_opt_code_names, 330
• db_get_allowable_matl_prop, 331
• db_get_all_allow_matl_prop_cnt, 331
• db_get_allowable_matl_prop_cnt, 332
• db_get_all_allowable_matl_prop, 332
• db_get_matl_prop_alias, 333
• db_get_matl_prop_defn, 333
• db_modify_matl_prop_value, 334
• db_delete_material_property, 334
• db_get_comp_hal, 335
• db_get_comp_sfc, 335
• mat_3d_ani_to_3d_ort, 336
• engin_cons_to_elastic_matrix, 337
• mat_2d_ani_to_2d_ort, 337
• get_qab_from_engin_cons, 338
• n21_cons_to_sym_6x6_matrix, 338
• mat_load_show, 339
• mat_hal_load_defn_show, 340
• mat_lam_load_defn_show, 341
• mat_mix_load_defn_show, 341
• mat_sfc_load_defn_show, 342
• material.namedelete, 343
■ Laminate Modeler, 344
• p3cm.close_2, 344
• p3cm.create_book_layup2, 344
• P3cm.create_laminates_layup_2, 345
• p3cm.create_layup_add_2, 346
• p3cm.create_material_add, 347
• p3cm.create_ply_add_2, 348
• p3cm.create_results_failure, 349
• p3cm.create_results_mid_sort, 349
• p3cm.create_results_sort, 350
• p3cm.delete_laminates, 350
• p3cm.delete_material_name, 351
• p3cm.delete_ply_name, 351
• p3cm.delete_propsets, 351
• p3cm.import_model_file_2, 352
• p3cm.import_plies_file_2, 352
• p3cm.modify_material, 353
• p3cm.modify_ply, 353
• p3cm.new, 354
• p3cm.set_offsets, 355

Main Index
• p3cm.open, 355
• p3cm.save_as_2, 356
• p3cm.set_export_options_2, 356
• p3cm.set_graphics_options_2, 357
• p3cm.set_tolerance, 357
• p3cm.show_laminate, 358
• p3cm.show_layup_exploded, 359
• p3cm.show_ply, 359

13
Analysis ■ General, 362
• analysis_get.pset_for_job, 362
• analysis_import, 362
• analysis_main.job_name_lbox, 363
• analysis_main.user_function, 363
• analysis_submit, 364
• analysis_submit_2, 365
• db_set_pref, 366
• db_get_job_info, 367
• db_set_model_file_suffix, 367
• db_set_results_file_suffix, 368
• db_set_default_anal_code, 368
• db_get_default_anal_code, 369
• db_get_anal_code_name, 369
• db_get_anal_code_id, 369
• db_count_anal_codes, 370
• db_get_all_anal_codes, 370
• db_get_next_anal_code, 371
• db_set_default_anal_type, 371
• db_get_default_anal_type, 372
• db_get_anal_type_name, 372
• db_get_anal_type_id, 372
• db_count_anal_types, 373
• db_get_all_anal_types, 373
• db_get_next_anal_type, 374
• db_get_at_for_ac, 374
• db_set_at_for_ac, 375
• db_create_job_name_for_a_code, 375
• db_count_job_names_for_a_code, 376
• db_get_jobnames_for_a_code, 376
• db_update_jobname_for_a_code, 377
• db_create_job_name_list, 378
• db_create_job_name_list_entry, 378
• db_get_jobname_list_entries, 379
• db_count_job_name_list_entry, 379
• db_delete_job_name_list, 380
• db_create_job_name, 380
• db_assign_last_jobname, 380
• db_get_last_jobname, 381
• db_get_job_name_given_id, 381
• db_count_all_job_name_ids, 382
• db_get_all_job_name_ids, 382
Main Index
• db_get_all_job_names, 383
• db_get_next_job_name, 383
• db_get_id_given_job_name, 383
• db_get_id_given_job_name_code, 384
• db_get_id_given_load_case_name, 384
• db_delete_job_name, 385
• db_create_analysis_step, 385
• db_get_analysis_steps, 386
• db_get_steps_for_a_job, 386
• db_get_step_info, 387
• db_count_analysis_steps, 388
• db_count_steps_for_a_job, 388
• db_get_id_given_step_name, 388
• db_update_analysis_step, 389
• db_delete_analysis_step_id, 389
• db_create_param_set_entry, 390
• db_count_param_set_entries, 391
• db_get_param_set_entry, 391
• db_get_param_set_ent_pcl, 392
• db_get_param_set_entries, 392
• db_delete_param_set_entry, 393
• db_delete_param_set_entries, 393
• db_create_pset_matrix_entry, 394
• db_get_pset_matrix_entry, 394
• db_get_pset_matrix_size, 395
• jobfile.close, 395
• jobfile.create_matrix, 396
• jobfile.open, 396
• jobfile.set_job_status, 397
• jobfile.writec, 397
• jobfile.writei, 398
• jobfile.writer, 398
• jobfile.write_spl, 399
• msc_delete_old_files, 399
• mscnastran_anlyze_sub_create.available_callback, 400
• mscnastran_analyze_tp.get_version_number, 400
• mscnastran_job.associate_subcases, 400
• mscnastran_subcase.create, 401
• mscnastran_subcase.create_char_param, 401
• mscnastran_update.job, 402
• uil_app_analysis.change_current_branch, 402

14
Fields ■ General, 404
• db_get_all_field_names, 404
• db_get_next_field_name, 404
• db_get_field_id, 405
• db_get_field_attrs, 405
• fields_create_general_term, 406
• get_field_values_no_trans, 408
• get_field_values, 408
• db_get_max_field, 409
Main Index
• fld_evl_get_maxnod_for_group, 409
• db_modify_field, 410
• db_delete_field, 411
• fld_cre_fem_res_sca, 411
• fld_cre_fem_res_vec, 411
• db_delete_field_res, 412
• field_create_field_lbc, 412
• db_get_field_lbc, 413
• db_get_field_lbc_type, 414
• field_fem_const_eval, 414
• db_get_field_dfem, 415

15
Results ■ General, 418
• db_count_result_types_for_elem, 418
• db_get_results_file_suffix, 418
• db_get_elem_scalar_name, 419
• jobfile.create_jobname, 419
• jobfile.create_param, 420
• jobfile.eval_list, 420
• jobfile.write_array_as_list, 421
• jobfile.write_element_list, 421
• jobfile.write_integer_list, 422
• jobfile.write_node_list, 422
• jobfile.write_real_list, 422
• jobfile.write_stream, 423
• jobfile.write_string, 423
• jobfile.writer, 424
• jobfile.writeS1, 424
• jobfile.writeS2, 424
• jobfile.writeS3, 425
• jobfile.writeS4, 425
• jobfile.writeSS, 425
• rdm_result_minmax_get, 426
• res_db_cgetlayerposids, 426
• res_db_cgetrescases, 427
• res_utl_create_elem_result, 427
• res_utl_extract_elem_history2, 428
• res_utl_extract_elem_results2, 429
• res_utl_extract_nodal_history2, 431
• res_utl_extract_nodal_results2, 432
• res_utl_transform_nodal_results, 433
• vki_db_getresid, 434
• xy_curve_results_set_wnd, 434

16
Preferences ■ Database, 436
• db_get_pref, 436
• db_add_pref, 436
■ General, 438
Main Index
• pref_anal_get, 438
• pref_anal_set, 438
• pref_confirm_get, 439
• pref_display_method_get, 439
• pref_entity_dp_get, 439
• pref_entity_dp_set, 440
• pref_env_get_integer, 440
• pref_env_get_logical, 441
• pref_env_get_real, 441
• pref_env_get_string, 442
• pref_fa_get, 442
• pref_fa_set, 443
• pref_geo_cid_int_string, 445
• pref_geo_cid_string_int, 445
• pref_geo_get, 446
• pref_get_anal_attributes, 446
• pref_get_anal_code_count, 447
• pref_get_anal_type_count, 447
• pref_get_next_anal_code, 448
• pref_get_next_anal_type, 448
• pref_global_get, 448
• pref_graphics_get, 449
• pref_graphics_marker_data_get, 450
• pref_entity_set, 450

17
Utilities ■ Arrays, 454
• array_copy_real, 454
• array_del_zero_int, 454
• array_fill_int, 454
• array_fill_zero_int, 455
• array_fill_zero_real, 455
• array_real_fill_null, 455
• array_sort_and_del_dupl_int, 456
■ Math, 457
• math_get_no_data_null, 457
• math_is_no_data_null, 457
• math_mat_add, 458
• math_mat_invert, 458
• math_mat_mult, 458
• math_mat_transp_in_place, 459
• math_vec_len, 459
• math_vec_norm, 459
• mth_vec_add, 460
• mth_vec_cross_prod, 460
• mth_vec_dot_prod, 460
• mth_vec_length, 461
• mth_vec_scale, 461
• util_equal_real, 461
• util_real_equal_null, 462
• util_rounder, 462

Main Index
■ RPCs, 463
• rpc_add_server, 465
• rpc_init_client, 466
• rpc_call, 466
• rpc_timeout, 467
• rpc_put_bool_array, 467
• rpc_put_int_array, 467
• rpc_put_real_array, 468
• rpc_put_boolean, 468
• rpc_put_command, 469
• rpc_put_integer, 469
• rpc_put_real, 469
• rpc_put_status, 470
• rpc_put_string, 470
• rpc_clear_output, 471
• rpc_get_bool_array, 471
• rpc_get_int_array, 471
• rpc_get_real_array, 472
• rpc_get_boolean, 472
• rpc_get_command, 473
• rpc_get_integer, 473
• rpc_get_real, 474
• rpc_get_status, 474
• rpc_get_string, 475
• rpc_inquire_count, 475
• rpc_inquire_item, 475
■ Security, 477
• sec_is_product_in_matrix, 477
• sec_is_product_licensed, 477
• sec_license_type, 477
■ Strings, 479
• string_newline_count, 479
• string_newline_position, 479
• ga_entities_string_format, 480
• ga_entity_get_by_type, 480
• uil_list_union_expr, 481
■ Performance, 482
• timer_on, 482
• timer_off, 482

18
Obsolete, ■ General, 484
Modified, and ■ Functions for Chapter 1, 485
Broken Functions
• utl_get_terse_version, 485
■ Model (Chapter 2), 486
• db_delete_client_label, 486
• db_reset_client_info, 486
■ Files (Chapter 3), 489
• get_current_dir, 489
Main Index
• utl_is_locked_file, 490
• sf_write_disable, 491
• ui_form_to_frame, 491
• ugi_export_iges_v1, 492
■ Graphics (Chapter 4), 494
• ga_elem_scalar_delete, 494
• ga_elem_scalar_get, 496
• ga_elem_scalar_minmax_get, 499
• ga_elem_scalar_number_get, 501
• ga_vector_delete, 503
• gm_animate_end, 506
• gm_animate_loadcase_parms, 507
• gm_animate_start, 507
• gm_database_close, 508
• gm_database_open, 509
• gm_pick, 511
• gm_pick_abort, 511
• gm_pick_add, 513
• gm_pick_add_widget, 515
• gm_pick_adjust_hilight, 517
• gm_pick_clear, 518
• gm_pick_filter, 520
• gm_pick_notify, 523
• gm_pick_reject, 525
• gm_pick_reset_level_counter, 526
• gm_uiwindow_create, 527
• gm_uiwindow_delete, 527
• gm_viewport_auto_off, 527
• gm_viewport_auto_on, 528
• gm_viewport_plot, 530
• gm_window_id_get, 532
• gm_xy_plot, 533
■ User Interface (Chapter 5), 536
• msg_format_string, 536
• msg_to_file, 537
• app_count_list, 538
• lp_eval_cleanup, 539
• lp_keyword_text, 539
• ui_flush, 540
• ui_flush_events, 540
• ui_sys_return, 541
• ui_text_select, 541
• ui_window_create, 542
• ui_helpmenu_create, 542
• ui_abortwidget_create, 543
• ui_wid_restore_widget, 544
• ui_wid_save_widget, 544
• uil_primary_file.enable_entire_menu, 545
• uil_primary_file.enable_item, 545
• uil_primary_pref.enable_item, 545
• uil_utils_listbox.select_list, 546
• uil_utils_listbox.create_list, 547
• uil_utils_listbox.append_list, 548
Main Index
• uil_utils_listbox.select_one, 549
• uil_utils_listbox.select, 549
■ Group (Chapter 6), 550
• db_count_entities_in_group, 550
• ga_group_ngroups_get, 551
• db_get_orphan_mpcs, 551
• count_orphan_elements, 551
• db_add_mpc_to_group, 552
• db_get_orphan_curves, 553
• db_get_orphan_points, 553
• db_get_orphan_solids, 554
• db_get_orphan_surfaces, 554
• ga_group_selectable_set, 555
• sgm_db_get_iges_in_group, 556
■ Geometry (Chapter 7), 558
• asm_db_get_next_grid_label, 558
• asm_db_get_next_line_label, 559
• asm_db_get_next_patch_label, 560
• sgm_show_surface_normals, 561
• asm_db_get_next_hpat_label, 562
• sgm_db_get_solid, 563
• sgm_verify_solid_brep, 564
• app_db_get_ref_cid, 564
• asm_db_get_next_cord_label, 565
• db_get_all_coord_frame_ids, 566
• db_get_current_coord, 567
• db_get_surfaces_for_edge, 568
• db_get_solids_for_surface, 569
■ Finite Element Model (Chapter 8), 570
• db_get_elems_by_lbc, 570
• db_get_node, 570
• fem_get_node_ids, 571
• fem_seed_display_dir_arrows, 572
■ Load Cases (Chapter 9), 573
• db_delete_load_case, 573
■ Element Properties (Chapter 10), 574
• db_get_next_lam_opt_code_names, 574
• db_del_geo_assoc_to_region, 574
■ Loads and Boundary Conditions (Chapter 11), 575
• lbc_create, 575
• lbc_get_sdbx_datatype, 577
• lbc_lp_parse_sca, 578
• lbc_show_plot_marker, 579
• lbc_plot_markers, 579
• lbc_show_plot_scalar, 579
• loadsbcs_get_appl_region_list, 581
• db_count_lbc_in_group, 582
• db_get_all_lbcs, 582
• db_get_all_lbcs_new, 582
• db_get_next_lbc, 583

Main Index
• db_get_next_lbcs_new, 583
• db_get_all_lbcs_in_group, 583
• db_get_all_lbc_var_defns, 584
• db_get_lbc_type_defn, 585
• db_get_lbc_var_defn, 586
■ Materials (Chapter 12), 588
• mat_2d_ani_to_2d_ort, 588
■ Analysis (Chapter 13), 589
• analysis_get.pset_for_job, 589
• db_get_anal_type_name, 590
• db_get_anal_type_id, 591
• db_get_pset_matrix_entry, 592
■ Fields (Chapter 14), 593
• db_modify_field, 593
• db_create_field_res, 595
• db_get_field_dfem, 596
• field_create_field_lbc, 597
• db_get_field_lbc, 598
■ Results (Chapter 15), 600
• db_count_result_types_for_elem, 600
■ Preferences (Chapter 16), 601
• pref_env_get_string, 601
■ Utilities (Chapter 17), 602
• rpc_clear_timeout, 602
• util_round, 602

INDEX MSC.Acumen Toolkit 605

Main Index
Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Introduction
1
■ Introduction
■ General Built-ins
■ Synchronizing with Startup, Exit, and Database Events

Main Index
2
Function Descriptions

1.1 Introduction
MSC.Patran is composed of compiled code (either C or FORTRAN) which is the MSC.Patran
executable and PCL programs which are delivered in the p3patran.plb library file. PCL makes
up a significant portion of the MSC.Patran functionality. In fact, p3patran.plb contains more
than 44,000 routines at last count! PCL interacts with the compiled code through “wrappers.” A
wrapper is a special type of C function which allows PCL to call the compiled code directly.
Sometimes, the functions which are in wrappers are called “Built-ins” which is similar to an
intrinsic function in traditional programming languages. Wrappers can only be created at
compile time, so you, the PCL programmer cannot add any additional “Built-ins” at your site.
Fortunately, the programmers here at The MSC.Software Corporation had the foresight to add
numerous useful PCL built-ins which are documented here and are in addition to the current
functions described in PCL and Customization, PCL and Customization (p. i) in the and PCL
Reference Manual delivered in the standard product.
The Extended PCL Functions Manual includes functions for model (database), files, graphics,
user-interface, groups, geometry, fem, loadcases, element properties, loads, materials, results,
utilities and much more.

Main Index
CHAPTER 1 3
Introduction

1.2 General Built-ins


The following functions set and return information regarding the MSC.Patran session or
MSC.Patran itself.

is_batch ()

Description:
Checks to see if MSC.Patran is running in batch mode.
Input:
none
Output:
LOGICAL <Return Value> TRUE if running in batch mode.
FALSE if running interactively.
Example:
Please see is_batch (p. 2) in the MSC.Acumen, Volume 2: Code Examples.

db_get_p3_version ( p3_ver)

Description:
Queries the database for the version number.
Input:
none
Output:
STRING p3_ver[] Buffer to hold MSC.Patran version.
INTEGER <Return Value> SQL error code.
Example:
Please see db_get_p3_version (p. 2) in the MSC.Acumen, Volume 2: Code Examples.

utl_get_terse_version ( terse_verson )

Description:
Get terse (short) version string.
Input:
none
Output:
STRING terse_verson[] Version string.
Example:
Please see utl_get_terse_version (p. 6) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
4
Function Descriptions

utl_query_version_level ()

Description:
Return the code version level.
Input:
none
Output:
INTEGER <Return Value> 0 = Production code.
1 = Beta code.
2 = Alpha code.
3 = Development code.
Example:
Please see utl_query_version_level (p. 6) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 1 5
Introduction

1.3 Synchronizing with Startup, Exit, and Database Events


When certain operations occur in MSC.Patran callbacks to some PCL routines will occur. These
PCL routines are not defined by the MSC.Software Corporation and if they do not exist, then the
calls will not be made. The user is welcome to create these routines to perform whatever function
is desired. Some examples are generating accounting information or initializing or hiding user
defined forms. The following PCL functions can be defined by the user. In the function
description is information on when this function will be called by the MSC.Patran system.

user_start ()

Description:
Called just after startup of MSC.Patran. No arguments are given to the function and there is no
return result.
Input:
none
Output:
none
Example:
Please see user_start (p. 5) in the MSC.Acumen, Volume 2: Code Examples.

user_quit ()

Description:
Called just before exit of MSC.Patran. No arguments are given to the function and there is no
return result.
Input:
none
Output:
none
Example:
Please see user_quit (p. 5) in the MSC.Acumen, Volume 2: Code Examples.

user_db_new ( dbname, tmplname)

Description:
Called just after a new database is created.
Input:
STRING dbname[] Name of database that was created.
STRING tmplname[] Name of the template file used for the database.
Output:
none
Example:
Please see user_db_new (p. 3) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
6
Function Descriptions

user_db_open ( dbname )

Description:
Called just after an existing database is opened.
Input:
STRING dbname[] Name of database that was opened.
Output:
none
Example:
Please see user_db_open (p. 4) in the MSC.Acumen, Volume 2: Code Examples.

user_db_close ( dbname, isquit )

Description:
Called just before a database is closed.
Input:
STRING dbname[] Name of database that was created.
LOGICAL isquit TRUE if quit, FALSE if close.
Output:
none
Example:
Please see user_db_close (p. 3) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Model
2
■ General
■ User Defined

Main Index
8
Function Descriptions

2.1 General
The following routines return general information and allow manipulation of the model file.

db_get_db_version (db_ver)

Description:
Retrieves the database version.
Input:
none
Output:
STRING db_ver[] Database version. Success or failure of routine.
INTEGER <Return Value> SQL error code.
Example:
Please see db_get_db_version (p. 625) in the MSC.Acumen, Volume 2: Code Examples.

db_get_general_field ( <field_id >,<term_id>,<field_data_length>,<term_field_id>,


<term_function_type>, <field_data>)

Description:
This function returns term_field_id, term_function_types and field_data from the field form.
The input to the function are the field_id, term_id and the length of the field data. It returns a
positive integer indicating the status of the execution of the function.
Input:
INTEGER field_id The id of the field.
INTEGER term_id Term order of creation in the general field.
INTEGER field_data_length Length of the expression stored.
Output:
INTEGER term_field_id Field id of the term
INTEGER term_function_type Function type id
0 - Field expression.
1 - Utility functions.
2 - PCL Math Built-Ins.
3 - PCL String Built-Ins.
STRING field_data[] String containing the field expression.
INTEGER <return value> 0 for success and 1 for failure
Error Conditions:
None.
Example:
Please see db_get_general_field (p. 625) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 2 9
Model

db_get_general_field_length ( <field_id >, <count>,<term_id>,<field_data_length>)

Description:
This function returns the term_id and field_data_length of the field_id from which the length of
field is required. It returns a positive integer indicating the status of the execution of the
function, 0 for success.
Input:
INTEGER field_id The id of the field.
INTEGER count The count of term_ids in the field.
Output:
INTEGER term_id() The term id's for the field.
ARRAY
INTEGER field_data_length() Length of the strings of the field data.
ARRAY
INTEGER <return value> 0 for success and 1 for failure.
Error Conditions:
None.
Example:
Please see db_get_general_field_length (p. 627) in the MSC.Acumen, Volume 2: Code Examples.

db_get_model_file_suffix (name, suffix)

Description:
Retrieves the model file suffix associated with the named analysis code.
Input:
STRING name[31] Name of the analysis code for which the suffix is to be
retrieved.
Output:
STRING suffix[6] Location into which the named suffix is to be retrieved.
INTEGER <Return Value> Success or failure of routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Example:
Please see db_get_model_file_suffix (p. 629) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
10
Function Descriptions

2.2 User Defined


A table is provided in the database which is reserved for use by the user. It can store arrays of
data for all types (integer,real,logical,strings). The table entries can be assigned arbitrary types (
as integer values) to allow multiple uses. The user can create, count, delete and retrieve the table
entries as needed. Each table entry is assigned a label for easy reference.

db_create_client_data (id, client_label, client_type, num_logicals, num_integers,


num_reals, num_strings, max_string_length, p_logical_data,
p_integer_data, p_real_data, p_string_data)

Description:
Creates a client defined entity in the database.
Input:
INTEGER client_label The external id of the db entity being created. if input as
”0”, the database will assign a label. if a number is input,
the database will ensure that it is not a duplicate, then
insert it.
INTEGER client_type Type of data uniquely defined by the client.
INTEGER num_logicals The number of logical data items being associated with this
entity.
INTEGER num_integers The number of integer data items being associated with this
entity.
INTEGER num_reals The number of real data items being associated with this
entity.
INTEGER num_strings The number of real data items being associated with this
entity.
INTEGER max_string_length The maximum length of any one string.
LOGICAL p_logical_data Pointer to an array of logicals.
INTEGER p_integer_data Pointer to an array of integers.
REAL p_real_data Pointer to an array of reals.
STRING p_string_data[] Pointer to an array of strings.
Output:
INTEGER id This filed receives the id of the client db entity that was just
created. this is the uniques database identifier for the entity.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Creates one record in the “xxx_client_entity” table in the database. Also, depending upon the
input data, this routine creates zero or more records in the “xxx_client_interger_data”, or
“xxx_client_logical_data”, or “xxx_client_real_data”, or
Example:
Please see db_create_client_data (p. 613) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 2 11
Model

db_count_client_labels_by_type ( client_type, nbr_of_labels)

Description:
Returns the number of all labels with a specified type.
Input:
INTEGER client_type Type of data uniquely defined by the client.
Output:
INTEGER nbr_of_labels The number of all labels.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000126 Label not found.
13000007 other database error.
Example:
Please see db_count_client_labels_by_type (p. 610) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_general_field ( <field_id>, <count>)

Description:
This function returns the count of terms in a field. It returns an integer status of 0 on success
and 1 on failure.
Input:
INTEGER field_id The id of the field.
Output:
INTEGER count The count of term_ids in the field.
INTEGER <Return Value> 0 for success and 1 for failure.
Error Conditions:
None.
Example:
db_count_general_field (p. 612) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_client_data (id, num_logicals, num_integers, num_reals, num_strings,


max_string_length, p_logical_data, p_integer_data,
p_real_data, p_string_data)

Description:
Gets all data related to a specified client data entity from the database.
Input:
INTEGER id Id of the client entity for which data is requested.
INTEGER num_logicals Num of logical numbers for which storage has been
allocated by the calling routine.
INTEGER num_integers Num of integer numbers for which storage has been
allocated by the calling routine.
Main Index
12
Function Descriptions

INTEGER num_reals Num of real numbers for which storage has been allocated
by the calling routine.
INTEGER num_strings Num of strings for which storage has been allocated by the
calling routine.
INTEGER max_string_length Max number of characters to copy into p_string buffer.
Output:
LOGICAL p_logical_data(num Pointer to an array of logicals.
_logicals)
INTEGER p_integer_data() Pointer to an array of integers.
REAL p_real_data() Pointer to an array of reals.
STRING p_string_data[]() Pointer to an array of characters.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
DbFUBAR
DbClientEntityNotFound
DbOtherFailure
External Dependencies and Side Effects:
Accesses multiple records in the “xxx_client_integer_data”, “xxx_client_logical_data”,
“xxx_client_real_data”, “xxx_client_string_data” in the database.
Example:
Please see db_get_all_client_data (p. 616) in the MSC.Acumen, Volume 2: Code Examples.

db_get_client_data (client_label,id,client_type,num_logicals, num_integers,


num_reals, num_strings, max_string_length)

Description:
Gets a client data entity from the database by user defined label.
Input:
INTEGER client_label External id for the user defined entity.
Output:
INTEGER id Internal id for the user defined entity.
INTEGER client_type Type of data uniquely defined by the client.
INTEGER num_logicals The number of logical data items being associated with this
entity.
INTEGER num_integers The number of integer data items being associated with this
entity.
INTEGER num_reals The number of real data items being associated with this
entity.
INTEGER num_strings The number of string items being associated with this
entity.
INTEGER max_string_length The maximum length of any one string.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.

Main Index
CHAPTER 2 13
Model

Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses one record in the “xxx_client_data” table in the database.
Example:
See example for db_get_client_data (p. 618) in the MSC.Acumen, Volume 2: Code Examples.

db_get_client_id_by_label (client_label, id)

Description:
Returns client id given the label.
Input:
INTEGER client_label The client label.
Output:
INTEGER id The client id corresponding to the label.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000126 The entity specified in the query was not labeled.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses a record in the “xxx_client_entity” table.
Example:
Please see db_get_client_id_by_label (p. 620) in the MSC.Acumen, Volume 2: Code Examples.

db_get_client_labels_by_type (client_type, labels)

Description:
Returns all labels with a specified type.
Input:
INTEGER client_type Type of data uniquely defined by the client.
Output:
INTEGER labels() An array of labels.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000201 The specified client entity was not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses multiple records in the “xxx_client_entity” table.
Example:
Please see db_get_client_labels_by_type (p. 623) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
14
Function Descriptions

Main Index
CHAPTER 2 15
Model

db_get_client_label_by_id (id, client_label)

Description:
Returns client label given the id.
Input:
INTEGER id The client id.
Output:
INTEGER client_label The label corresponding to the id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000201 The specified client entity was not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses a record in the “xxx_client_entity” table.
Example:
Please see db_get_client_label_by_id (p. 621) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_client_entity_label (label)

Description:
This function will get the value of the next available client entity label from the database. This
value should be equal to the highest value client entity label in use plus one.
Input:
none
Output:
INTEGER label Highest entity label used.
INTEGER <Return Value> This value returns the next available client entity label.
Error Conditions:
13000201 The specified client entity was not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Selects the largest client_entity_label from the database.
Example:
Please see db_get_next_client_entity_label (p. 630) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
16
Function Descriptions

db_delete_client_data (label)

Description:
Delete client data from the database.
Input:
INTEGER label User defined label of the data to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000201 The specified client entity was not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Deletes one record in the “xxx_client_entity” table in the database, and depending on the client
data, all associated records.
Example:
Please see db_delete_client_data (p. 615) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Files
3
■ General
■ IGES and CAD Access
■ Journal and Session
■ Neutral

■ FrameMaker Files

Main Index
18
Function Descriptions

3.1 General
The following utilities are used for basic file management such as setting and determining file
and directory attributes.

file_is_directory (dirname)

Description:
To validate the given string as a valid directory.
Input:
STRING dirname[] Possible file directory.
Output:
INTEGER <Return Value> This function will return a value of 1 if the input value dirname
represents a valid directory and a value of 0 if the input value
dirname represents an invalid directory.
Example:
Please see file_is_directory (p. 634) in the MSC.Acumen, Volume 2: Code Examples.

get_current_dir (dirname)

Description:
Return the current directory.
Input:
none
Output:
STRING dirname[] Current directory.
INTEGER <Return Value> 0 if Function was successful.
Example:
Please see get_current_dir (p. 634) in the MSC.Acumen, Volume 2: Code Examples.

p3_ps_get_xm (<filename>)
t

Description:
This function returns the filename of the UG part being imported. Typically, a UG model is in a
file with ‘filename.prt’ extension. This function converts it to ‘filename-ps0001.xmt_txt’ file
which is actually imported into MSC.Patran. The filename is taken from the function
p3_ps_open_ug_v2() which is run previous to p3_ps_get_xmt() function. This is an internal
function called during the execution of the function p3_ps_open_ug_v2(). See example file for
this function.
Input:
None

Main Index
CHAPTER 3 19
Files

Output:
STRING filename[]() The filename for the file. This has an extension of xmt_txt
ARRAY format.
INTEGER <Return Value> Returns the output status of the function.
Error Conditions:
None.
Note:
The output of the function is an integer, but the status cannot be ascertained from this integer.
Example:
Please see p3_ps_get_xmt (p. 639) in the MSC.Acumen, Volume 2: Code Examples.

set_current_dir (dirname)

Description:
Set the current directory.
Input:
STRING dirname[] Current directory to set to.
Output:
INTEGER <Return Value> 0 = successful.
-1= failure.
Example:
See example for get_current_dir (p. 18). See also set_current_dir (p. 640) in the MSC.Acumen,
Volume 2: Code Examples.

utl_is_locked_file (filename)

Description:
This function will determine if the indicated file is currently locked.
Input:
STRING filename[] This value specifies the name of the file which will have its lock
status checked.
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.
Remarks:
The commands for locking and unlocking files are designed to control access to files shared
between two or more processes.
The file lock control functions assume that only one file at a time will be locked.
This function will always return FALSE for a file that is owned by the process in which this
function is executed.
Example:
Please see utl_is_locked_file (p. 649) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
20
Function Descriptions

utl_lock_file (filename)

Description:
This function will set an advisory lock on a file.
Input:
STRING filename[] This value specifies the name of the file to lock.
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:
8111006 Error attempting to access %A%.
8111002 File %A% is in use by another user. Opening this database may cause
undesirable results.
8111001 Cannot lock %A%. Another file is locked.
8111003 Error while attempting to lock %A%.
Remarks:
The commands for locking and unlocking files are designed to control access to files shared
between two or more processes.
The file lock control functions assume that only one file at a time will be locked.
Example:
Please see utl_lock_file (p. 650) in the MSC.Acumen, Volume 2: Code Examples.

utl_unlock_file ()

Description:
This function will clear an advisory lock.
Input:
none
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:
8111004 Cannot perform file unlock. No files known to be locked.
8111005 Error while attempting to perform an unlock.
Remarks:
The commands for locking and unlocking files are designed to control access to files shared
between two or more processes.
The file lock control functions assume that only one file at a time will be locked.
Example:
Please see utl_unlock_file (p. 651) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 3 21
Files

uil_file_open.open_db ( name, newdb )

Description:
Open a database and set some initial parameters.
Input:
STRING name[] File name of database to be opened.
LOGICAL newdb This flag will execute viewport tiling on a new database so that
it will fill all space from Main Menu to Command Window.
Output:
INTEGER <Return Value> 0 if Description was successful.
Example:
Please see uil_file_open.open_db (p. 648) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
22
Function Descriptions

3.2 IGES and CAD Access


The following functions are used for IGES access from the File menu.

ugi_export_iges_v1 ( filnam, start_section, nlpos, nlknt, product_id, author, author_org,


model_units, entity_toggle_values, all_groups, ngroups,
group_ids, patran_summary, iges_summary )

Description:
Export MSC.Patran geometry to the IGES standard.
Input:
STRING filnam[] IGES file name to create.
STRING start_section[] IGES file start section prolog lines.
INTEGER nlpos ( ) Array of nlknt values. Each entry is the # of characters
for that line of the “IGES file start section prolog” plus
the pervious lines.
INTEGER nlknt Number of lines in the “IGES file start section prolog”.
STRING product_id[] Product Id for receiving system.
STRING author[] Author.
STRING author_org[] Author’s Organization
STRING model_units[] IGES file model units.
LOGICAL entity_toggle_values(35) Flags to specify which MSC.Patran entity types to
export. Only the first 7 flags are used.
LOGICAL all_groups TRUE if all groups are to be exported.
INTEGER ngroups Number of groups to export.
INTEGER group_ids ( ) Group ids to export.
Output:
INTEGER patran_summary (8) Number of MSC.Patran entities processed.
INTEGER iges_summary (21) Number of IGES entities created.
INTEGER <Return Value> 0 if Function was successful.
Example:
Please see ugi_export_iges_v1 (p. 642) in the MSC.Acumen, Volume 2: Code Examples.

ugi_import_iges_v3 (file_name, ipref142, group_name, entity_toggle_values,


color_toggle_values, color_method, color_definition, all_layers,
layer, number_of_groups, group_entity_ids, group_entity_values,
group_color_values, layer_pointers, group_levals, scale,
iges_count, patran_count)
Description:
This function imports geometry information from a file in the IGES standard file format into the
MSC.Patran database.
Input:
STRING file_name [ ] Filename and its path which is to be imported.

Main Index
CHAPTER 3 23
Files

INTEGER ipref142 User preference for curve on surface(142) entity


representation use flag.
0 = Unspecified, use what is defiened in the IGES file.
1 = S or B is preferred (Parametric space)
2 = C is preferred (Real space)
STRING group_name[] Group name in which the imported geometry is added.
LOGICAL entity_toggle_values() This value specifies the entity type filter status flags to
ARRAY specify which IGES entity types to import.
LOGICAL color_toggle_values() This value specifies the entity color filter status flags to
ARRAY specify which IGES entity colors to import.
STRING color_method[ ] This value is used to specify the color definition entity
method used to import color definition entities.
STRING color_defination[ ] This value specifies the color definition entities to import.
LOGICAL all_layers TRUE if all geometry layers are to be imported.
STRING layer[ ] This value specifies a string that is used to specify the
geometry layers to be imported.
INTEGER number_of_groups Number of groups.
INTEGER group_entity_ids ID values for each user group.
(number_of_groups)
LOGICAL group_entity_values This value specifies a 2D array that contains values set to
ARRAY (22,number_of_groups) TRUE if an entity is to be included and FALSE if an entity
is not to be included in the group being imported. The
offset in the first dimension corresponds to the group id
in the same offset of the group_entity_ids input value.
The offset in the second dimension of the array identifies
the entity type.
LOGICAL group_color_values This value specifies a 2D array that contains values set to
ARRAY (10, number_of_groups)TRUE if a color value is to be used. The offset in the first
dimension of the array corresponds to the group id in the
same offset of the group_entity_ids input value. The
offset in the second dimension of the array identifies the
color type.
INTEGER layer_pointers(number This value specifies an array that is used by setting a
ARRAY _of_groups) value at an offset that corresponds with the offset into the
group_entity_ids input value that lists the group ids. The
value at that offset in the array identifies the offset into
the group_layers input values where the number of
layers values for each group is stored.The maximum
value allowed for this array is equal to the number of
integers in the group_layers input value.
INTEGER group_layers This value specifies an array used to identify the number
of layers imported for each group. The size of this array
must be equal to or greater than the largest value placed
in the layer_pointer input value.
Output:
REAL scale This value return the IGES file model space scale.
INTEGER iges_count(50) Number of IGES entities imported by type.
ARRAY
INTEGER patran_count(8) Number of MSC.Patran entities written to the database
ARRAY by type.
Main Index
24
Function Descriptions

INTEGER <Return Value> This function returns a value 0 for success 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.
Example:
Please see ugi_import_iges_v3 (p. 643) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 3 25
Files

3.3 Journal and Session


The following utilities are used to manage journal file and session file operations.

jou_file_write ( astring )

Description:
To write a string to the journal file ONLY.
Input:
STRING astring[] string to write.
Output:
none
Example:
Please see jou_file_write (p. 635) in the MSC.Acumen, Volume 2: Code Examples.

sf_write_disable ( alogical )

Description:
To control whether the next “$ pcl_func(blah, blah)” gets written to the session file. Depends
upon value of ’flag’.
Input:
LOGICAL alogical TRUE -- don’t record next “$ pcl_func()”.
FALSE - record next “$ pcl_func()”.
Output:
none
Example:
Please see sf_write_disable (p. 641) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
26
Function Descriptions

3.4 Neutral
The following PCL functions are used to export MSC.Patran 2.5 format neutral files. nf_write_all
will create the GFEG and CFEG tables for association between geometry in FEM. Since
MSC.Patran has no limitation on the number of nodes and elements associated to the geometry,
care should be taken when importing neutral files generated from nf_write_all into
MSC.Patran 2.5 so that the 2000 nodes per a single geometric region (Curve, surface or solid)
limit is not exceeded.

neutral_export ( pname, title, entflg, grp_all, ngroups, groudid )


2

Description:
Export data to a neutral file, applying the specified entity and group filters first.
Input:
STRING pname[] Neutral file name.
STRING title[] Neutral file title.
LOGICAL entflg(35 ) Entity filters. TRUE/FALSE toggle flags. Only 22 of the 35
values are used. Visable flags include: #1-8, #10, #11, #14-17,
#19-24, #32, and #33.
LOGICAL grp_all TRUE if ALL groups are to be output.
INTEGER ngroups The number of groups to be output.
INTEGER groudid( ) The IDs of the groups to be output.
Output:
INTEGER <Return Value> 0 if Function was successful.
Example:
Please see neutral_export2 (p. 635) in the MSC.Acumen, Volume 2: Code Examples.

nf_write ( pname, title, pfea )

Description:
Write a MSC.Patran 2.5 format neutral file from the open MSC.Patran database. Use the PFEA
translator as a base, add new Phase I. If PFEA is TRUE, write only a PFEA neutral file.
Input:
STRING pname[] Neutral file name.
STRING title[] Neutral file title.
LOGICAL pfea Flag to write only PFEA neutral file if TRUE.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
45000001 Unable to open output file. Aborting Neutral File Export.
8107002 Last command aborted.
45000002 Error writing Finite Element Model. Will try to complete Neutral File.
45000003 Error writing Named Components. Aborting FEM portion of Neutral File. Will
try to complete writing geometry, if any.
Main Index
CHAPTER 3 27
Files

Example:
Please see nf_write (p. 636) in the MSC.Acumen, Volume 2: Code Examples.

nf_write2 ( pname, title, pfea, entflg, grp_all, ngroups, groupid )

Description:
Write a MSC.Patran 2.5 format neutral file from the open MSC.Patran database. Use the PFEA
translator as a base, add new Phase I. If PFEA is TRUE, write only a PFEA neutral file.
Input:
STRING pname[] Neutral file name.
STRING title[] Neutral file title.
LOGICAL pfea Flag to write only PFEA neutral file if TRUE.
LOGICAL entflg( ) Entity filters. TRUE/FALSE toggle flags.
LOGICAL grp_all TRUE if ALL groups are to be output.
INTEGER ngroups The number of groups to be output.
INTEGER groupid( ) The IDs of the groups to be output.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
45000001 Unable to open output file. Aborting Neutral File Export.
45000002 Error writing Finite Element Model. Will try to complete Neutral File.
45000003 Error writing Named Components. Aborting FEM portion of Neutral File. Will
try to complete writing geometry, if any.
Example:
Please see nf_write2 (p. 638) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
28
Function Descriptions

3.5 FrameMaker Files


The following PCL Functions are useful for capturing graphics to be used in generation of on-
line help documents. On-line help is based on FrameMaker (tm) and the files resulting from calls
to ui_framemaker are MIF format which is recognized by FrameMaker.

ui_form_to_frame (classname, scale)

Description:
Given the string classname as the name of a class which has a form currently displayed, this
function will create a framemaker file classname.mif file which contains the form at a scale
factor of scale.
Input:
STRING classname[] Name of the PCL class containing the form to be used.
REAL scale Scale factor for translation. Optional and defaults to 1.0.
Output:
none
Comments:
Creates FrameMaker objects when imported into a FrameMaker document through the import
file menu pick.
Example:
Please see ui_form_to_frame (p. 645) in the MSC.Acumen, Volume 2: Code Examples.

ui_framemaker ( option,[scale] )

Description:
Set automatic framemaker generation. If option is 1, whenever ui_form_display() is called, the
classname is echoed to the history window. This gives you the classname in order to type a
ui_form_to_frame() command. If option is 2, then whenever ui_form_display() is called, the
name of the class is echoed, and a call is automatically made to ui_form_to_frame() with the
specified scale factor. If option is 0, then ui_form_display() reverts back to normal operation.
Input:
INTEGER option Specifies how the function works. See Description above.
REAL scale Scale factor for translation. Optional and defaults to 1.0.
Output:
none
Example:
Please see ui_framemaker (p. 646) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Graphics
4
■ General
■ Element Tables
■ Light Source
■ Color Look-up Tables

■ Deformation Plots
■ Ranges
■ Spectrums
■ Titles
■ Graphics Manager
■ Clipping Planes

Main Index
30
Function Descriptions

4.1 General
The following general purpose utilities affects or reports the state of the graphics manager.

ga_error ()

Description:
Returns a LOGICAL indicating whether the last call to the Graphics application raised an error
condition.
Input:
None.
Output:
LOGICAL <Return Value> Flag indicating if an error occurred.
Example:
Please see ga_error (p. 682) in the MSC.Acumen, Volume 2: Code Examples.

verify_boundaries_display_mgr.initialize ()

Description:
Save graphics properties associated with the current group. Used in conjunction with
verify_boundaries_display_mgr.plot/erase.
Input:
None.
Output:
None.
Example:
Please see verify_boundaries_display_mgr.initialize (p. 831) in the MSC.Acumen, Volume 2:
Code Examples.

verify_boundaries_display_mgr.plot (displ_type )

Description:
Plot the free boundaries by changing display properties.
Input:
STRING displ_type[] “Free_Edges” or “Free_Faces”
Output:
None.
Example:
Please see verify_boundaries_display_mgr.plot (p. 832) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 4 31
Graphics

verify_boundaries_display_mgr.erase ( )

Description:
Erase the free boundary display by resetting graphics properties
Input:
None.
Output:
None.
Example:
Please see verify_boundaries_display_mgr.erase (p. 831) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
32
Function Descriptions

4.2 Element Tables


The element graphics tables are used to display scalar and vector plots for imaging.

ga_elem_scalar_create ( title,nbr_elems,elem_ids,nbr_values,max_vals,scalars,id )

Description:
Creates a scalar element table.
Input:
STRING title[] Title of table.
INTEGER nbr_elems Number of elements to place in table.
INTEGER elem_ids ( ) Array of element ids.
INTEGER nbr_values ( ) Number of scalar values in each element.
INTEGER max_vals Maximum number of scalar values in any element.
REAL scalars (nbr_elems, Scalar values for all elements.
max_value)
Output:
INTEGER id Id of created element scalar table.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_elem_scalar_create (p. 679) in the MSC.Acumen, Volume 2: Code Examples.

ga_elem_scalar_single_create ( title, nbr_elems, elem_ids, nbr_nodes, scalars, id )

Description:
Creates a scalar element table given only one value per element.
Input:
STRING title[] Title of table.
INTEGER nbr_elems Number of elements to place in table.
INTEGER elem_ids ( ) Array of element ids.
INTEGER nbr_nodes ( ) Number of nodes in each element.
REAL scalars ( ) One scalar value per element.
Output:
INTEGER id Id of created element scalar table.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_elem_scalar_single_create (p. 681) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 4 33
Graphics

ga_vector_create ( title, comp_vect_flag, sym_flag, nbr_vectors, vect_ent_types,


vect_ent_ids, vect_locs, normals, vect_types, anchor_styles,
vect_colors, sub_ids, id )

Description:
Creates a vector table.
Input:
STRING title[] Title of table.
INTEGER comp_vect_flag Whether 3 component vector should be displayed or
a resultant vector.
INTEGER sym_flag Whether vector should be displayed symmetrically
on the opposite side.
INTEGER nbr_vectors Number of vectors to place in table.
INTEGER vect_ent_types ( ) Array of entity types.
INTEGER vect_ent_ids ( ) Array of entity ids (if negative, use the location to
signify the location of the vector).
REAL vect_locs (nbr_vectors ,3) Location of vector (only used if vector_ent_ids < 0 ).
REAL normals (nbr_vectors ,3) Normal of vector (includes length).
INTEGER vect_types ( ) Vector types.
0 - no arrow head.
1 - one arrow head.
2 - double head.
3 - triple head.
4 - one arrow head 0-displacements.
5 - double head 0-displacements.
6 - triple head 0-displacements.
7 - one arrow head imposed displacements.
8 - double head imposed displacements.
9 - triple head imposed displacements.
100’s are reserved for markers.
101 - dot.
102 - circle.
103 - X.
104 - +.
105 - filled circle.
106 - square.
107 - filled square.
108 - triangle.
109 - filled triangle.
110 - diamond.
111 - filled diamond.
INTEGER anchor_styles ( ) Anchor styles (1-base, 2-tip, 3-middle).

Main Index
34
Function Descriptions

INTEGER vect_colors ( ) Vector colors.


For results:
NULL - use the colors on D.P. form.
0 - use vector color.
1,2,3 - use component colors.
For functional assignments:
Values must be specified. The value is the type of
vector. The possible values are taken from the
preference include file ( LBCCOLOR1, LBCCOLOR2,
EPCOLOR1, EPCOLOR2, etc. ).
INTEGER sub_ids ( ) Sub ids. Only used by FA.
Output:
INTEGER id Id of created vector table.
Example:
Please see ga_vector_create (p. 770) in the MSC.Acumen, Volume 2: Code Examples.

ga_vector_get ( id, title, comp_vect_flag, sym_flag, vect_ent_types, vect_ent_ids,


vect_locs, normals, vect_types, anchor_styles, vect_colors, sub_ids )

Description:
Gets a vector table.
Input:
INTEGER id Id of vector table.
Output:
STRING title[] Title of table.
INTEGER comp_vect_flag Whether 3 component vector should be displayed or a
resultant vector.
INTEGER sym_flag Whether vector should be displayed symmetrically on
the opposite side.
INTEGER vect_ent_types ( ) Array of entity types.
INTEGER vect_ent_ids ( ) Array of entity ids (if negative, use the location to
signify the location of the vector).
REAL vect_locs ( ,3) Location of vector (only used if vector_ent_ids < 0 ).
REAL normals ( ,3) Normal of vector (includes length).
INTEGER vect_types ( ) Vector types (1-one arrow head, 2-double head, 3-triple
head, 0-no arrow head).
INTEGER anchor_styles ( ) Anchor styles (1-base, 2-tip, 3-middle).
INTEGER vect_colors ( ) Vector colors.
INTEGER sub_ids ( ) Sub-ids.
INTEGER <Return Value> 0 if function was succesful.
Error Conditions:
11000143 The specified vector result table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_vector_get (p. 772) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 4 35
Graphics

ga_vector_number_get ( id, number )

Description:
Gets the number of vectors in vector table.
Input:
INTEGER id Id of vector table.
Output:
INTEGER number Number of vectors in table.
INTEGER <Return Value> 0 if function was successful.
Example:
Please see ga_vector_number_get (p. 775) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
36
Function Descriptions

4.3 Light Source


Manages graphic light sources.

ga_light_attenuation_get ( name, value )

Description:
Get the attenuation of the light.
Input:
STRING name[] Light source name.
Output:
REAL value Attenuation of light (0.0-1.0).
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_attenuation_get (p. 683) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_attenuation_set ( name, value )

Description:
Set the attenuation of the light.
Input:
STRING name[] Light source name.
REAL value Attenuation of light (0.0-1.0).
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_attenuation_set (p. 684) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_color_get ( name, index )

Description:
Get the light source color.
Input:
STRING name[] Light source name.

Main Index
CHAPTER 4 37
Graphics

Output:
INTEGER index Light color.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_color_get (p. 685) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_color_set ( name, index )

Description:
Set the light source color.
Input:
STRING name Light source name.
INTEGER index Light source color index.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000086 The color index for the current lookup table is out of range.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_color_set (p. 686) in the
MSC.Acumen, Volume 2: Code Examples.

ga_light_create ( name )

Description:
Creates a light source.
Input:
STRING name Name of light source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000036 A light source with the given name is already in the database.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_create (p. 687) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
38
Function Descriptions

ga_light_delete ( name )

Description:
Delete a light source.
Input:
STRING name[] Name of light source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_delete (p. 688) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_direction_get ( name, value )

Description:
Get the light source direction.
Input:
STRING name Light source name.
Output:
REAL value (3) Direction of light source.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_direction_get (p. 689) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_direction_set ( name, value )

Description:
Set the light source direction.
Input:
STRING name[] Light source name.
REAL value (3) Direction of light source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Main Index
CHAPTER 4 39
Graphics

Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_direction_set (p. 691) in
the MSC.Acumen, Volume 2: Code Examples.

ga_light_icon_get ( name, value )

Description:
Get the status whether the icon is displayed.
Input:
STRING name[] Light source name.
Output:
INTEGER value Flag specifying if an icon should be displayed at light
source.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_icon_get (p. 692) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_icon_set ( name, value )

Description:
Set the status whether the icon is displayed.
Input:
STRING name[] Light source name.
INTEGER value Flag specifying if an icon should be displayed at light
source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_icon_set (p. 693) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
40
Function Descriptions

ga_light_intensity_get ( name, value )

Description:
Get the intensity of the light.
Input:
STRING name[] Light source name.
Output:
REAL value Intensity of light (0.0-1.0).
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_intensity_get (p. 694) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_intensity_set ( name, value )

Description:
Set the intensity of the light.
Input:
STRING name[] Light source name.
REAL value Intensity of light (0.0-1.0).
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_intensity_set (p. 695) in
the MSC.Acumen, Volume 2: Code Examples.

ga_light_lights_get ( lights_list )

Description:
Gets the list of lights.
Input:
None.
Output:
STRING lights_list [ ] ( ) List of lights.
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 4 41
Graphics

Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_lights_get (p. 696) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_location_get ( name, value )

Description:
Get the location of light source.
Input:
STRING name[] Light source name.
Output:
REAL value (3) Location of light source (x,y,z).
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_location_get (p. 697) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_location_set ( name, value )

Description:
Set the location of light source.
Input:
STRING name[] Light source name.
REAL value (3) Location of light source (x,y,z).
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_location_set (p. 698) in
the MSC.Acumen, Volume 2: Code Examples.

Main Index
42
Function Descriptions

ga_light_movement_get ( name, value )

Description:
Get whether the light moves with the model or not.
Input:
STRING name[] Light source name.
Output:
INTEGER value Flag specifying whether light moves with the model or
not.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_movement_get (p. 699) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_movement_set ( name, value )

Description:
Set the status whether the light should move with the model.
Input:
STRING name[] Light source name.
INTEGER value Flag specifying if the light should move with the model.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_light_attenuation_set (p. 36). See also ga_light_movement_set (p. 700)
in the MSC.Acumen, Volume 2: Code Examples.

ga_light_nlights_get ( nlights )

Description:
Gets the number of lights.
Input:
None.
Output:
INTEGER nlights Number of lights.
INTEGER <Return Value> See error conditions.
Main Index
CHAPTER 4 43
Graphics

Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_nlights_get (p. 702) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_nposted_get ( nlights )

Description:
Gets the number of posted lights.
Input:
None.
Output:
INTEGER nlights Number of posted lights.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_nposted_get (p. 702) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_post ( name )

Description:
Post a light source.
Input:
STRING name[] Name of light source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_post (p. 703) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_posted_get ( lights_list )

Description:
Gets the list of posted lights.
Input:
None.
Output:
STRING lights_list [ ] ( ) List of lights.
Main Index
44
Function Descriptions

INTEGER <Return Value> See error conditions.


Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_posted_get (p. 704) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_type_get ( name, value )

Description:
Get the light source type.
Input:
STRING name[] Light source name.
Output:
STRING value[] Type.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_type_get (p. 705) in the MSC.Acumen, Volume 2: Code Examples.

ga_light_type_set ( name, value )

Description:
Set the light source type.
Input:
STRING name[] Light source name.
STRING value[] Light source type.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_type_set (p. 706) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 45
Graphics

ga_light_unpost ( name )

Description:
Unpost a light source.
Input:
STRING name[] Name of light source.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000037 The light source name is invalid.
11000104 The specified light source was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_light_unpost (p. 707) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
46
Function Descriptions

4.4 Color Look-up Tables

ga_lookup_colors_get ( name, rgb )

Description:
Get the colors defined in LUT.
Input:
STRING name[] LUT name.
Output:
REAL rgb ( ,3) Colors in LUT.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_colors_get (p. 709) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_colors_set ( name, offset, number, rgb )

Description:
Set the LUT’s colors.
Input:
STRING name[] LUT name.
INTEGER offset Start position.
INTEGER number Number of colors in LUT.
REAL rgb ( ,3) Triplets of RGB values.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000026 The lookup table is invalid.
11000028 An incorrect offset was specified in lookup table.
11000027 An incorrect number of colors was specified for lookup table.
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_colors_set (p. 710) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 47
Graphics

ga_lookup_create ( name, number, rgb )

Description:
Create a lookup table.
Input:
STRING name[] LUT name.
INTEGER number Number of colors in LUT.
REAL rgb ( ,3) Triplets of RGB values.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000026 The lookup table is invalid.
11000027 An incorrect number of colors was specified for lookup table.
11000097 There is not enough disk space to complete operation.
11000025 A lookup table with the given name is already in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_create (p. 712) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_current_get ( name )

Description:
Get the current LUT.
Input:
None.
Output:
STRING name[] LUT name.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_current_get (p. 713) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_current_set ( name )

Description:
Set the current LUT.
Input:
STRING name[] LUT name.
Output:
INTEGER <Return Value> See error conditions.

Main Index
48
Function Descriptions

Error Conditions:
11000026 The lookup table is invalid.
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_current_set (p. 714) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_delete ( name )

Description:
Delete a LUT.
Input:
STRING name[] Display name.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000026 The lookup table is invalid.
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_delete (p. 715) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_ncolors_get ( name, number )

Description:
Get the number of colors defined in LUT.
Input:
STRING name[] LUT name.
Output:
INTEGER number Number of colors.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000026 The lookup table is invalid.
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_ncolors_get (p. 716) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 49
Graphics

ga_lookup_ntables_get ( ntables )

Description:
Get the number of luts in database.
Input:
None.
Output:
INTEGER ntables Number of luts.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_ntables_get (p. 717) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_rename ( old_name, new_name )

Description:
Rename a LUT.
Input:
STRING old_name[] Old LUT name.
STRING new_name[] New LUT name.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000026 The lookup table is invalid.
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_rename (p. 718) in the MSC.Acumen, Volume 2: Code Examples.

ga_lookup_tables_get ( ntables )

Description:
Get the list of luts in database.
Input:
None.
Output:
STRING ntables [ ] ( ) List of lut names.
INTEGER <Return Value> See error conditions.

Main Index
50
Function Descriptions

Error Conditions:
11000102 The specified lookup table was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_lookup_tables_get (p. 719) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 51
Graphics

4.5 Deformation Plots


The following function are useful for managing deformation plots.

ga_node_deform_create ( title, nbr_nodes, node_ids, deforms, id )

Description:
Creates a node deformation table.
Input:
STRING title[] Title of table.
INTEGER nbr_nodes Number of nodes to place in table.
INTEGER node_ids ( ) Array of node ids.
REAL deforms (nbr_nodes,3) Deform values for all nodes.
Output:
INTEGER id Id of created node deformation table.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_node_deform_create (p. 720) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
52
Function Descriptions

4.6 Ranges

ga_range_contour_get ( name, flag )

Description:
Get whether range is to be displayed using contour values.
Input:
STRING name[] Range name.
Output:
INTEGER flag Flag=1 if contour values are displayed, Flag=0 if fringe
values.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_contour_get (p. 721) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_contour_set ( name, flag )

Description:
Set the display type flag.
Input:
STRING name[] Name of range.
INTEGER flag Flag=1 if contour values are displayed
Flag=0 if fringe values.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_contour_set (p. 722) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_create ( name, number )

Description:
Creates a range.
Input:
STRING name[] Name of range.
Main Index
CHAPTER 4 53
Graphics

INTEGER number Number of sub-ranges in range.


Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000133 A range with the given name is already in the database.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_create (p. 724) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_delete ( name )

Description:
Delete a range
Input:
STRING name[] Name of range.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_delete (p. 726) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_exist_get ( name, flag )

Description:
Check if range exists.
Input:
STRING name[] Range name.
Output:
INTEGER flag Exist flag.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
Example:
See example for ga_range_create (p. 52). See also ga_range_exist_get (p. 728) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
54
Function Descriptions

ga_range_nranges_get ( nranges )

Description:
Gets the number of ranges.
Input:
None.
Output:
INTEGER nranges Number of ranges.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_nranges_get (p. 729) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_nvalues_get ( name, number )

Description:
Get the number of sub-ranges defined in range.
Input:
STRING name[] Range name.
Output:
INTEGER number Number of sub-ranges.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_nvalues_get (p. 729) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_ranges_get ( ranges )

Description:
Gets the list of ranges.
Input:
None.
Output:
STRING ranges [ ] ( ) List of ranges.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_ranges_get (p. 730) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 4 55
Graphics

ga_range_rename ( old, new )

Description:
Rename a range.
Input:
STRING old[] Current name of range.
STRING new[] New name of range.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_rename (p. 731) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_startend_set ( name, start, end )

Description:
Set the sub-ranges in range given start/end.
Input:
STRING name[] Name of range.
REAL start Start value.
REAL end End value.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_startend_set (p. 733) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_threshold_set ( name, start, end, sthresh_fl, sthresh, ethresh_fl, ethresh )

Description:
Set the sub-ranges in range given start/end and threshold values.
Input:
STRING name[] Name of range.
REAL start Start value.
REAL end End value.
INTEGER sthresh_fl Whether a starting threshold value is spec.
REAL sthresh Starting threshold value.
Main Index
56
Function Descriptions

INTEGER ethresh_fl Whether an ending threshold value is spec.


REAL ethresh Ending threshold value.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_threshold_set (p. 735) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_values_get ( name, from, to, middle )

Description:
Get the sub-ranges defined in range.
Input:
STRING name[] Range name.
Output:
REAL from ( ) From values.
REAL to ( ) To values.
REAL ranges [ ] ( ) List of ranges.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_values_get (p. 737) in the MSC.Acumen, Volume 2: Code Examples.

ga_range_values_set ( name, from, to, middle )

Description:
Set the sub-ranges in range.
Input:
STRING name[] Name of range.
REAL from ( ) From values.
REAL to ( ) To values.
REAL middle ( ) Middle values.
Output:
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 4 57
Graphics

Error Conditions:
11000134 The range name is invalid.
11000136 The specified range was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_range_values_set (p. 738) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
58
Function Descriptions

4.7 Spectrums

ga_spectrum_colors_get ( name, colors )

Description:
Get the colors defined in a spectrum.
Input:
STRING name[] Spectrum name.
Output:
INTEGER colors ( ) Color index values.
INTEGER <Return Value> GA error status.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_colors_get (p. 740) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_colors_set ( name, offset, number, colors )

Description:
Set the colors in spectrum.
Input:
STRING name[] Name of spectrum.
INTEGER offset Starting position in color table where colors should be
modified.
INTEGER number Number of colors in spectrum.
INTEGER colors ( ) Color values.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000032 An incorrect offset was specified in spectrum color table.
11000031 An incorrect number of colors was specified for the spectrum.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_colors_set (p. 741) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 59
Graphics

ga_spectrum_continuous_get ( name, value )

Description:
Get the continuous tone flag.
Input:
STRING name[] Spectrum name.
Output:
INTEGER value Continuous tone flag.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_continuous_get (p. 743) in the MSC.Acumen, Volume 2: Code
Examples.

ga_spectrum_continuous_set ( name, value )

Description:
Set the continuous tone flag.
Input:
STRING name[] Spectrum name.
INTEGER value Continuous tone flag.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_spectrum_colors_set (p. 58). See also ga_spectrum_continuous_set
(p. 744) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_create ( name, number, colors )

Description:
Creates a spectrum color table.
Input:
STRING name[] Name of spectrum table.
INTEGER number Number of colors in spectrum.
INTEGER colors ( ) Color index values.

Main Index
60
Function Descriptions

Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000031 An incorrect number of colors was specified for the spectrum.
11000029 A spectrum with the given name is already in the database.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_create (p. 745) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_current_get ( name )

Description:
Gets the current spectrum.
Input:
None.
Output:
STRING name[] Spectrum name.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_current_get (p. 747) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_current_set ( name )

Description:
Sets the current spectrum.
Input:
STRING name[] Spectrum name.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_current_set (p. 747) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 61
Graphics

ga_spectrum_delete ( name )

Description:
Delete a spectrum table.
Input:
STRING name[] Name of spectrum table.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_delete (p. 749) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_interpolation_get ( name, factor )

Description:
Get the interpolation factor.
Input:
STRING name[] Spectrum name.
Output:
REAL factor Interpolation factor.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_interpolation_get (p. 750) in the MSC.Acumen, Volume 2: Code
Examples.

ga_spectrum_interpolation_set ( name, factor )

Description:
Set the interpolation factor.
Input:
STRING name[] Spectrum name.
REAL factor Interpolation factor.
Output:
INTEGER <Return Value> See error conditions.

Main Index
62
Function Descriptions

Error Conditions:
11000030 The spectrum name is invalid.
11000033 An incorrect interpolation factor was specified.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_spectrum_colors_set (p. 58). See also ga_spectrum_interpolation_set
(p. 751) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_ncolors_get ( name, number )

Description:
Get the number of colors defined in spectrum.
Input:
STRING name[] Spectrum name.
Output:
INTEGER number Number of colors.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000030 The spectrum name is invalid.
11000106 The specified spectrum was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_ncolors_get (p. 753) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_nspectrums_get ( nspectrums )

Description:
Gets the number of spectrums.
Input:
None.
Output:
INTEGER nspectrums Number of spectrums.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_nspectrums_get (p. 753) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 4 63
Graphics

ga_spectrum_rename ( old, new )

Description:
Rename a spectrum.
Input:
STRING old[] Current name of spectrum.
STRING new[] New name of spectrum.
Output:
INTEGER <Return Value> GA Error status
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_rename (p. 754) in the MSC.Acumen, Volume 2: Code Examples.

ga_spectrum_spectrums_get ( spectrums )

Description:
Gets the list of spectrums.
Input:
None.
Output:
STRING spectrums [ ] ( ) List of spectrums.
INTEGER <Return Value> GA error status.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_spectrum_spectrums_get (p. 755) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
64
Function Descriptions

4.8 Titles

ga_title_color_get ( old_name, size )

Description:
Get the color.
Input:
STRING old_name[] Title name.
Output:
INTEGER size Color.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_color_get (p. 756) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_color_set ( old_name, size )

Description:
Set the color.
Input:
STRING old_name[] Title name.
INTEGER size Title color.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_color_set (p. 757) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_create ( name, x, y, color, size )

Description:
Creates title.
Input:
STRING name[] Title.
REAL x X percentage.
REAL y Y percentage.
Main Index
CHAPTER 4 65
Graphics

INTEGER color Text color.


INTEGER size Font size.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000150 Duplicate title.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_create (p. 759) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_delete ( name )

Description:
Delete title.
Input:
STRING name[] Title.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000150 Duplicate title.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_delete (p. 760) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_font_size_get ( old_name, size )

Description:
Get the font size.
Input:
STRING old_name[] Title name.
Output:
INTEGER size Font size.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_font_size_get (p. 761) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
66
Function Descriptions

ga_title_font_size_set ( old_name, size )

Description:
Set the font size.
Input:
STRING old_name[] Title name.
INTEGER size Font size.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_font_size_set (p. 762) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_list_get ( list )

Description:
Get the list of titles.
Input:
None.
Output:
STRING list [ ] ( ) List of titles from db.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_list_get (p. 763) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_loc_get ( old_name, x, y )

Description:
Get the x,y location.
Input:
STRING old_name[] Title name.
Output:
REAL x X percentage.
REAL y Y percentage.
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 4 67
Graphics

Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_loc_get (p. 764) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_loc_set ( old_name, x, y )

Description:
Set the x, y location.
Input:
STRING old_name[] Title name.
REAL x X percentage.
REAL y Y percentage.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000152 Invalid title name.
11000151 Title not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_loc_set (p. 765) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_nposted_get ( num )

Description:
Get the number of posted titles in db.
Input:
None.
Output:
INTEGER num Number of posted titles.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_nposted_get (p. 766) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
68
Function Descriptions

ga_title_num_get ( num )

Description:
Get the number of titles in db.
Input:
None.
Output:
INTEGER num Number of titles.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_num_get (p. 767) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_posted_get ( list )

Description:
Get the list of posted titles
Input:
None.
Output:
STRING list [ ] ( ) List of posted titles from db.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_posted_get (p. 768) in the MSC.Acumen, Volume 2: Code Examples.

ga_title_rename ( old_name, new_name )

Description:
Rename title.
Input:
STRING old_name[] Title.
STRING new_name[] Title.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_title_rename (p. 769) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 69
Graphics

4.9 Graphics Manager


The following functions are useful to manage graphics.

db_get_current_viewport_id (id)

Description:
Retrieves the viewport id associated with the specified viewport.
Input:
None.
Output:
INTEGER id Location for returned value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Example:
Please see db_get_current_viewport_id (p. 657) in the MSC.Acumen, Volume 2: Code Examples.

ga_view_normal_get (viewport, vector)

Description:
This function gets the view vector for the view.
Input:
STRING viewport[ ] The name of the viewport. ““ for the current viewport.
Output:
REAL ARRAYvector(3) The three values of the view vector.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see ga_view_normal_get (p. 777) in the MSC.Acumen, Volume 2: Code Examples.

gm_convert_name ( orig_name, new_name )

Description:
This function will remove the directory from a full path and file name specification.
Input:
STRING orig_name[] This value specifies the full path and file name.
Output:
STRING new_name[] This value will return the file name from the path and
file name specification.
Main Index
70
Function Descriptions

INTEGER <Return Value> This return value is unused.


Comments:
Device dependent routine.
Example:
Please see gm_convert_name (p. 779) in the MSC.Acumen, Volume 2: Code Examples.

gm_conv_device_to_subject ( vp_id, dev_pt, sub_pt )

Description:
To convert from device space to subject space.
Input:
INTEGER vp_id Viewport id.
INTEGER dev_pt (2) Point in device space.
Output:
REAL sub_pt (3) Point in subject space.
INTEGER <Return Value> See error conditions.
Error Conditions:
15000028 The viewport must be posted to carry out this operation.
15000025 An error occurred during an operation on the graphics manager display list.
Example:
Please see gm_conv_device_to_subject (p. 778) in the MSC.Acumen, Volume 2: Code Examples.

gm_database_current ( dbname )

Description:
Get the current database from the graphics manager.
Input:
None.
Output:
STRING dbname[] Current database name.
INTEGER <Return Value> GM Error status.
Example:
Please see gm_database_current (p. 780) in the MSC.Acumen, Volume 2: Code Examples.

gm_draw_entity (segment_id, color_id, entity_type, entity_id)

Description:
This function draws an entity in segment or current viewport.
Input:
INTEGER segment_id Segment id number. If <0 then use current viewport.
INTEGER color_id Selected color id of entity.
INTEGER entity_type Type of entity, i.e. curve or surface.
INTEGER entity_id Entity ID
Main Index
CHAPTER 4 71
Graphics

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 Condition:
None
Example:
Please see gm_draw_entity (p. 780) in the MSC.Acumen, Volume 2: Code Examples.

gm_fit_view ( flag )

Description:
Make sure limits are up to date and perform a fit view.
Input:
INTEGER flag If TRUE perform fit view no matter what. If FALSE, only
fit view if gm has detected that a fit is necessary.
Output:
INTEGER <Return Value> 1 if a fit view was done, 0 if not.
Example:
Please see gm_fit_view (p. 781) in the MSC.Acumen, Volume 2: Code Examples.

gm_fullcolor_mode ( )

Description:
Return whether or not the device is Fullcolor.
Input:
None.
Output:
LOGICAL <Return Value> Fullcolor status of device.
Example:
Please see gm_fullcolor_mode (p. 782) in the MSC.Acumen, Volume 2: Code Examples.

gm_graphics_off ( )

Description:
Shut down the graphics. Database will be closed and all colors freed.
Input:
None.
Output:
INTEGER <Return Value> GM Error status.
Example:
Please see gm_graphics_off (p. 783) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
72
Function Descriptions

gm_graphics_on ( )

Description:
Start the graphics back up. Called after a GmGraphicsOff call. Loads in the last database,
allocated colors.
Input:
None.
Output:
INTEGER <Return Value> GM Error status.
Example:
Please see gm_graphics_on (p. 783) in the MSC.Acumen, Volume 2: Code Examples.

gm_hilight_clear ( )

Description:
To unhighlight all of the highlighted objects.
Input:
None.
Output:
INTEGER <Return Value> GM Error status.
Example:
Please see gm_hilight_clear (p. 784) in the MSC.Acumen, Volume 2: Code Examples.

gm_hilight_entity ( type, id, color )

Description:
To highlight an entity.
Input:
INTEGER type Entity type.
INTEGER id Entity id.
INTEGER color Color to hilight. 0 - unhilight, -1 - hilight using
preference color.
Output:
INTEGER <Return Value> This return value is unused.
Error Conditions:
15000035 A new pick list could not be created.
Example:
Please see gm_hilight_entity (p. 785) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 73
Graphics

gm_hilight_string (string, color)

Description:
This function highlights all of the entities in the picklist string.
Input:
STRING string[] Picklist string.
INTEGER color Color to hilight. 0 - unhilight, -1 - hilight using preference
color.
Output:
INTEGER <Return Value> This return value is unused.
Error Condition:
None
Example:
Please see gm_hilight_string (p. 786) in the MSC.Acumen, Volume 2: Code Examples.

gm_hilight_widget ( wid_id, color )

Description:
To hilight all of the entities in the select databox.
Input:
WIDGET wid_id Select databox widget id.
INTEGER color Color to hilight. 0 - unhilight, -1 - hilight using
preference color.
Output:
INTEGER <Return Value> This return value is unused.
Error Conditions:
15000035 A new pick list could not be created.
Example:
Please see gm_hilight_widget (p. 787) in the MSC.Acumen, Volume 2: Code Examples.

gm_lookup_write ( start, ncolors, colors )

Description:
Write colors to lookup table.
Input:
INTEGER start Starting location in colormap to write to.
INTEGER ncolors Number of colors to write.
REAL colors (ncolors,3) Array of RGB values.
Output:
INTEGER <Return Value> See error conditions.
Comments:
The color table is organized in three regions; The first region is for the DAKAR color table, the
second for UIMS colors, the third for shading. When calling this routine, the ncolors should not
cross over these boundaries.
Main Index
74
Function Descriptions

Error Conditions:
15000041 User Interface colors not allocated. The colormap is being used.
15000042 Not enough colors were allocated for shading.
Example:
Please see gm_lookup_write (p. 788) in the MSC.Acumen, Volume 2: Code Examples.

gm_mpeg_pause_recording ()

Description:
This function pauses the recording of mpeg images file. This is a void function so there are no
input/output arguments in this function.
Input:
None
Output:
None
Example:
Please see gm_mpeg_pause_recording (p. 789) in the MSC.Acumen, Volume 2: Code Examples.

gm_mpeg_resume_recording ()

Description:
This function resumes the recording of mpeg images file. This is a void function so there are
no input/output arguments in this function.
Input:
None
Output:
None
Example:
Please see gm_mpeg_resume_recording (p. 791) in the MSC.Acumen, Volume 2: Code
Examples.

gm_mpeg_start_recording (file_name, file_version, x, y, width, height, quality,


maxframes)
Description:
This function starts the recording of an mpeg images file.
Input:
STRING file_name[] Recorded .mpeg filename
STRING file_version[] File version, i.e. overwrite or increment
REAL x X point coordinate
REAL y Y point coordinate
REAL width Width of the drawable area
REAL height Height of the drawable area
INTEGER quality Quality (0-100)
INTEGER maxframes Maximum number of frames.
Main Index
CHAPTER 4 75
Graphics

Output:
INTEGER <Return Value> 0 for success of the function and integer value 1 to 7 for
the failure of the function.
Error Condition:
None
Example:
Please see gm_mpeg_start_recording (p. 793) in the MSC.Acumen, Volume 2: Code Examples.

gm_mpeg_stop_recording ()

Description:
This function stops the recording of an mpeg images file. This is a void function so there are no
input/output arguments in this function.
Input:
None
Output:
None
Example:
Please see gm_mpeg_stop_recording (p. 795) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_hardware_mode_get ( hard_flag )

Description:
To get whether viewport is drawn in hardware mode.
Input:
None.
Output:
INTEGER hard_flag If TRUE, viewport is drawn in hardware.
INTEGER <Return Value> This return value is unused.
Example:
Please see gm_viewport_hardware_mode_get (p. 797) in the MSC.Acumen, Volume 2: Code
Examples.

gm_viewport_hardware_mode_set ( hard_flag )

Description:
To set whether viewport is drawn in hardware mode.
Input:
INTEGER hard_flag If TRUE, viewport is drawn in hardware.
Output:
INTEGER <Return Value> This return value is unused.

Main Index
76
Function Descriptions

Example:
Please see gm_viewport_hardware_mode_set (p. 797) in the MSC.Acumen, Volume 2: Code
Examples.

gm_viewport_id_to_name ( id, name )

Description:
Convert from Viewport id to Viewport name.
Input:
INTEGER id Viewport ID.
Output:
STRING name[] Viewport name.
INTEGER <Return Value> GM error status.
Example:
Please see gm_viewport_id_to_name (p. 798) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_limits_get ( persp, limits )

Description:
Determine the limits of the model in View Space.
Input:
LOGICAL persp If TRUE, this skips perspective. If FALSE, the
perspective setting in the current viewport will be used.
Output:
REAL limits (6) Min/max x, y and z coordinates of the model in View
Space.
INTEGER <Return Value> See error conditions.
Error Conditions:
15000025 An error occurred during an operation on the graphics manager display list.
15000028 The viewport must be posted to carry out this operation.
Example:
Please see gm_viewport_limits_get (p. 799) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_ncolors_get ( ncolors )

Description:
To get the number of colors used by the GM.
Input:
None.
Output:
INTEGER ncolors Number of colors.
INTEGER <Return Value> This return value is unused.
Main Index
CHAPTER 4 77
Graphics

Example:
Please see gm_viewport_ncolors_get (p. 800) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_refresh_off ( )

Description:
Turn off viewport refresh.
Input:
None.
Output:
INTEGER <Return Value> This return value is unused.
Example:
Please see gm_viewport_refresh_off (p. 800) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_refresh_on ( )

Description:
Turn on viewport refresh.
Input:
None.
Output:
INTEGER <Return Value> This return value is unused.
Example:
Please see gm_viewport_refresh_on (p. 801) in the MSC.Acumen, Volume 2: Code Examples.

gm_viewport_refresh_status ( )

Description:
Return the current status of gmRefreshViewports.
Input:
None.
Output:
LOGICAL <Return Value> GM error status.
Example:
Please see gm_viewport_refresh_status (p. 802) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
78
Function Descriptions

gm_viewport_view_corners ( id, corn1, corn2, cent_x, cent_y, zoom )

Description:
Calculate the center and zoom for a viewport given two corners of a rectangle.
Input:
INTEGER id Viewport id.
INTEGER corn1[2] This value specifies the X and Y coordinates of the upper
left corner of the rectangle defining the new center point
and zoom value for the viewport.
INTEGER corn1[2] This value specifies the X and Y coordinates of the
lower right corner of the rectangle defining the new
center point and zoom value for the viewport.
Output:
REAL cent_x New center in x.
REAL cent_y New center in y.
REAL zoom New zoom.
INTEGER <Return Value> GM error status.
Example:
See example for gm_viewport_id_to_name (p. 76). See also gm_viewport_view_corners
(p. 802) in the MSC.Acumen, Volume 2: Code Examples.

gm_visibility_all ( vstat )

Description:
To set the visibility status of all objects.
Input:
LOGICAL vstat TRUE - plot.
FALSE - erase.
Output:
INTEGER <Return Value> GM error status.
Example:
Please see gm_visibility_all (p. 804) in the MSC.Acumen, Volume 2: Code Examples.

gm_visibility_widget ( entityList, visibility )

Description:
To set the visibility status of all the entities in the selectdatabox.
Input:
STRING entityList List of entities to plot or erase.
LOGICAL visibility Visibility status: TRUE - visible, FALSE - hidden.
Output:
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 4 79
Graphics

Error Conditions:
15000035 A new pick list could not be created.
Example:
Please see gm_visibility_widget (p. 804) in the MSC.Acumen, Volume 2: Code Examples.

end_vrml_animation ()

Description:
The function ends the process of copying the animation from the screen into a VRML file. This
function has to follow the start_vrml_animation() function after specifying the animation
attributes. The function has no return conditions.
Input:
None
Output:
None
Error Conditions:
None.
Example:
Please see end_vrml_animation (p. 657) in the MSC.Acumen, Volume 2: Code Examples.

gm_write_image ( <image_type >, <filename>, <version_logic>, <xpcnt >, <ypcnt>,


<width_pcnt>, <height_pcnt>, <quality>, <xyplot>)

Description:
The function prepares an image file of the specified type of the current viewport. It returns an
integer status of 0 on success and 1 on failure.
Input:
STRING image_type[] The typeof the image file – BMP, JPEG, PNG, TIFF, VRML.
STRING filename[] The name of the file to write the image with the file
extensions - bmp, jpg, png, tif, wrl.
STRING version_logic[] String to specify the version logic for writing the image file
– “Overwrite”, “Increment”. Any other string defaults to
“Increment”.
REAL xpcnt The starting percentage of the viewport for the image file in
the horizontal direction.
REAL ypcnt The starting percentage of the viewport for the image file in
the vertical direction.
REAL width_pcnt The ending percentage of the viewport for the image file in
the horizontal direction.
REAL height_pcnt The ending percentage of the viewport for the image file in
the vertical direction.
INTEGER quality An integer specifying the quality of image.
STRING xyplot The image captured will be of the current XY PLOT
window as opposed to the model graphics viewport.
Output:
Main Index
80
Function Descriptions

INTEGER <Return Value> 0 for success and 1 for failure.


Error Conditions:
None.
Example:
Please see gm_write_image (p. 805) in the MSC.Acumen, Volume 2: Code Examples.

gm_write_vrml (<filename>, <version_logic>)

Description:
The function prepares an image file of the entire viewport with the extension .wrl. It returns an
integer status of 1 on success and 0 on failure.
Input:
STRING filename[] The name of the file to write the image with the file
extension - .wrl.
STRING version_logic[] String to specify the version logic for writing the image file.
– “Overwrite”, “Increment”. Any other string defaults to
“Increment”.
Output:
INTEGER <Return Value> 1 for success and 0 for failure.
Error Conditions:
None.
Example:
Please see gm_write_vrml (p. 807) in the MSC.Acumen, Volume 2: Code Examples.

start_vrml_animation (<filename>, <version_logic>)

Description:
The function starts the process of copying the animation from the screen into a VRML file. This
function has to be followed by the end_vrml_animation() function after specifying the
animation attributes. During the course of execution of this function, the animation is sent to
the .wrl file and is not viewed in the current viewport. The function has no return conditions.
Input:
STRING filename[] The name of the file to write the animation file with the file
extension - .wrl
STRING version_logic[] String to specify the version logic for writing the image file
– “Overwrite”, “Increment”. Any other string defaults to
“Increment”.
Output:
None
Error Conditions:
None.
Example:
Please see start_vrml_animation (p. 828) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 81
Graphics

4.10 Clipping Planes

ga_clip_plane_clip_planes_get ( aclips_list )

Description:
Gets the list of arb clipping planes.
Input:
None.
Output:
STRING aclips_list [ ] List of arb clipping planes.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_clip_planes_get (p. 660) in the MSC.Acumen, Volume 2: Code
Examples.

ga_clip_plane_create ( name )

Description:
Creates an arb clipping plane.
Input:
STRING name[] Name of plane.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000154 An arbitrary clipping plane with the given name is already in the database.
11000097 There is not enough disk space to complete operation.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_create (p. 661) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_delete ( name )

Description:
Delete a plane.
Input:
STRING name[] Name of plane.
Output:
INTEGER <Return Value> See error conditions.

Main Index
82
Function Descriptions

Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_delete (p. 662) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_direction_get ( name, value )

Description:
Get the arb clipping plane direction.
Input:
STRING name[] Arb clipping plane name.
Output:
REAL value (3) Direction of arb clipping plane.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_direction_get (p. 663) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_direction_set ( name, value, up_flag )

Description:
Set the arb clipping plane direction.
Input:
STRING name[] Arb clipping plane name.
REAL value (3) Direction of arb clipping plane.
LOGICAL up_flag Calculate up vector or not.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_direction_set (p. 664) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 4 83
Graphics

ga_clip_plane_icon_get ( name, value )

Description:
Get the status whether the icon is displayed.
Input:
STRING name[] Arb clipping plane name.
Output:
INTEGER value Flag specifying if an icon should be displayed at arb
clipping plane.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_icon_get (p. 665) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_icon_set ( name, value )

Description:
Set the status whether the icon is displayed.
Input:
STRING name[] Arb clipping plane name.
INTEGER value Up of arb clipping plane.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_clip_plane_direction_set (p. 82). See also ga_clip_plane_icon_set
(p. 666) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_location_get ( name, value )

Description:
Get the location of arb clipping plane.
Input:
STRING name[] Arb clipping plane name.
Output:
REAL value (3) Location of arb clipping plane (x, y, z).
INTEGER <Return Value> See error conditions.
Main Index
84
Function Descriptions

Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_location_get (p. 667) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_location_set ( name, value )

Description:
Set the location of arb clipping plane.
Input:
STRING name Arb clipping plane name.
REAL value (3) Location of arb clipping plane (x, y, z).
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_clip_plane_direction_set (p. 82). See also ga_clip_plane_location_set
(p. 668) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_movement_get ( name, value )

Description:
Get whether the arb clipping plane moves with the model or not.
Input:
STRING name[] Arb clipping plane name.
Output:
INTEGER value (3) Flag specifying whether arb clipping plane moves with
the model or not.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_movement_get (p. 669) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 4 85
Graphics

ga_clip_plane_movement_set ( name, value )

Description:
Set the status whether the arb clipping plane should move with the model.
Input:
STRING name[] Arb clipping plane name.
INTEGER value Flag specifying if the arb clipping plane should move
with the model.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
See example for ga_clip_plane_direction_set (p. 82). See also
ga_clip_plane_movement_set (p. 671) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_nclip_planes_get ( naclips )

Description:
Gets the number of arb clipping planes.
Input:
None.
Output:
INTEGER naclips Number of arb clipping planes.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_nclip_planes_get (p. 672) in the MSC.Acumen, Volume 2: Code
Examples.

ga_clip_plane_nposted_get ( naclips )

Description:
Gets the number of posted arb clipping planes.
Input:
None.
Output:
INTEGER naclips Number of posted arb clipping planes.
INTEGER <Return Value> See error conditions.

Main Index
86
Function Descriptions

Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_nposted_get (p. 673) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_post ( name )

Description:
Post a plane.
Input:
STRING name[] Name of plane.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_post (p. 674) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_posted_get ( aclips_list )

Description:
Gets the list of posted arb clipping planes.
Input:
None.
Output:
STRING aclips_list [ ] ( ) List of arb clipping planes.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_posted_get (p. 675) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_unpost ( name )

Description:
Unpost a plane.
Input:
STRING name[] Name of plane.
Output:
INTEGER <Return Value> See error conditions.
Main Index
CHAPTER 4 87
Graphics

Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_unpost (p. 677) in the MSC.Acumen, Volume 2: Code Examples.

ga_clip_plane_up_set ( name, value )

Description:
Set the arb clipping plane Up.
Input:
STRING name[] Arb clipping plane name.
REAL value (3) Up of arb clipping plane.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000155 The arbitrary clipping plane name is invalid.
11000158 The specified arbitrary clipping plane was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_clip_plane_up_set (p. 678) in the MSC.Acumen, Volume 2: Code Examples.

clip_plane_ar_calc ( name, rx, ry, rz, new_dir, new_up )

Description:
Update the indicated clipping plane’s data to reflect the axes relative rotations about the x, y
and z axes.
Input:
STRING name[] Name of clipping plane.
REAL rx Rotation about the x-axis.
REAL ry Rotation about the y-axis.
REAL rz Rotation about the z-axis.
Output:
REAL new_dir(3) New dir.
REAL new_up(3) New up.
INTEGER <Return Value> Error status.
Example:
Please see clip_plane_ar_calc (p. 654) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
88
Function Descriptions

clip_plane_zoom_calc ( name, factor, new_loc )

Description:
Update the indicated clipping plane’s location point to reflect the zoom ( not in db ).
Input:
STRING name[] Name of clipping plane.
REAL factor Factor.
Output:
REAL new_loc(3) New location.
INTEGER <Return Value> Error status.
Example:
Please see clip_plane_zoom_calc (p. 655) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
User Interface
5
■ Error Message Handling
■ List Processor
■ General
■ Widgets

■ Help

Main Index
90
Function Descriptions

5.1 Error Message Handling


A consistent method is provided to handle error messages in PCL through the message facility.
It is based around a set of utilities and a unified index to a separate database (messages.database)
which contains the actual text strings corresponding to each unique error code (1->2**31). Also
provided with the message facility is a set of forms to display the errors (Use msg_to_form to
invoke this for internally generated errors). Since the user cannot add to the text strings in
messages.database, user_message is provided to allow access to the same forms.

appcode ( status )

Description:
Return the multiple of 1000000 ignoring the remainder of status. Used to determine the
application which originated the error status code.
Input:
INTEGER status Application error status code.
Output:
INTEGER <Return Value> Return status of operation.
Example:
Please see appcode (p. 843) in the MSC.Acumen, Volume 2: Code Examples.

app_db_err_msg ( domesg, db_routine, caller, status, id )

Description:
Handle a database error.
Input:
LOGICAL domesg Error message flag: If TRUE, this routine will issue a message if
an error is encountered.
STRING db_routine[] Name of the database routine that detected the error.
STRING caller[] Name of the routine that called the database routine.
INTEGER status Database status code.
INTEGER id Id of item causing the error.
Output:
none
Example:
Please see app_db_err_msg (p. 839) in the MSC.Acumen, Volume 2: Code Examples.

msg_format_string ( msgcode, ints, reals, chars, string )

Description:
PCL interface to Message Utility for getting message into string(s).
Input:
INTEGER msgcode Message code to look up.
INTEGER ints() Integer array for formatting.
Main Index
CHAPTER 5 91
User Interface

REAL reals() Real array for formatting.


STRING chars[] Character array start for formatting.
Output:
STRING string[] String containing the resulting message.
INTEGER <Return Value> This function returns the number of characters in the string
returned in the output value string.
Example:
Please see msg_format_string (p. 851) in the MSC.Acumen, Volume 2: Code Examples.

msg_get_application ( msgcode )

Description:
Get Application code embedded in a message code.
Input:
INTEGER msgcode Message code to look up.
Output:
INTEGER <Return Value> Application code extracted from msgcode.
Example:
Please see msg_get_application (p. 853) in the MSC.Acumen, Volume 2: Code Examples.

msg_string_more ( string )

Description:
Get next piece of message string.
Input:
none
Output:
STRING string[] Return string containing up to the total number of characters
in the message string. The string can be declared to any length.
INTEGER <Return Value> Number of characters left.
Example:
Please see msg_string_more (p. 854) in the MSC.Acumen, Volume 2: Code Examples.

msg_to_file ( msgcode, msgtype, appcode, ints, reals, chars, maxout, unit )

Description:
Output a message to a PCL fio unit.
Input:
INTEGER msgcode Message code to look up.
INTEGER msgtype Message type.
INTEGER appcode Application code for calling application.
INTEGER ints() Integer array for formatting.
Main Index
92
Function Descriptions

REAL reals() Real array for formatting.


STRING chars[] Character array (Fortran style) for formatting.
INTEGER maxout Maximum output size in string.
INTEGER unit Channel from TEXT_OPEN call.
Output:
INTEGER <Return Value> Number of characters left.
Example:
See example for msg_string_more (p. 91). See also msg_to_file (p. 855) in the MSC.Acumen,
Volume 2: Code Examples.

msg_to_string ( msgcode, msgtype, appcode, ints, reals, chars, string )

Description:
Interface to Message utility to retrieve Message from message database.
Input:
INTEGER msgcode Message code to look up.
INTEGER msgtype Message type.
INTEGER appcode Application code for calling application.
INTEGER ints() Integer array for formatting.
REAL reals() Real array for formatting.
STRING chars[] Character array for formatting.
Output:
STRING string[] String to return first part of message in to.
INTEGER <Return Value> Number of characters left in string.
Example:
Please see msg_to_string (p. 856) in the MSC.Acumen, Volume 2: Code Examples.

user_message ( type, appcode, appname, message )

Description:
Display a user message with the MSC.Patran user interface and possibly wait for and return a
reply. The “type” determines whether the message is displayed in a form or simply output to
the history window. The “type” also determines what buttons are available in the form. The
“appcode” is a number assigned by the programmer which can be used in conjunction with
ui_answer_message and ui_override_message to supply the message response during session
file playback. Use of duplicate application codes will not generally cause problems but it is
better if they are unique.

Main Index
CHAPTER 5 93
User Interface

Input:
STRING type[] Type of message format desired. May be:
“Info” Informative message
“Warn” Warning message
“Error” Error/Fatal message
“Ack” Acknowledgment message
“Q_YN” -Yes/No Query w/o default
“Q_YN_Y” -Yes/No Query Yes default
“Q_YN_N” -Yes/No Query No default
“Q_YNY” -Yes/No/YesAll Query w/o default
“Q_YNY_N” -Yes/No/YesAll Query No default
“Q_YNYN” -Yes/No/YesAll/NoAll Query w/o default
“Q_YNYN_Y” -Yes/No/YesAll/NoAll Query Yes default
“Q_YNYN_N” -Yes/No/YesAll/NoAll Query No default
“C_YN” -Yes/No Critical w/o default
“C_YN_Y” -Yes/No Critical Yes default
“C_YN_N” -Yes/No Critical No default
“C_YNY” -Yes/No/YesAll Critical w/o default
“C_YNY_N” -Yes/No/YesAll Critical No default
“C_YNYN” -Yes/No/YesAll/NoAll Critical w/o default
“C_YNYN_Y” -Yes/No/YesAll/NoAll Critical Yes default
“C_YNYN_N” -Yes/No/YesAll/NoAll Critical No default
INTEGER appcode Application message code, unique value.
STRING appname[] Name of the application generating the message.
INTEGER message[] Message to display.
Output:
INTEGER <Return Value> 1=Yes, 2=No, 3=Yes All, 4=Abort, 5=No All.
Example:
Please see user_message (p. 905) in the MSC.Acumen, Volume 2: Code Examples.

notemessage.text ( label, message )

Description:
Simple note message form with Ok button.
Input:
STRING label[] Form label.
STRING message[] Message text (Include \n for new line).
Output:
none
Example:
Please see notemessage.text (p. 858) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
94
Function Descriptions

5.2 List Processor


The list processor parses lists of entities typed in by the user into databoxes in the standard
Picklist syntax or generated from picking graphical entities with the cursor.

Include files
The following include files define symbols used with certain list processor functions:
lpkeywords.i
lpenums.i
geometry_types.i
geometry_coos.i

app_count_list ( type, list, domesg, status )

Description:
Count the number of items of a specified type that are contained in a list.
Input:
INTEGER type Item type ( for example lp_sublist_curve from “lpenums.i” )
STRING list[] Input list from user interface.
LOGICAL domes Error message flag: If TRUE, this routine will issue a message if
LIST produces an error condition during list processing.
Output:
INTEGER status List processor status code: 0 = ok.
INTEGER <Return Value> Number of TYPE items in LIST ( -1 if error encountered ).
Example:
Please see app_count_list (p. 836), and app_count_list (p. 837) in the MSC.Acumen, Volume 2:
Code Examples.

app_ids_to_vstring ( id_array, numval, type, appstr )

Description:
This function will create a string from an array of integer id and label values.
Input:
INTEGER id_array(numval) This value specifies the integer id and label values used to
create a string.
INTEGER numval This value specifies the number of offsets defined for the
input value id_array.
INTEGER type This value specifies the list processor entity type that the
integer id and label values represent. This value can range
from 1 to 16.
Output:
INTEGER appstr [VIRTUAL] This value returns the string created from the integer id
and label values.
INTEGER <Return Value> This function will always return a value of zero.
Main Index
CHAPTER 5 95
User Interface

Example:
Please see app_ids_to_vstring (p. 840) in the MSC.Acumen, Volume 2: Code Examples.

app_int_array_to_vstring ( prefix, numvals, inlist, virtsym )

Description:
This function will create a list processor string of entity identifiers from a list of label values.

Input:
STRING prefix[] Prefix string, max be null or empty.
INTEGER numvals The number of values in the input list.
INTEGER inlist() The int array input list of ids to convert.
Output:
STRING virtsym[VIRTUAL] Virtual string to receive character list.
INTEGER <Return Value> Success = 0, else message code.
Example:
Please see app_int_array_to_vstring (p. 842) in the MSC.Acumen, Volume 2: Code Examples.

asm_u_coord_global_to_local ( <points>, <trans_vector>, <rot_matrix >, <i_type>,


<num_points>)

Description:
Transform points from global coordinates to local. Pass the transpose of the rotation matrix
stored in the database. The real array points() which is used as an input to the function returns
the new coordinates of the points.
Input:
REAL ARRAY points() The point coordinates in global frame.
REAL ARRAY trans_vector() This value specifies the translation vector for the local
coordinate frame.
REAL ARRAY rot_matrix() This value specifies the rotation matrix for the local
coordinate frame and is the transpose of the rotation
matrix stored in the database.
INTEGER i_type The reference coordinate frame type:
1=rectangular
2=cylindrical
3=spherical
Any other integer defaults to rectangular.
INTEGER num_points The number of points.
Output:
REAL points() The point coordinates in local frame
Error Conditions:
None.
Example:
Please see asm_u_coord_global_to_local (p. 843) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
96
Function Descriptions

asm_u_lp_get_entity_label (label_handle, list, last_supplied_label, domesg, label,


status)

Description:
Get an ASM entity label from the user supplied entity label list.
Input:
INTEGER label_handle Pointer to the list evaluator allocated structure for the
entity labels.
STRING list[] User input list.
LOGICAL last_supplied_label True if the list of user supplied entity labels has been
exhausted prematurely and the remaining entity labels
will be assigned by the database.
LOGICAL domesg Error message flag: If TRUE, this routine will allow the
app_db_err_msg routine to issue a message if an error is
encountered.
Output:
INTEGER label Label of asm entity to create.
INTEGER status The list processor status flag.
=0: successful.
Example:
Please see asm_u_lp_get_entity_label (p. 844) in the MSC.Acumen, Volume 2: Code Examples.

asm_u_lp_get_point (point_list, do_message, point, status )

Description:
Uses list processor to get a point.
Input:
STRING point_list[] The point list.
LOGICAL do_message =TRUE if subroutine to handle errors.
Output:
REAL point() The x, y, z coordinates of the point.
INTEGER status =0: successful.
!=0: error, returns error code.
Example:
Please see asm_u_lp_get_point (p. 845) in the MSC.Acumen, Volume 2: Code Examples.

asm_u_lp_get_vector ( vector, do_message, vector_coord, status )

Description:
Uses list processor to get the x, y, z parts of a vector.
Input:
STRING vector[] The vector list.
LOGICAL do_message =TRUE if subroutine to handle errors.

Main Index
CHAPTER 5 97
User Interface

Output:
REAL vector_coord() The x, y, z coordinates of the vector.
INTEGER status =0: successful.
!=0: error, returns error code.
Example:
Please see asm_u_lp_get_vector (p. 846) in the MSC.Acumen, Volume 2: Code Examples.

lp_eval_cleanup ( handle )

Description:
Free allocated memory for list processor operations. This function must be called after all calls
to parse a particular picklist.
Input:
INTEGER handle Handle returned from lp_eval.
Output:
INTEGER <Return Value> Always returns 0.
Example:
Please see lp_eval_cleanup (p. 848) in the MSC.Acumen, Volume 2: Code Examples.

lp_geometry_text ( geo_keyword, geo_id_count, geo_id_list, text_len_max, text )

Description:
Create a geometry Picklist from a prefix and array of integers.
Input:
INTEGER geo_keyword Geometry type (From lpkeywords.i)
INTEGER geo_id_count Number of ids in array.
INTEGER geo_id_list ( ) List of ids.
INTEGER text_len_max Number of characters in text.
Output:
STRING text[VIRTUAL] Picklist syntax string.
INTEGER <Return Value> See error conditions.
Error Conditions:
14000199 LpGeometryText: there isn’t enough room to build the output string.
Example:
Please see lp_geometry_text (p. 849) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
98
Function Descriptions

lp_keyword_text ( keyword, family, text )

Description:
The purpose of this function is to return the keywords found in MSC.Patran that are used by
MSC.Patran to describe objects, actions, etc.
This function receives parameters in a nonintuitive fashion. The family is the first method of
grouping, and the keyword is next. 1,3 yields point, and 2,3 yields grid. This should show that
they keywords are organized by family, the second parameter. Below is shown all the families,
and then a listing of the LpGEOMETRY family.
Input:
INTEGER keyword Identifies the entity. From lpkeywords.i:
(SAMPLE for family LpGEOMETRY)
#define LpPOINT 1
#define LpGRID 2
#define LpCURVE 3
#define LpLINE 4
#define LpSURFACE 5
#define LpPATCH 6
#define LpSOLID 7
#define LpHYPERPATCH 8
#define LpPOINT_IMMEDIATE 9
#define LpSCREEN_PICK 10
#define LpCOORDINATE_FRAME 11
#define LpVECTOR 12
#define LpAXIS 13
#define LpVECTOR_IMMEDIATE 4
#define LpAXIS_IMMEDIATE 15
#define LpSIDE_NUMBER 16
INTEGER family Identifies the group of entities keyword falls. From
lpkeywords.i:
/* listing of possible families */
#define LpACTION 1
#define LpTECHNIQUE 2
#define LpGEOMETRY 3
#define LpFINITE_ELEMENT 4
#define LpDESIGNATOR 5
#define LpATTRIBUTE 6
#define LpGEOMETRY_TYPES 7
#define LpGEOMETRY_FORMATS 8
#define LpGEOMETRY_COOS 9
#define LpOPERATION 10
#define LpTOKEN_TYPES 11
#define LpELEMENT_TYPES 12
#define LpNUMERIC_STANDIN 13

Main Index
CHAPTER 5 99
User Interface

Output:
STRING text[31] String alias for keyword.
INTEGER <Return Value> Message facility code. See Message System Functions
(p. 114) in the PCL and Customization. 0 indicates no error.
Example:
Please see lp_keyword_text (p. 850) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
100
Function Descriptions

5.3 General

uid_get_screen_info ( xpix, ypix, width, height, dpi )

Description:
Return the setting of screen size in pixels and pixels per inch.
Input:
none
Output:
INTEGER xpix The number of pixels in the x screen direction.
INTEGER ypix The number of pixels in the y screen direction.
INTEGER width The pixel width of the screen.
INTEGER height The pixel height of the screen.
INTEGER dpi The number of dots (pixels) per inch in the x direction.
Error Conditions:
14000199 LpGeometryText: there isn’t enough room to build the output string.
Example:
Please see uid_get_screen_info (p. 883) in the MSC.Acumen, Volume 2: Code Examples.

uid_get_border_sizes ( type, pos_is_frame, leftoffset, topoffset, rightoffset,


bottomoffset )

Description:
Return the value of positionIsFrame and the size of the borders in all four directions for a
specific type of window.
Input:
INTEGER type Window type:
0=dialog
1=graphics
2=modal
Output:
LOGICAL pos_is_frame Setting of PositionIsFrame.
INTEGER leftoffset Size of left border.
INTEGER topoffset Size of top border.
INTEGER rightoffset Size of right border.
INTEGER bottomoffset Size of bottom border.
Example:
See example for uid_get_screen_info (p. 100). See also uid_get_border_sizes (p. 882) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 5 101
User Interface

uid_get_font_heights ( font_ht, textfont_ht, spreadfont_ht )

Description:
Return font heights.
Input:
none
Output:
INTEGER font_ht Font height in pixels.
INTEGER textfont_ht Text font height in pixels.
INTEGER spreadfont_ht Spreadsheet font height in pixels.
Example:
Please see uid_get_font_heights (p. 883) in the MSC.Acumen, Volume 2: Code Examples.

uid_set_sys_pix ( pix_per_inch, new_disp_factor )

Description:
Calculate system dimensions.
Input:
REAL pix_per_inch Set monitor pixels per inch.
REAL new_disp_factor Set the display factor.
Output:
none
Example:
See example for uid_get_font_heights (p. 101). See also uid_set_sys_pix (p. 884) in the
MSC.Acumen, Volume 2: Code Examples.

uil_app_analysis.get_real_name ( user_name, real_name )

Description:
Get the current preference from the database.
Input:
STRING user_name[] The current analysis code or type name. See
db_get_default_anal_code.
Output:
STRING real_name[] The modified analysis code or analysis type name.
Example:
Please see uil_app_analysis.get_real_name (p. 885) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
102
Function Descriptions

uil_pcntcomplete.close ()

Description:
This function closes the percent complete form in the MSC.Patran window. The function has no
return value.
Input:
None.
Output:
None.
Error Conditions:
None.
Example:
Please see uil_pcntcomplete.close (p. 886) in the MSC.Acumen, Volume 2: Code Examples.

uil_pcntcomplete.initlz (<label>)

Description:
This function starts the percent complete status form in the MSC.Patran window. The function
has no return value.
Input:
STRING label [] The label for the percent complete form.
Output:
None.
Error Conditions:
None.
Example:
Please see uil_pcntcomplete.initlz (p. 886) in the MSC.Acumen, Volume 2: Code Examples.

uil_primary.get_menubar_id ( )

Description:
Returns the widget id of the main menu bar
Input:
none
Output:
WIDGET <Return Value> Value of the main menu bar id.
Example:
Please see uil_primary.get_menubar_id (p. 887) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 5 103
User Interface

ui_sys_command ( cmd )

Description:
Can be used to create new files outside the MSC.Patran environment, or perform any other unix
task in the invoking window.
Input:
STRING cmd[] Unix command.
Output:
LOGICAL <Return Value> True- Unsuccessful. False- Successful.
Example:
Please see ui_sys_command (p. 873) in the MSC.Acumen, Volume 2: Code Examples.

ui_sys_return ( )

Description:
Return out of the event loop. This will cause the application to return to the operating system
command line.
Input:
none
Output:
none
Example:
Please see ui_sys_return (p. 874) in the MSC.Acumen, Volume 2: Code Examples.

ui_text_select ( textwid, left, right, vstr )

Description:
Return selected text and it’s left and right positions in the string in which it resides.
Input:
WIDGET textwid The widget ID.
Output:
INTEGER left Left position.
INTEGER right Right position.
STRING vstr[ ] This value returns the text selected in the textbox. See the
notes below.
Notes:
This string must be allocated with enough characters to contain the entire string. If enough
characters are not allocated, the text box string returned by this function will be truncated.
A string with enough characters to contain the selected text can be allocated with a call to the
ui_wid_get_vstring () function as shown in the example.
Example:
Please see ui_text_select (p. 874) and ui_text_select (p. 875) in the MSC.Acumen, Volume 2:
Code Examples.
Main Index
104
Function Descriptions

ui_wid_exit ( )

Description:
Call the exit function for all displayed windows.
Input:
none
Output:
none
Example:
Please see ui_wid_exit (p. 877) in the MSC.Acumen, Volume 2: Code Examples.

ui_wid_hide_forms ( parm )

Description:
Call the hide all function for all displayed windows to hide all the displayed windows. Used
for applications such as Insight which need to hide all the forms with one call.
Input:
STRING parm[] “ALL”, “NONGRAPHICS”, “NONMODAL”, “MODAL”,
“GRAPHICS”, “DB” .
Output:
none
Example:
Please see ui_wid_hide_forms (p. 877) in the MSC.Acumen, Volume 2: Code Examples.

ui_exec_command ( cmd )

Description:
Invokes a MSC.Patran command.
Input:
STRING cmd[] Command to be invoked.
Output:
none
Example:
Please see ui_exec_command (p. 861) in the MSC.Acumen, Volume 2: Code Examples.

ui_form_delete ( class )

Description:
Delete the form defined in the given group.
Input:
STRING class[] Form’s group name.

Main Index
CHAPTER 5 105
User Interface

Output:
none
Example:
Please see ui_form_delete (p. 861) in the MSC.Acumen, Volume 2: Code Examples.

ui_form_exists ( class )

Description:
This function will determine if a form has been initialized.
Input:
STRING class[] This value specifies the name of the class that implements the
form.
Output:
LOGICAL <Return Value> TRUE if the given groupname has been initialized.
Notes:
This function will work only with forms that are created throug a call to ui_form_create () made
in an init function that is a member of the class of functions represented by the input value
class. In all other cases this function will return FALSE.
Example:
Please see ui_form_exists (p. 862) in the MSC.Acumen, Volume 2: Code Examples.

ui_form_is_displayed ( class )

Description:
This function will determine if a form is currently being displayed.
Input:
STRING class[] Name of the class to be searched for in the list of currently
displayed forms.
Output:
LOGICAL <Return Value> TRUE: The class form is currently displayed.
FALSE: The class form is NOT displayed.
Notes:
This function will work only with forms that are created through a call to ui_form_create ()
made in an init function that is a member of the class of functions represented by the input
value class. In all other cases this function will return FALSE.
The value specified for the input argument class is case sensitive. If this function does not
behave as described, try changing the case of the name passed with that argument.
Example:
Please see ui_form_is_displayed (p. 864) and ui_form_is_displayed (p. 865) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
106
Function Descriptions

ui_graph_create ( parent, name, x, y, width, height )

Description:
Create a graphics widget.
Input:
WIDGET parent Pointer to the parent widget.
STRING name[] Name of the graphics widget.
REAL x X location.
REAL y Y location.
REAL width Widget width.
REAL height Widget height.
Output:
WIDGET <Return Value> Pointer to the new widget.
Example:
Please see ui_graph_create (p. 869) and ui_graph_create (p. 870) in the MSC.Acumen,
Volume 2: Code Examples.

ui_is_initialized ( )

Description:
Check to see if the user interface has been initialized.
Input:
none
Output:
LOGICAL <Return Value> User interface has been initialized.
User interface has not been initialized.
Example:
Please see ui_is_initialized (p. 871) in the MSC.Acumen, Volume 2: Code Examples.

ui_get_client ( client_info )

Description:
Get the X client.
Input:
none
Output:
STRING client_info [80] X client.
Example:
Please see ui_get_client (p. 867) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 5 107
User Interface

ui_get_server ( server_info )

Description:
Get the X server.
Input:
none
Output:
STRING server_info[] X server.
Example:
See example for ui_get_client (p. 106). See also ui_get_server (p. 869) in the MSC.Acumen,
Volume 2: Code Examples.

Main Index
108
Function Descriptions

5.4 Widgets

ui_clear_focus ( wid )

Description:
Clear the input focus for a widget.
Input:
WIDGET wid Pointer to the widget.
Output:
none
Example:
Please see ui_clear_focus (p. 860) in the MSC.Acumen, Volume 2: Code Examples.

ui_wid_restore_widget ( wid )

Description:
Restore the values for this widget and all child widgets.
Input:
WIDGET wid Widget ID.
Output:
LOGICAL <Return Value> TRUE if no error.
Example:
Please see ui_wid_restore_widget (p. 878) in the MSC.Acumen, Volume 2: Code Examples.

ui_wid_save_widget ( wid )

Description:
Save the values for this widget and all child widgets.
Input:
WIDGET wid Pointer to the widget.
Output:
LOGICAL <Return Value> TRUE if no error.
Example:
Please see ui_wid_save_widget (p. 880) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 5 109
User Interface

uil_utils_listbox.select ( lbox_id, label )

Description:
Highlight a “name” in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify. This is the ID returned by a call to the
PCL functions ui_listbox_items_create or
uil_utils_listbox.create_list
STRING label[] Name in listbox to highlight. This list of names is the list of
labels used by the PCL functions ui_listbox_items_create and
uil_utils_listbox.create_list.
Output:
LOGICAL <Return Value> TRUE if no error.
Example:
Please see uil_utils_listbox.select (p. 899) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.select_none ( lbox_id )

Description:
Clear all highlighted names in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify.
Output:
LOGICAL <Return Value> TRUE if no error.
Example:
Please see uil_utils_listbox.select_none (p. 903) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.select_list (list_box_id, label_list, list_count)

Description:
This function will select or highlight a list of names in a listbox.
Input:
WIDGET list_box_id This value specifies the identifier of the listbox.
STRING label_list[31](list_count)
This value specifies the list of labels in the listbox that will be
highlighted. These labels are defined when the listbox is
created and are typically a maximum of 31 characters long.
INTEGER list_count This value specifies the number of labels specified by the
input value label_list.
Output:
LOGICAL <Return Value> This function will return a value of TRUE if an error has not
occurred and a value of FALSE if an error has occurred.
Error Conditions:
None.
Main Index
110
Function Descriptions

Remarks:
None.
Example:
Please see uil_utils_listbox.select_list (p. 902) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.create_list ( lbox_id, labellist, listcnt )

Description:
Create a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of names in listbox to create.
INTEGER listcnt Number of items in labellist.
Output:
none
Example:
Please see uil_utils_listbox.create_list (p. 889) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.append_list ( lbox_id, labellist, listcnt )

Description:
Append a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of name items to append.
INTEGER listcnt Number of items in labellist.
Output:
none
Example:
See example for uil_utils_listbox.create_list (p. 110). See also uil_utils_listbox.append_list
(p. 888) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.get_selected ( lbox_id, items, num )

Description:
Get the selected items in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify.
Output:
STRING items [xx] Items selected. xx needs to be equal to or larger than the
(VIRTUAL) length of the largest item in the listbox.
INTEGER num Number of items selected.
Main Index
CHAPTER 5 111
User Interface

Example:
Please see uil_utils_listbox.get_selected (p. 896) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.get_unselected ( lbox_id, items, num )

Description:
Get the unselected items in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify.
Output:
STRING items [xx] Items selected. xx needs to be equal to or larger than the
(VIRTUAL) length of the largest item in the listbox.
INTEGER num Number of items selected.
Example:
Please see uil_utils_listbox.get_unselected (p. 898) in the MSC.Acumen, Volume 2: Code
Examples.

uil_utils_listbox.get_all ( lbox_id, items, num )

Description:
Get all items in the listbox
Input:
WIDGET lbox_id ID of listbox widget
Output:
STRING items [VIRTUAL] Listbox items.
(VIRTUAL)
INTEGER num Number of items in listbox.
Example:
See example for uil_utils_listbox.create_list (p. 110). See also uil_utils_listbox.get_all
(p. 895) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.delete_item ( lbox_id, name )

Description:
Delete a given item from the set of listbox items.
Input:
WIDGET lbox_id Id of listbox to modify.
STRING name[] Name in listbox to delete.
Output:
LOGICAL <Return Value> TRUE if no error, FALSE if name does not exist.
Example:
See example for uil_utils_listbox.create_list (p. 110). See also uil_utils_listbox.delete_item
(p. 890) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
112
Function Descriptions

uil_utils_listbox.delete_item_list ( lbox_id, nitems, itemlist )

Description:
Delete a list of given items from the listbox.
Input:
WIDGET lbox_id Id of listbox to modify.
INTEGER nitems The number of items in the list.
STRING itemlist[]() Names in listbox to delete.
Output:
none
Example:
See example for uil_utils_listbox.create_list (p. 110). See also
uil_utils_listbox.delete_item_list (p. 892) in the MSC.Acumen, Volume 2: Code Examples.

uil_utils_listbox.delete_selected ( lbox_id )

Description:
Deletes from the listbox the selected items.
Input:
WIDGET lbox_id Id of listbox to modify.
Output:
none
Example:
Please see uil_utils_listbox.delete_selected (p. 893) in the MSC.Acumen, Volume 2: Code
Examples.

uil_utils_listbox.select_all ( lbox_id )

Description:
Highlight all names in the listbox.
Input:
WIDGET lbox_id Id of listbox to modify.
Output:
none
Example:
See example for uil_utils_listbox.select (p. 109). See also uil_utils_listbox.select_all (p. 901)
in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 5 113
User Interface

5.5 Help

ui_get_help ( wid, help )

Description:
Get the help keyword registered for the given widget.
Input:
WIDGET wid Pointer to the widget.
Output:
STRING help[] Keyword used for searching.
Example:
Please see ui_get_help (p. 867) in the MSC.Acumen, Volume 2: Code Examples.

ui_register_help ( wid, help )

Description:
Register help for the given widget.
Input:
WIDGET wid Pointer to the widget.
STRING help[] Keyword used for searching.
Output:
none
Example:
Please see ui_register_help (p. 871) in the MSC.Acumen, Volume 2: Code Examples.

ui_add_help ( keyword, path, marker )

Description:
Adds a record to the help table, providing the connection from the keyword in the widget to the
help file and to the entry in that file.
Input:
STRING keyword[] Unique keyword to locate the marker in the frame document.
STRING path[] Path to the frame document.
STRING marker[] Frame hypertext marker.
Output:
INTEGER <Return Value> 0 for no error.
1 for duplicate.
Comments:
When the help keyword is triggered due to a request for help, the frame document as specified
in the path is opened and positioned to the specified hypertext marker. The path given is
typically a partial path to a help file, such as “userapp/appinfo.doc”. MSC.Patran will search
for this file path in each directory in the PCL path starting with the current directory. If not
Main Index
114
Function Descriptions

found MSC.Patran will then see if a unix environment variable “P3_HELP_DIRECTORY” is set
and if so will search under this directory for the file. If still not found, MSC.Patran will look for
a directory called “helpfiles” in the PCL path and look for the file path under that directory.
Used in conjunction with ui_register_help.
Example:
Please see ui_add_help (p. 858) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Group
6
■ General
■ FEM
■ Geometry
■ Graphics Application

Main Index
116
Function Descriptions

6.1 General
General functions for managing groups in the model database.

db_get_group_name (grp_id, name)

Description:
Retrieves the group name associated with the specified group id.
Input:
INTEGER grp_id Id to be retrieved from the database.
Output:
STRING name[31] Name of the group.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_get_group_name (p. 928) in the MSC.Acumen, Volume 2: Code Examples.

db_count_entities_in_group (name, type, count)

Description:
Counts all entities in the specified group name.
Input:
STRING name[] Pointer to a string containing the name of the group.
INTEGER type The type of entity to be counted.
Output:
INTEGER count Location to receive the resulting entity count.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_entities_in_group (p. 918) in the MSC.Acumen, Volume 2: Code Examples.

db_count_groups_for_entity (id, type, count)

Description:
Counts all groups in which a specified entity resides
Input:
INTEGER id The id of the entity for which the group count is desired.
INTEGER type The type of entity to be counted.
Output:
INTEGER count Location to receive the resulting entity count.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_groups_for_entity (p. 919) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 6 117
Group

db_get_groups_for_entity (id, type, count, group_list)

Description:
Gets all group ids associated with the specified entity type and id.
Input:
INTEGER id The id of the entity of the type specified.
INTEGER type The type of entity to be counted.
INTEGER count The number of groups for which storage has been
allocated by the calling routine.
Output:
INTEGER group_list() Array containing the ids of the groups associated with the
input id.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_count_groups_for_entity (p. 116). See also db_get_groups_for_entity
(p. 929) in the MSC.Acumen, Volume 2: Code Examples.

uil_entity_group_members_get (group, entity_type, members)

Description:
Get the group’s members of a given entity type.
Input:
STRING group[] Name of the group from which to get the list of members.
INTEGER entity_type Type of entity members to get.
DbTypPoint 1
DbTypCurve 2
DbTypSurface 3
DbTypSolid 4
DbTypNode 123
DbTypElem 124
DbTypMpc 161
Output:
STRING members [VIRTUAL]
INTEGER <Return Value> List of group members of the given entity type.
= 0, Function was successful.
Example:
See also uil_entity_group_members_get (p. 993) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
118
Function Descriptions

6.2 FEM
Utilities for manipulating nodes, elements and MPCs in a group or groups.

db_get_groups_using_mpc (nmpc, mpcid, maxgrp, ngroup, gid)

Description:
Returns a list of all groups which refer to the specified MPC.
Input:
INTEGER nmpc The number of MPCs ids for which the information is
being requested.
INTEGER mpcid() The ids of the MPCs for which the information is being
requested.
INTEGER maxgrp The maximum number of groups which may be returned
per MPC.
Output:
INTEGER ngroup() The number of groups using each MPC.
INTEGER gid() The ids of the groups for each MPC.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000142 The MPC was not found in the database.
13000154 The list of Groups for one or more of the MPCs is longer than MAXGRP.
External Dependencies and Side Effects:
Accesses records in the mpc_in_group table in the database.
Example:
Please see db_get_groups_using_mpc (p. 930) in the MSC.Acumen, Volume 2: Code Examples.

db_count_groups_using_mpc (nmpc, mpcid, ngroup, flag)

Description:
Returns the number of groups which refer to the specified MPCs.
Input:
INTEGER nmpc The number of MPCs ids for which the information is
being requested.
INTEGER mpcid() The ids of the MPCs for which the information is being
requested.
Output:
INTEGER ngroup() The number of groups using each MPC.
INTEGER flag An error flag indicating that one or more of the MPCs was
not found.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Main Index
CHAPTER 6 119
Group

Error Conditions:
13000142 The MPC was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_in_group table in the database.
Example:
See example for db_get_groups_using_mpc (p. 118). See also
db_count_groups_using_mpc (p. 920) in the MSC.Acumen, Volume 2: Code Examples.

db_count_orphan_mpcs (count)

Description:
Returns the number of entities not in a group.
Input:
none
Output:
INTEGER count The number of entities not in a group.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000086 No Records Found
External Dependencies and Side Effects:
This routine accesses records in the mpc & mpc_in_group tables in the database.
Example:
Please see db_count_orphan_mpcs (p. 924) in the MSC.Acumen, Volume 2: Code Examples.

db_get_orphan_mpcs (count, entity_id)

Description:
Gets the entities not in a group.
Input:
INTEGER count The number of entities not in a group.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000086 No Records Found
External Dependencies and Side Effects:
This routine accesses records in the mpc & mpc_in_group tables in the database.
Example:
See example for db_count_orphan_mpcs (p. 119). See also db_get_orphan_mpcs (p. 932) in
the MSC.Acumen, Volume 2: Code Examples.

Main Index
120
Function Descriptions

count_orphan_elements (count)

Description:
This function will count all of the elements that do not belong to any group. It will build a list of
these elements in the process and this list will be saved for a subsequent call to
get_orphan_elements (p. 120).
Input:
none
Output:
INTEGER count The number of elements not associated with any group.
INTEGER <Return Value> 0 = Successful Completion.
Example:
See example for get_orphan_elements (p. 120). See also count_orphan_elements (p. 914) in
the MSC.Acumen, Volume 2: Code Examples.

count_orphan_nodes (count)

Description:
This function will count all of the nodes that do not belong to any group. It will build a list of
these nodes in the process and this list will be saved for a subsequent call to
get_orphan_nodes (p. 121).
Input:
none
Output:
INTEGER count The number of nodes not associated with any group.
INTEGER <Return Value> 0 = Successful Completion.
Example:
See example for get_orphan_nodes (p. 121). Please see count_orphan_nodes (p. 915) in the
MSC.Acumen, Volume 2: Code Examples.

get_orphan_elements ( count, idlist )

Description:
Returns the list of all of the elements that do not belong to any group. The initial list is created
through a call to the function count_orphan_elements (p. 120).
Input:
INTEGER count This is the number of orphan elements.
Output:
INTEGER idlist(count) The number of nodes not associated with any group.
INTEGER <Return Value> 0 if Successful.
Example:
Please see get_orphan_elements (p. 988) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 6 121
Group

get_orphan_nodes ( count, idlist )

Description:
Returns the list of all of the elements that do not belong to any group. The initial
list is created through a call to the function count_orphan_nodes (p. 120).
Input:
INTEGER count This is the number of orphan nodes.
Output:
INTEGER idlist(count) This is an array of orphan node ids that has ‘count’
number of members in the array.
INTEGER <Return Value> 0 if Successful.
Example:
Please see get_orphan_nodes (p. 989) in the MSC.Acumen, Volume 2: Code Examples.

db_add_mpc_to_group ( mpc_id, gid, visible )

Description:
Add an mpc to a group.
Input:
INTEGER mpc_id The mpc id.
INTEGER gid The group id.
LOGICAL visible True (1) if the mpcs are to be considered visible.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000142 The MPC was not found in the database.
13000008 Group not found.
13000004 Duplicate entry exists in table.
External Dependencies and Side Effects:
Creates a record in the mpc_in_group table in the database.
Example:
Please see db_add_mpc_to_group (p. 917) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
122
Function Descriptions

6.3 Geometry
Utilities for managing points, curves, surfaces, and solids in conjunction with groups.

db_count_orphan_curves ( count )

Description:
Returns the number of curves not in a group.
Input:
none
Output:
INTEGER count The number of curves not in a group.
INTEGER <Return Value> Returns the success or failure of the routine
Example:
Please see db_count_orphan_curves (p. 921) and db_count_orphan_curves (p. 922) in the
MSC.Acumen, Volume 2: Code Examples.

db_get_orphan_curves ( count, label_id )

Description:
This function will return the label ids for curves that are not assigned to a group.
Input:
INTEGER count This value specifies the number of offsets defined for the
output value label_id.
Output:
INTEGER entity_id() This value returns the label id values of the orphan
curves.
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.
Example:
See example for db_count_orphan_curves (p. 122) for more information. See also
db_get_orphan_curves (p. 931) in the MSC.Acumen, Volume 2: Code Examples.

db_count_orphan_points ( count )

Description:
Returns the number of points not in a group.
Input:
none
Output:
INTEGER count The number of points not in a group.
INTEGER <Return Value> Returns the success or failure of the routine
Main Index
CHAPTER 6 123
Group

Example:
Please see db_count_orphan_points (p. 925) in the MSC.Acumen, Volume 2: Code Examples.

db_get_orphan_points ( count, entity_id )

Description:
Returns the point entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan eitity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_count_orphan_points (p. 122). See also db_get_orphan_points (p. 933)
in the MSC.Acumen, Volume 2: Code Examples.

db_count_orphan_solids ( )

Description:
Returns the number of solids not in a group.
Input:
none
Output:
INTEGER count The number of solids not in a group.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_orphan_solids (p. 926) in the MSC.Acumen, Volume 2: Code Examples.

db_get_orphan_solids ( count, entity_id )

Description:
Returns the solid entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_count_orphan_solids (p. 123). See also db_get_orphan_solids (p. 934)
in the MSC.Acumen, Volume 2: Code Examples.

Main Index
124
Function Descriptions

db_count_orphan_surfaces ( count )

Description:
Returns the number of surfaces not in a group.
Input:
none
Output:
INTEGER count The number of surfaces not in a group.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_orphan_surfaces (p. 927) in the MSC.Acumen, Volume 2: Code Examples.

db_get_orphan_surfaces ( count, entity_id )

Description:
Returns the surface entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_count_orphan_surfaces (p. 124). Please see db_get_orphan_surfaces
(p. 935) in the MSC.Acumen, Volume 2: Code Examples.

asm_db_count_asm_in_group ( groupId, count, status )

Description:
Counts all of the The MacNeal-Schwendler Corporation entities (grid, line, patch, hpat,
coordinate frames, nodes, and elements) in a group.
Input:
INTEGER groupId The id of the group.
Output:
INTEGER count(7) The count for each of the entities:
(1) - grid
(2) - line
(3) - patch
(4) - hpat
(5) - coordinate frames
(6) - nodes
(7) - elements
INTEGER status Success or an error code.
Example:
Please see asm_db_count_asm_in_group (p. 908) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 6 125
Group

asm_db_get_grids_in_group ( groupId, gridLabels, xyzCoordinates, status )

Description:
Gets the labels and xyz coordinates of all the grids in a group.
Input:
INTEGER groupId The id of the group.
Output:
INTEGER gridLabels() The grid labels.
REAL xyzCoordinates() The xyz coordinates.
INTEGER status Success or an error code.
Error Conditions:
38000617 ERROR Retrieving geometric entity definition of type PDA %A% from the
database.
Example:
Please see asm_db_get_grids_in_group (p. 909) in the MSC.Acumen, Volume 2: Code Examples.

asm_db_get_hpats_in_group (groupid, hpatlabels, hpatvertexids, geometriccoeff,


status)

Description:
This function will get the labels, hpat vertex ids, and the xyz coordinates of all the hpats in a
group.
Input:
INTEGER groupid This value specifies the id of the group.
Output:
INTEGER hpatlabels() This value returns the hpat label values. The number of
offsets for this array should equal the number of solids
defined for the group.
INTEGER hpatvertexIds() This value returns the hpat vertex ids. The number of
offsets for this array should equal the number of solids
defined for the group times 8.
REAL geometriccoeff() This value returns the xyz coordinates. The number of
offsets for this array should equal the number of solids
defined for the group times 192.
INTEGER status This value returns a value of 0 when the function executes
successfully and a non zero value to indicate a change in
status or an error.
Remarks:
The number of solids defined in a group can be found by calling the function
db_count_entities_in_group (p. 116). with the entity type value set to 4.
Example:
Please see asm_db_get_hpats_in_group (p. 910) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
126
Function Descriptions

asm_db_get_lines_in_group ( groupid, linelabels, geometriccoefficients, status )

Description:
Gets the labels and xyz coordinates of all the lines in the model.
Input:
INTEGER groupId The id of the group.
Output:
INTEGER linelabels() The line labels.
REAL geometriccoefficients() The xyz coordinates.
INTEGER status Success or an error code.
Error Conditions:
38000617 ERROR Retrieving geometric entity definition of type PDA %A% from the
database.
Example:
Please see asm_db_get_lines_in_group (p. 911) in the MSC.Acumen, Volume 2: Code Examples.

asm_db_get_patches_in_group ( groupid, patchlabels, geometriccoeff, status )

Description:
This function will get the labels and the xyz coordinates of all of the patches in a group.
Input:
INTEGER groupid This value specifies the id of the group.
Output:
INTEGER patchlabels() This value returns the patch label values. The number of
offsets for this array should equal the number of surfaces
defined for the group.

REAL geometriccoeff() This value returns the xyz coordinates. The number of
offsets for this array should equal the number of surfaces
defined for the group times 48.
INTEGER status This value returns a value of 0 when the function executes
successfully and a non zero value to indicate a change in
status or an error.
Remarks:
The number of surfaces defined in a group can be found by calling the function
db_count_entities_in_group (p. 116) with the entity type value set to 3.
Example:
Please see asm_db_get_patches_in_group (p. 913) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 6 127
Group

sgm_db_count_iges_in_group ( groupid, count )

Description:
Counts all the IGES entity types IN A GROUP.
Input:
INTEGER groupId The id of the group.
Output:
INTEGER count (15) The count for each of the entities:
(1) - IGES_Nurb_Curve.
(2) - IGES_Cubic_Spline.
(3) - IGES_Arc.
(4) - IGES_Composite_Curve.
(5) - IGES_Line.
(6) - IGES_Conic.
(7) - IGES_PieceWise_Linear.
(8) - IGES_Offset_Curve.
(9) - IGES_Nurb_Surface.
(10) - IGES_Trimmed_Surface.
(11) - IGES_BiCubic_Patch_Network.
(12) - IGES_Surface_Of_Revolution.
(13) - IGES_Ruled_Surface.
(14) - IGES_Tabulated_Cylinder.
(15) - IGES_Offset_Surface.
INTEGER <Return Value> See error conditions.
Error Conditions:
1000025 Error attempting to allocate virtual memory.
Example:
Please see sgm_db_count_iges_in_group (p. 990) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_iges_in_group ( groupid, typecode, entityids, id_count )

Description:
This function will get all the IGES entity types in a group.
Input:
INTEGER groupid This value specifies the id of the group.
INTEGER typecode This value specifies the type code of the group. See the
remarks below.
Output:
INTEGER entityids() This value returns the entity id values. This array must be
allocated with enough offsets to list all of the entity id
values assigned to the group. Use a call to the PCL
function sgm_db_count_iges_in_group() to get a count of
the number of offsets required.
INTEGER id_count This value returns the number of id values of the
specified type returned by the value entityids.

Main Index
128
Function Descriptions

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:
38000617 ERROR Retrieving geometric entity definition of type PDA %A% from the
database.
Remarks:
The input value typecode can be assigned the following values:
Value: Description:
102 IGES_Nurb_Curve
103 IGES_Cubic_Spline
104 IGES_Arc
105 IGES_Composite_Curve
106 IGES_Line
107 IGES_Conic
108 IGES_PieceWise_Linear
113 IGES_Offset_Curve
1001 IGES_Nurb_Surface
1002 IGES_Trimmed_Surface
1003 IGES_BiCubic_Patch_Network
1004 IGES_Surface_Of_Revolution
1005 IGES_Ruled_Surface
1006 IGES_Tabulated_Cylinder
1012 IGES_Offset_Surface
Example:
Please see sgm_db_get_iges_in_group (p. 991) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 6 129
Group

6.4 Graphics Application


Functions to manage graphical attributes of groups.

ga_groups_load_vector_set ( ngroups, group_ids, vector_id )

Description:
Changes the current load vector table associated with multiple groups.
Input:
INTEGER ngroups Number of groups.
INTEGER group_ids ( ) Groups to assign vector table to.
INTEGER vector_id Load vector id.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000143 The specified vector result table was not found.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_groups_load_vector_set (p. 984) and ga_groups_load_vector_set (p. 986) in
the MSC.Acumen, Volume 2: Code Examples.

ga_group_color_get ( name, color )

Description:
Gets the current color associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER color Color of group (0-15).
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_color_get (p. 936) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
130
Function Descriptions

ga_group_color_set ( name, color )

Description:
Modifies the current color associated with a group.
Input:
STRING name[] Group name.
INTEGER color Color id (0-15).
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_color_set (p. 937) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_current_get ( name )

Description:
Get the current group.
Input:
none
Output:
STRING name[] Group name.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000121 There is not a current group defined.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_current_get (p. 938) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_deform_get ( name, flag )

Description:
Gets the deform flag associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag Deform flag.
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 6 131
Group

Error Conditions:
11000050 The group name is invalid.
11000098 A fatal error has occurred in the database. Database is corrupted.
11000105 The specified group was not found in the database.
Example:
Please see ga_group_deform_get (p. 939) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_deform_set ( name, flag )

Description:
Sets whether a deform plot should be displayed.
Input:
STRING name[] Group name.
INTEGER flag If Flag=1 display deform plot, If Flag=0 don’t display.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000098 A fatal error has occurred in the database. Database is corrupted.
11000105 The specified group was not found in the database.
Example:
Please see ga_group_deform_set (p. 940) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_display_get ( name, dname )

Description:
Gets the name of the current display property list associated with a group.
Input:
STRING name[] Group name.
Output:
STRING dname[] Name of the display property list.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000118 There is no display property posted to the group.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_display_get (p. 941) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
132
Function Descriptions

ga_group_elem_scalar_get ( name, scalar_id )

Description:
Gets the scalar table associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER scalar_id Scalar id.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_elem_scalar_get (p. 943) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_elem_scalar_set ( name, scalar_id )

Description:
Changes the current element scalar table associated with a group.
Input:
STRING name[] Group name.
INTEGER scalar_id Element scalar id.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000137 The specified element scalar table was not found.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_elem_scalar_set (p. 944) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_entities_get ( name, type, range, number, entities )

Description:
Gets a sorted list of the entities contained in a group.
Input:
STRING name[] Group name.
INTEGER type Entity type.
INTEGER range (3) Id range of members to return (1,2) and (3) max size of
conversion string.
INTEGER number Number of entities in group.
Main Index
CHAPTER 6 133
Group

Output:
STRING entities[] Entity labels.
INTEGER <Return Value> See error conditions.
Comments:
Called from PCL ( uil_group_modify.pcl, uil_group_modify_members.pcl,
uil_group_show_members).
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
11000127 The group does not have any entities in it.
Example:
Please see ga_group_entities_get (p. 946) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_exist_get ( name, flag )

Description:
Determines if a group with the specified name exists.
Input:
STRING name[] Group name.
Output:
INTEGER flag Existence flag.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_exist_get (p. 947) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_groups_get ( group_list )

Description:
This function will get a list of the currently defined groups.
Input:
none
Output:
STRING group_list [ ] () List of groups.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000098 A fatal error has occurred in the database. Database is corrupted.

Main Index
134
Function Descriptions

Example:
#
# Purpose : This file gives an example of a call to the
# function ga_group_groups_get()
#
# This function gets the list of all the groups.
# This file opens a database spool.db which has
# two groups “default_group”and “fem_model”group.
# This file gets the list of all the groups in
# the database “spool.db”.
#
# Before running this file the database should be
# created by running the session file “spool.ses”
# To run this session file, first start
# a session of MSC.Patran,then run this session
# file by “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The ga_group_groups_get has the following arguments:
# ga_group_groups_get
# ( group_list )
# -------------------------------------------------------------------
# Variable Declaration
#
STRING s_group_list[32](VIRTUAL)
INTEGER i_return_value
INTEGER i_group_count
# -------------------------------------------------------------------
# opening the existing database spool.db
uil_file_open.go(“spool.db”)

i_return_value =
ga_group_ngroups_get
( i_group_count )

dump i_return_value
dump i_group_count

i_return_value =
sys_allocate_array ( s_group_list, 1, i_group_count )

dump i_return_value

i_return_value = @
ga_group_groups_get @
( s_group_list )

dump i_return_value

# The groups in the opened database are


dump s_group_list

# -------------------------------------------------------------------

Main Index
CHAPTER 6 135
Group

ga_group_label_get ( name, flag )

Description:
Gets the current label flag associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag Label flag.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_label_get (p. 949) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_label_set ( name, flag )

Description:
Sets whether labels should be displayed.
Input:
STRING name[] Group name.
INTEGER flag If Flag=1 display deform plot, If Flag=0 don’t display.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_label_set (p. 950) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_load_vector_get ( name, vector_id )

Description:
Gets the load vector table associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER vector_id Vector id.
INTEGER <Return Value> See error conditions.

Main Index
136
Function Descriptions

Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_load_vector_get (p. 951) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_load_vector_set ( name, vector_id )

Description:
Changes the current load vector table associated with a group.
Input:
STRING name[] Group name.
INTEGER vector_id Load vector id.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000143 The specified vector result table was not found.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_load_vector_set (p. 953), ga_group_load_vector_set (p. 954), and
ga_group_load_vector_set (p. 956) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_nentities_get ( name, type, number )

Description:
Gets the number of entities of a particular type contained in the specified group.
Input:
STRING name[] Group name.
INTEGER type Entity type.
Output:
INTEGER number Number of entities.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_nentities_get (p. 958) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 6 137
Group

ga_group_ngroups_get ( group_count )

Description:
This function will get the number of currently defined groups.
Input:
None.
Output:
INTEGER group_count This value will return the number of groups that are
currently defined.
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:
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_groups_get (p. 948) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_node_deform_set ( name, deform_id )

Description:
Changes the current deform table associated with a group.
Input:
STRING name[] Group name.
INTEGER deform_id Node deform id.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000139 The specified nodal deformation table was not found.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_node_deform_set (p. 959) and ga_group_node_deform_set (p. 960) in
the MSC.Acumen, Volume 2: Code Examples.

Main Index
138
Function Descriptions

ga_group_precision_get ( name, flag )

Description:
Gets the current precision flag associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag Flag=1 if high precision, Flag=0 if fast.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_precision_get (p. 962) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_result_vector_get ( name, vector_id )

Description:
Gets the result vector table associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER vector_id Vector id.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_result_vector_get (p. 963) and ga_group_result_vector_get (p. 965) in
the MSC.Acumen, Volume 2: Code Examples.

ga_group_result_vector_set ( name, vector_id )

Description:
Changes the current result vector table associated with a group.
Input:
STRING name[] Group name.
INTEGER vector_id Result vector id.
Output:
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 6 139
Group

Error Conditions:
11000050 The group name is invalid.
11000143 The specified vector result table was not found.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Pleae see ga_group_result_vector_set (p. 967) and ga_group_result_vector_set (p. 969) in
the MSC.Acumen, Volume 2: Code Examples.

ga_group_selectable_get ( name, flag )

Description:
Gets the current select status of a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag 1 or 0 if selectable or not.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_selectable_get (p. 971) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_selectable_set ( name, flag )

Description:
Modifies the current setting of the group selectable flag.
Input:
STRING name[] Group name.
INTEGER flag 1 or 0 if selectable or not.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_selectable_set (p. 973) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
140
Function Descriptions

ga_group_style_get ( name, style )

Description:
Gets the render style associated with a group.
Input:
STRING name[] Group name.
Output:
STRING style[] Render style.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_style_get (p. 974) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_style_set ( name, style )

Description:
Modifies the render style associated with a group.
Input:
STRING name[] Group name.
STRING style[] Render Style.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000013 The render style is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_style_set (p. 975) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_vector_load_get ( name, style )

Description:
Gets the load vector flag associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag Vector flag.
INTEGER <Return Value> See error conditions.

Main Index
CHAPTER 6 141
Group

Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_vector_load_get (p. 977) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_vector_load_set ( name, flag )

Description:
Flags if a load vector plot should be displayed with group.
Input:
STRING name[] Group name.
INTEGER flag If Flag=1 display vector plot, If Flag=0 don’t display.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_vector_load_set (p. 978) in the MSC.Acumen, Volume 2: Code Examples.

ga_group_vector_result_get ( name, flag )

Description:
Gets the load vector flag associated with a group.
Input:
STRING name[] Group name.
Output:
INTEGER flag Vector flag.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_vector_result_get (p. 979) and ga_group_vector_result_get (p. 980) in
the MSC.Acumen, Volume 2: Code Examples.

Main Index
142
Function Descriptions

ga_group_vector_result_set ( name, flag )

Description:
Flags if a result vector plot should be displayed with group.
Input:
STRING name[] Group name.
INTEGER flag If Flag=1 display vector plot, If Flag=0 don’t display.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000050 The group name is invalid.
11000105 The specified group was not found in the database.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
Please see ga_group_vector_result_set (p. 982) and ga_group_vector_result_set (p. 983) in
the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Geometry
7
■ General
■ Point
■ Curve
■ Surface

■ Solid
■ Coordinate Frame
■ Point/Curve Relation
■ Curve/Surface Relation
■ Surface/Solid Relation
■ Transform

Main Index
144
Function Descriptions

7.1 General
A set of general utilities are provided to manage geometry in the model database.

db_get_geom_type ( id_label, entity_type, geom_type )

Description:
Returns the geometry type for the given label and entity_type.
Input:
INTEGER id_label The label id of the piece of geometry.
INTEGER entity_type The type of entity.
point = 1
curve = 2
surface = 3
solid = 4
Output:
STRING geom_type[] The type of geometry.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000161 The geometric type is not defined.
13000134 The specified entity type was not found.
Example:
Please see db_get_geom_type (p. 1030) in the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_blob_size ( entitytype, entityid, blobsize, status )

Description:
This function will return the size of a block of data defining a specific piece of geometry.
Input:
INTEGER entitytype This value specifies the type of the geometry for which
the data block will be retrieved. See the remarks listed
below for more information.
INTEGER entityid This value specifies the identifier for the geometry for
which the data block will be retrieved.
Output:
INTEGER blobsize The value returns the size of the of the array needed to
hold the block of data defining the geometry.
INTEGER status 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:
38000003 No blob provided.

Main Index
CHAPTER 7 145
Geometry

Remarks:
The input value entitytype can be set to the following values:
Value Description

2 This value describes a piece of geometry that represents a curve.


3 This value describes a piece of geometry that represents a surface.
4 This value describes a piece of geometry that represents a solid.
174 This value describes a piece of geometry that represents a plane.
175 This value describes a piece of geometry that represents a vector.
Example:
Please see sgm_db_get_blob_size (p. 1072) in the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_company_of_origin ( dbtype, entityid, compoforg, geometrytype, status )

Description:
Gets a geometric coo and type from the database given an id.
Input:
INTEGER dbtype The dbtype from dbtypes.h.
INTEGER entityid The Entity ID.
Output:
INTEGER compoforg The company of origin.
From include file geometry_coos.i

Company of Origin compoforg


PDA_ENGINEERING 52054
MCDONNELL_DOUGLAS 101254
DASSAULT_SYSTEMS 40686
PARAMETRIC_TECHNOLOGY 22058
IGES 62738
MATRA 32465
PDES 112762
COMPUTER_VISION 22085

INTEGER geometrytype The geometry type.


INTEGER status 0 or an error code.
Example:
Please see sgm_db_get_company_of_origin (p. 1073) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
146
Function Descriptions

sgm_db_modify_entity_label ( entitytype, entityid, newlabel )

Description:
Modifies the label of an existing geometric entity.
Input:
INTEGER entitytype Type of entity from DbTypes.
INTEGER entityid Id of the entity to change.
INTEGER newlabel Label to be assigned to the entity.
Output:
INTEGER <Return Value> 0: no error.
Error Conditions:
10000052 %A% %I% is not an ASM Entity and was not written to the MSC.Patran Neutral
File.
Example:
Please see sgm_db_modify_entity_label (p. 1089) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_incongruent_geom_exist ( )

Description:
Initialize the geometry list.
Input:
none
Output:
INTEGER <Return Value> 0: no error.
1: fatal error.
Example:
Please see sgm_incongruent_geom_exist (p. 1112) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_incongruent_geom_display ( )

Description:
Creates a graphical display list for curves and surfaces, but displays all unique points and
solids. Need to call sgm_verify_surface_boundary first.
Input:
none
Output:
INTEGER <Return Value> 0 if function was successful.
Comments:
This routine cannot display points or solids because of graphics restrictions.
Example:
Please see sgm_incongruent_geom_display (p. 1111) in the MSC.Acumen, Volume 2: Code
Main Index
Examples.
CHAPTER 7 147
Geometry

sgm_incongruent_geom_seg_exit ( )

Description:
Delete the segment list to clear graphics.
Input:
none
Output:
INTEGER <Return Value> Success returned, else fatal error.
Comments:
Used with sgm_incongruent_geom_exist() and sgm_incongruent_geom_display()
Example:
See example for sgm_incongruent_geom_exist (p. 146). See also
sgm_incongruent_geom_seg_exit (p. 1112) in the MSC.Acumen, Volume 2: Code Examples.

sgm_u_calc_mscale_mat ( coord_org, coord_rmat, translation, scale, axis_base,


axis_tip, rotation_angle, tmat )

Description:
Calculates a transformation matrix for a mscale transformation.
Input:
REAL coord_org (3) Reference coordinate frame origin.
REAL coord_rmat (9) Reference coordinate frame rotation matrix.
REAL translation (3) Translation vector.
REAL scale (3) Scale factors.
REAL axis_base (3) Axis base (for rotation).
REAL axis_tip (3) Axis tip (for rotation).
REAL rotation_angle Rotation angle.
Output:
REAL tmat (16) This value returns the calculated transformation matrix.
INTEGER <Return Value> SUCCESS or error code.
Example:
Please see sgm_u_calc_mscale_mat (p. 1127) in the MSC.Acumen, Volume 2: Code Examples.

asm_u_coord_global_to_local ( p, t, r, itype, npts )

Description:
Transform points from global coordinates to local. Pass the transpose of the rotation matrix
stored in the database.
Input:
REAL p(3,npts) The point coordinates in global frame.

Main Index
148
Function Descriptions

REAL t(3) This value specifies the translation vector for the local
coordinate frame.
REAL r(3,3) This value specifies the rotation matrix for the local
coordinate frame and is the transpose of the rotation
matrix stored in the database.
INTEGER ityper The reference coordinate frame type:
1=rectangular
2=cylindrical
3=spherical
INTEGER npts The number of points.
Output:
REAL p(3,npts) The point coordinates in local frame.
Example:
Please see asm_u_coord_global_to_local (p. 1009) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 7 149
Geometry

7.2 Point

asm_db_create_grid (location, grid_label, yes_to_all, no_to_all, yes_to_all_dup,


no_to_all_dup, status)

Description:
This function creates a grid in the database and the graphical user-interface.
Input:
REAL ARRAY location(3) The xyz location of the point.
INTEGER grid_label Label of next grid to create.
=0 Database will use the next highest label for the next
grid to create. If grid found within tolerance, returns
currently existing grid label, otherwise returns new label.
>0 User-definable.
LOGICAL yes_to_all = TRUE if grid already exists in database with same label
and user wants to overwrite old grid with new grid.
LOGICAL no_to_all = TRUE if grid already exists in database with same label
and user does not want to overwrite old grid with new
grid.
LOGICAL yes_to_all_dup = TRUE if grid already exists in database within tolerance
and same label and user wants to create duplicate grids.
LOGICAL no_to_all_dup = TRUE if grid already exists in database within tolerance
and same label and user does not want to create duplicate
grids.
Output:
INTEGER status The value of 0 is returned when executed successfully
and a non zero value to indicate a change in status or an
error.
Error Conditions:
See the Status Messages (Ch. 11) for information on any error values returned by this function.
Example:
Please see asm_db_create_grid (p. 1002) in the MSC.Acumen, Volume 2: Code Examples

db_count_point ( count )

Description:
Counts all points in the database.
Input:
none
Output:
INTEGER count The integer number of points in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.

Main Index
150
Function Descriptions

Example:
Please see db_count_point (p. 1017) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_point_label ( label )

Description:
Gets the largest point label from the database.
Input:
none
Output:
INTEGER label Highest point label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_max_point_label (p. 1032) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_point_label ( label )

Description:
Gets the smallest point label from the database.
Input:
none
Output:
INTEGER label Lowest point label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_min_point_label (p. 1036) in the MSC.Acumen, Volume 2: Code Examples.

db_get_point_association_count ( point_id, assoc_count )

Description:
Returns the number of higher order entities associated with this point.
Input:
INTEGER point_id The point id.
Output:
INTEGER assoc_count The number of higher order entities associated with this
point.
INTEGER <Return Value> Returns the success or failure of the routine.

Main Index
CHAPTER 7 151
Geometry

Example (session file):


Please see db_get_point_association_count (p. 1041) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_point_id ( label, id )

Description:
Gets a point id from the database given a point label.
Input:
INTEGER label The unique external point ID identifying the point to be
retrieved from the database.
Output:
INTEGER id The unique internal point id identifying the point
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_point_id (p. 1043) in the MSC.Acumen, Volume 2: Code Examples.

db_get_point_label ( id, label )

Description:
Gets a point label from the database given a point id.
Input:
INTEGER id The unique internal point id identifying the point to be
retrieved from the database.
Output:
INTEGER label The unique external point id identifying the point to be
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_point_label (p. 1043) in the MSC.Acumen, Volume 2: Code Examples.

db_get_point_coo_and_type ( id, coo, type )

Description:
Gets a geometric coo and type from the database given an id.
Input:
INTEGER id The association of the information to be retrieved from
the database.

Main Index
152
Function Descriptions

Output:
INTEGER coo The geometric company of origin stored in the database.
INTEGER type The geometric type of data stored in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_point_coo_and_type (p. 1042) in the MSC.Acumen, Volume 2: Code
Examples.

asm_db_get_next_grid_label ( domessage, integerlabel, stringlabel )

Description:
Get the next highest grid label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error
occurs.
Output:
INTEGER integerlabel The next highest grid label.
STRING stringlabel[] The next highest grid label.
INTEGER <Return Value> Success or an error code.
Example:
Please see asm_db_get_next_grid_label (p. 1005) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_point ( pointid, xyz, status )

Description:
Get the geometric definition of a point from the database.
Input:
INTEGER pointid Id of the point.
Output:
REAL xyz (3) Global coordinates of a point.
INTEGER status Success or an error code.
Example:
Please see sgm_db_get_point (p. 1086) in the MSC.Acumen, Volume 2: Code Examples.

sgm_edit_point_equivalence (point_ids, created_ids)

Description:
This function checks the equivalence of two points and deletes one of the duplicate points.
Input:

Main Index
CHAPTER 7 153
Geometry

STRING point_ids[ ] The points whose equivalence is to be checked.

Output:
STRING created_ids[ ] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_edit_point_equivalence (p. 1093) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_get_close_points (point_location, tolerance, num_only, vertices_only,


sort_option, num_point, point_ids, distances )
Description:
This function gets the points around a point within a specified distance.
Input:
REAL point_location(3) The xyz location of the point in space.
ARRAY
REAL tolerance The distance within which to search for points.
INTEGER num_only 1 to get the num of points only, 0 to get the point ids and
the distances.
INTEGER vertices_only 0 to get all points, 1 to get vertices only.
INTEGER sort_option 1 to sort the point ids and distances.

Output:
INTEGER num_point The number of points within the tolerance around the
location.
INTEGER point_ids(num_points) Point ids of the points.
ARRAY
REAL distances(num_points) Distances of the points from the location specified.
ARRAY
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_get_close_points (p. 1106) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
154
Function Descriptions

sgm_node_on_point ( geotol, num_pts, pt_id_list, num_nodes, node_id_list )

Description:
Get the nodes close to the given points within the geometric tolerance.
Input:
REAL geotol The geometric tolerance.
INTEGER num_pts The number of the given points.
INTEGER pt_id_list (num_pts) The ID list of the given points.
Output:
INTEGER num_nodes ( ) The number of the nodes found.
INTEGER node_id_list The ID list of the nodes found.
(num_nodes)
INTEGER <Return Value> Success or an error code.
Error Conditions:
1000025 Error attempting to allocate virtual memory.
1000305 Coordinates for point %I% not found.
1000303 No points were found to exist in the database as defined in the point list. The
point list input was %A%.
48000004 No Node found !
Example:
Please see sgm_node_on_point (p. 1118) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 155
Geometry

7.3 Curve

asm_db_get_curve_geo ( curve_id, geo_coefs, status )

Description:
Get the geometric format of a curve.
Input:
INTEGER curve_id Curve id (internal db id).
Output:
REAL geo_coefs(12) Geometric coefficients of the curve.
INTEGER status 0 , no error.
-1 , data base not responding.
Example:
Please see asm_db_get_curve_geo (p. 1003) in the MSC.Acumen, Volume 2: Code Examples.

asm_db_get_next_line_label ( domessage, integerlabel, stringlabel )

Description:
Get the next highest line label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error
occurs.
Output:
INTEGER integerlabel The next highest curve label.
STRING stringlabel 0 , no error.
-1 , data base not responding.
INTEGER <Return Value> Success or an error code.
Example:
Please see asm_db_get_next_line_label (p. 1008) in the MSC.Acumen, Volume 2: Code
Examples.

asm_const_curve_2d_arc2point_v2 (output_ids, num_curves, arc_method,


radius,create_center, center_rev_direction,
arc_angle,plane_list, center_point_list,
start_point_list,end_point_list, project_points,
created_ids)

Description:
This function creates an arc from ‘two points and center point’ or from ‘start, end point and
radius’.
Input:

Main Index
156
Function Descriptions

STRING output_ids[] This value specifies the curve ID list. If this value is set to an
empty string or to “#”, the function will automatically
allocate and assign a sequential list of curve IDs.
INTEGER num_curves Number of curves to be created.
INTEGER arc_method This value specifies the arc method: 1 = define arc by center,
start and end points, and 2 = define arc by start point, end
point and radius.
REAL radius This value specifies the arc radius if the input value
arc_method is set to 2.
LOGICAL create_center This value is set to TRUE if the arc center point is to be
created along with the arc and if the input value
arc_method is equal to 2.
LOGICAL center_rev_direction This value is set to TRUE if the arc center is to be
flipped/rotated in the counter-clockwise direction before
the arc is created and if the input value arc_method is equal
to 2.
INTEGER arc_angle This value specifies the arc angle to use: 1 = minimum arc
angle, and 2 = maximum arc angle.
STRING plane_list[] This value specifies the list of planes in which to construct
the arcs.
STRING center_point_list[] This value specifies the list of points defining the center
points of the circular arcs.
STRING start_point_list[] This value specifies the list of points defining the starting
points of the circular arcs.
STRING end_point_list[] This value specifies the list of points defining the ending
points of the circular arcs.
LOGICAL project_points This value specifies, when set to TRUE, that the center
points be projected onto the plane. When this value is set to
FALSE and the input value arc_method is not set to 2, the
construction plane will be translated to the center point
location and will still be parallel to the original plane. If this
value is set to FALSE and the input value arc_method is set
to 2, the construction plane is translated to the starting
point location and will still be parallel to the original plane.
Output:
STRING created_ids[VIRTUA This value returns the created ID list.
L]
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:
38000845 Unable to acquire %I% words of virtual memory.
38000424 The center point and start point define a zero radius.
38000413 Zero length plane normal vector
38000440 Invalid 2D Arc2Point method. Must be 1 or 2. Try again.
1000578 The number of Curves per Arc must be greater than or
equal to one. The invalid value input was %I%
38000442 The Radius value of %G% is too small for the input start
and end points. Radius magnitude must be at least %G%.
Modify application input and try again.
Main Index
CHAPTER 7 157
Geometry

38000418 The Arc radius must be greater than zero. Invalid value
input was %G%
Example:
Please see asm_const_curve_2d_arc2point_v2 (p. 997) in the MSC.Acumen, Volume 2: Code
Examples.

asm_const_curve_2d_arc3point_v1 (output_ids, num_curves, create_center,


plane_list, start_list, mid_list, end_list,
project_flag, created_ids)

Description:
This function creates an arc-shaped or parametric cubic curve in two dimensional space,
defined by a start point, midpoint, and an end point.
Input:
STRING output_ids[] This value specifies the curve ID list. If this value is set to
an empty string or to “#”, the function will automatically
allocate and assign a sequential list of curve IDs.
INTEGER num_curves This value specifies the number of curves per arc to
create.
LOGICAL create_center This value is set to TRUE if a point is to be created at the
center of the arc.
STRING plane_list[] This value specifies the construction plane of the arc.
STRING start_list[] This value specifies the start point of the arc.
STRING mid_list[] This value specifies the midpoint of the arc.
STRING end_list[] This value specifies the end point of the arc.
LOGICAL project_flag TRUE if the center point is to be projected onto the plane.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.
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:
38000845 Unable to acquire %I% words of virtual memory.
38000423 The three points specified are nearly collinear.
38000413 Zero length plane normal vector
1000578 The number of Curves per Arc must be greater than or
equal to one. The invalid value input was %I%
Example:
Please see asm_const_curve_2d_arc3point_v1 (p. 998) in the MSC.Acumen, Volume 2: Code
Examples.

asm_const_curve_2d_circle_v1 (output_ids, num_curves, radius_method, radius,


plane_list, radius_point_list, center_point_list,
created_ids)

Description:
Main Index
158
Function Descriptions

This function creates a circular-shaped or parametric cubic curve in two-dimensional space,


defined by a center point and a radius.
Input:
STRING output_ids[] This value specifies the curve ID list. If this value is set to
an empty string or to “#”, the function will automatically
allocate and assign a sequential list of curve IDs.
INTEGER num_curves This value specifies the number of curves per circle to
create.
INTEGER radius_method This value specifies the method used to define a radius: 1
= scalar radius value, and 2 = point location.
REAL radius This value specifies the radius of the circle if the input
value radius_method is set to 1.
STRING plane_list[] This value specifies the list of planes in which to
construct the arcs.
STRING radius_point_list[] This value specifies the list of points defining the radius
of the circle if the input value radius_method is set to 2.
STRING center_point_list[] This value specifies the list of points defining the center
point of the circle.
LOGICAL project_flag TRUE if the center point is to be projected onto the plane.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.
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:
38000845 Unable to acquire %I% words of virtual memory.
38000413 Zero length plane normal vector
38000425 The Circle radius must be greater than zero. Invalid value
input was %G%
38000426 The center point and start point define a zero radius.
1000579 The number of Curves per Circle must be greater than or
equal to two. The invalid value input was %I%.
Example:
Please see asm_const_curve_2d_circle_v1 (p. 999) in the MSC.Acumen, Volume 2: Code
Examples.

asm_const_curve_project_v1 (output_ids, curve_list, entity_list, entity_type,


delete_original, method, vector, coord_frame,
num_curves, projection_tolerance, created_ids)

Description:
This function creates a parametric cubic curve from the projection of curves onto surfaces.
Input:
STRING output_ids[] This value specifies the curve ID list. If this value is set to
an empty string or to “#”, the function will automatically
allocate and assign a sequential list of curve IDs.
STRING curve_list[] This value specifies the curve list to project.
STRING entity_list[] This value specifies the entity list to project onto.
Main Index
CHAPTER 7 159
Geometry

INTEGER entity_type The entity type to be projected.


LOGICAL delete_original This value is set to TRUE if the original curves to project
are to be deleted after the projection. If this value is set to
FALSE, the original entities will not be deleted.
INTEGER method This value specifies the projection method: 1 = the curve
to be projected lies in a plane and it is desired to project
the curve normal to this plane, 2 = the direction of
projection is normal to the surface at the point of closest
approach, 3 = the direction of projection is given by a
vector, and 4 = the direction of projection is the view
vector.
STRING vector[] This value specifies the projection vector.
STRING coord_frame[] This value specifies the coordinate frame ID for the
projection vector.
INTEGER num_curves This value specifies the number of curves per projection
to create. If this value is set to 0, then the number of
curves created will be based on the projection tolerance.
REAL projection_tolerance This value specifies a tolerance parameter determining
the density of intersection points generated.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see asm_const_curve_project_v1 (p. 1000) in the MSC.Acumen, Volume 2: Code
Examples.

curve_arc_to_parm (curve_id, num_values, arc_lengths, parametric_coord, status )

Description:
This function determines the corresponding coordinates for various input values of percent
arclength along a curve.
Input:
INTEGER curve_id The id of the curve for which data is required.
INTEGER num_values The number of values for which the
parametric coordinates are required.
REAL ARRAY arc_lengths(num_values) Array of arc lengths at which the parameters
are desired.
Output:
REAL ARRAY parametric_coord(num_values)Array of parametric coordinates for the curve.
INTEGER status 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 (Ch. 11) for information on any error values returned by this
function.
Main Index
160
Function Descriptions

Example:
Please see curve_arc_to_parm (p. 1011) in the MSC.Acumen, Volume 2: Code Examples.

curve_parm_to_arc (curve_id, num_values, parameters, arc_lengths, status )

Description:
This function determines the corresponding arc length coordinates for various input values of
parametric coordinates along a curve.
Input:
INTEGER curve_id The id of the curve for which data is required.
INTEGER num_values The number of values for which the arc lengths are
required.
REAL ARRAY parameters(num_values) Array of parametric coordinates for the curve at
which the arc lengths are desired.
Output:
REAL ARRAY arc_lengths(num_values)Array of arc lengths.
INTEGER status 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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see curve_parm_to_arc (p. 1012) in the MSC.Acumen, Volume 2: Code Examples.

db_count_curve ( count )

Description:
Counts all curves in the database.
Input:
none
Output:
INTEGER count The integer number of curves in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_count_curve (p. 1015) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 161
Geometry

db_get_curve_coo_and_type ( id, coo, type )

Description:
Gets a geometric coo and type from the database given an id.
Input:
INTEGER id The unique internal curve id identifying the association of
the information to be retrieved from the database.
Output:
INTEGER coo The geometric company of origin stored in the database.
INTEGER type The geometric type of data stored in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_curve_coo_and_type (p. 1026) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_curve_id ( label, id )

Description:
Gets a curve id from the database given a curve label.
Input:
INTEGER label The unique external curve id identifying the curve to be
retrieved from the database
Output:
INTEGER id The unique internal curve id identifying the curve
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_curve_id (p. 1027) in the MSC.Acumen, Volume 2: Code Examples.

db_get_curve_label ( id, label )

Description:
Gets a curve label from the database given a curve id.
Input:
INTEGER id The unique internal curve id identifying the curve to be
retrieved from the database.

Main Index
162
Function Descriptions

Output:
INTEGER label The unique external curve id identifying the curve to be
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_curve_label (p. 1028) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_curve_label ( label )

Description:
Gets the largest curve label from the database.
Input:
none
Output:
INTEGER label Highest curve label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_max_curve_label (p. 1031) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_curve_label ( label )

Description:
Gets the smallest curve label from the database.
Input:
none
Output:
INTEGER label Lowest curve label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_min_curve_label (p. 1035) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 163
Geometry

sgm_associate_nodes_curve (node_list, curve_list)

Description:
This function associates nodes with a given set of curves.
Input:
STRING node_list[ ] The list of nodes to be associated with the curves.
STRING curve_list[ ] The list of curves to which the nodes are to be associated.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_associate_nodes_curve (p. 1052) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_const_curve_project_v1 (output_ids, curve_list, surface_list,entity_type,


delete_original, project_method, vector, coord_frame,
projection_tolerance, created_ids)
Description:
This function constructs curves on a set of surfaces by projecting an existing set of curves along
a projection vector onto a set of surfaces.
Input:
STRING output_ids[] This value specifies the curve ID list. If this value is set to
an empty string or to “#”, the function will automatically
allocate and assign a sequential list of curve IDs.
STRING curve_list[] This value specifies the list of curves to project onto the
list of surfaces.
STRING surface_list[] This value specifies the list of surfaces onto which the
curves are to be projected.
INTEGER entity_type =1 Project to surface
=2 Project to plane
LOGICAL delete_original This value is set to TRUE if the original curves are to be
deleted. If this value is set to FALSE, the original entities
will not be deleted.
INTEGER project_method This value specifies the method of defining the projection
vector: 1 = the curves to be projected lie in a plane and it
is desired to project the curves normal to this plane, 2 =
the direction of projection is normal to the surface at the
point of closest approach to the curve, 3 = the direction of
projection is to be given by a vector, and 4 = the direction
of projection is the view vector.
STRING vector[] This value specifies the projection vector.
STRING coord_frame[] This value specifies the coordinate frame for the
projection vector.

Main Index
164
Function Descriptions

REAL projection_tolerance This value specifies a tolerance parameter. The algorithm


creates all curves along the projected surface so that the
maximum distance lies between them is the distance
defined by this value.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_const_curve_project_v1 (p. 1053) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_create_curve_on_surface (direction, param_value, surface_blob, curve_blob)

Description:
This function creates curve on a surface in any of the u /v directions at a given parameter and
returns the blob of the curve created.
Input:
INTEGER direction The direction to create the curve.
1 = u direction , 2 = v direction.
REAL param_value The value of the parameter for creating the curve (0 <
param_value < 1)
REAL ARRAY surface_blob() The blob of the surface on which to create the curve.
The functions to be used for getting the blob are
sgm_db_get_blob_size() followed by
sgm_db_get_surface().
Output:
REAL ARRAY curve_blob() The blob of the curve returned. The functions to be
used for getting the blob size are
sgm_db_get_blob_size() followed by
sgm_db_get_curve().
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_create_curve_on_surface (p. 1058) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 7 165
Geometry

sgm_curve_convert_s_to_u (curve_data, num_points, arc_lengths, parametric_coord,


status )
Description:
This function determines the corresponding coordinates for various input values of percent
arclength along the curve.
Input:
REAL ARRAY curve_data() The blob of curve the curve for which data is required.
The functions to be used for getting the blob are
sgm_db_get_blob_size() followed by
sgm_db_get_curve().
INTEGER num_points The number of points for which the parametric
coordinates are required.
REAL ARRAY arc_lengths Array of arc lengths at which the parameters are desired.
(num_points)
Output:
REAL ARRAY parametric_coord Array of parametric coordinates for the curve.
(num_points)
INTEGER status 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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_curve_convert_s_to_u (p. 1066) in the MSC.Acumen, Volume 2: Code Examples.

sgm_curve_convert_u_to_s (curve_data, num_points, parameters, arc_lengths,


status )
Description:
This routine determines the corresponding arclength coordinates for various input values of
parametric coordinates along the curve.
Input:
REAL ARRAY curve_data() The blob of curve the curve for which data is
required. The functions to be used for getting the
blob are sgm_db_get_blob_size() followed by
sgm_db_get_surface().
INTEGER num_points The number of points for which the arc lengths are
required.
REAL ARRAY parameters(num_points) Array of parametric coordinates for the curve at
which the arc lengths are desired.
Output:
REAL ARRAY arc_lengths(num_points) Array of arc lengths at the parameters.
INTEGER status 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 (Ch. 11) for information on any error values returned by this function.
Main Index
166
Function Descriptions

Example:
Please see sgm_curve_convert_u_to_s (p. 1068) in the MSC.Acumen, Volume 2: Code Examples.

sgm_curve_evaluate (blob, para_parameter, out_type, output_data, status )

Description:
This function will evaluate a data table representing the geometry of a curve, returning
information about the point of origin and the first, second, and third derivatives of the curve.
Input:
REAL blob( ) This value specifies the curve data table. This array must be
allocated with at least 6 offsets and no more than the number of
offsets set by the following formula: s(s(6)). The value stored in
the array at offset 6 must be equal to or greater than 0. See the
comments below.
REAL para_parameter This value specifies a parametric coordinate value and has a
range from 0.0 to 1.0.
INTEGER out_type This value specifies the type output expected from this function
call. See the remarks below.
Output:
REAL output_data (n,3) This value returns the output data table. See the remarks below.
INTEGER status This function returns a value of 0 when executed successfully
and a non zero value to indicate a change in status or an error.
Remarks:
The input value out_type can be set to the following values:
Value Description

0 Output point information only.


1 Output point and first derivative information.
2 Output point, first, and second derivative information. For an “N dimensional
cubic spline” this value would cause the point, first and second derivitive of the
first three dimensional vector to be returned.
3 Output point, first, second, and third derivatives.
The output value output_data should have its first dimension allocated to the following sizes:
para_parameter value output_data first dimensional value

0 4
1 4
2 4
3 4
A curve data table can be retrieved with a call to the sgm_db_get_curve() PCL function. The
size of the data curve table can be retrieved with a call to the PCL function
sgm_db_get_blob_size().
Example:
Please see sgm_curve_evaluate (p. 1070) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 7 167
Geometry

sgm_db_get_curve ( curveid, blobsize, blob, status )

Description:
Get the geometric definition of a curve from the database.
Input:
INTEGER curveid Id of the curve.
INTEGER blobsize Size of the blob in words.
Output:
REAL blob ( ) Geometric description of the curve.
INTEGER status Success or an error code.
Error Conditions:
38000001 The allocated space for the blob is too small.
Example:
See example for sgm_curve_evaluate (p. 166). See also sgm_db_get_curve (p. 1074) in
the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_curve ( curveid, blobsize, blob, status )

Description:
Get the geometric definition of a curve from the database.
Input:
INTEGER curveid Id of the curve.
INTEGER blobsize Size of the blob in words.
Output:
REAL blob ( ) Geometric description of the curve.
INTEGER status Success or an error code.
Error Conditions:
38000001 The allocated space for the blob is too small.
Example:
See example for sgm_curve_evaluate (p. 166). See also sgm_db_get_curve (p. 1074) in the
MSC.Acumen, Volume 2: Code Examples.

sgm_get_arc_center_radius (arc_id, start_point, center_point, radius)

Description
:
This function gets the start point, center point and the radius for any arc.
Input:
INTEGER arc_id The id for the arc.
Output:
REAL start_point(3) The starting point of the curve.
ARRAY
REAL center_point(3) The center point of the curve.
ARRAY
Main Index
168
Function Descriptions

REAL radius The radius of the curve.


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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_get_arc_center_radius (p. 1105) in the MSC.Acumen, Volume 2: Code Examples.

sgm_get_curve_length ( curveid, length )

Description:
Gets the length of a curve.
Input:
INTEGER curveid The ID of the curve.
Output:
REAL length The length of the curve.
INTEGER <Return Value> 0: successful, otherwise return error code.
Example:
Please see sgm_get_curve_length (p. 1108) in the MSC.Acumen, Volume 2: Code Examples.

sgm_node_on_curve ( geotol, num_crvs, crv_id_list, list_size, init_flag, num_nodes,


node_id_list, node_u_list )

Description:
Get the nodes close to the given curves within the geometric tolerance.
Input:
REAL geotol The geometric tolerance.
INTEGER num_crvs The number of the given curves.
INTEGER crv_id_lis (num_crvs) The ID list of the given curves.
INTEGER list_size The size of the node_id_list.
INTEGER init_flag Initial call ( = 0 ) or continued call ( = 1 ).
Output:
INTEGER num_nodes ( ) The number of the nodes found.
INTEGER node_id_list The ID list of the nodes found.
(num_nodes)
REAL node_u_list The list of the node parameter U.
(num_nodes)
INTEGER <Return Value> Success or an error code.
Comments:
If the node_id_list is not BIG enough to accommodate all found nodes, the return value is 9999.
Allocate another memory space, set init_flag == 1, call this routine again to get the rest nodes. (
until <return value> == 0 ).
Error Conditions:
1000025 Error attempting to allocate virtual memory.
Main Index
CHAPTER 7 169
Geometry

1000564 Data for curve %I% not found.


48000004 No Node found
1000547 No curves were found to exist in the database as defined in the curve list. The
curve list input was %A%
Example:
Please see sgm_node_on_curve (p. 1117) in the MSC.Acumen, Volume 2: Code Examples.

sgm_show_angle_between_curves (curvelist_1, curvelist_2, seg_id, marker_type,


marker_color, marker_size, angle)
Description:
This function gets the angle between any two curves and marks it on the user interface.
Input:
STRING curvelist_1[ ] The first list of curves.
STRING curvelist_2[ ] The second list of curves.
INTEGER seg_id The id of the segment for the marker.
INTEGER marker_type The type of marker for the angle.
INTEGER marker_color The color of marker for the angle.
INTEGER marker_size The size of marker for the angle.
Output:
STRING angle[ ] The value of the angle between the curve.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_show_angle_between_curves (p. 1121) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
170
Function Descriptions

7.4 Surface

asm_db_get_next_patch_label ( domessage, integerlabel, stringlabel )

Description:
Get the next highest patch label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error
occurs.
Output:
INTEGER integerlabel The next highest curve label.
STRING stringlabel[] The next highest curve label.
INTEGER <Return Value> Success or an error code.
Example:
Please see asm_db_get_next_patch_label (p. 1008) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_surface ( )

Description:
Counts all surfaces in the database.
Input:
none
Output:
INTEGER count The integer number of surfaces in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_count_surface (p. 1020) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_surface_label ( label )

Description:
Gets the largest surface label from the database.
Input:
none
Output:
INTEGER label
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.

Main Index
CHAPTER 7 171
Geometry

Example:
Please see db_get_max_surface_label (p. 1034) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_surface_label ( label )

Description:
Gets the smallest surface label from the database.
Input:
none
Output:
INTEGER label Highest surface label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_min_surface_label (p. 1037) in the MSC.Acumen, Volume 2: Code Examples.

db_get_surface_coo_and_type ( id, coo, type )

Description:
Gets a geometric coo and type from the database given an id.
Input:
INTEGER id The unique internal surface id identifying the association
of the information to be retrieved from the database.
Output:
INTEGER coo The geometric company of origin stored in the database.
INTEGER type The geometric type of data stored in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_surface_coo_and_type (p. 1048) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_surface_id ( label, id )

Description:
Gets a surface id from the database given a surface label.
Input:
INTEGER label The unique external surface id identifying the surface to
be retrieved from the database.

Main Index
172
Function Descriptions

Output:
INTEGER id The unique internal surface id identifying the surface
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_surface_id (p. 1049) in the MSC.Acumen, Volume 2: Code Examples.

db_get_surface_label ( id, label )

Description:
Gets a surface label from the database given a surface id.
Input:
INTEGER id The unique internal surface id identifying the surface to
be retrieved from the database.
Output:
INTEGER label The unique external surface id identifying the surface to
be retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_surface_label (p. 1050) in the MSC.Acumen, Volume 2: Code Examples.

sgm_create_surface_composite_c (output_labels, surface_list, flag, gap_tolerance,


delete_cons, implicit_topology, created_labels)
Description:
This function creates composite trimmed surfaces.
Input:
STRING output_labels[ ] This value specifies the label of the surface to be
created.
STRING surface_list[ ] This value specifies the surfaces from which the
composite will be created.
INTEGER flag Inner Loop Options : 0 for All, 1 for None and 2 for
Select Edge.
REAL gap_tolerance This value specifies the gap distance for the surface
builder.
LOGICAL delete_cons This value specifies, when set to TRUE, that the
surfaces in the input value surface_list be deleted
after the composite trimmed surfaces are created.

Main Index
CHAPTER 7 173
Geometry

LOGICAL implicit_topology This value specifies, when set to TRUE, that the
edges of the created surfaces are defined by the
chain links. When this value is set to FALSE the
chain link edges will be combined if there is slope
continuity in the 2D segments.
Output:
STRING created_labels[VIRTUAL] This value returns the label of the composite surface
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_create_surface_composite_c (p. 1060) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_create_surface_comptrim_v1 (output_ids, surface_list, outer_curve_list,


inner_curve_list,gap_dist,delete_surface,
outer_curve_delete, inner_curve_delete,
implicit_topology, created_ids)
Description:
This function constructs a trimmed surface from a parent surface and/or outer and inner
boundary curves with an option of how to define the edges of the trimmed surfaces.
Input:
STRING output_ids[] This value specifies the surface ID list. If this value is set
to an empty string or to “#”, the function will
automatically allocate and assign a sequential list of
surface IDs.
STRING surface_list[] This value specifies the parent surface to trim.
STRING outer_curve_list[] This value specifies the outer boundary trim curves.
STRING inner_curve_list[] This value specifies the inner boundary trim curves.
REAL gap_dist The gap distance tolerance between the surfaces to be
trimmed.
LOGICAL delete_surface This value is set to TRUE if the parent surface is to be
deleted after trimmed surface is created.
LOGICAL outer_curve_delete This value is set to TRUE if the outer boundary trim
curves are to be deleted after trimmed surface is created.
LOGICAL inner_curve_delete This value is set to TRUE if the inner boundary trim
curves are to be deleted after trimmed surface is created.
LOGICAL implicit_topology This value is set to TRUE if the edges are defined from
the chain links, or to FALSE if the edges are to be derived
from the slope continuity in the 2D segments.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.

Main Index
174
Function Descriptions

Error Conditions:
See the Status Messages (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_create_surface_comptrim_v1 (p. 1062) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_create_surface_from_elems1 (output_ids, elem_list, preview, node_list,


in_options, in_nodes, delete_original, s_option,
corner_nodes, deleted_ids, created_ids)
Description:
This function constructs surface from any 2D element.
Input:
INTEGER output_ids[] This value specifies the surface ID list. If this value is set
to an empty string or to “#”, the function will
automatically allocate and assign a sequential list of
surface IDs.
STRING elem_list[] This value specifies the list of elements.
INTEGER preview = 1 will return 4 corner nodes.
STRING node_list[] List of nodes that represent vertices.
INTEGER in_options Defines which loops to be preserved
0 = All, 1 = None, 3 = Selected Loops
STRING in_nodes List of nodes on the loop that need to be preserved.
LOGICAL delete_original[] FALSE will delete the original elements.
INTEGER s_option[] Value for Smoother options.
0 = Fast 1 = Better Parametrization.
INTEGER corner_nodes() Returns the array of corner nodes if preview = 1
STRING deleted_ids[VIRTUAL] Deleted items.
Output:
STRING created_ids[VIRTUAL] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_create_surface_from_elems1 (p. 1064) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 7 175
Geometry

sgm_db_get_num_loops_face ( surfaceid, getedges, numloops, numedges,


numegploop, status )

Description:
Gets the number of loops for a surface, and the total number of edges and if desired, the
number of edges per loop.
Input:
INTEGER surfaceid The ID of the surface.
LOGICAL getedges TRUE if routine should get number of edges per loop.
FALSE if not.
Output:
INTEGER numloops The number of loops.
INTEGER numedges The total number of edges.
INTEGER numegploop ( ) The number of edges per loop (dimension is
numberLoops).
INTEGER status Success or an error code.
Comments:
The usual way to use this routine is:
1) Call it to get the number of loops numberLoops with getEdges == False (0)
2) User allocates array numberEdgesPerLoop as (INT *) MemAlloc ( arg, numberLoops *
sizeof(INT)).
3) User calls routine again with getEdges == True (1) to get the array of number of edges per
loop for all loops (numberEdgesPerLoop).
Error Conditions:
1000025 Error attempting to allocate virtual memory.
Example:
Please see sgm_db_get_num_loops_face (p. 1083) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_surface ( surfaceid, blobsize, blob, status )

Description:
Get the geometric definition of a surface from the database.
Input:
INTEGER surfaceid The ID of the surface.
INTEGER blobsize Size of the blob in words.
REAL blob ( ) Array to be filled in with Geometric description of a
surface as a blob.
Output:
REAL blob ( ) Geometric description of the surface.
INTEGER status 0: no error.
-1: database error.
-2: insufficient array length for the blob.
Error Conditions:
38000001 The allocated space for the blob is too small
Main Index
176
Function Descriptions

Example:
See example for sgm_db_get_curve (p. 167). See also sgm_db_get_surface (p. 1088) in the
MSC.Acumen, Volume 2: Code Examples.

sgm_edit_surface_edge_match (type_option, surface_list_1,surface_list_2,


delete_flag, created_ids)
Description:
This function matches the edges for adjacent surfaces which have gaps inbetween. This is
particularly relevant when surface models are imported. Such models tend to have gaps which
require closing to avoid any errors regarding continuity with adjacent surfaces. This function
works with topologically incongruent models and matches topology (edges and vertices).
Input:
INTEGER type_option[] The type of edge match to be done.
1 for surface-point
2 for surface-surface.
STRING surface_list_1[] The first list of surfaces.
STRING surface_list_2[] The second list of surfaces.
LOGICAL delete_flag This value is set to TRUE if the original surfaces are to
be deleted.
Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_edit_surface_edge_match (p. 1098) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_edit_surface_sew (surface_list, created_ids)

Description:
This function sews surfaces which have gaps inbetween. This is relevant when surface models
are imported. Such models tend to have gaps which require closing to avoid any errors
regarding continuity of the surfaces. This function will sew edges into a common boundary
between surfaces. This function was introduced to handle cases and close up gaps not possible
with just edge_match.
Input:
STRING surface_list[] The list of surfaces to be sewed.
Output:
STRING created_ids[] This value returns the created ID list.
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.

Main Index
CHAPTER 7 177
Geometry

Error Conditions:
See the Status Messages (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_edit_surface_sew (p. 1102) in the MSC.Acumen, Volume 2: Code Examples.

sgm_get_surface_area ( surfid, area )

Description:
Gets the area of a surface.
Input:
INTEGER surfid The ID of the surface.
Output:
REAL area The area of the surface.
INTEGER <Return Value> SUCCESS or an error code.
Example:
Please see sgm_get_surface_area (p. 1110) in the MSC.Acumen, Volume 2: Code Examples..

sgm_node_on_surface ( geo_tolerance, number_surfaces, surface_list,


number_nodes, init_flag, number_nodes_found, node_id_list,
node_uv_list )

Description:
This function will get the nodes close to the given surfaces within the geometric tolerance.
Input:
REAL geo_tolerance This value specifies the geometric tolerance.
INTEGER number_surfaces This value specifies the number of offsets in the input
value surface_list
INTEGER surface_list(number_nodes)
This value specifies a list of surface identifier values.
INTEGER number_nodes This value specifies the number of offsets defined for the
output values node_id_list and node_uv_list.
INTEGER init_flag This value specifies when set to 0 that the initial call to get
the number of nodes on the surfaces is being made. This
value specifies, when set to 1 that the call to retrieve the
list of nodes on the surfaces is being made.
Output:
INTEGER number_nodes_found (1)
This value returns the number of the nodes found on the
list of surfaces.
INTEGER node_id_list (number_nodes)
This value returns a list of the node identifiers found on
the specified surfaces.
REAL node_uv_list (number_nodes * 2)

Main Index
178
Function Descriptions

This value returns a list of parametric U and V values for


the nodes specified by the return value node_id_list. The
U and V values are listed in the order of
U1,V1,U2,V2,U3,V3,....
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.
9999 See the remarks listed below.
1000025 Error attempting to allocate virtual memory.
1000716 Data for surface %I% not found.
1000707 No surfaces were found to exist in the database as defined in the surface list. The
surface list input was %A%.
1000025 No Node found !
Remarks:
The number of nodes on a surface which is needed to correctly allocate the space for the return
values node_id_list and node_uv_list can be found by calling sgm_node_on_surface() with the
input value init_flag set to 0, the input value number_nodes set to 1, and with the output values
node_id_list and node_uv_list allocated to a size of 1. The sgm_node_of_surface() function
should return with a return value of 9999 and the output value number_nodes_found will be
set to the number of nodes found on the list of surfaces.
The complete node list can then be obtained by calling the sgm_node_of_surface() function
with the input value init_flag set to 1. Continue calling the sgm_node_of_surface() function
until it no longer returns a value of 9999, indicating that all of the node identifiers have been
retrieved.
Example:
Please see sgm_node_on_surface (p. 1120) in the MSC.Acumen, Volume 2: Code Examples.

sgm_show_surface_normals ( surflist, scaled, numsurf, segid, redflag, vecdens,


veclen )

Description:
Routine that calculates and shows the surface normals.
Input:
STRING surflist[] The list of surfaces.
LOGICAL scaled TRUE if user wants to scale the normals to a percentage of
the surface area, FALSE otherwise.
INTEGER numsurf The number of surfaces (or segments).
INTEGER segid The ID of the segment.
INTEGER redflag 0 to show vectors on the interior and boundary, 1 to show
vectors on the boundary only.
INTEGER vecdens The number of vectors in the u and v directions.
REAL veclen The length of the vectors if they are not scaled.
Output:
INTEGER <Return Value> 0 if successful, else returns error code.
Main Index
CHAPTER 7 179
Geometry

Error Conditions:
14000010 In the list being used, the current sublist does not match the sublist filter.
14000015 LpSublistNext: End of current list has been reached.
1000025 Error attempting to allocate virtual memory.
1000707 No surfaces were found to exist in the database as defined in the surface list. The
surface list input was %A%.
Example:
Please see sgm_show_surface_normals (p. 1123) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_surface_evaluate (surface_data, ui, vi, derivative_use, surface_info, error_code )

Description:
This function evaluates a surface, returning information that defines the characteristics of a
surface.
Input:
REAL surface_data() This value specifies a surface data table or a blob. See the
remarks below for more information.
REAL ui This value specifies a parametric coordinate.
REAL vi This value specifies a parametric coordinate.
INTEGER derivative_use This value specifies the type of information that will be
returned by this function. See below for more
information.
Output:
REAL surface_info(21) This value returns the evaluated surface information. See
the remarks below for information on how to interpret the
values returned.
INTEGER error_code This value returns an error code and will be set to 0 if the
surface evaluation was successful and a non zero value to
indicate an error.
Error Conditions:
This is only a partial list of the error values that can be returned by this function.
1 A malformed surface data table or blob has been found. This problem is most
likely caused by an error in the input value surface_data.
2 This value indicates that the input value drivative_use has been set to request
normal information and that the current input values for ui and vi fall on an
unresolvable singularity. All of the other return vectors are valid at this point.
Only the normal vector is not to be used.
Remarks:
The size of the input value surface_data can be obtained with a call to the function
sgm_db_get_blob_size (p. 144). The surface data table or blob information can then be
retrieved with a call to sgm_db_get_surface (p. 175).
The input value derivative_use specifies the type of information that will be returned. The
following table explains the allowed values.
derivative_use valueInformation Returned
0 x, y, z
Main Index
180
Function Descriptions

1 x,y,z,nx,ny,nz,xu,yu,zu,xv,yv,zv
2 x,y,z,nx,ny,nz,xu,yu,zu,xv,yv,zv,xuu,yuu,zuu, xvv,yvv,zvv
3 x,y,z,nx,ny,nz,xu,yu,zu,xv,yv,zv,xuu,yuu,zuu, xvv,yvv,zvv,xuv,yuv,zuv
Example:
Please see sgm_surface_evaluate (p. 1126) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 181
Geometry

7.5 Solid

db_count_solid ( count )

Description:
Counts all solids in the database.
Input:
none
Output:
INTEGER count The integer number of solids in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_count_solid (p. 1018) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_solid_label ( label )

Description:
Gets the largest solid label from the database.
Input:
none
Output:
INTEGER label Highest solid label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Example:
Please see db_get_max_solid_label (p. 1033) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_solid_label ( label )

Description:
Gets the smallest solid label from the database.
Input:
none
Output:
INTEGER label Lowest solid label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Example:
Please see db_get_min_solid_label (p. 1037) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
182
Function Descriptions

db_get_solid_coo_and_type ( id, coo, type )

Description:
Gets a geometric coo and type from the database given an id.
Input:
INTEGER id The unique internal solid id identifying the association of the
information to be retrieved from the database.
Output:
INTEGER coo The geometric company of origin stored in the database.
INTEGER type The geometric type of data stored in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Example:
Please see db_get_solid_coo_and_type (p. 1044) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_solid_id ( label, id )

Description:
Gets a solid id from the database given a solid label.
Input:
INTEGER label The unique external solid id identifying the solid to be
retrieved from the database.
Output:
INTEGER id The unique internal solid id identifying the solid retrieved
from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Example:
Please see db_get_solid_id (p. 1045) in the MSC.Acumen, Volume 2: Code Examples.

db_get_solid_label ( id, label )

Description:
Gets a solid label from the database given a solid id.
Input:
INTEGER id The unique internal solid id identifying the solid to be
retrieved from the database.
Output:
INTEGER label The unique external solid id identifying the solid to be
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Example:

Main Index
Please see db_get_solid_label (p. 1046) in the MSC.Acumen, Volume 2: Code Examples.
CHAPTER 7 183
Geometry

Main Index
184
Function Descriptions

asm_db_get_next_hpat_label ( domessage, integerlabel, stringlabel )

Description:
Get the next unused hpat label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error
occurs.
Output:
INTEGER integerlabel The next highest solid label.
STRING stringlabel[] The next highest solid label.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see asm_db_get_next_hpat_label (p. 1007) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_construct_solid_brep (output_ids, surface_list, delete_flag, created_ids)

Description:
This function creates a b-rep solids from surfaces.
Input:
STRING output_ids[] The output ids to be assigned to the new solids.
STRING surface_list[] This value specifies the list of the surfaces used to create
the b-rep solid.
LOGICAL delete_flag This value is set to TRUE if the original surfaces are to be
deleted.
Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_construct_solid_brep (p. 1055) in the MSC.Acumen, Volume 2: Code Examples.

sgm_construct_solid_volume (output_ids, surface_list, delete_flag, created_ids)

Description:
This function creates solids with a set of surfaces.
Input:
STRING output_ids[ ] The output ids to be assigned to the new solids.
STRING surface_list[ ] This value specifies the list of the surfaces from which the
solid is to be created.
Main Index
CHAPTER 7 185
Geometry

LOGICAL delete_flag This value is set to TRUE if the original surfaces are to be
deleted.
Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_construct_solid_volume (p. 1056) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_num_vertices_body ( bodyid, numvert, status )

Description:
Gets the number of vertices for a general body.
Input:
INTEGER bodyid The ID of the body.
Output:
INTEGER numvert The number of vertices for the body.
INTEGER status Success or an error code.
Example:
Please see sgm_db_get_num_vertices_body (p. 1085) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_solid ( solidid, blobsize, blob, status )

Description:
Get the geometric definition of a solid from the database.
Input:
INTEGER solidid Id of the solid.
INTEGER blobsize The size of the blob in words.
Output:
REAL blob ( ) Array to be filled in with Geometric descriptionof a solid
as a blob.
INTEGER status 0: no error.
-1: database error.
-2: insufficient array length for the blob.
Error Conditions:
38000001 The allocated space for the blob is too small.
Example:
Please see sgm_db_get_solid (p. 1087) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
186
Function Descriptions

sgm_edit_brep_break_plane_v1 (output_ids, solid_list, plane_list, delete_flag,


created_ids)
Description
:
This function breaks a set of solids with a set of planes.
Input:
STRING output_ids[ ] The output ids to be assigned to the new solids.
STRING solid_list[ ] This value specifies the list of the solids to be broken.
STRING plane_list[ ] This value specifies the list of the planes which will break
the solids.
LOGICAL delete_flag This value is set to TRUE if the original solids are to be
deleted.
Output:
STRING created_ids[ ] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_edit_brep_break_plane_v1 (p. 1091) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_edit_brep_break_surface_v1 (output_ids, solid_list, surface_list, delete_flag,


created_ids)
Description:
This function breaks a set of solids with a set of surfaces.
Input:
STRING output_ids[] The output ids to be assigned to the new solids.
STRING solid_list[] This value specifies the list of the solids to be broken.
STRING surface_list[] This value specifies the list of the surfaces which will
break the solids.
LOGICAL delete_flag This value is set to TRUE if the original solids are to be
deleted.
Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_edit_brep_break_surface_v1 (p. 1092) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 7 187
Geometry

sgm_edit_solid_break (output_ids, option_type, point_list, parameter, delete_flag,


solid_list, created_ids)
Description:
This function breaks solids at a point or by parametric location.
Input:
STRING output_ids[] The output ids to be assigned to the new solids.
INTEGER option_type The option for breaking the solid
1 for breaking by point
0 for breaking by u,v, w parameters.
STRING point_list[] The point where the solid is to be broken if
option_type=1.
REAL ARRAY parameter(3) The u,v and w parameters if option_type = 0, 0<u,v,w<1
LOGICAL delete_flag This value is set to TRUE if the original solids are to be
deleted.
STRING solid_list[] List of solids to break.

Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_edit_solid_break (p. 1094) in the MSC.Acumen, Volume 2: Code Examples.

sgm_edit_solid_refit_v1 (output_ids, tolerance, type_option, delete_flag, solid_list,


created_ids)
Description:
This function edits solids for changing the topology.
Input:
STRING output_ids[] The output ids to be assigned to the new solids.
REAL tolerance This tolerance for fitting the solid.
LOGICAL type_option = TRUE for creating hyperpatches
= FALSE for creating a triparametric net
LOGICAL delete_flag This value is set to TRUE if the original solids are to be
deleted.
STRING solid_list[] The list of solids to refit.
Output:
STRING created_ids[] This value returns the created ID list.
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:
Main Index
188
Function Descriptions

See the Status Messages (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_edit_solid_refit_v1 (p. 1096) in the MSC.Acumen, Volume 2: Code Examples.

sgm_edit_solid_reverse (solid_list, created_ids)

Description:
This function reverses the parametric directions of solids.
Input:
STRING solid_list[] List of solids to be reversed.
Output:
STRING created_ids[] This value returns the created ID list.
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 (Ch. 11) for information on any error values returned by this
function.
Example:
Please see sgm_edit_solid_reverse (p. 1097) in the MSC.Acumen, Volume 2: Code Examples.

sgm_get_solid_volume ( solid, volume )

Description:
Gets the volume of a solid.
Input:
INTEGER solid The ID of the solid.
Output:
REAL volume The volume of the solid.
INTEGER <Return Value> Success or an error code.
Error Conditions:
1000025 Error attempting to allocate virtual memory.
Example:
Please see sgm_get_solid_volume (p. 1109) in the MSC.Acumen, Volume 2: Code Examples.

sgm_solid_evaluate ( s, ui, vi, wi, in, pd, irc )

Description:
This subroutine plays traffic cop for the lower level solid evaluators.
Input:
REAL s() Solid data table.
REAL ui Parametric coordinates.
REAL vi Parametric coordinates.
Main Index
CHAPTER 7 189
Geometry

REAL wi Parametric coordinates.


INTEGER in Derivative flag.
0-P
1 - P,PU,PV,PW
2 - P,PU,PV,PW,PUV,PUW,PVW
3 - P,PU,PV,PW,PUV,PUW,PVW,PUU,PVV,PWW
Output:
REAL pd ( ,3) Output table (controlled by IN).
INTEGER irc 0 - evaluation successful.
1 - error somewhere, don’t trust the result.
Example:
See example for sgm_db_get_solid (p. 185). See also sgm_solid_evaluate (p. 1124) in the
MSC.Acumen, Volume 2: Code Examples.

sgm_verify_solid_brep ( surface list, verify_tol )

Description:
This function verifies that a collection of surfaces represent a valid B-rep solid.
Input:
STRING surface_list[] This value specifies the collection of surfaces that
represent the B-rep solid.
REAL verify_tol This value specifies a tolerance value used to determine if
the surfaces represent the B-rep solid. This value must be
less than or equal to the global geometric modeling
tolerance value.
Output:
INTEGER <Return Value> 0 if the function was successful.
Example:
Please see sgm_verify_solid_brep (p. 1128) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
190
Function Descriptions

7.6 Coordinate Frame

app_db_get_ref_cid ( domesg, cord_frame )

Description:
Get the default reference coordinate frame from the database.
Input:
LOGICAL domesg Error message flag: If TRUE, this routine will allow the
app_db_err_msg routine to issue a message if an error is
encountered.
Output:
STRING cord_frame[] The default reference coordinate frame.
INTEGER <Return Value> Success or an error code.
Example:
Please see app_db_get_ref_cid (p. 996) in the MSC.Acumen, Volume 2: Code Examples.

asm_u_coord_local_to_global ( p, t, r, itype, npts )

Description:
This function transforms points from local coordinates to global. It passes the transpose of the
rotation matrix stored in the database.
Input:
REAL ARRAYp(3,npts) The point coordinates in local frame.
REAL ARRAYt(3) This value specifies the translation vector for the global
coordinate frame.
REAL ARRAYr(3,3) This value specifies the rotation matrix for the global
coordinate frame and is the transpose of the rotation matrix
stored in the database.
INTEGER itype The reference coordinate frame type:
1=rectangular
2=cylindrical
3=spherical
INTEGER npts The number of points.
Output:
REAL ARRAYp(3,npts) The point coordinates in global frame.
Error Conditions:
See the Status Messages (Ch. 11) for information on any error values returned by this
function.
Example:
Please see asm_u_coord_local_to_global (p. 1010) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 7 191
Geometry

db_check_coord_frame_exist ( id )

Description:
Checks to see if a coordinate frame exists in the database.
Input:
INTEGER id The unique internal cid identifying the coordinate frame
to be retrieved from the database.
Output:
LOGICAL <Return Value> True if the cid exists.
Error Conditions:
This routine returns only a logical value, and gives no indication of why a failure occurred.
External Dependencies and Side Effects:
Accesses one record in the “coordinate_frame” table in the database.
Example:
Please see db_check_coord_frame_exist (p. 1014) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_coordinate_frame ( count )

Description:
Counts all coordinate_frames in the database.
Input:
none
Output:
INTEGER count The integer number of coordinate_frames in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
External Dependencies and Side Effects:
Queries “coordinate_frame” table in the database.
Example:
Please see db_count_coordinate_frame (p. 1015) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_all_coord_frame_ids ( )

Description:
This function will set a cursor to the start of a list of all coordinate frames.
Input:
none
Output:
none
Main Index
192
Function Descriptions

Remarks:
This function must be called before the db_get_next_coord_frame_ids() function can be called.
Example:
Please see db_get_all_coord_frame_ids (p. 1021) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_next_coord_frame_ids ( id )

Description:
This function will get the next coordinate frame id from the database.
Input:
none
Output:
INTEGER id This value returns the id of the next coordinate frame id.
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.
Remarks:
The PCL function db_get_all_coord_frame_ids() must be called at least once to establish the list
of posted coordinate frame id values and to set the cursor to point to the start of the list. Calling
the db_get_next_coord_frame_ids() function in a loop will then allow the list entries to be
retrieved.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred.
13000085 Cursor not open.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses all records in the “coordinate frame” table in the database.
Example:
See example for db_get_all_coord_frame_ids (p. 191). See also
db_get_next_coord_frame_ids (p. 1038) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_coord_label ( label )

Description:
Gets the largest coord label from the database.
Input:
none
Output:
INTEGER label Highest coord label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Main Index
CHAPTER 7 193
Geometry

Error Conditions:
13000056 Coordinate frame not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Selects the largest coord label from the database.
Example:
Please see db_get_max_coord_label (p. 1031) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_coord_label ( label )

Description:
Gets the smallest coord label from the database.
Input:
none
Output:
INTEGER label Lowest coord label used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000056 Coordinate frame not found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Selects the smallest coord label from the database.
Example:
Please see db_get_min_coord_label (p. 1034) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_posted_coord ( )

Description:
This function will set a cursor to the start of a list of posted coordinate frames.
Input:
none
Output:
none
Remarks:
This function must be called before the db_get_next_posted_coord() function can be called.
Example:
Please see db_get_all_posted_coord (p. 1023) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
194
Function Descriptions

db_get_next_posted_coord ( id )

Description:
This function will get the next posted coordinate frame id from the database.
Input:
none
Output:
INTEGER id This value returns the id of the next posted coordinate
frame id.
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.
Remarks:
The PCL function db_get_all_posted_coord() must be called at least once to establish the list of
posted coordinate frame id values and to set the cursor to point to the start of the list. Calling
the db_get_next_posted_coord() function in a loop will then allow the list entries to be
retrieved.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000085 Cursor not open.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses all records in the “coordinate frame” table in the database.
Example:
See example for db_get_all_posted_coord (p. 193). See also db_get_next_posted_coord
(p. 1039) in the MSC.Acumen, Volume 2: Code Examples.

asm_db_get_next_cord_label ( domessage, integerlabel, stringlabel )

Description:
Get the next highest coord label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error
occurs.
Output:
INTEGER integerlabel The next highest coord label.
STRING stringlabel[] The next highest coord label.
INTEGER <Return Value> Success or an error code.
Example:
Please see asm_db_get_next_cord_label (p. 1004) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 7 195
Geometry

db_get_coord_frame_label ( id, label )

Description:
Gets a label from the database given an id.
Input:
INTEGER id The unique internal id identifying the coord to be
retrieved from the database.
Output:
INTEGER label The unique external id identifying the coord to be
retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Accesses one record in the “coordinate_frame” table in the database.
Example:
Please see db_get_coord_frame_label (p. 1024) in the MSC.Acumen, Volume 2: Code Examples.

db_get_current_coord ( coord_label )

Description:
Retrieves the current coordinate frame from the database.
Input:
none
Output:
INTEGER label Location for returned value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000056 Coordinate frame not found
13000007 An unspecified database error occurred.
Example:
Please see db_get_current_coord (p. 1025) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
196
Function Descriptions

7.7 Point/Curve Relation

db_count_curves_for_point ( id, count )

Description:
Counts all curves associated with a specified point in the database.
Input:
INTEGER id The id of the point to which the curves are associated.
Output:
INTEGER count The integer number of curves associated to the point in the
database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000097 Curve input was not found.
Example:
Please see db_count_curves_for_point (p. 1016) in the MSC.Acumen, Volume 2: Code Examples.

db_get_curves_for_point ( ptid,count,crvid)

Description:
Finds the ids of all curves associated with a specified point in the database.
Input:
INTEGER ptid Id of the point to which the curves are associated.
INTEGER count The number of curves that the calling routine expects to
receive from the database. This count should be the same as
the number of curves to which the point is associated as it
should have been fetched from the database prior to making
this call.
Output:
INTEGER crvid() Ids of the various curves associated with the specified point.
Example:
See example for db_count_curves_for_point (p. 196). See also db_get_curves_for_point
(p. 1028) in the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_edge_vertex_ids ( edgeid, vertexids )

Description:
This function returns the vertex id values foran edge.
Input:
INTEGER edgeid This value specifies the id of an edge.

Main Index
CHAPTER 7 197
Geometry

Output:
INTEGER vertexids ( ) This value returns the id values of the vertices of an edge.
INTEGER <Return Value> 0 if the function was successful.
Example:
Please see sgm_db_get_edge_vertex_ids (p. 1075) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_nearest_point_on_curve (location, curve_data, parameter, point_location)

Description:
This function gets the nearest point at a specific parametric location on a curve.
Input:
REAL location(3) The xyz location of the point in space.
ARRAY
REAL curve_data() The blob of the curve. The functions to be used for get-
ARRAY ting the blob are sgm_db_get_blob_size() followed by
sgm_db_get_curve().
REAL parameter The parameter value along the curve where to look for
the nearest point.
Output:
REAL point_location(3) The xyz location of the nearest point in space.
ARRAY
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_nearest_point_on_curve (p. 1114) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_nearest_point_on_curve_aea (location, curve_data, parameter, point_location)

Description:
This function gets the nearest point at a specific parametric location on a curve.
Input:
REAL ARRAY location(3) The xyz location of the point in space.
REAL ARRAY curve_data() The blob of the curve. The functions to be used for get-
ting the blob are sgm_db_get_blob_size() followed by
sgm_db_get_curve().
REAL parameter The parameter value where to look for the nearest point.
Output:
REAL ARRAY point_location(3) The xyz location of the nearest point in space.
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:
Main Index
198
Function Descriptions

See the Status Messages (Ch. 11) for information on any error values returned by this function.
Example:
Please see sgm_nearest_point_on_curve_aea (p. 1115) in the MSC.Acumen, Volume 2: Code
Examples.

xy_curve_num_points_get (<curve_name>,<yonly>,<npoints>)

Description:
This function will get the number of points on the curve.
Input:
STRING curve_name Name of the curve.
Output:
LOGICAL yonly Flag which is TRUE if curve uses only y values and FALSE
if curve uses both xy values.
INTEGER npoints Number of points on the curve.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see xy_curve_num_points_get (p. 1130) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 199
Geometry

7.8 Curve/Surface Relation

db_count_surfaces_for_edge ( id, count )

Description:
Counts all surfaces associated with a specified edge in the database.
Input:
INTEGER id The id of the edge to which the surfaces are associated.
Output:
INTEGER count The integer number of surfaces associated to the edge in
the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
See example for db_count_surface (p. 170). See also db_count_surfaces_for_edge (p. 1020)
in the MSC.Acumen, Volume 2: Code Examples.

db_get_surfaces_for_edge ( edgid, count, srfid )

Description:
Finds the ids of all surfaces associated with a specified edge in the database.
Input:
INTEGER edgid Id of the edge to which the surfaces are associated.
INTEGER count The number of surfaces that the calling routine expects to
receive from the database. This count should be the same
as the number of surfaces to which the edge is associated
as it should have been fetched from the database prior to
making this call.
Output:
INTEGER srfid() Ids of the various surfaces associated with the specified
edge.
Example:
See example for db_count_surface (p. 170). See also db_get_surfaces_for_edge (p. 1051) in
the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_gen_face_edge_ids ( surfaceid, numberloops, numberedges, loopids,


edgeids, edgeorients )

Description:
Returns the loop ids, edge ids, and orientations for an n-sided surface identified by its id.
Input:
INTEGER surfaceid The id of the surface.
Main Index
200
Function Descriptions

INTEGER numberloops Total number of loops for the surface.


INTEGER numberedges The total number of edges for the surface.
Output:
INTEGER loopids ( ) The loop handle for each edge. (dim
totalNumberOfEdges).
INTEGER edgeids ( ) The ids of the edge. (dim totalNumberOfEdges).
INTEGER edgeorients ( ) The orientations of the edge. (dim totalNumberOfEdges).
INTEGER <Return Value> Success or an error code.
Example:
See example for sgm_db_get_num_loops_face (p. 175). Please see
sgm_db_get_gen_face_edge_ids (p. 1079) in the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_gen_face_vertex_ids ( surfaceid, numberverts, vertexids )

Description:
Returns the vertex ids for an n-sided surface identified by its id.
Input:
INTEGER surfaceid The id of the surface.
INTEGER numberverts The number of vertices for the surface.
Output:
INTEGER vertexids ( ) The ids of the vertex.
INTEGER <Return Value> Success or an error code.
Example:
Please see sgm_db_get_gen_face_vertex_ids (p. 1080) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_num_edges_face ( surfaceid, numberfaces )

Description:
This function will return the number of edges of the specified surface.
Input:
INTEGER surfaceid This value specifies the identifier for a surface or the face
of a solid.
Output:
INTEGER numberfaces This value returns the number of edges of the specified
surface of face of a solid.
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.
Example:
See example for sgm_db_get_num_loops_face (p. 175). See also
sgm_db_get_num_edges_face (p. 1081) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 7 201
Geometry

7.9 Surface/Solid Relation

db_count_solids_for_surface ( id, count )

Description:
Counts all solids associated with a specified surface in the database.
Input:
INTEGER id The id of the surface to which the solids are associated.
Output:
INTEGER count The integer number of solids associated to the surface in
the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_count_solids_for_surface (p. 1019) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_solids_for_surface ( srfid, count, solid )

Description:
Finds the ids of all solids associated with a specified surface in the database.
Input:
INTEGER srfid Id of the surface to which the solids are associated.
INTEGER count The number of solids that the calling routine expects to
receive from the database. This count should be the same
as the number of solids to which the surface is associated
as it should have been fetched from the database prior to
making this call.
Output:
INTEGER solid() Ids of the various solids associated with the specified
surface.
Example:
Please see db_get_solids_for_surface (p. 1047) in the MSC.Acumen, Volume 2: Code Examples.

sgm_db_get_gen_body_face_ids ( bodyid, numberfaces, faceids, faceorients,


facesense, status )

Description:
Gets the Face IDs for a body.
Input:
INTEGER bodyid The ID of the body.
INTEGER numberfaces The number of face for the body.
Main Index
202
Function Descriptions

Output:
INTEGER faceids () The IDs of the faces of the body.
INTEGER faceorients ( ) The orientations of the faces of the body.
INTEGER facesense ( ) The sense of the normal (out or in).
INTEGER status Success or an error code.
Example:
See example for sgm_db_get_num_loops_face (p. 175). See also
sgm_db_get_gen_body_face_ids (p. 1076) in the MSC.Acumen, Volume 2: Code Examples.
Notes:
The faceorients () values listed above provide the following information:
The surface normal relative to position 0 (where the face exactly matches the underlying
surface).
The offset according to the INDUSTRY STANDARD, not according to MSC.Patran standards.
Note that the offset is always given relative to position 0 when the face exactly matches the
topology of the underlying surface.

Value Orientation Face Sense Offset

0 DB_FACE_ORIENTATION_POS0 DB_FACE_SENSE_POSITIVE DB_GEN_FACE_POS0

1 DB_FACE_ORIENTATION_POS1 DB_FACE_SENSE_NEGATIVE DB_GEN_FACE_POS0

2 DB_FACE_ORIENTATION_POS2 DB_FACE_SENSE_NEGATIVE DB_GEN_FACE_POS3

3 DB_FACE_ORIENTATION_POS3 DB_FACE_SENSE_POSITIVE DB_GEN_FACE_POS1

4 DB_FACE_ORIENTATION_POS4 DB_FACE_SENSE_NEGATIVE DB_GEN_FACE_POS2

5 DB_FACE_ORIENTATION_POS5 DB_FACE_SENSE_POSITIVE DB_GEN_FACE_POS2

6 DB_FACE_ORIENTATION_POS6 DB_FACE_SENSE_POSITIVE DB_GEN_FACE_POS3

7 DB_FACE_ORIENTATION_POS7 DB_FACE_SENSE_NEGATIVE DB_GEN_FACE_POS1

Reverse pairs (If you reverse a 4-sided surface as the orientation toggles between these two
values.

DB_FACE_ORIENTATION_POS0 <-> DB_FACE_ORIENTATION_POS0


DB_FACE_ORIENTATION_POS2 <-> DB_FACE_ORIENTATION_POS6
DB_FACE_ORIENTATION_POS3 <-> DB_FACE_ORIENTATION_POS7
DB_FACE_ORIENTATION_POS4 <-> DB_FACE_ORIENTATION_POS8

sgm_db_get_gen_body_vertex_ids ( bodyid, numvert, vertexids, status )

Description:
Gets the Vertex IDs for a body.
Input:
Main Index
CHAPTER 7 203
Geometry

INTEGER bodyid The ID of the body.


INTEGER numvert The number of vertices for the body.
Output:
INTEGER vertexids ( ) The IDs of the vertices of the body.
INTEGER status 0 if successful, error code otherwise.
Example:
Please see sgm_db_get_gen_body_vertex_ids (p. 1078) in the MSC.Acumen, Volume 2: Code
Examples.

sgm_db_get_num_faces_body ( bodyid, numberfaces, status )

Description:
Gets the number of faces for a general body.
Input:
INTEGER bodyid The ID of the body.
Output:
INTEGER numberfaces The number of faces for the body.
INTEGER status 0 if successful, else returns error code.
Example:
See example for sgm_db_get_num_loops_face (p. 175). See also
sgm_db_get_num_faces_body (p. 1082) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
204
Function Descriptions

7.10 Transform

transform_pts ( cid, cidtyp, npts, points )

Description:
This function will transform points defined in the global coordinate system to the specified
local coordinate system.
Input:
INTEGER cid This value specifies the local coordinate system id.
INTEGER npts This value specifies the number of points to be
transformed.
REAL points(3,npts) This value specifies the coordinates of the points to be
transformed. This value is used as both an input and an
output to this function and the values passed into the
function will be changed.
Output:
INTEGER cidtyp This value returns the type of the local coordinate system.
REAL points (3,npts) This value returns the coordinates of the points
transformed into the local coordinate system. This value
is used as both an input and an output to this function.
The original input values for this array will be lost.
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.
Example:
Please see transform_pts (p. 1129) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Finite Element Model
8
■ Finite Elements
■ MPCs
■ Nodes
■ Mesh

■ Element/Node Relations

Main Index
204
Function Descriptions

8.1 Finite Elements

db_get_next_elem_id (id)

Description:
This function will return the next available element ID to the caller.
Input:
None.
Output:
INTEGER id The next available element ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_get_next_elem_id (p. 1166) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_elem_id (id)

Description:
This function will search the entire element list to find the minimum element ID currently in
use.
Input:
None.
Output:
INTEGER id The minimum element ID currently in use.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_get_min_elem_id (p. 1163) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_elem_id (id)

Description:
This function will search the entire element list to find the maximum element ID currently in
use.
Input:
None.
Output:
INTEGER id The maximum element ID currently in use.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_get_min_elem_id (p. 204). See also db_get_max_elem_id (p. 1160) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 205
Finite Element Model

fem_get_elem_assoc_groups (nelem, idelems, ngroups, ids)

Description:
Get a list of all the groups associated with the elements in the FEM_LIST
Input:
INTEGER nelem Number of elements.
INTEGER idelems() List of elements.
Output:
INTEGER ngroups Number of unique groups associated with elements.
INTEGER ids()symbol Pointer to VIRTUAL integer array containing list of
associated group IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort
-2 No elements in list
-3 No associated groups
Error Conditions:
2001070 Unable to acquire %I% words of virtual memory.
4 Interrupted system call.
Example:
Please see fem_get_mpc_assoc_groups (p. 1184) in the MSC.Acumen, Volume 2: Code
Examples.

fem_get_elem_ids (entity_list, nelem, idelem, notfound, idnoexist)

Description:
Extract the array of existing element IDs from ELEM_LST.
Input:
STRING entity_list[] List of selected elements.
Output:
INTEGER nelem Number of existing element IDs.
INTEGER idelem()symbol Pointer to sorted Element IDs.
INTEGER notfound Number of elements that were not found.
INTEGER idnoexist()symbol Pointer to sorted list of nonexistent IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort.
-2 No existing elements in list.
Example:
See example for fem_get_elem_assoc_groups (p. 205). See also fem_get_elem_ids
(p. 1183) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
206
Function Descriptions

fem_u_get_free_edges ( el_ids, max_nodes, max_per_edge, max_edges, nels,


el_con, el_shape, el_nodes, edge_el_ids, edge_ids,
free_edges )

Description:
Create a list of all free edges in a list of finite elements.
Input:
INTEGER el_ids() List of elements.
INTEGER max_nodes Maximum number of nodes per element in EL_IDS.
INTEGER max_per_edge Maximum number of nodes per edge in EL_IDS.
INTEGER max_edges Maximum number of edges per element in EL_IDS.
INTEGER nels Number of elements.
INTEGER el_con() Element node list (Connectivity).
INTEGER el_shape() Element shape array.
INTEGER el_nodes() Element node count array.
Output:
INTEGER edge_el_ids() Associated element id.
INTEGER edge_ids() Free edge ID.
INTEGER free_edges Number of free edges.
INTEGER <Return Value> 0, no error.
1, Unsupported element type (shape/nodes).
2, Memory allocation error.
Example:
Please see fem_u_get_free_edges (p. 1190) in the MSC.Acumen, Volume 2: Code Examples.

fem_u_get_free_faces (el_ids, max_nodes, max_per_face, max_faces, num_els,


el_con, el_shape, el_nodes, face_el_ids, face_ids, free_faces)

Description:
This function will create a list of all free element faces in a list of solid finite elements.
Input:
INTEGER el_ids(num_els) This value specifies a list of solid element identifiers.
INTEGER max_nodes This value specifies the maximum number of nodes used
by the elements specified by the input value el_ids.
INTEGER max_per_face This value specifies the maximum number of nodes used
by the elements specified by the input value el_ids.
INTEGER max_faces This value specifies the maximum number of faces used
by the elements specified by the input value el_ids.
INTEGER num_els This value specifies the number of offsets defined for the
input value el_ids.
INTEGER el_con(num_els * max_nodes)
This value specifies the solid element connectivity node
list.
INTEGER el_shape(num_els) This value specifies the shapes of the solid elements.
INTEGER el_nodes(num_els) This value specifies the solid element node counts.
Main Index
CHAPTER 8 207
Finite Element Model

Output:
INTEGER face_el_ids(max_per_face * num_els)
This value returns the associated element identifiers.
INTEGER face_ids(max_per_face * num_els)
This value returns the free face identifiers.
INTEGER free_faces This value returns the number of free faces.
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 An unsupported element shape or node type has been specified.
2 A memory allocation error has occurred.
Example:
Please see fem_u_get_free_faces (p. 1192) in the MSC.Acumen, Volume 2: Code Examples.

db_update_elem_ids (numelem, old_id, new_id)

Description:
This function changes the ID of a list of elements.
Input:
INTEGER numelem The number of elements to be changed.
INTEGER old_id() The list of old element IDs.
INTEGER new_id() The list of new element IDs.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
0 Successful Completion.
13000095 User Aborted Transaction In Progress.
13000118 The renumber specified could not complete.
Example:
Please see db_update_elem_ids (p. 1176) in the MSC.Acumen, Volume 2: Code Examples.

db_count_elems_for_geo (geo_type, geo_id, nbr_of_elements)

Description:
Count the number of elements that have the given geometry type and ID.
Input:
INTEGER geo_type The geometry type to search for.
INTEGER geo_id The geometry ID to search for.
Output:
INTEGER nbr_of_elements The number of elements found.
INTEGER <Return Value> Returns the success or failure of the routine.
Main Index
208
Function Descriptions

Error Conditions:
SUCCESS This function completed successfully.
13000041 Element not found .
Example:
Please see db_count_elems_for_geo (p. 1135) in the MSC.Acumen, Volume 2: Code Examples.

db_update_elem_types (nelem, mxnode, eid, etop, econ)

Description:
This function will update the given elements with the new element topology and create a set of
new nodes for that element.
Input:
INTEGER nelem The number of elements to be created.
INTEGER mxnode The number of nodes on each element.
INTEGER eid() The array of element IDs to be used.
INTEGER etop() The array of element topologies to be used.
INTEGER econ() The array of node IDs for each element.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
SUCCESS This function completed successfully.
Example:
Please see db_update_elem_types (p. 1178) in the MSC.Acumen, Volume 2: Code Examples.

db_count_elem_topology_codes (ntop)

Description:
This function will count the total number of element topologies currently defined in the system.
Input:
None.
Output:
INTEGER ntop The number of element topologies in the database.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_elem_topology_codes (p. 1134) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_elem_w_topology (ntop, top, nelem)

Description:
This function will count the number of elements that have the specified topologies. The
maximum number of topologies that can be returned is passed in by the caller and the caller
passes in the address of the output array.
Main Index
CHAPTER 8 209
Finite Element Model

Input:
INTEGER ntop The number of topologies to be looked up.
INTEGER top() An array of the topologies to look up.
Output:
INTEGER nelem() An array of the number of elements of each type.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
See example for db_count_elem_w_topology (p. 208). See also db_count_elem_w_topology
(p. 1134) in the MSC.Acumen, Volume 2: Code Examples.

db_count_nodes_for_geometry (geoType, geoId, parentType, parentId, nodeCount)

Description:
This function will count all of the nodes associated with the specified piece of geometry. If the
parent geometry parameters are specified, then the given child geometry is assumed to be a
constituent part of the parent. The parent geometry and ID must define the entity that contains
the elements that the requested nodes belong to. For example, if the caller wants all of the nodes
on an edge of a solid, the “geoType” and “geoId” should refer to the specific edge and the
“parentType” and “parentId” should refer to the solid (assuming that the desired nodes are
part of a solid mesh.)
Input:
INTEGER geoType The type of the geometry in question (point, curve, etc.)
INTEGER geoId The ID of the geometry in question.
INTEGER parentType The type of the highest order geometry that the
“geoType” is part of.
INTEGER parentId The ID of the highest order geometry that the “geoType”
is part of.
Output:
INTEGER nodeCount The number of nodes associated with that piece of
geometry.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_count_nodes_for_geometry (p. 1138) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_elems nelem, mxnode, eid, etop, gtype, gid, econ

Description:
This function will retrieve all of the information about a group of elements from the memory
database given the IDs of the elements. The user must pass in the addresses of the output
arrays.
Input:
INTEGER nelem The number of elements being requested.
INTEGER mxnode The maximum number of nodes allowed for each
element.
Main Index
210
Function Descriptions

INTEGER eid (nelem) An array to element IDs to be looked up.


Output:
INTEGER etop (nelem) An array of element topologies.
INTEGER gtype (nelem) An array of associated geometry types.
INTEGER gid (nelem) An array of associated geometry IDs.
INTEGER econ (nelem, mxnode) An array of nude IDs that belong to each element.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_get_elems (p. 1155) in the MSC.Acumen, Volume 2: Code Examples.

db_get_elems_by_lbc (lbc_id, max_elem, numelem, eid)

Description:
Gets all elements associated with a specified LBC.
Input:
INTEGER lbc_id Id of the LBC to which the requested elements are
associated.
INTEGER max_elem Maximum number of element IDs for which storage has
been allocated by the calling routine.
Output:
INTEGER nelem Number of elements found associated to the specified
LBC.
INTEGER eid() Ids of the elements associated to the specified lbc.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
None.
Example:
Please see db_get_elems_by_lbc (p. 1156) in the MSC.Acumen, Volume 2: Code Examples.

db_get_elem_config_ntl (atid, acid, geopcd, copcd, fopcd, lopcd, etopid, dofsetid,


matlcode, matdcode, config)

Description:
Gets an ntl 25 configuration code from the database.
Input:
INTEGER atid The id of the analysis type associated to the selected
element type.
INTEGER acid The id of the analysis code associated to the selected
element type.
INTEGER geopcd The id of the geometric option code associated with the
selected element type.

Main Index
CHAPTER 8 211
Finite Element Model

INTEGER copcd The id of the condense option code associated with the
selected element type.
INTEGER fopcd The id of the formulation option code associated with the
selected element type.
INTEGER lopcd The id of the laminate option code associated with the
selected element type.
INTEGER etopid The id of the element topology associated with the
selected element type.
INTEGER dofsetid The id of the degree of freedom associated with the
selected element type.
INTEGER matlcode The id of the material code associated with the selected
element type.
INTEGER matdcode The id of the material definition code associated with the
selected element type.
Output:
INTEGER config The id of the associated configuration.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Gets a record in the “selected_element_type” table.
Example:
Please see db_get_elem_config_ntl (p. 1147) in the MSC.Acumen, Volume 2: Code Examples.

db_get_elem_dimens (top_id, dimen)

Description:
This function will retrieve the element dimensionality for the specified element topology ID
value.
Input:
INTEGER top_id The element topology ID value.
Output:
INTEGER dimen The element dimensionality for the specified ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000041 Element not found.
External Dependencies and Side Effects:
None.
Example:
Please see db_get_elem_dimens (p. 1149) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
212
Function Descriptions

db_get_elem_for_geo_type_and_id (geo_type, geo_id, nbr_of_elements, element)

Description:
This function will retrieve all of the element IDs that have a given geometry type and geometry
ID.
Input:
INTEGER geo_type The desired geometry type to look for.
INTEGER geo_id The desired geometry ID to look for.
INTEGER nbr_of_elements The maximum number of elements we can return.
Output:
INTEGER element The array of element IDs with the specified type and ID.
(nbr_of_elements)
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000041 Element not found.
13000093 Too Many Values Returned for Space Allocated.
Example:
Please see db_get_elem_for_geo_type_and_id (p. 1149) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_elem_shape_for_id (nelem, eid, shape)

Description:
This function gets the shape codes for the array of elements specified.
Input:
INTEGER nelem The number of elements to be looked up.
INTEGER eid() The array of input element IDs.
Output:
INTEGER shape() The array of shape codes.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000041 Element not found.
SUCCESS This function completed successfully.
Example:
Please see db_get_elem_shape_for_id (p. 1151) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 213
Finite Element Model

db_get_elem_topology_codes (ntop, top)

Description:
The number of element topologies defined in the database.
Input:
INTEGER ntop The maximum number of topology IDs that can be
returned.
Output:
INTEGER top() The array of the element topology IDs.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Example:
Please see db_get_elem_topology_codes (p. 1153) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_elem_topos_for_geom (geo_id, geo_type, n_tops, top_ids)

Description:
This function will retrieve all of the distinct topology IDs currently in use that match the
specified geometry type and geometry ID.
Input:
INTEGER geo_id The desired geometry ID to look for.
INTEGER geo_type The desired geometry type to look for.
Output:
INTEGER n_tops The number of topologies that were found.
INTEGER top_ids() The array of topology IDs that were found.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_elem_topos_for_geom (p. 1153) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_elem_top_name (id, name)

Description:
This function will retrieve the element topology name for the specified element topology ID
value. Note: The output string that will hold the name of the degenerate element topology
MUST be at least GrNameLength bytes long. Anything less can cause memory to be
overwritten!
Input:
INTEGER id The element topology ID value.
Output:
STRING name[] The element topology name string.

Main Index
214
Function Descriptions

INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000091 Analysis type input was not found.
SUCCESS This function completed successfully.
Example:
Please see db_get_elem_top_name (p. 1152) in the MSC.Acumen, Volume 2: Code Examples.

db_get_elem_verification_parms (analysis_code_name, test_id, threshold)

Description:
Gets the element verification parameters.
Input:
STRING analysis_code_name[31] The current analysis code name.
INTEGER test_id The specific test id.
Output:
REAL threshold The threshold value.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000090 Analysis code input was not found.
13000086 No Records Found.
External Dependencies and Side Effects:
This routine accesses records in the analysis_code and element_verification_parms tables in the
database.
Example:
Please see db_get_elem_verification_parms (p. 1154) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_etop_for_a_code (acid, atid, count, etop)

Description:
Retrieves a set of element_topology_ids based of analysis code and type id.
Input:
INTEGER acid The analysis code id.
INTEGER atid The analysis type id.
INTEGER count Maximum number of topologies to be returned.
Output:
INTEGER etids() The element type ids retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Main Index
CHAPTER 8 215
Finite Element Model

Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Retrieves analysis_elements relationships.
Example:
Please see db_get_etop_for_a_code (p. 1158) in the MSC.Acumen, Volume 2: Code Examples.

db_get_indep_nodes_in_sub_mpc (mpc_id, sub_mpc_id, mxnode, nnode, nid)

Description:
This function returns a list of independent nodes which refer to the specified sub-MPC.
Input:
INTEGER mpc_id This value specifies the mass property constraint or
MPC id for which the information is being requested.
INTEGER sub_mpc_id This value specifies the sub-mass property constraint or
MPC id for which the information is being requested.
INTEGER mxnode This value specifies the maximum number of nodes
which may be returned for the sub-MPC. This value
should be less than or equal to the number of offsets
defined for the return value nid.
Output:
INTEGER nnode This value returns the number of nodes using the sub-
mass property constraint or MPC.
INTEGER nid() This value returns the id values of the nodes for each
sub-mass property constraint or MPC. The number of
offsets allocated for this array should be less than or
equal to the input value mxnode.
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:
13000142 The MPC was not found in the database.
13000143 The sub-MPC was not found in the database.
13000150 The list of nodes for one or more of the MPCs is longer than MAXNODE.
External Dependencies and Side Effects:
Accesses records in the mpc_term_node table in the database.
Example:
Please see db_get_indep_nodes_in_sub_mpc (p. 1159) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
216
Function Descriptions

8.2 MPCs

db_get_next_mpc_id ( next_id )

Description:
Return the next available unused MPC id.
Input:
None.
Output:
INTEGER next_id The MPC id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000004 Duplicate entry exists in table.
External Dependencies and Side Effects:
Accesses records in the mpc table in the database.
Example:
Please see db_get_next_mpc_id (p. 1166) in the MSC.Acumen, Volume 2: Code Examples.

fem_get_mpc_assoc_nodes ( nmpc, idmpcs, nnodes, ids )

Description:
Get a list of all the nodes associated with the MPCs in the FEM_LIST.
Input:
INTEGER nmpc Number of MPCs.
INTEGER idmpcs(nmpc) List of MPCs.
Output:
INTEGER nnodes Number of unique nodes associated with MPCs.
INTEGER ids()symbol Pointer to VIRTUAL integer array containing list of
associated Node IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort
-2 No MPCs in list
-3 No associated nodes
Error Conditions:
2001070 Unable to acquire %I% words of virtual memory.
4 Interrupted system call.
Example:
Please see fem_get_mpc_assoc_nodes (p. 1185) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 217
Finite Element Model

fem_get_mpc_ids ( entity_list, nmpc, idmpc, notfound, idnoexist )

Description:
This function will extract an array of MPC id values from a picklist string.
Input:
STRING entity_list[] This value specifies a list of mass property constraints or
MPCs.
Output:
INTEGER nmpc This value returns the number of offsets defined for the
return value idmpc.
INTEGER idmpc(VIRTUAL) This value returns the sorted mass property constraint
or MPC id values.
INTEGER notfound This value returns the number of offsets defined for the
return value idnoexist.
INTEGER idnoexist(VIRTUAL) This value returns the sorted id values for mass
property constraints or MPCs that do not exist.
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 Abort.
-2 No existing MPCs in list.
4 Interrupted system call.
2001070 Unable to acquire %I% words of virtual memory.
Example:
Please see fem_get_mpc_ids (p. 1186) in the MSC.Acumen, Volume 2: Code Examples.

db_count_valid_dofs_f_mpc_type ( mpc_type_id, num_dofs )

Description:
Gets a count of the valid degrees of freedom for a particular MPC types from the database.
Input:
INTEGER mpc_type_id The MPC type id
Output:
INTEGER inum_dofs The number of valid DOFS for this MPC type id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
External Dependencies and Side Effects:
Accesses records in the mpc_term_dof table in the database.
Example:
Please seedb_count_valid_dofs_f_mpc_type (p. 1141) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
218
Function Descriptions

db_validate_mpc ( mpc_id, valid_flag )

Description:
This function determines if an MPC is valid.
Input:
INTEGER mpc_id This value specifies the MPC identifier.
Output:
LOGICAL valid_flag This value returns the status of the MPC. If this value is
set to 1 ( TRUE ), then the MPC is value. If this value is
set to 0 ( FALSE ) then the MPC is invalid.
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.
External Dependencies and Side Effects:
Accesses records in the mpc, valid_mpc_type, control_info and analysis_code tables in the
database.
Remarks:
An MPC is valid if its type and associated degrees of freedom are valid for the current analysis
code and analysis type preferences.
Example:
Please see db_validate_mpc (p. 1179) in the MSC.Acumen, Volume 2: Code Examples.

db_count_valid_mpc_types ( numtypes )

Description:
Gets a count of the valid MPC type for the default analysis type id and analysis code id from
the database.
Input:
None.
Output:
INTEGER numtypes The number of valid MPC type ids.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
External Dependencies and Side Effects:
Accesses records in the valid_mpc_type table in the database.
Example:
Please see db_count_valid_mpc_types (p. 1141) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 219
Finite Element Model

db_get_all_valid_dof_f_mpc_type ( mpc_type_id )

Description:
Get all the valid degrees of freedom for a particular MPC type from the database.
Input:
INTEGER mpc_type_id The MPC type id.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
See example for db_count_valid_dofs_f_mpc_type (p. 217). See also
db_get_all_valid_dof_f_mpc_type (p. 1142) in the MSC.Acumen, Volume 2: Code Examples.

db_get_nxt_valid_dof_f_mpc_type ( mpc_type_id, dof_id, dof_name )

Description:
Get the next valid degree of freedom for a particular MPC type from the database.
Input:
INTEGER mpc_type_id The MPC type id.
Output:
INTEGER dof_id The degree of freedom id.
STRING dof_name[] The degree of freedom name.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000142 The MPC was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_type, mpc and mpc_term_dof tables in the database.
Example:
See example for db_count_valid_dofs_f_mpc_type (p. 217). See also
db_get_nxt_valid_dof_f_mpc_type (p. 1173) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_valid_mpc_type ( )

Description:
Get the next valid (for the current analysis code and analysis type) MPC type id and name
stored in the database.
Input:
None.

Main Index
220
Function Descriptions

Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000142 The MPC was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_type, mpc and mpc_term_dof tables in the database.
Example:
See example for db_count_valid_mpc_types (p. 218). See also db_get_all_valid_mpc_type
(p. 1143) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_valid_mpc_type ( mpc_type_id, mpc_type_name )

Description:
Get the next valid (for the current analysis code and analysis type) MPC type id and name
stored in the database.
Input:
None.
Output:
INTEGER mpc_type_id The MPC type id.
STRING mpc_type_name[] The MPC type name.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000142 The MPC was not found in the database.
External Dependencies and Side Effects:
Accesses records in the valid_mpc_type and mpc_type table in the database.
Example:
See example for db_count_valid_mpc_types (p. 218). See also
db_get_next_valid_mpc_type (p. 1168) in the MSC.Acumen, Volume 2: Code Examples.

db_get_dep_nodes_in_sub_mpc ( mpc_id, sub_mpc_id, mxnode, nnode, nid )

Description:
This function returns a list of dependent nodes which refer to the specified sub-MPC.
Input:
INTEGER mpc_id This value specifies the mass property constraint or
MPC id for which the information is being requested.
INTEGER sub_mpc_id This value specifies the sub-mass property constraint or
MPC id for which the information is being requested.

Main Index
CHAPTER 8 221
Finite Element Model

INTEGER mxnode This value specifies the maximum number of nodes


which may be returned for the sub-MPC. This value
should be less than or equal to the number of offsets
defined for the return value nid.
Output:
INTEGER nnode This value returns the number of nodes using the sub-
mass property constraint or MPC.
INTEGER nid() This value returns the id values of the nodes for each
sub-mass property constraint or MPC. The number of
offsets allocated for this array should be less than or
equal to the input value mxnode.
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:
13000142 The MPC was not found in the database.
13000143 The sub-MPC was not found in the database.
13000150 The list of nodes for one or more of the MPCs is longer than MAXNODE.
External Dependencies and Side Effects:
Accesses records in the mpc_term_node table in the database.
Example:
Please see db_get_dep_nodes_in_sub_mpc (p. 1144) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_dof_id ( dof_name, dof_id )

Description:
Get the degree of freedom id from its degree of freedom name.
Input:
STRING dof_name[] The degree of freedom name.
Output:
INTEGER dof_id The degree of freedom id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000140 The DOF ID was not found in the database
External Dependencies and Side Effects:
Accesses records in the degrees_of_freedom table in the database.
Example:
Please seedb_get_dof_id (p. 1146) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
222
Function Descriptions

db_get_dof_name ( dof_id, dof_name )

Description:
Get the degree of freedom name from its degree of freedom id.
Input:
INTEGER dof_id The degree of freedom id.
Output:
INTEGER dof_name The degree of freedom name.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000140 The DOF ID was not found in the database
External Dependencies and Side Effects:
Accesses records in the degrees_of_freedom table in the database.
Example:
Please see db_get_dof_name (p. 1146) in the MSC.Acumen, Volume 2: Code Examples.

db_get_mpc_type_id ( mpc_type_name, mpc_type_id )

Description:
Get the MPC type id from its MPC type name.
Input:
STRING mpc_type_name[] The MPC type name.
Output:
INTEGER mpc_type_id The MPC type id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000152 The MPC type ID was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_type table in the database.
Example:
Please see db_get_mpc_type_id (p. 1164) in the MSC.Acumen, Volume 2: Code Examples.

db_get_mpc_type_name ( mpc_type_id, mpc_type_name )

Description:
Get the MPC type name from its MPC type id.
Input:
INTEGER mpc_type_id The MPC type id.

Main Index
CHAPTER 8 223
Finite Element Model

Output:
STRING mpc_type_name[] The MPC type id.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000152 The MPC type ID was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_type table in the database.
Example:
Please see db_get_mpc_type_name (p. 1165) in the MSC.Acumen, Volume 2: Code Examples.

db_get_valid_mpc_ids_in_group ( gid, nmpc, numval, mpcid )

Description:
Returns a list of ids for all valid MPCs in a group. A MPC is valid if it’s type and associated
degrees of freedom are valid for the current analysis code and analysis type preferences.
Input:
INTEGER gid The group id.
INTEGER nmpc The number of valid MPCs to be returned.
Output:
INTEGER numval The actual number of valid MPCs.
INTEGER mpcid() The MPC ids.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000008 Group not found.
13000156 There are more than NMPC valid MPCs in the database.
External Dependencies and Side Effects:
Accesses records in the mpc, valid_mpc_type, control_info and analysis_code tables in the
database.
Example:
Please see db_get_valid_mpc_ids_in_group (p. 1175) in the MSC.Acumen, Volume 2: Code
Examples.

fem_get_mpc_assoc_groups ( nmpc, idmpcs, ngroups, assoc_group_ids )

Description:
Get a list of all the groups associated with the MPCs in the FEM_LIST.
Input:
INTEGER nmpc Number of MPCs.
INTEGER idmpcs List of MPCs.
Output:
INTEGER ngroups() Number of unique groups associated with MPCs.
Main Index
224
Function Descriptions

INTEGER assoc_group_ids Pointer to VIRTUAL integer array containing list of


associated group IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort.
-2 No MPCs in list.
-3 No associated groups.
Example:
Please see fem_get_mpc_assoc_groups (p. 1184) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 8 225
Finite Element Model

8.3 Nodes

db_get_nodal_association ( nnode, nid, gid, gtype )

Description:
This function will retrieve the geometry type and ID that is associated with each node that is
specified.
Input:
INTEGER nnode The number of node IDs being supplied.
INTEGER nid() The array of nodes IDs to be looked up.
Output:
INTEGER gid() The array of geometry IDs (one for each node ID).
INTEGER gtype() The array of geometry types (one for each node ID).
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Example:
Please see db_get_nodal_association (p. 1169) in the MSC.Acumen, Volume 2: Code Examples.

db_get_node ( id, xyz )

Description:
Given a node ID, this function will look up the specified node and return the coordinates of that
node to the caller.
Input:
INTEGER id The node ID to be looked up.
Output:
REAL xyz(3) An array of 3 floating point values which are the
coordinates of the specified node.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
SUCCESS This function completed successfully.
13000020 Node not found.
Example:
Please see db_get_node (p. 1170) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
226
Function Descriptions

db_get_nodes_by_lbc ( lbc_id, max_node, nnode, nid )

Description:
Gets all nodes associated with an specified lbc.
Input:
INTEGER lbc_id Id of the lbc to which the requested nodes are associated.
INTEGER max_node Maximum number of node ids for which storage has been
allocated by the calling routine.
Output:
INTEGER nnode Number of nodes found associated to the specified lbc.
INTEGER nid() Ids of the nodes associated to the specified lbc.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000048 Maximum node count exceeded.
External Dependencies and Side Effects:
None.
Example:
Please see db_get_nodes_by_lbc (p. 1170) in the MSC.Acumen, Volume 2: Code Examples.

db_get_nodes_for_geometry ( geo_type, geo_id, parent_type, parent_id, nnode, nids,


ncoord )

Description:
This function will retrieve information about all of the nodes associated with a given piece of
geometry.
Input:
INTEGER geo_type The type of geometry in question.
INTEGER geo_id The id of the geometry in question.
INTEGER parent_type The type of highest order geometry that the “geo-type” is
part of.
INTEGER parent_id The id of the highest order geometry that the “geo-type” is
part of.
Output:
INTEGER nnode The number of nodes found.
INTEGER nids() The IDs of all of the nodes found.
REAL ncoord() The model space coordinates of each node (x, y, z).
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
SUCCESS This function completed successfully.
Example:
Please see db_get_nodes_for_geometry (p. 1171) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 8 227
Finite Element Model

db_get_next_node_id ( id )

Description:
This function will return the next available node ID to the caller. This can be used to create
another node.
Input:
None.
Output:
INTEGER id The next available node ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
SUCCESS This function completed successfully.
Example:
Please see db_get_next_node_id (p. 1167) in the MSC.Acumen, Volume 2: Code Examples.

db_get_min_node_id ( id )

Description:
This function will find the smallest node ID currently in use.
Input:
None.
Output:
INTEGER id The smallest node ID currently in use.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
SUCCESS This function completed successfully.
Example:
Please see db_get_min_node_id (p. 1163) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_node_id ( id )

Description:
This function will find the largest node ID currently in use.
Input:
None.
Output:
INTEGER id The largest node ID currently in use.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Main Index
228
Function Descriptions

Example:
See example for db_get_min_node_id (p. 227). See also db_get_max_node_id (p. 1161) in the
MSC.Acumen, Volume 2: Code Examples.

fem_get_node_assoc_groups ( nnode, idnodes, ngroups, ids )

Description:
Get a list of all the groups associated with the nodes in the FEM_LIST.
Input:
INTEGER nnode Number of nodes.
INTEGER idnodes() List of nodes.
Output:
INTEGER ngroups Number of unique groups associated with nodes.
INTEGER ids()symbol Pointer to VIRTUAL integer array containing list of
associated group IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort
-2 No NODEs in list
-3 No associated groups
Error Conditions:
2001070 Unable to acquire %I% words of virtual memory.
4 Interrupted system call.
Example:
Please see fem_get_node_assoc_groups (p. 1187) in the MSC.Acumen, Volume 2: Code
Examples.

fem_get_node_ids ( entity_lst, nnode, idnode, notfound, idnoexist )

Description:
This function will sort a list of node id values, returning a list of existing nodes and a list of
nodes that do not exist.
Input:
STRING entity_list[] This value specifies a list of nodes.
Output:
INTEGER nnode This value returns the number of node id values in the
return value idnode.
INTEGER idnode(VIRTUAL) This value returns an array of node id values that refer
to nodes that do exist.
INTEGER notfound This value returns the number of node id values in the
return value idnoexist.
INTEGER idnoexist(VIRTUAL) This value returns an array of node id values that refer
to nodes that do not exist.
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.
Main Index
CHAPTER 8 229
Finite Element Model

Error Conditions:
-1 Abort.
-2 No existing nodes in list
4 Interrupted system call.
2001070 Unable to acquire %I% words of virtual memory.
16000102 Database error during list processing: Node not found
Example:
See example for fem_get_node_assoc_groups (p. 228). See also fem_get_node_ids
(p. 1188) in the MSC.Acumen, Volume 2: Code Examples.

db_verify_nodes_exist ( nnode, nid, exist )

Description:
This function verifies that a set of node id values exist in the database.
Input:
INTEGER nnode This value specifies the number of node values listed in
the input value nid.
INTEGER nid(nnode) This value specifies the node ids to be checked.
Output:
INTEGER exist(nnode) This value specifies an array of integers used to return a
value of 0 if the id value at an offset into the input value
nid exists and a non-zero value if the id does not exist.
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:
13000020 Node not found.
Example:
Please see db_verify_nodes_exist (p. 1180) in the MSC.Acumen, Volume 2: Code Examples.

db_count_unref_nodes ( nbr_unref_node )

Description:
This function will count all of the nodes in the database which are not referenced by any of the
elements.
Input:
None.
Output:
INTEGER nbr_unref_node The number of unreferenced nodes in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.

Main Index
230
Function Descriptions

Error Conditions:
SUCCESS This function completed successfully.
13000020 Node not found.
Example:
Please see db_count_unref_nodes (p. 1140) in the MSC.Acumen, Volume 2: Code Examples.

db_get_unreferenced_node_ids ( nnode, nunref, nid )

Description:
This function will return the IDs and the count of all of the nodes in the database that are not
referenced by any elements or mpcs. If the specified count is less than the number of nodes in
the database, output will stop when the requested count has been reached. The order of the IDs
returned is not determinate.
Input:
INTEGER nnode The maximum number of nodes that can be returned.
Output:
INTEGER nunref The number of unreferenced nodes found.
INTEGER nid() The array of IDs of the unreferenced nodes.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
SUCCESS This function completed successfully.
13000048 Maximum node count exceeded.
Example:
Please see db_get_unreferenced_node_ids (p. 1175) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 8 231
Finite Element Model

8.4 Mesh

fem_create_mesh_sol_3 (<mesher_pick>,<flag>,<solid_list>,<num_val>,<g_leng>,
<elem_topo>,<node_list>,<elem_list>,<a_coord_frame>,
<r_coord_frame>,<num_nodes>,<num_elems>,
<nodes_created>, < elems_created> )

Description:
This function creates a finite element mesh on solids and returns the FEM data for the solid. It
returns an integer status of zero on successful completion.
Input:
STRING mesher_pick [ ] Mesher to be used: "IsoMesh" or "Tetmesh".
INTEGER flag Integer to specify use of preview. Used only with
“Tetmesh”.
STRING solid_list[ ] List of solids to be meshed.
INTEGER num_val Number of float values.
REAL g_leng Global element edge length.
STRING elem_topo[ ] Element topology.
STRING node_list[ ] List of output node ids.
STRING elem_list[ ] List of output element ids.
STRING a_coord_frame[ ] Analysis coordinate frame id.
STRING r_coord_frame[ ] Reference coordinate frame id.
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.
INTEGER <Return Value> 0 for success, 1 for error.
Error Conditions:
None.
Example:
Please see fem_create_mesh_sol_3 (p. 1181) in the MSC.Acumen, Volume 2: Code Examples.

fem_seed_display_dir_arrows ( arrow_segment )

Description:
Display direction arrows on all visible curves.
Input:
INTEGER arrow_segment Graphics manager segment id for arrows.
Output:
INTEGER <Return Value> Integer indicating the success or failure of the routine.

Main Index
232
Function Descriptions

Error Conditions:
2001060 List overflow in %A%. Call customer support.
4 Interrupted system call.
Example:
Please see fem_seed_display_dir_arrows (p. 1189) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_mesh_params ( wmesh, mshcyc, relaxm, tolmsh, dgmesh, itrngl )

Description:
Gets the definition of an edge mesh from the database.
Input:
None.
Output:
REAL wmesh The unique internal line wmesh identifying the mesh to be
retrieved from the database.
INTEGER mshcyc The number of elements on the edge.
REAL relaxm The mesh relaxm of the edge.
REAL tolmsh The tolmsh of the edge.
INTEGER dgmesh The number of meshes on the edge.
INTEGER itrngl True if the edge has been itrngled.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Accesses one record in the “line” table in the database.
Example:
Please see db_get_mesh_params (p. 1162) in the MSC.Acumen, Volume 2: Code Examples.

move_mesh ( <surface_id_2 >, <surface_id_1>, <user_tolerance >)

Description:
The function moves the finite element entities – vertex nodes, edge nodes and the face nodes
with the elements from one surface to another. The size of the two surfaces should be equal and
the user tolerance should be at least equal to the normal distance between the two surfaces. It
returns an integer status of 0 on success and 1 on failure.
Input:
INTEGER surface_id_2 The id of the surface to which the mesh is to be moved.
INTEGER surface_id_1 The id of the surface from which the mesh is to be moved.
REAL user_tolerance The value of the user tolerance specified by the user.
Output:
INTEGER <Return Value> 0 for success and 1 for failure.

Main Index
CHAPTER 8 233
Finite Element Model

Error Conditions:
None.
Example:
Please see move_mesh (p. 1205) in the MSC.Acumen, Volume 2: Code Examples.

move_mesh_1 ( <surface_name_ 2 >, <surface_name _1>, <user_tolerance >)

Description:
The function moves the finite element entities – vertex nodes, edge nodes and the face nodes
with the elements from one surface to another. The size of the two surfaces should be equal and
the user tolerance should be at least equal to the normal distance between the two surfaces. It
returns an integer status of 0 on success and 1 on failure.
Input:
STRING surface_name_2[] The name of the surface to which the mesh is to be moved.
STRING surface_name_1[] The name of the surface from which the mesh is to be
moved.
REAL user_tolerance The value of the user tolerance specified by the user.
Output:
INTEGER <Return Value> 0 for success and 1 for failure.
Error Conditions:
None.
Example:
Please see move_mesh_1 (p. 1207) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
234
Function Descriptions

8.5 Element/Node Relations

db_count_elems_using_node ( nnode, nid, nelem, fflag )

Description:
This function will count the number of elements associated with the specified array of nodes in
the memory database.
Input:
INTEGER nnode The number of node ids in the node id array.
INTEGER nid() The array of node IDs to be looked for.
Output:
INTEGER nelem() The number of elements associated with this node.
INTEGER fflag A flag indicating if any nodes were not found.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000020 Node not found.
SUCCESS if the node exists and is associated with some elements.
Example:
Please see db_count_elems_using_node (p. 1136) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_mpcs_using_node ( nnode, nid, nmpc, fflag )

Description:
This function will count the number of MPCs associated with a group of nodes.
Input:
INTEGER nnode This value specifies the number of node id values listed in the
input value nid.
INTEGER nid(nnode) This value specifies the id values of the nodes for which
information is being requested.
Output:
INTEGER nmpc(nnode) This value returns the number of MPCs using each node.
INTEGER fflag This value returns a non zero value if one or more of the
nodes listed in the input value nid are not found.
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:
13000020 Node not found.
External Dependencies and Side Effects:
Accesses records in the mpc_term_node table in the database.
Example:
Please see db_count_mpcs_using_node (p. 1137) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 8 235
Finite Element Model

db_count_nodes_in_mpc ( nmpc, mpcid, nnode, fflag )

Description:
Returns the total number of nodes in a specified MPC.
Input:
INTEGER nmpc The number of MPCs for which the information is being
requested.
INTEGER mpcid() The ids of the MPCs for which the information is being
requested.
Output:
INTEGER nnode() The number of nodes in each MPC.
INTEGER fflag An error flag indicating that one or more of the MPCs was
not found.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000142 The MPC was not found in the database.
External Dependencies and Side Effects:
Accesses records in the mpc_term_node table in the database.
Example:
Please see db_count_nodes_in_mpc (p. 1139) in the MSC.Acumen, Volume 2: Code Examples.

db_get_elems_using_nodes ( nnode, nid, mxelem, nelem, eid )

Description:
This function will retrieve the list of elements associated with the specified array of nodes in the
memory database.
Input:
INTEGER nnode The number of node IDs in the node ID array.
INTEGER nid() The array of node IDs to be looked for.
INTEGER mxelem The maximum number of elements allowed per node.
Output:
INTEGER nelem() The number of elements associated with this node.
INTEGER eid() The IDs of all elements referencing this node.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000020 Node not found.
SUCCESS If the node exists and is associated with some elements.
Example:
See example for db_count_elems_using_node (p. 234). See also
db_get_elems_using_nodes (p. 1157) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
236
Function Descriptions

db_get_elem_nodes ( eid, numnode, nid )

Description:
This function will retrieve all of the node IDs for a specified element. The nodes will be
returned in node position order.
Input:
INTEGER eid The element ID to be looked up.
Output:
INTEGER numnode The number of nodes associated with this element.
INTEGER nid() The array of node IDs associated with this element.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000020 Node not found.
SUCCESS If some nodes exist for this element.
Example:
Please see db_get_elem_nodes (p. 1150) in the MSC.Acumen, Volume 2: Code Examples.

db_get_nodes_in_mpc ( nmpc, mpcid, mxnode, nnode, nid )

Description:
Returns a list of all nodes which refer to the specified MPC.
Input:
INTEGER nmpc The number of MPCs ids for which the information is being
requested.
INTEGER mpcid() The ids of the MPCs for which the information is being
requested.
INTEGER mxnode The maximum number of nodes which may be returned per
MPC.
Output:
INTEGER nnode() The number of nodes using each MPC.
INTEGER nid() The ids of the nodes for each MPC.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000142 The MPC was not found in the database.
13000150 The list of nodes for one or more of the MPCs is longer than MAXNODE.
External Dependencies and Side Effects:
Accesses records in the mpc_term_node table in the database.
Example:
See example for db_count_nodes_in_mpc (p. 235). See also db_get_nodes_in_mpc (p. 1172)
in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 237
Finite Element Model

list_get_node_ass_el_edge (elem_edge_list, node_list)

Description:
This function gets the nodes associated to the specified element edges.
Input:
STRING elem_edge_list[] List of element edges.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_el_edge (p. 1194) in the MSC.Acumen, Volume 2: Code Examples.

list_get_node_ass_el_face (elem_face_list, node_list)

Description:
This function gets the nodes associated to the specified element faces.
Input:
STRING elem_face_list[] List of element faces.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_el_face (p. 1195) in the MSC.Acumen, Volume 2: Code Examples.

list_get_node_ass_elem (elem_list, node_list)

Description:
This function gets the nodes associated to the specified element.
Input:
STRING elem_list[] List of elements.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_elem (p. 1196) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
238
Function Descriptions

list_get_node_ass_geo (ent_list, node_list)

Description:
This function gets the nodes associated to the specified geometry entities.
Input:
STRING ent_list[] List of geometry entities.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_geo (p. 1197) in the MSC.Acumen, Volume 2: Code Examples.

list_get_node_ass_group (num, group_list, node_list)

Description:
This function gets the nodes associated to the specified groups.
Input:
INTEGER num Number of groups.
STRING ARRAY group_list[]() Array of group names.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_group (p. 1199) in the MSC.Acumen, Volume 2: Code Examples.

list_get_node_ass_mpc (mpc_list, node_list)

Description:
This function gets the nodes associated to the specified mpcs.
Input:
STRING mpc_list[] List of mpcs.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_ass_mpc (p. 1200) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 8 239
Finite Element Model

list_get_node_att_fringe (val, act, tol, group, node_list)

Description:
This function gets the nodes associated with a specified fringe range.
Input:
REAL val(2) Upper & lower fringe value.
STRING act[80] Method name.
REAL tol Tolerance of xyz or rpt if applicable.
STRING group[32] Group name which has the fringe table.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_att_fringe (p. 1202) in the MSC.Acumen, Volume 2: Code Examples.

list_get_node_att_value (val_xyz, val_log, act, tol, coord, group, node_list)

Description:
This function gets the nodes associated with a specified coordinate value.
Input:
REAL ARRAY val_xyz(3) Value of xyz or rpt coordinate.
LOGICAL ARRAY val_log(3) Logical value specifying active coords.
STRING ARRAY act[80](3) Method name.
REAL ARRAY tol(3) Tolerance of xyz or rpt if applicable.
STRING coord[32] Coordinate frame
LOGICAL group Logical value for group.
Output:
STRING node_list[VIRTUAL] List of nodes.
INTEGER <Return Value> 0 for success.
Error Condition:
None
Example:
Please see list_get_node_att_value (p. 1204) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
240
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Load Cases
9
■ General

Main Index
242
Function Descriptions

9.1 General

db_activate_load_case (name)

Description:
Activates the specified load case in the model.
Input:
STRING name[80] Name of the load case to be activated.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000002 Unrecoverable database error.
13000052 Load Case Not Found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Updates one record in the “load case” table in the database.
Example:
Please see db_activate_load_case (p. 1210) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_load_case

Description:
Deletes a load case entry from the database
Input:
STRING name[80] Name of the load case to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000002 Unrecoverable database error.
13000052 Load Case Not Found.
13000076 Load case active
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Deletes one record in the “load case” table in the database.
Example:
Please see db_delete_load_case (p. 1211) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 9 243
Load Cases

db_find_load_case_id ( jbname, lc_seqno, lc_id )

Description:
Gets all load case ids from the database in one structure.
Input:
STRING jbname[] The jobname used for the desired run.
INTEGER lc_seqno The load case sequence number for the desired load case.
Output:
INTEGER lc_id The id of the desired load case.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000052 Load Case Not Found.
External Dependencies and Side Effects:
Accesses the “load_case” table in the database and retrieves an id of a specified jobname/load
case sequence number.
Example:
Please see db_find_load_case_id (p. 1212) in the MSC.Acumen, Volume 2: Code Examples.

db_count_load_cases ( load_case_count )

Description:
This function returns the number of load cases defined in the database.
Input:
none
Output:
INTEGER load_case_count This value returns the number of load cases defined in the
database.
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.
Example:
None.

db_get_all_load_case_names ( )

Description:
Gets all load cases from the database.
Input:
None

Main Index
244
Function Descriptions

Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Example:
None.

db_get_all_load_cases ( )

Description:
This function will set a cursor to the start of a list of load cases.
Input:
None
Output:
None
Remarks:
This function must be called before the db_get_next_load_case() function can be called.
Example:
None.

db_get_next_load_case ( name, id, type, description, num_lbc, lbc, dyn_load, map,


priority )

Description:
This function will get the next load case from the database.
Input:
None
Output:
STRING name[80] This value returns the name of the load case retrieved.
INTEGER id This value returns the load case id.
INTEGER type This value returns the load case type.
STRING description[256] This value returns the description of the load case.
INTEGER num_lbc This value returns the number of load and boundary
conditions associated with the load case.
INTEGER lbc[num_lbc] This value returns the ids of the loads and boundary
conditions associated with this load case.
INTEGER dyn_load This value returns the name of the dynamic load case
used as a basis for this load case. This value is valid only
if the load case is a static load case created from a
dynamic load case.
REAL map This value returns a map variable.
INTEGER priority This value returns the priority assigned to the load case.
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.
Main Index
CHAPTER 9 245
Load Cases

Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000085 Cursor not open.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses all records in the “load case” table in the database.
Remarks:
The PCL function db_get_all_load_cases (p. 244) must be called at least once to establish the
list of posted coordinate frame id values and to set the cursor to point to the start of the list.
Calling the db_get_next_posted_coord (p. 194) function in a loop will then allow the list
entries to be retrieved.
Example:
None.

db_get_lc_id_given_job_seq ( ac_id, jobname, lcseq, lcid )

Description:
Gets all load case ids from the database in one structure.
Input:
INTEGER ac_id Analysis code id for the requested jobname.
STRING jobname[] The jobname used for the desired run.
INTEGER lcseq The load case sequence number for the desired load case.
Output:
INTEGER lcid The id of the desired load case.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000052 Load Case Not Found
External Dependencies and Side Effects:
Accesses the “load_case” table in the database and retrieves an id of a specified jobname/load
case sequence number.
Example:
Please see db_get_lc_id_given_job_seq (p. 1213) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
246
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Element Properties
10
■ General

Main Index
248
Function Descriptions

10.1 General

bl_create_std_beam_section (<shape>,<name>,<ndim>,<data_types>,<rvalues>,
<field_ids>,<id>)
Description:
This function will create a standard beam section.
Input:
STRING shape [] Standard shape of the beam section.
STRING name [] Name for the beam section created.
INTEGER ndim Number of dimension required for corresponding beam
section shape.
INTEGER data_types() Type of data for each dimension.
REAL rvalues() Dimension values for beam section
INTEGER field_ids() Field ids for beam section.
Output:
INTEGER id ID of beam section
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
NONE
Example:
Please see bl_create_std_beam_section (p. 1218) in the MSC.Acumen, Volume 2: Code
Examples.

bl_get_std_beam_section_data (<id>,<ndim>,<data_types>,<rvalues>,<field_ids>)

Description:
This function will get standard beam section data.
Input:
INTEGER id [] Id of the beam section for which data is required.
INTEGER ndim Number of dimension required for beam section shape.
Output:
INTEGER data_types() Type of data for each dimension.
REAL rvalues() Dimension values for beam section.
INTEGER field_ids() Field ids for beam section.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
NONE
Example:
Please see bl_get_std_beam_section_data (p. 1219) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 10 249
Element Properties

bl_modify_std_beam_section (<new_shape>,<old_name>,<new_name>,<ndim>,<da
ta_types>,<rvalues>,<field_ids>,<id>)
Description:
This function will modify the existing standard beam section.
Input:
STRING new_shape [] Standard shape of the beam section.
STRING old_name [] Name of the existing beam section .
STRING new_name[] Name for the modified beam section.
INTEGER ndim Number of dimension required for modified beam section
shape.
INTEGER data_types() Type of data for each dimension.
REAL rvalues() Dimension values for modified beam section.
INTEGER field_ids() Field ids for modified beam section.
Output:
INTEGER id ID of the modified beam section.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid shape name
Example:
Please see bl_modify_std_beam_section (p. 1221) in the MSC.Acumen, Volume 2: Code
Examples.

blcomputeprincaxespoints (<alpha>,<npoints>,<points>,<centroid>,<princ_axis1>,
<princ_axis2>)
Description:
This function calculates principal axes vectors for the beam section from the principal angle
alpha. It also scales the axes based on the beam section points.
Input:
REAL alpha Principal angle for the beam section.
INTEGER npoints Number of points for beam section shape.
REAL points() Coordinates for each point
REAL centroid(2) Coordinates for centroid of beam section.
Output:
REAL princ_axis1(2) First principal axis
REAL princ_axis2(2) Second principal axis.
INTEGER <Return Value> Returns 0 for success.
Error Conditions:
NONE
Example:
Please see blcomputeprincaxespoints (p. 1223) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
250
Function Descriptions

blgetalpha (<entype>,<prop>,<alpha>)

Description:
This function calculates principal angle for the beam section from the given properties of a
beam section.
Input:
INTEGER entype Type of beam secion (1=Basic, 2=Advanced)
REAL prop() Properties of beam section.
Output:
REAL alpha Principal angle for the beam section.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid entype.
2 Extremely small Izz or Iyy in property definition.
Example:
Please see blgetalpha (p. 1224) in the MSC.Acumen, Volume 2: Code Examples.

blgetbuttonicon (<shape>,<cdo>)

Description:
This function gets the file system location of the button icon bitmap for a shape.
Input:
STRING shape Shape of the beam section.
Output:
STRING cdo[] File system location of the button icon bitmap for a shape.
INTEGER <Return Value> Returns 0 for success,otherwise returns the error code.
Error Conditions:
1 Invalid shape name
Example:
Please see blgetbuttonicon (p. 1225) in the MSC.Acumen, Volume 2: Code Examples.

blgetcenters (<enttype>,<shape>,<dim>,<prop>,<centroid>,<shear>)

Description:
This function calculates the centroid and sheare centre of the beam section.
Input:
INTEGER enttype Type of beam secion (1=Basic, 2=Advanced)
STRING shape Shape of the beam section.
REAL dim() Dimensions for the beam section shape.
REAL prop() Properties of beam section.
Output:
REAL centroid() Centroid of the beam section.
REAL shear() Shear center of the beam section.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid area in property definition
Main Index
CHAPTER 10 251
Element Properties

Example:
Please see blgetcenters (p. 1226) in the MSC.Acumen, Volume 2: Code Examples.

blgetdimfieldid (<bsid>,<dim_loc>,<field_id>)

Description:
This function will get the field id at specified dimension location.
Input:
INTEGER bsid Beam section ID.
STRING dim_loc Dimension location.
Output:
INTEGER field_id Field id at specified dimension location.
INTEGER <Return Value> Returns 0 for success.
Error Conditions:
NONE
Example:
Please see blgetdimfieldid (p. 1227) in the MSC.Acumen, Volume 2: Code Examples.

blgetdimvalue (<bsid>,<dim_loc>,<value>)

Description:
This function will get the value at the specified dimension location.
Input:
INTEGER bsid Beam section ID.
STRING dim_loc Dimension location.
Output:
REAL value Value at specified dimension location.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
NONE
Example:
Please see blgetdimvalue (p. 1228) in the MSC.Acumen, Volume 2: Code Examples.

blgetlabelicon (<shape>,<cdo>)

Description:
This function gets the file system location of the label icon bitmap for a shape.
Input:
STRING shape Shape of the beam section.
Output:
STRING cdo[] File system location of the label icon bitmap for a shape.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid shape name.

Main Index
252
Function Descriptions

Example:
Please see blgetlabelicon (p. 1230) in the MSC.Acumen, Volume 2: Code Examples.

blgetlabels (<shape>,<cdo>)

Description:
This function gets the dimension labels for a given shape.
Input:
STRING shape[] Shape of the beam section.
Output:
STRING ARRAY cdo[]() String array of dimension labels for beam section shape.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid shape name.
Example:
Please see blgetlabels (p. 1231) in the MSC.Acumen, Volume 2: Code Examples.

blgetnumdimension (<shape>)

Description:
This function gets the number of dimensions required to define a given shape completely.
Input:
STRING shape[] Shape of the beam section.
Output:
INTEGER ndim No. of dimensions required for beam section shape.
<Return Value>
Error Conditions:
1 Invalid shape name.
Example:
Please see blgetnumdimension (p. 1231) in the MSC.Acumen, Volume 2: Code Examples.

blgetnumplotpoints (<shape>,<chord_tol>,<npoints>,<nloops>)

Description:
This function will get the number of total plot points and loops used to draw a given shape.
Input:
STRING shape[] Beam section shape.
REAL chord_tol Chordal tolerance for rod and tube.
Output:
INTEGER npoints Number of total plot points.
INTEGER nloops Number of loops.
INTEGER <Return Value> Returns 0 for success, othewise returns the error code.
Error Conditions:
1 Invalid shape name

Main Index
CHAPTER 10 253
Element Properties

Example:
Please see blgetnumplotpoints (p. 1232) in the MSC.Acumen, Volume 2: Code Examples.

blgetnumplotpointsbyid (<bsid>,<chord_tol>,<npoints>,<nloops>)

Description:
This function will get the number of total plot points and loops used to draw a shape of beam
section.
Input:
INTEGER bsid ID of beam section.
REAL chord_tol Chordal tolerance for rod and tube.
Output:
INTEGER npoints Number of total plot points.
INTEGER nloops Number of loops.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid shape name
Example:
Please see blgetnumplotpointsbyid (p. 1233) in the MSC.Acumen, Volume 2: Code Examples.

blgetnumtypeinfo (<nsect>,<ndimax>)

Description:
This function will get the number of section types available in MSC.Patran and the maximum
number of dimensions for any section.
Input:

Output:
INTEGER nsect Number of different section types.
INTEGER ndimax Maximum number of dimensions for any section.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
NONE
Example:
Please see blgetnumtypeinfo (p. 1235) in the MSC.Acumen, Volume 2: Code Examples.

blgetperim (<shape>,<dim>,<perim>)

Description:
This function calculates the exterior perimeter of a beam section.
Input:
STRING shape[] Beam section shape.
REAL ARRAY dim() Array of dimensions of the section.
Output:
REAL perim Perimeter of the beam section.
Main Index
254
Function Descriptions

INTEGER <Return Value> Returns 0 for success, otherwise returns the error
code.
Error Conditions:
1 Invalid shape name
Example;
Please see blgetperim (p. 1235) in the MSC.Acumen, Volume 2: Code Examples.

blgetplotpoints (<shape>,<dim>,<npoints>,<nloops>,<points>,<nploops>)

Description:
This function gets the coordinates of plot points and the number of plot points on each loop for
given section shape.
Input:
STRING shape[] Beam section shape.
REAL ARRAY dim() Array of dimensions of the section.
INTEGER npoints Number of total plot points.
INTEGER nloops Number of loops.
Output:
REAL ARRAY points() Coordinates of plot points for the section.
INTEGER ARRAY nploops() Array of number of plot points on each loop.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid shape name, npoints or nloops
Example:
Please see blgetplotpoints (p. 1236) in the MSC.Acumen, Volume 2: Code Examples.

blgetplotpointsbyid (<bsid>,<bmtype>,<enttype>,<entid>,<nparloc>,<nrmflg>,
<npoints>,<nloops>,<points>,<nploop>,<vec1s>,<vec2s>,<xyz>)
Description:
This function gets the coordinates of plot points and the number of plot points on each loop for
given beam section id, entity type, entity id and entity parametric location. This function calls
blgetplotpointsbyid2, and hardwires the displaymode argument in blgetplotpointsbyid2 to 1
(flag to process offsets).
Input:
INTEGER bsid Beam section id stored in db or region id for Abaqus beams.
INTEGER bmtype Beam type 1 = Bar , 2 = Beam, 3 for aero bodies. For Abaqus
beams:
1001 = Box section
1002 = Circular section
1003 = I section
1004 = L section
1005 = Pipe section
1006 = Rectangular section
1007 = Hex section
1008 = Trapazoidal section
1009 = Arbitrary section
Main Index
CHAPTER 10 255
Element Properties

INTEGER enttype Entity type, currently only type 124 is supported.


INTEGER entid Entity id
INTEGER nparloc Number of parametric locations.
REAL parloc(nparloc) One dimensional parametric location on entity.
INTEGER nrmflg If =1, normal is calculated.
INTEGER npoints Number of total plot points for one parametric location.
INTEGER nloop Number of loops for one parametric location.
Output:
REAL points(npoints*nparl Coordinates of plot points for the section. One set of points
oc,nparloc) per parametric location.
INTEGER nploops(nloop) Array of number of plot points on each loop for one
parametric location.
REAL vec1s(nparloc,3) Array of nparloc axis 1 orientation vectors.
REAL vec2s(nparloc,3) Array of nparloc axis 2 orientation vectors.
REAL xyz(nparloc*3) Array of evaluated xyz coordinates at the input parametric
locations.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message (Ch 11) for information on any error values returned by this function.
Example:
Please see blgetplotpointsbyid2 (p. 1240) in the MSC.Acumen, Volume 2: Code Examples.

blgetplotpointsbyid2 (<bsid>,<bmtype>,<enttype>,<entid>,<nparloc>,<nrmflg>,
<npoints>,<nloops>,<displaymode>,<points>,<nploop>,
<vec1s>,<vec2s>,<xyz>)
Description:
This function gets the coordinates of plot points and the number of plot points on each loop for
given beam section id, entity type, entity id and entity parametric location.
Input:
INTEGER bsid Beam section id stored in db or region id for Abaqus beams.
INTEGER bmtype Beam type 1 = Bar , 2 = Beam, 3 for aero bodies. For Abaqus
beams:
1001 = Box section
1002 = Circular section
1003 = I section
1004 = L section
1005 = Pipe section
1006 = Rectangular section
1007 = Hex section
1008 = Trapazoidal section
1009 = Arbitrary section
INTEGER enttype Entity type, currently only type 124 is supported.
INTEGER entid Entity id
INTEGER nparloc Number of parametric locations.
REAL parloc(nparloc) One dimensional parametric locations on entity.
INTEGER nrmflg If =1, calculates normals.
INTEGER npoints Number of total plot points for one parametric location.
Main Index
256
Function Descriptions

INTEGER nloops Number of loops for one parametric location


INTEGER displaymode If beam type = 1 or 2, this flag is whether to process offsets.
0 = do not process
1 = process
If beam type = 3 this flag is whether slender only,
interference only, both or none should display.
0 = None
1 = Slender
2 = Interference
3 = All
Output:
REAL points(npoints*nparl Coordinates of plot points for the section. One set of points
oc,nparloc) perparametric location.
INTEGER nploop(nloop) Array of number of plot points on each loop for one
parametric location.
REAL vec1s(nparloc,3) Array of nparloc axis 1 orientation vectors
REAL vec2s(nparloc,3) Array of nparloc axis 2 orientation vectors
REAL xyz(nparloc*3) Array of evaluated xyz coordinates at the input parametric
locations
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message (Ch 11) for information on any error values returned by this function.
Example:
Please see blgetplotpointsbyid2 (p. 255) in the MSC.Acumen, Volume 1: Function Descriptions.

blgetprop (<enttyp>,<shape>,<dim>,<ndim>,<prop>,<nprop>)

Description:
This function will get the all properties of beam section.
Input:
INTEGER enttyp Beam type (1 = Basic(Bar), 2 = Advanced(Beam))
STRING shape[] Beam section shape. See beam_section_create for valid
beam sections.
REAL dim(ndim) Array of dimensions of the section.
INTEGER ndim Number of dimensions.
Output:
REAL prop() Properties of the beam section.
INTEGER nprop Number of properties
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see blgetprop (p. 1243) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 10 257
Element Properties

blgetproplabels (<enttyp>,<cdo>)

Description:
This function will get the propery labels for given beam entity type.
Input:
INTEGER enttyp Beam type (1 = Basic(Bar), 2 = Advanced(Beam))
Output:
STRING cdo[]() Array of property label strings.
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid Entity type.
Example:
Please see blgetproplabels (p. 1244) in the MSC.Acumen, Volume 2: Code Examples.

blgettypeinfo (<entype>,<shapes>,<ndims>,<nconsts>)

Description:
This function will get the beam shape name, number of dimensions for each beam shape and
the number of dimensional constraints for each beam shape available in the MSC.Patran library.
Input:
INTEGER entype Beam type(1=Basic(Bar), 2=Advanced(Beam))
Output:
STRING shapes[] Array of shape names
INTEGER ndims[] Array of the number of dimensions for each shape
INTEGER nconsts[] Array of the number of dimensional constraints
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
1 Invalid entype
Example:
Please see blgettypeinfo (p. 1245) in the MSC.Acumen, Volume 2: Code Examples.

blmodifybeamdimension (<bsid>,<dimid>,<value>,<fid>)

Description:
This function will modify the beam section dimension.
Input:
INTEGER bsid ID of beam section.
INTEGER dimid Dimension location.
REAL value New dimension value.
INTEGER fid Field id.
Output:
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.

Main Index
258
Function Descriptions

Example:
Please see blmodifybeamdimension (p. 1246) in the MSC.Acumen, Volume 2: Code Examples.

db_create_selected_etype (atid, acid, geopcd, copcd, fopcd, lopcd, etopid, dofsetid,


mlcd, mdcd, etypid)

Description:
Create a selected element type entry in the database.
Input:
INTEGER atid The ID of the analysis type associated to the selected element
type.
INTEGER acid The ID of the analysis code associated to the selected element
type.
INTEGER geopcd The ID of the geometric option code associated with the selected
element type.
INTEGER copcd The ID of the condense option code associated with the selected
element type.
INTEGER fopcd The ID of the formulation option code associated with the
selected element type.
INTEGER lopcd The ID of the laminate option code associated with the selected
element type.
INTEGER etopid The ID of the element topology associated with the selected
element type.
INTEGER dofsetid The ID of the degree of freedom associated with the selected
element type.
INTEGER mlcd The ID of the material linearity code associated with the selected
element type.
INTEGER mdcd The ID of the material directionality code associated with the
selected element type.
INTEGER etypid The ID of the element type associated with the selected element
type.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the routine
failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Creates one record in the “selected_element_type” relation in the database. Verifies all input
fields in their respective tables to verify their existence in the database before creating the entry.
Example:
Please see db_create_selected_etype (p. 1269) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 10 259
Element Properties

db_count_elem_type (acid, atid, etcnt)

Description:
This function will return a count of the number of distinct element types for each element
dimensionality for a specified analysis code and type.
Input:
INTEGER acid This value specifies the analysis code id.
INTEGER atid This value specifies the analysis type id.
Output:
INTEGER etcnt(4) This value returns the count of element types, one for
each element dimensionality.
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.
Example:
Please see db_count_elem_type (p. 1261) in the MSC.Acumen, Volume 2: Code Examples.

db_count_etop_for_a_code ( acid, atid, count )

Description:
This function will return a count of element types for all element topologies for a specific
analysis code and type.
Input:
INTEGER acid This value specifies the analysis code id.
INTEGER atid This value specifies the analysis type id.
Output:
INTEGER count This value returns the count of element types for all element
topologies.
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:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Example:
Please see db_count_etop_for_a_code (p. 1263) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_dof_set_names ( )

Description:
Sets db_get_next_dof_set_names to start at the beginning of a list of dof_set code names and ids
from the database.
Input:
None.

Main Index
260
Function Descriptions

Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “dof_set” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_all_dof_set_names (p. 1277) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_dof_set_names ( name, id )

Description:
Gets the next dof_set code names and id from the database.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id Id corresponding to the name retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “dof_set” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_next_dof_set_names (p. 1290) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_form_opt_code_names ( )

Description:
Gets the next dof_set code names and id from the database.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
CHAPTER 10 261
Element Properties

Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “formulation_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_all_form_opt_code_names (p. 1279) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_form_opt_code_names ( name, id )

Description:
Gets the next formulation option code name from the database.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id The ID retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “formulation_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_next_form_opt_code_names (p. 1292) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_geo_opt_code_names ( )

Description:
Sets the db_get_next_geo_opt_code_names to start at the beginning of a list of geometric
option code names.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
262
Function Descriptions

Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “geometric_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_all_geo_opt_code_names (p. 1279) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_geo_opt_code_names ( name, id )

Description:
Gets the next formulation option code name from the database.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id The ID retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “geometric_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_next_geo_opt_code_names (p. 1292) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lam_opt_code_names ( )

Description:
Set db_get_next_lam_opt_code_names to start at the beginning of a list of laminate_option code
names from the database.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
CHAPTER 10 263
Element Properties

Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “laminate_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_all_lam_opt_code_names (p. 1280) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_lam_opt_code_names ( name, id )

Description:
Gets all laminate_option code names from the database, in get all, get next method.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id The ID retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 The query specified has completed.
13000117 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “laminate_option” table in the database.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_next_lam_opt_code_names (p. 1293) in the MSC.Acumen, Volume 2: Code Examples.

db_get_region_for_geometry ( entity_type, entity_id, rid )

Description:
Returns the region id for the given entity type and entity id.
Input:
INTEGER entity_type The entity type.
INTEGER entity_id The entity ID.
Output:
INTEGER rid The region ID.
INTEGER <Return Value> Returns the success or failure of the routine.
External Dependencies and Side Effects:
This routine access the geometric_region_list table in the database.

Main Index
264
Function Descriptions

Example:
Please see db_get_region_for_geometry (p. 1296) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_region_ids_and_names ( count, rid, name )

Description:
Gets all region ids from the database.
Input:
INTEGER count The number of region IDs for which storage has been
allocated by the calling routine.
Output:
INTEGER rid(count) The region IDs.
STRING name[31](count) The region names.
INTEGER <Return Value> Returns the success or failure of the routine.
External Dependencies and Side Effects:
This routine accesses the phys_prop_region table in the database.
Example:
Please see db_get_region_ids_and_names (p. 1297) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_elements_in_region_exp ( count, rid, eid )

Description:
Gets all element ids for a specified region id from the database.
Input:
INTEGER count The number of region IDs for which storage has been
allocated by the calling routine.
INTEGER rid The region ID for which the list of element IDs is requested.
Output:
INTEGER eid() The element IDs for the region.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Accesses specified records in the “element_in__region” table.
Example:
Please see db_get_elements_in_region_exp (p. 1286) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 10 265
Element Properties

db_get_etop_for_a_code ( acid, atid, count, etids )

Description:
Retrieves a set of element_topology_ids based on analysis code id and analysis type id.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER count The count of element types, one for each element
dimensionality.
Output:
INTEGER etids() The list of element type IDs retrieved.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Retrieves analysis_elements relationships.
Example:
See example for db_count_etop_for_a_code (p. 259). See also db_get_etop_for_a_code
(p. 1287) in the MSC.Acumen, Volume 2: Code Examples.

db_get_a_phys_prop_w_nord ( acid, ppid, defid, alias, rflag, atypes, dtype, nord,


aival, arval, acval )

Description:
Creates an allowable physical property entry in the database.
Input:
INTEGER acid The ID of the analysis code for which this physical property
is to be allowed.
INTEGER ppid The ID of the physical property to be allowed.
INTEGER defid The ID of the physical property member set defn allowed.
Output:
STRING alias[] The alias to be used for this physical property from this
analysis code.
INTEGER rflag Flag indicating whether or not this property is required.
INTEGER atypes(10) Allowable types for this physical property.
INTEGER dtype Default type for this physical prop.
INTEGER nord Neutral file order for this physical property from
phys_prop_set_mbr_defn.
STRING aival[] PCL function to be used to validate integer values.
STRING arval[] PCL function to be used to validate real values.
STRING acval[] PCL function to be used to validate character values.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
266
Function Descriptions

Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Creates one record in the “allowable_phys_prop” table in the database.
Example:
Please see db_get_a_phys_prop_w_nord (p. 1275) in the MSC.Acumen, Volume 2: Code
Examples.

db_create_phys_prop_set_defn ( id, name, num, ppids )

Description:
Creates a physical property set entry in the database.
Input:
INTEGER id The ID of the physical property set to be created.
STRING name[] The name of the physical property set to be created.
INTEGER num The number of physical properties to be associated with this set.
INTEGER ppids() The IDs of the physical properties to be associated with this set
defn.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the routine
failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Creates one record in the “phys_prop_set_defn” table in the database.
Example:
Please see db_create_phys_prop_set_defn (p. 1268) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_phys_prop_set_defn ( id, name, num, ppids )

Description:
Get physical property definition from the database.
Input:
INTEGER id The set ID for which the physical property IDs are requested.
Output:
STRING name[] The name of the physical property set.
INTEGER num The number of physical property values associated with this
set.

Main Index
CHAPTER 10 267
Element Properties

INTEGER ppids() The IDs of the physical property values associated with this
set.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Specified.
Example:
See example for db_get_allowable_phys_prop (p. 267). See also
db_get_phys_prop_set_defn (p. 1295) in the MSC.Acumen, Volume 2: Code Examples.

db_get_allowable_phys_prop ( acid, ppid, alias, rflag, atypes, dtype, nord, aival, arval,
acval )

Description:
Creates an allowable physical property entry in the database.
Input:
INTEGER acid The ID of the analysis code for which this physical property
is to be allowed.
INTEGER ppid The ID of the physical property to be allowed.
Output:
STRING alias[] The alias to be used for this physical property from this
analysis code.
INTEGER rflag Flag indicating whether or not this property is required.
INTEGER atypes(10) Allowable types for this physical property.
INTEGER dtype Default type for this physical prop.
INTEGER nord Neutral file order for this physical property.
STRING aival[] PCL function to be used to validate integer values.
STRING arval[] PCL function to be used to validate real values.
STRING acval[] PCL function to be used to validate character values.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Creates one record in the “allowable_phys_prop” table in the database.
Example:
Please see db_get_allowable_phys_prop (p. 1282) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
268
Function Descriptions

db_get_selected_prop_set ( atid, acid, geopcd, copcd, fopcd, lopcd, etopid, dofsetid,


physprop )

Description:
Gets a field in the database.
Input:
INTEGER atid The ID of the analysis type associated to the selected
property set.
INTEGER acid The ID of the analysis code associated to the selected
property set.
INTEGER geopcd The ID of the geometric option code associated with the
selected property set.
INTEGER copcd The ID of the condense option code associated with the
selected property set.
INTEGER fopcd The ID of the formulation option code associated with the
selected property set.
INTEGER lopcd The ID of the laminate option code associated with the
selected property set.
INTEGER etopid The ID of the element topology associated with the selected
property set.
INTEGER dofsetid The ID of the physical property to be allowed.
Output:
STRING physprop The ID of the associated physical property set.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Gets a record in the “selected_property_set” table.
Example:
See example for db_bulk_get_selected_etops_mat (p. 279). See also
db_get_selected_prop_set (p. 1298) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_phys_prop_region ( prop_reg_id )

Description:
This function will delete a physical property region from the database.
Input:
INTEGER prop_reg_id This value specifies the physical property region id.
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.

Main Index
CHAPTER 10 269
Element Properties

Error Conditions:
13000002 Unrecoverable database error.
13000125 The property entered does not exist.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Deletes one record in the “phys_prop_region”, and any record associated to the specified
physical property in the “element_in_region” or “geometric_region_list” relations in the
database.
Example:
Please see db_delete_phys_prop_region (p. 1274) in the MSC.Acumen, Volume 2: Code
Examples.

db_associate_geo_to_region ( gid, gtype, gsid, rid )

Description:
Associates a specified region to a geometric entity in the database.
Input:
INTEGER gid The internal ID for the geometric entity to associate with the
region.
INTEGER gtype The type of geometric entity to which the region is being
associated.
INTEGER gsid The internal sub_id for the geometric entity to associate with
the region.
INTEGER rid The internal ID of the region being associated to the
geometric entity.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Creates one record associating a region to a geometric entity in the database for the region id
passed to the routine.
Example:
Please see db_associate_geo_to_region (p. 1247) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
270
Function Descriptions

db_count_geo_in_region ( rid, count )

Description:
Retrieves the count of entities associated with a physical property region in the database.
Input:
INTEGER rid The physical property region ID for which information is
requested.
Output:
INTEGER count The number of entities for the specified physical property
region.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Counts all entities in the “phys_prop_region” relation in the database for a specified region id.
Example:
Please see db_count_geo_in_region (p. 1264) in the MSC.Acumen, Volume 2: Code Examples.

db_get_geo_in_region ( count, rid, gid, gtype, gsid )

Description:
Gets all geometric entities for a physical property region from the database.
Input:
INTEGER count The number of region IDs for which storage has been
allocated by the calling routine.
INTEGER rid The physical property region for which the geometric entities
are requested.
Output:
INTEGER gid() The IDs of the geometric entities associated with the specified
physical property region.
INTEGER gtype() The type of the geometric entities associated with the
specified physical property region.
INTEGER gsid() The sub-IDs of the geometric entities associated with the
specified physical property region.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Accesses records in the “geometric_region_list” relation by the physical property region id
specified.
Example:
Please see db_get_geo_in_region (p. 1288) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 10 271
Element Properties

db_count_elements_in_region_exp ( rid, count )

Description:
Retrieves the number of elements in a specified region in the database.
Input:
INTEGER rid The region ID for which the element count is requested.
Output:
INTEGER count The number of physical_property_region items stored
in the database.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Counts records in the “element_in_region” relation in the database for one specified region.
Example:
Please see db_count_elements_in_region_exp (p. 1262) in the MSC.Acumen, Volume 2: Code
Examples.

db_create_anl_elm_summary ( acid, atid, etcnt )

Description:
Stores an analysis_element_summary relationship.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER etcnt(4) The count of element types, one for each element
dimensionality.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Uses the analysis_element_summary relationship.
Example:
Please see db_create_anl_elm_summary (p. 1267) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
272
Function Descriptions

db_get_anl_elm_summary ( acid, atid, etcnt )

Description:
Retrieves an analysis_element_summary relationship
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
Output:
INTEGER etcnt(4) The count of element types, one for each element
dimensionality.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Uses the analysis_element_summary relationship.
Example:
See example for db_create_anl_elm_summary (p. 271). See also db_get_anl_elm_summary
(p. 1284) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_anl_elm_summary ( acid, atid, etcnt )

Description:
Removes an analysis_element_summary relationship.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Deletes a analysis_element_summary relationship.
Example:
See example for db_create_anl_elm_summary (p. 271). See also
db_delete_anl_elm_summary (p. 1273) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 10 273
Element Properties

db_create_analysis_elements ( acid, atid, etcnt, etids, etnames )

Description:
Stores a set of analysis_elements relationships.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER etcnt The count of element types to store.
INTEGER etids() The element type IDs to store.
STRING etnames[]() The element type names to go with the corresponding
ID.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Set analysis_elements relationships. Note that the etnames values are actually a denormalized
form of the element_type_name field in the element_type relationship, placed in the
analysis_elements relationship for speed.
Example:
See example for db_create_anl_elm_summary (p. 271). See also
db_create_analysis_elements (p. 1265) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_analysis_elements ( acid, atid, etcnt, etids )

Description:
Removes a set of analysis_elements relationships.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER etcnt The count of element types to delete.
INTEGER etids() The element type IDs to delete.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Removes analysis_elements relationships.
Example:
See example for db_create_anl_elm_summary (p. 271). See also
db_delete_analysis_elements (p. 1271) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
274
Function Descriptions

db_get_analysis_elements ( acid, atid, etcntMax, etcntFound, etids, etnames )

Description:
Retrieves a set of analysis_elements relationships.
Input:
INTEGER acid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER etcntMax The size that the receiving arrays are dimensioned for.
Output:
INTEGER etcntFound The number of element type IDs and element type
names found. Only the first etcntMax values will
actually be returned.
INTEGER etids() The element type IDs retrieved.
STRING etnames[]() The element type names related to the corresponding
IDs.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Retrieves analysis_elements relationships. Note that the etnames values are actually a
denormalized form of the element_type_name field in the element_type relationship, placed in
the analysis_elements relationship for speed.
Example:
See example for db_create_anl_elm_summary (p. 271). See also db_get_analysis_elements
(p. 1283) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_elem_defn ( acid, atid, eldim )

Description:
Gets all the definitions for all requested elements in get all, get next method.
Input:
INTEGER acid The analysis code ID for the requested element definition.
INTEGER atid The analysis type ID for the requested element definition.
INTEGER eldim The dimensionality for the requested element definition.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses the “selected_element_type” and “element_type” table in the database.

Main Index
CHAPTER 10 275
Element Properties

Example:
See example for db_create_anl_elm_summary (p. 271). See also db_get_all_elem_defn
(p. 1277) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_elem_defn ( etype_id, ename )

Description:
Gets all the definitions for all requested elements in get all, get next method.
Input:
None.
Output:
INTEGER etype_id The ID of the next element type.
STRING ename[31] The name of the next element type.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses the “selected_element_type” and “element_type” table in the database.
Example:
See example for db_create_anl_elm_summary (p. 271). See also db_get_next_elem_defn
(p. 1291) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_possible_dof_sets2 ( etid, atid, acid, coc, goc, foc, loc, nbr, dsid )

Description:
This function will retrieve all possible values of the degrees of freedom sets for the specified
input options.
Input:
INTEGER etid This value specifies the id value of the element type.
INTEGER atid This value specifies the id value of the analysis type.
INTEGER acid This value specifies the id value of the analysis code.
INTEGER coc This value specifies the id value of the condense option code.
INTEGER goc This value specifies the id value of the geometric option code.
INTEGER foc This value specifies the id value of the formulation option
code.
INTEGER loc This value specifies the id value of the lamination option
code.

Main Index
276
Function Descriptions

Output:
INTEGER nbr This value returns the number of degrees of freedom set id
values returned in the output value dsid.
INTEGER dsid(nbr) This value returns the unique degrees of freedom set id
values.
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:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all dof set ids for the input set of parameters.
Example:
Please see db_bulk_get_possible_dof_sets2 (p. 1250) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_lam_opts2 ( etid, atid, acid, goc, coc, nbr, loc )

Description:
Retrieves all possible values of the laminate option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The ID of the geometric option code selected.
INTEGER coc The ID of the condense option code selected.
Output:
INTEGER nbr The number of laminate option codes that were found for the
above specified set of parameters.
INTEGER loc() The unique laminate option code values that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all laminate option codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_dof_sets2 (p. 275). See also
db_bulk_get_possible_lam_opts2 (p. 1255) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 10 277
Element Properties

db_bulk_get_possible_form_opts2 ( etid, atid, acid, goc, coc, loc, nbr, foc )

Description:
Retrieves all possible values of the formulation option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The ID of the geometric option code selected.
INTEGER coc The ID of the condense option code selected.
INTEGER loc The ID of the location option code selected.
Output:
INTEGER nbr The number of formulation option codes found for the above
specified set of parameters.
INTEGER foc() The unique formulation option code values that were found
for the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all formulation option codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_dof_sets2 (p. 275). See also
db_bulk_get_possible_form_opts2 (p. 1252) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_possible_dof_sets1 ( etid, atid, acid, nbr, dsid )

Description:
This function will retrieve all possible values of the degrees of freedom sets for the specified
input options.
Input:
INTEGER etid This value specifies the id value of the element type.
INTEGER atid This value specifies the id value of the analysis type.
INTEGER acid This value specifies the id value of the analysis code.
Output:
INTEGER nbr This value returns the number of degrees of freedom set id
values returned in the output value dsid.
INTEGER dsid(nbr) This value returns the unique degrees of freedom set id values.
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:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.

Main Index
278
Function Descriptions

External Dependencies and Side Effects:


Fetches all dof set ids for the input set of parameters.
Example:
Please see db_bulk_get_possible_dof_sets1 (p. 1249) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_lam_opts1 ( etid, atid, acid, nbr, loc )

Description:
Retrieves all possible values of the laminate option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
Output:
INTEGER nbr The number of laminate option codes that were found for the
above specified set of parameters.
INTEGER loc() The unique laminate option code values that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all laminate option codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_dof_sets1 (p. 277). See also
db_bulk_get_possible_lam_opts1 (p. 1254) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_possible_geo_opts1 ( etid, atid, acid, nbr, goc )

Description:
Retrieves all possible values of the geometric option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
Output:
INTEGER nbr The number of geometric option codes that were found for
the above specified set of parameters.
INTEGER goc() The unique geometric option code values that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
Main Index
CHAPTER 10 279
Element Properties

13000002 Unrecoverable database error.


13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all geometric option codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_dof_sets1 (p. 277). Please see
db_bulk_get_possible_geo_opts1 (p. 1253) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_possible_form_opts1 ( etid, atid, acid, nbr, foc )

Description:
Retrieves all possible values of the formulation option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
Output:
INTEGER nbr The number of formulation option codes found for the above
specified set of parameters.
INTEGER foc() The unique formulation option code values that were found
for the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all formulation option codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_dof_sets1 (p. 277). See
alsodb_bulk_get_possible_form_opts1 (p. 1251) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_selected_etops_mat ( etid, atid, acid, goc, foc, loc, dsid, coc, nbr, etop )

Description:
Retrieves all possible values of element topology for the specified input options. All values
must be input for this select.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The code for the geometric option if it has been uniquely
determined at point. otherwise, zero.
INTEGER foc The code for the formulation option if it has been uniquely
determined at point. otherwise, zero.
Main Index
280
Function Descriptions

INTEGER loc The code for the laminate option if it has been uniquely
determined at point. otherwise, zero.
INTEGER dsid The ID for the dof set if it has been uniquely determined at
point. otherwise, zero.
Output:
INTEGER nbr The number of formulation option codes found for the above
specified set of parameters.
INTEGER etop() The unique element topology values that were found for the
above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all element topologies for the input set of parameters.
Example:
Please see db_bulk_get_selected_etops_mat (p. 1259) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_matl_dirs ( etid, atid, acid, goc, foc, loc, dsid, coc, mlc, nbr,
mdc )

Description:
Retrieves all possible values of the material directionality option for the specified input options.
If an input option is 0, it does not have a uniquely assigned value yet. The first three parameters
may not be zero.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The code for the geometric option if it has been uniquely
determined at point. otherwise, zero.
INTEGER foc The code for the formulation option if it has been uniquely
determined at point. otherwise, zero.
INTEGER loc The code for the laminate option if it has been uniquely
determined at point. otherwise, zero.
INTEGER dsid The ID for the dof set if it has been uniquely determined at
point. otherwise, zero.
INTEGER coc The ID for the condense option if it has been uniquely
determined at point. otherwise, zero.
INTEGER mlc The code for the material linearity if it has been uniquely
determined at point. otherwise, zero.
Output:
INTEGER nbr The number of material directionality codes that were found
for the above specified set of parameters.
INTEGER mdc() The unique material directionality code value that were
found for the above specified set of values.
Main Index
CHAPTER 10 281
Element Properties

INTEGER <Return Value> Returns the success or failure of the routine.


Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all material directionality codes for the input set of parameters.
Example:
Please see db_bulk_get_possible_matl_dirs (p. 1256) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_matl_lins ( etid, atid, acid, goc, foc, loc, dsid, coc, mdc, nbr,
mlc )
Description:
Retrieves all possible values of the material linearity option for the specified input options. If an
input option is 0, it does not have a uniquely assigned value yet. The first three parameters may
not be zero.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The code for the geometric option if it has been uniquely
determined at point. otherwise, zero.
INTEGER foc The code for the formulation option if it has been uniquely
determined at point. otherwise, zero.
INTEGER loc The code for the laminate option if it has been uniquely
determined at point. otherwise, zero.
INTEGER dsid The ID for the dof set if it has been uniquely determined at
point. otherwise, zero.
INTEGER coc The ID for the condense option if it has been uniquely
determined at point. otherwise, zero.
INTEGER mdc The code for the material directionality if it has been
uniquely determined at point. otherwise, zero.
Output:
INTEGER nbr The number of material linearity codes that were found for
the above specified set of parameters.
INTEGER mlc() The unique material linearity code value that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches all material linearity codes for the input set of parameters.
Example:
See example for db_bulk_get_possible_matl_dirs (p. 280). See also
db_bulk_get_possible_matl_lins (p. 1258) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
282
Function Descriptions

db_get_all_pp_ids_and_names ( )

Description:
This function will set the cursor to the start of a list of physical property id, name and data type
values.
Input:
None.
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.
Remarks:
This function must be called before the db_get_next_pp_ids_and_names (p. 282) function
can be called.
Example:
Please see db_get_all_pp_ids_and_names (p. 1281) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_next_pp_ids_and_names ( pp_id, pp_name, datatype )

Description:
This function will get the next physical property id, name, and data type from the database.
Input:
None.
Output:
INTEGER pp_id This value returns the physical property id value.
STRING pp_name[80] This value returns the physical property name.
INTEGER datatype This value returns the physical property datatype.
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:
13000142 The MPC was not found in the database.
13000117 The query specified has completed.
External Dependencies and Side Effects:
Accesses records in the phys_prop table in the database.
Remarks:
The PCL function db_get_all_pp_ids_and_names (p. 282) must be called at least once to
establish the list of physical property id, name, and data type values and to set the cursor to
point to the start of the list. Calling the db_get_next_pp_ids_and_names() function in a loop
will then allow the list entries to be retrieved.
Example:
Please see db_get_next_pp_ids_and_names (p. 1294) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 10 283
Element Properties

db_set_comp_lam ( mat_name, num_plies, ply_names, thicknesses, orientations,


iconven, offset, offset_def )

Description:
This function will set laminate construction data in the laminate and laminate_layer tables in
the database.
Input:
STRING mat_name[31] This value specifies the name of the material.
INTEGER num_plies This value specifies the number of plies.
STRING ply_names[31*num_plies] This value specifies a list of ply names. See the
remarks below for details on the use of this value.
REAL thicknesses(num_plies) This value specifies a list of ply thicknesses.
REAL orientations(num_plies) This value specifies a list of ply orientations.
INTEGER iconven This value specifies the stacking sequence convention.
REAL offset This value specifies the offset.
LOGICAL offset_def This value specifes, when set to TRUE, that the input
value offset is to be used. When set to FALSE, the
input value offset will be ignored.
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.
Remarks:
The input value ply_names is a string that consists of the number of 32 character fields specified
by the input value num_plies. If an individual ply name is less that 32 characters in length it
must be padded by concatinating spaces so that the total name length is 32 characters.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000120 The material specified in the query was not found.
13000136 The specified material has an invalid directionality flag.
External Dependencies and Side Effects:
This routine access the material, laminate and laminate_layer tables.
Example:
Please see db_set_comp_lam (p. 1299) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
284
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Loads and Boundary Conditions
11
■ General
■ Database

Main Index
286
Function Descriptions

11.1 General

lbc_create (name, type_id, cat_id, dyn_flag, num_ar, ar_id, aplist1, aplist2, fem_flag,
targ_elem, lbc_sf, cid_id, no_data_flag, num_dat, var_id, sv, null_flag,
null_var, datatype, ivalue, rvalue, fldid, dyn_fldid, node_id)

Description:
Create the Loads and Boundary Condition Set ( i.e., for positionally dependent quantities field
references are store not actual values).
Input:
STRING name[] Load/BC Set Name - user specified.
INTEGER type_id Load/BC Type -disp, force, etc.
INTEGER cat_id Category - Nodal, Elem Uni, Elem Var.
INTEGER dyn_flag Dynamic Flag = FA_TRUE if dynamic.
INTEGER num_ar Number of Application Regions.
INTEGER ar_id (2) Appl Region db ID.
STRING aplist1[] Application Region 1 list.
STRING aplist2[] Application Region 2 list.
INTEGER fem_flag (5) FEM Flag = FA_TRUE if FEM entities FEM Flag(4) = app-
reg-couple, FEM Flag (5) = app-reg-order.
INTEGER targ_elem (3) Target Element Dimension.
REAL lbc_sf Lbc Set Scale Factor.
INTEGER cid_id Coordinate System ID.
INTEGER no_data_flag No_Data_Flag = FA_TRUE if no data case is valid.
INTEGER num_dat Number of input data variables.
INTEGER var_id (20) Input Variable Data ID.
INTEGER sv (20) Indicates whether data is scalar or vector.
INTEGER null_flag (20) Null vector flag =1, if null allowed.
INTEGER null_var (20, 3) Flag indicating whether this vector comp is null null_var
= -1 if null, 0 if not null.
INTEGER datatype (20) Indicates datatypes, (e.g. integer, real, field (see
dbcodes.h); DbInt).
INTEGER ivalue (20) Integer value.
REAL rvalue (20, 3) Real value.
INTEGER fldid (20, 3) Field ID.
INTEGER dyn_fldid (20, 3) Dynamic Field ID.
INTEGER node_id (20) Node ID.
Output:
INTEGER <Return Value> See error returned.
Comments:
Entity types and ids will change based on topological description. Displays loads/bcs graphics.
Currently only one application region is being processed.
Error Conditions:
26002020 Load/BC "%A%" already exists. Do you wish to overwrite?
26006004 Dynamic memory allocation error encountered.
Main Index
CHAPTER 11 287
Loads and Boundary Conditions

Example:
Please see lbc_create (p. 1351) in the MSC.Acumen, Volume 2: Code Examples.

lbc_delete ( count, del_id, update_graph )

Description:
Delete the Loads and Boundary Condition Sets (and their related associations - application
region, data, load case association.
Input:
INTEGER count Number of Load/BC Sets to delete.
INTEGER del_id ( count) Load/BC Set Ids.
LOGICAL update_graph If TRUE, then update graphics.
Output:
INTEGER <Return Value> FA_NOERROR success; FA_ERROR Failure.
Comments:
Removes the Load/BC sets from all applicable load cases.
Example:
Please see lbc_delete (p. 1354) in the MSC.Acumen, Volume 2: Code Examples.

lbc_eval_fem_by_lc ( lc_name )

Description:
Given a load case name, get all the lbcs associated with it and check to see if each lbc has any
unevaluated fem_xx_lbcs. If it does then create the appropriate fem_xx_table in the db.
Input:
STRING lc_name[] Load Case Name.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
3001301 Load Case "%A%" has no Load/BC sets.
3001101 Load Case "%A%" does not exist.
Example:
Please see lbc_eval_fem_by_lc (p. 1356) in the MSC.Acumen, Volume 2: Code Examples.

lbc_eval_fem_lbc ( lbc_id )

Description:
Given an lbc id, check to see if it has any unevaluated fem_xx_lbcs. If it does then create the
appropriate fem_xx_table in the db.
Input:
INTEGER lbc_id Load/BC ID.
Output:
INTEGER <Return Value> See error returned.
Main Index
288
Function Descriptions

Error Conditions:
26002144 The application region for Load/BC Set "%A%" is empty.
Example:
Please see lbc_eval_fem_lbc (p. 1356) in the MSC.Acumen, Volume 2: Code Examples.

lbc_get_sdbx_datatype ( lbc_id, obj_str, meth_str, targ_str, geo_group, sdbx_type,


sdbx_label )

Description:
Given lbc object, method, target element type, and geometry group return the select databox
datatype and label.
Input:
INTEGER lbc_id Load/BC ID.
STRING obj_str[] Load/BC object, e.g., Displacement.
STRING meth_str[] Load/BC Category - Nodal, Element Uniform, Element
Variable.
STRING targ_str[] Target Element Type - Beam, Shell, Solid, PTEAM.
STRING geo_group[] Geometry Group - Geometry or FEM.
Output:
STRING sdbx_type[] Select databox type.
STRING sdbx_label[] Select databox label.
INTEGER <Return Value> See error returned.
Error Conditions:
26002410 "%A%" is an invalid Load/BC target element type.
26002400 "%A%" is an invalid Load/BC type.
Example:
Please see lbc_get_sdbx_datatype (p. 1357) in the MSC.Acumen, Volume 2: Code Examples.

lbc_gm ( )

Description:
Loads/BCs Graphics Manager.
1. Gets the valid groups to which lbcs will be posted.
2. Gets the lbc_types which should be posted from pref form.
3. Filters out the lbc_ids in the current load case which should be posted.
4. Modifies the LBC_IN_GROUP relation as appropriate.
5. Creates the Group Vector Table.
6. Assigns the Group Vector Table to the valid groups.
Input:
none
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
26006004 Dynamic memory allocation error encountered.
Main Index
CHAPTER 11 289
Loads and Boundary Conditions

Example:
Please see lbc_gm (p. 1358) in the MSC.Acumen, Volume 2: Code Examples.

lbc_graphics_defn ( type_id, cat_id, targ_elem_id, nvar, varid, vector_flag, marker,


color, anchor )

Description:
Given an lbc id, get the data in the ss_lbc, sv_lbc, ds_lbc, and/or dv_lbc table.
Input:
INTEGER type_id LBC Type Id - disp, force.
INTEGER cat_id Category - Nodal, Elem Uni, Elem Var.
INTEGER targ_elem_id Target Element Dimension.
Output:
INTEGER nvar Number of input variable (10 max).
INTEGER varid ( ) Input data variable ID.
INTEGER vector_flag ( ) Vector flag = 1, if vector.
INTEGER marker ( ) Graphics symbol.
INTEGER color ( ) Colorbox ID.
INTEGER anchor ( ) Anchor style.
INTEGER <Return Value> Returns success or failure of the routine.
0 = success
-1 = Error occurred
Example:
Please see lbc_graphics_defn (p. 1359) in the MSC.Acumen, Volume 2: Code Examples.

lbc_lp_parse_sca ( data_string, data_type, field_id, null_flag, data_string_value )

Description:
This function will parse a loads and boundary condition data string, verify that it contains valid
scalar or scalar field information, and return the value in the string.
Input:
STRING data_string[] This value specifies a loads and boundary condition
property.
INTEGER data_type This value specifies the property data type.
This value should be set to either 1 to parse integers, 3 to
parse real values, 4 to parse tokens, 5 to parse nodes,
and 7 to parse field values.
If the "datatype" input value is not set to a value of 1 or
5, this function will attempt to parse the "dval" string as
a character, node, or field values based on information
obtained from the string itself.

Main Index
290
Function Descriptions

Output:
INTEGER field_id This value returns the value of id for the scalar field
specified by the input value data_string.
INTEGER null_flag This value returns a non zero value if the input value
data_string represents a valid loads and boundary
condition property that has no data.
REAL data_string_value This value returns the results of the parse of the input
value data_string.
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:
14000004 LpSublistType: I am being invoked with a NULL list.
26005002 The data entered in databox %I% on the "Input Data" form is invalid.
26005003 Databox %I% on the "Input Data" form requires a Scalar field.
26005001 The data entered in databox %I% on the "Input Data" form cannot be parsed.
Example:
Please see lbc_lp_parse_sca (p. 1360) in the MSC.Acumen, Volume 2: Code Examples.

lbc_lp_parse_vec ( data_string, field_id, null_flag, data_string_value )

Description:
This function will parse a loads and boundary condition vector string, verify that it contains
valid vector or vector field information, and return the value in the string.
Input:
STRING data_string[] This value specifies a loads and boundary condition
property
Output:
INTEGER field_id This value returns the value of id for the scalar field
specified by the input value data_string.
INTEGER null_flag This value returns a non zero value if the input value
data_string represents a valid loads and boundary
condition property that has no data.
REAL data_string_value This value returns the results of the parse of the input
value data_string.
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:
14000011 LpSublistAttributeGet: Attempt to get attribute from NULL list.
26005004 Databox %I% on the "Input Data" form requires a Spatial Vector field.
26005001 The data entered in databox %I% on the "Input Data" form cannot be parsed.
Example:
Please see lbc_lp_parse_vec (p. 1361) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 11 291
Loads and Boundary Conditions

lbc_plot_markers ( num_lbcs, lbc_ids, num_grps, grp_ids )

Description:
Creates graphics marker tables for display on groups.
- Filters out the lbc_ids in the current load case which should be posted.
- Modifies the LBC_IN_GROUP relation as appropriate.
- Creates or modifies the Group Vector Table.
- Assigns the Group Vector Table to the valid groups
Input:
INTEGER num_lbcs Number of lbc IDs.
INTEGER lbc_ids ( ) LBC IDs to process.
INTEGER num_grps Number of groups .
INTEGER grp_ids ( ) Group IDs to assign table to.
Output:
INTEGER <Return Value> See error returned.
FA_NOERROR = success
FA_ERROR = failure
Example:
Please see lbc_plot_markers (p. 1362) in the MSC.Acumen, Volume 2: Code Examples.

lbc_show_plot_scalar ( type_name, type_id, dynamic_val, var_name, component,


num_lbcs, lbc_ids, num_grps, grp_ids )

Description:
Main application routine for the Loads/BCs Show Plot Scalar option. A scalar graphics table is
loaded with the specified load/BC and is assigned to the specified groups.
Input:
STRING type_name[] The Load/BC type name.
INTEGER type_id Load/BC type ID.
REAL dynamic_val The value of the dynamic field to evaluate.
STRING var_name[] The name of the variable to be loaded into the scalar
table.
STRING component[] The component of the variable to be loaded into the
scalar table.
INTEGER num_lbcs The number of lbcs to contour.
INTEGER lbc_ids (num_lbcs) The IDs of the lbcs to contour.
INTEGER num_grps The number of groups to assign the scalar table to.
INTEGER grp_ids (num_lbcs) The IDs of the groups to assign the scalar table to.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
26004001 Unable to assign the scalar table to Group "%A%".
26004003 Invalid component "%A%" was specified. Valid component strings are
"Resultant", "Component1", "Component2", and "Component3".

Main Index
292
Function Descriptions

Example:
Please see lbc_show_plot_scalar (p. 1364) in the MSC.Acumen, Volume 2: Code Examples.

loadcase_create2 (load_case_name, load_case_type, load_case_desc, scale_factor,


lbc_name, priorities, lbc_scales, dynamic_name, mv,
make_current )
Description:
This function creates a new load case in the database.
Input:
STRING load_case_name[] New load case name
STRING load_case_type[] New load case type, can be set to either “Static” or “Time
Dependent”.
STRING load_case_desc[ ] Load case description.
REAL scale_factor Load case scale factor.
STRING lbc_name[]( ) Names of assigned lbcs.
INTEGER priorities() Array of priorities of assigned lbcs.
REAL lbc_scales() Array of lbc scale factors.
STRING dynamic_name[] Dynamic load case name.
REAL mv Flag to indicate if newly created.
LOGICAL make_current Load case should be made the current load case, TRUE if
make current.
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.
Example:
Please see loadcase_create2 (p. 1365) in the MSC.Acumen, Volume 2: Code Examples.

loadsbcs_get_appl_region_list ( id, region_id, ent_count, geo_str, app_list )

Description:
Gets the application region entities - types, ids, and sub ids (if applicable) from the database.
Input:
INTEGER id Load/BC ID.
INTEGER region_id App Region ID.
INTEGER ent_count Number of entities in appl region.
Output:
STRING geo_str[] Geometry group = Geometry or FEM
STRING app_list[VIRTUAL] Application list.
INTEGER <Return Value> See error returned.
Comments:

Main Index
CHAPTER 11 293
Loads and Boundary Conditions

This routine can be used to return multiple lists by returning the array ARID, increasing the
number of PCL string pointer arguments, and filling them out.
Error Conditions:
26006004 Dynamic memory allocation error encountered.
Example:
Please see loadsbcs_get_appl_region_list (p. 1367) in the MSC.Acumen, Volume 2: Code
Examples.

loadsbcs_lp_coord ( cid_list, cid_id )

Description:
Returns the coordinate system id (Expects there to be only one Coordinate system in the list).
Input:
STRING cid_list[] Coordinate System List.
Output:
INTEGER cid_id Coordinate System ID.
INTEGER <Return Value> See error returned.
Error Conditions:
26002205 No Coordinate Frame chosen. Select one.
26002210 Only one coordinate system is allowed. %I% coordinate systems were input.
26002215 Coordinate Frame List %A% is invalid.
Example:
Please see loadsbcs_lp_coord (p. 1368) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
294
Function Descriptions

11.2 Database

db_bulk_get_lbc_ds ( lbc_id, max, nbr, vid, rv, sc_pos, sc_dyn, scale_factor )

Description:
Fetches unevaluated dynamic scalar lbc data attached to an LBC.
Input:
INTEGER lbc_id The ID of the lbc that this lbc data is attached to.
INTEGER max The max number of dynamic scalar data records that can be
passed back to the caller.
Output:
INTEGER nbr The number of dynamic scalar data records retrieved from
the database.
INTEGER vid() The ID of the definition variable that corresponds to this
scalar data
REAL rv() Scalar data values (real).
INTEGER sc_pos() Field IDs for positional dependent scalars.
INTEGER sc_dyn() Field IDs for dynamic dependent scalars.
REAL scale_factor() LBC set scale factor.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Fetches one or more entries in the “ds_lbc” relation in the database.
Example:
Please see db_bulk_get_lbc_ds (p. 1304) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_lbc_dv ( lbc_id, max, nbr, vid, rv, ve_pos, ve_dyn, nv, scale_factor )

Description:
Fetches unevaluated dynamic vector LBC data attached to an LBC.
Input:
INTEGER lbc_id The ID of the lbc that this lbc data is attached to.
INTEGER max The max number of dynamic vector data records that can be
passed back to the caller.
Output:
INTEGER nbr The number of dynamic vector data records retrieved from
the database.
INTEGER vid() The ID of the definition variable that corresponds to this
vector data.
REAL rv(j, 3) Vector data values (real) {i = vector component;(3) j = vector
number (row nbr)}
INTEGER ve_pos(j, 3) Field IDs for positional dependent vectors {i = vector
component;(3) j = vector number (row nbr)}
Main Index
CHAPTER 11 295
Loads and Boundary Conditions

INTEGER ve_dyn(j, 3) Field IDs for dynamic dependent vectors {i = vector


component;(3) j = vector number (row nbr)}
INTEGER nv(j, 3) Flag indicating whether this vector component contains valid
data. {i = vector component;(3) j = vector number (row nbr)}
a value of -1 denotes a missing value,
a value of 0 denotes not missing
REAL scale_factor() LBC set scale factor
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Fetches one or more entries in the “dv_lbc” relation in the database.
Example:
Please see db_bulk_get_lbc_dv (p. 1306) in the MSC.Acumen, Volume 2: Code Examples.

db_bulk_get_lbc_ss ( lbc_id, max, nbr, vid, rv, sc_pos, scale_factor )

Description:
Fetches unevaluated static scalar LBC data attached to an LBC.
Input:
INTEGER lbc_id The ID of the lbc that this lbc data is attached to.
INTEGER max The max number of static scalar data records that can be
passed back to the caller.
Output:
INTEGER nbr The number of static scalar data records retrieved from the
database.
INTEGER vid() The ID of the definition variable that corresponds to this
scalar data.
REAL rv() Scalar data values (real).
INTEGER sc_pos() Field IDs for positional dependent scalars.
REAL scale_factor() LBC set scale factor.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Fetches one or more entries in the “ss_lbc” relation in the database.
Example:
Please see db_bulk_get_lbc_ss (p. 1308) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
296
Function Descriptions

db_bulk_get_lbc_sv ( lbc_id, max, nbr, vid, rv, ve_pos, nv, scale_factor )

Description:
Fetches unevaluated static vector LBC data attached to an LBC.
Input:
INTEGER lbc_id The ID of the lbc that this lbc data is attached to.
INTEGER max The max number of static vector data records that can be
passed back to the caller.
Output:
INTEGER nbr The number of static vector data records retrieved from the
database.
INTEGER vid() The ID of the definition variable that corresponds to this
vector data.
REAL rv(j, 3) Vector data values (real) {i = vector component (3); j = vector
number (row nbr)}
INTEGER ve_pos(j, 3) Field IDs for positional dependent vectors {i = vector
component (3); j = vector number (row nbr)}
INTEGER nv(j, 3) Flag indicating whether this vector component contains valid
data. {i = vector component (3); j = vector number (row nbr)}
a value of -1 denotes a missing value,
a value of 0 denotes not missing
REAL scale_factor() LBC set scale factor.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000093 Too Many Values Returned for Space Allocated.
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Fetches one or more entries in the “sv_lbc” relation in the database.
Example:
Please see db_bulk_get_lbc_sv (p. 1309) in the MSC.Acumen, Volume 2: Code Examples.

db_count_appl_geo_region ( id, count )

Description:
Retrieves the number of appl_geo_regions stored in the database by lbc_type_id.
Input:
INTEGER id The id of the lbc_type_id with which the appl_geo_regions
are associated
Output:
INTEGER count The number of appl_geo_regions stored in the database
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Main Index
CHAPTER 11 297
Loads and Boundary Conditions

External Dependencies and Side Effects:


Counts all records in the “appl_geo_region” relation in the database by lbc_type_id.
Example:
Please see db_count_appl_geo_region (p. 1311) in the MSC.Acumen, Volume 2: Code Examples.

db_count_lbc ( count )

Description:
Retrieves the number of lbcs stored in the database.
Input:
none
Output:
INTEGER count The number of appl_geo_regions stored in the database
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Counts all records in the “lbc” relation in the database.
Example:
Please see db_count_lbc (p. 1312) in the MSC.Acumen, Volume 2: Code Examples.

db_count_lbc_appl_region_entity ( id, apprid, count )

Description:
Retrieves the count of entity in each application region, and the application region ids for each
lbc stored in the database.
Input:
INTEGER id The lbc ID for which the region information is requested
Output:
INTEGER apprid(2) The IDs of the application regions stored in the
database. At present two is the maximum.
INTEGER count(2) The number of entities for each appl_geo_regions stored
in the database. at present there is a maximum of two
corresponding to the application region IDs.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Counts all entities in the “lbc_app_region” relation in the database for a specified lbc_id and
app_region_id.

Main Index
298
Function Descriptions

Example:
Please see db_count_lbc_appl_region_entity (p. 1313) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_lbc_types ( nbr_of_lbcs )

Description:
Returns the total number of distinct lbcs in the database.
Input:
none
Output:
INTEGER nbr_of_lbcs The number of lbc type IDs
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
External Dependencies and Side Effects:
Accesses records in the lbc_type table in the database.
Example:
Please see db_count_lbc_types (p. 1314) in the MSC.Acumen, Volume 2: Code Examples.

db_count_loads_for_element ( elem_id, nbr_of_lbcs )

Description:
Returns the number of loads and boundary conditions for an element.
Input:
INTEGER elem_id The element ID.
Output:
INTEGER nbr_of_lbcs The number of lbcs associated with the element.
INTEGER <Return Value> Returns the success or failure of the routine
External Dependencies and Side Effects:
This routine access the element, fem_ss_lbc, fem_sv_lbc, fem_ds_lbc and fem_dv_lbc tables.
Example:
Please see db_count_loads_for_element (p. 1316) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_load_cases_with_lbc ( lbc_id, num_loadcases )

Description:
Retrieves the number of load cases associated with a lbc.
Input:
INTEGER lbc_id The lbc ID
Output:
INTEGER num_loadcases The number of distinct load cases associated with the above
lbc ID
Main Index
CHAPTER 11 299
Loads and Boundary Conditions

INTEGER <Return Value> Returns the success or failure of the routine


External Dependencies and Side Effects:
Counts records in the “assigned_load_set” relation in the database.
Example:
Please see db_count_load_cases_with_lbc (p. 1314) in the MSC.Acumen, Volume 2: Code
Examples.

db_delete_lbc ( lbc_id )

Description:
Deletes an lbc entry from the database.
Input:
INTEGER lbc_id Id of the lbc to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
External Dependencies and Side Effects:
Deletes one record in the “lbc” table in the database, and deletes from any associated lbc entity.
Example:
Please see db_delete_lbc (p. 1317) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_lbc_defn (<lbc_type_id>)

Description:
This function will delete the lbc type definition from the database.
Input:
INTEGER lbc_type_id ID of the lbc type in the database.
Output:
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see db_delete_lbc_defn (p. 1318) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_appl_geo_regions ( lbc_id )

Description:
Gets all records in the LbcAppRegion table relation for the specified lbc_id from the database,
in get all, get next method. See also db_get_next_appl_geo_region (p. 300).
Input:
INTEGER lbc_id The ID of the lbc for the new records
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Main Index
300
Function Descriptions

Example:
Please see db_get_all_appl_geo_regions (p. 1319) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_next_appl_geo_region ( ar_id, etype, eid, esid )

Description:
Gets next record in the lbcAppRegion table relation for the specified lbc id from the database.
See also db_get_all_appl_geo_regions (p. 299).
Input:
none
Output:
INTEGER ar_id The sequential ID assigned to this application geometry
region.
INTEGER etype The entity type to which this lbc has been applied.
INTEGER eid The entity ID to which this lbc has been applied.
INTEGER esid The entity sub_id to which this lbc has been applied (if
appropriate).
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses records in the “Appl Geo Region” table in the database.
Example:
See example for db_get_all_appl_geo_regions (p. 299). See also
db_get_next_appl_geo_region (p. 1336) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_appl_reg_defns ( lbc_tid )

Description:
Gets all application geometry region definitions for an lbc type definition from the database, in
get all, get next method. See also db_get_next_appl_reg_defn (p. 301)
Input:
INTEGER lbc_tid The ID of the lbc type in the database.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Example:
Please see db_get_all_appl_reg_defns (p. 1320) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 11 301
Loads and Boundary Conditions

db_get_next_appl_reg_defn ( vid, label )

Description:
Gets next application geometry region definition for an lbc type definition from the database.
See also db_get_all_appl_reg_defns (p. 300).
Input:
none
Output:
INTEGER vid The sequential ID assigned to this application geometry
region.
INTEGER label[31] The label to be placed in front of the databox on the “Create
LBC” form.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
Example:
See example for db_get_all_appl_reg_defns (p. 300). See also db_get_next_appl_reg_defn
(p. 1337) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbcs_new ( )

Description:
This function will set up the data required to retrieve all of the information about all of the
LBCs in the memory database.
Input:
none
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Example:
Please see db_get_all_lbcs_new (p. 1326) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_lbcs_new ( id, name, type, cat, eldim, cid, dyn_flag, scaleFactor,


geo_fem, appRegCouple, appRegOrder, equivFlag, acidMod )

Description:
This function will retrieve all of the information about all of the LBCs in the memory database
one structure at a time.
Input:
none
Output:
INTEGER id The ID of the LBC structure.
STRING name[] The name of this lbc table.
Main Index
302
Function Descriptions

INTEGER type The type of the lbc this is.


INTEGER cat The category of lbc this is.
INTEGER eldim(3) The target element dimensionality values.
INTEGER cid The ID of the alternate coordinate frame if there is one.
INTEGER dyn_flag The dynamic/static flag value.
REAL scaleFactor The scale factor value.
INTEGER geo_fem (3) Specifies geo or fem as original lbc app region types.
INTEGER appRegCouple Multi app region coupling option.
INTEGER appRegOrder Multi app region order option.
INTEGER equivFlag The "don't equivalence nodes" flag.
INTEGER acidMod The flag which says that this lbc requires the acid frame
for nodes to be modified.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Example:
See Example for db_get_all_lbcs_new (p. 301). See also db_get_next_lbcs_new (p. 1344) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbc_names ( )

Description:
Gets all lbc names & types from the database, in get all, get next method. See also
db_get_next_lbc_name (p. 302).
Input:
none
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc” table in the database.
Example:
Please see db_get_all_lbc_names (p. 1321) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_lbc_name ( id, name, type )

Description:
Gets next lbc name & type from the database.
Input:
none

Main Index
CHAPTER 11 303
Loads and Boundary Conditions

Output:
INTEGER id The unique internal ID of the lbc type created in the
database.
STRING name[31] The name of the lbc type being created in the database.
INTEGER type The type ID of the lbc (from the lbc_type table).
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc” table in the database.
Example:
See example for db_get_all_lbc_names (p. 302). See also db_get_next_lbc_name (p. 1338) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbc_names_by_type ( lbc_typ_id )

Description:
Gets all lbc type names from the database, in get all next method. See also
db_get_next_lbc_name_by_type (p. 303).
Input:
INTEGER lbc_type_id The lbc type ID for the row selected.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc” table in the database.
Example:
Please see db_get_all_lbc_names_by_type (p. 1322) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_next_lbc_name_by_type ( id, name )

Description:
Gets next lbc type name from the database. See also db_get_all_appl_reg_defns (p. 300).
Input:
none
Output:
INTEGER id The unique internal ID of the lbc in the database.
STRING name[31] The name of the lbc being in the database.
Main Index
304
Function Descriptions

INTEGER <Return Value> Integer indicating success or failure of the routine.


Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records for a specified type in the “lbc” table in the database.
Example:
See example for db_get_all_appl_reg_defns (p. 300). See also
db_get_next_lbc_name_by_type (p. 1339) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbc_type_defns ( )

Description:
Gets all lbc type definitions from the database, in get all, get next method.See also
db_get_next_lbc_type_defn (p. 304).
Input:
none
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “load case” table in the database.
Example:
Please see db_get_all_lbc_type_defns (p. 1323) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_lbc_type_defn ( id, name, class, form, gbc, cid, g_sym, sv, nv, nbr_ac,
an_code, defcol, cbid, anstyl )

Description:
Gets next lbc type definition from the database. See also db_get_all_lbc_type_defns (p. 304).
Input:
none
Output:
INTEGER id The unique internal ID of the lbc type created in the database.
STRING name[31] The name of the lbc type being created in the database.
INTEGER class The class of the lbc type to be created. (Structural, Thermal,
Other)
INTEGER form The form of the lbc being created. (Body or Boundary)
INTEGER gbc Flag indicating whether this is a global boundary condition.
Main Index
CHAPTER 11 305
Loads and Boundary Conditions

INTEGER cid Flag indicating whether the lbc can be defined in an alternate
coord frame.
INTEGER g_sym The graphics symbol used to display this lbc.
INTEGER sv Flag indicating whether this lbc is a scalar or vector.
INTEGER nv Flag indicating whether (for vector lbcs) one (or more) of the
components can be null.
INTEGER nbr_ac The number of analysis codes supplied.
INTEGER an_code() List of valid analysis code IDs for this lbc.
INTEGER defcol Default color of associated graphics.
INTEGER cbid Color box ID of associated graphics.
INTEGER anstyl Anchor style of associated graphics.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “load case” table in the database.
Example:
See example for db_get_all_lbc_type_defns (p. 304). See also db_get_next_lbc_type_defn
(p. 1340) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbc_type_names ( )

Description:
Gets all lbc type names from the database, in get all, get next method. See also
db_get_next_lbc_type_name.
Input:
none
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc_type” table in the database.
Example:
Please see db_get_all_lbc_type_names (p. 1325) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
306
Function Descriptions

db_get_next_lbc_type_name ( id, name )

Description:
Gets next lbc type name from the database. See also db_get_all_lbc_type_names (p. 305).
Input:
none
Output:
INTEGER id The unique internal ID of the lbc type in the database.
STRING name[31] The name of the lbc type being in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc_type” table in the database.
Example:
See example for db_get_all_lbc_type_names (p. 305). See also
db_get_next_lbc_type_name (p. 1342) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lbc_var_defns ( id )

Description:
Gets all the lbc variables for an lbc type definition from the database, in get all, get next
method. See also db_get_next_lbc_var_defn (p. 306).
Input:
INTEGER id The lbc type ID for the row selected.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Example:
Please see db_get_all_lbc_var_defns (p. 1325) in the MSC.Acumen, Volume 2: Code Examples
.

db_get_next_lbc_var_defn ( cat, eldim )

Description:
Gets next lbc variable for an lbc type definition from the database. See also
db_get_all_lbc_var_defns (p. 306).
Input:
none
Output:
INTEGER cat The category of this lbc type.
STRING eldim The element shape to get this label.

Main Index
CHAPTER 11 307
Loads and Boundary Conditions

INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses records in the “Lbc Variable Defn” table in the database.
Example:
See example under db_get_all_lbc_var_defns (p. 306). See also db_get_next_lbc_var_defn
(p. 1343) in the MSC.Acumen, Volume 2: Code Examples.

db_get_lbc_id ( name, id )

Description:
Retrieves the lbc id associated with the specified lbc name.
Input:
STRING name[31] Pointer to a string containing the name of the lbc.
Output:
INTEGER id Location to receive the resulting value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000103 No LBC was found.
13000007 An unspecified database error occurred.
Example:
Please see db_get_lbc_id (p. 1328) in the MSC.Acumen, Volume 2: Code Examples.

db_get_lbc_name ( id, name )

Description:
Retrieves the lbc name associated with the specified lbc id.
Input:
INTEGER id Integer containing the ID of the lbc.
Output:
STRING name[31] Pointer to a string where the name of the lbc is to be placed.
INTEGER <Return Value> Returns the success or failure of the routine.
Example:
Please see db_get_lbc_name (p. 1329) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
308
Function Descriptions

db_get_lbc_type_defn ( name, id, class, form, gbc, cid, g_sym, sv, nv, nbr_ac,
an_code, defcol, cbid, anstyl )

Description:
This function will get the attributes of an lbc type definition from the database.
Input:
STRING name[31] This value specifies the name of the lbc type.
Output:
INTEGER id This value returns the id value of the lbc type.
INTEGER class This value returns the class of the lbc type which can be either
structural, thermal, or other.
INTEGER form This value returns the form of the lbc which can be either a body
or a boundary.
INTEGER gbc This value returns an indication stating if the lbc is a global
boundary condition.
INTEGER cid This value returns an indication stating if the lbc can be defined
in an alternate coord frame.
INTEGER g_sym This value returns the graphics symbol used to display this lbc.
INTEGER sv This value returns an indication stating if this lbc is scalar or
vector.
INTEGER nv This value indicates for vector lbcs whether one or more of the
components can be null.
INTEGER nbr_ac The value returns the number of analysis codes applied to this
lbc.
INTEGER an_code(20) This value returns the valid analysis code id values for this lbc.
INTEGER defcol This value returns the default color of the graphics associated
with the lbc.
INTEGER cbid This value returns the color box id of the graphics associated
with the lbc.
INTEGER anstyl This value returns the anchor style of the graphics associated
with the lbc.
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:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
13000101 No LBC Definition was found.
External Dependencies and Side Effects:
Accesses all records in the “lbc type” table in the database.
Example:
Please see db_get_lbc_type_defn (p. 1330) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 11 309
Loads and Boundary Conditions

db_get_lbc_var_defn ( lbc_type_id, lbc_category, eldim, label, id )

Description:
Gets the lbc variable defn from the database.
Input:
INTEGER lbc_type_id The ID of the lbc type in the database.
INTEGER lbc_category The ID of the lbc type in the database
INTEGER eldim The dimensionality of the lbc type in the database.
STRING label[] The label of the variable in the database.
Output:
INTEGER id The unique internal ID of the lbc type variable in the
database.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000101 No LBC Definition was found.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Accesses all records in the “lbc_variable_defn” table in the database.
Example:
Please see db_get_lbc_var_defn (p. 1332) in the MSC.Acumen, Volume 2: Code Examples.

db_get_loads_for_element ( nbr_of_lbcs, elem_id, lbc )

Description:
Returns the loads and boundary conditions for an element.
Input:
INTEGER nbr_of_lbcs The amount of memory allocated for the lbc IDs.
INTEGER elem_id The element ID.
Output:
INTEGER lbc() The lbc IDs.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000093 Too Many Values Returned for Space Allocated.
13000157 Fewer values were returned than the amount requested.
External Dependencies and Side Effects:
This routine access the element, fem_ss_lbc, fem_sv_lbc, fem_ds_lbc and fem_dv_lbc tables.
Example:
Please see db_get_loads_for_element (p. 1335) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
310
Function Descriptions

db_get_load_cases_with_lbc ( lbc_id, num_loadcases, loadcase_ids, priority )

Description:
Retrieves the number of load cases associated with an lbc.
Input:
INTEGER lbc_id The ID of the lbcs to which the load cases are associated in
the database.
INTEGER num_loadcases The input/output field containing the maximum number of
load cases on input and the actual number of load cases
retrieved from the database on output.
Output:
INTEGER num_loadcases The input/output field containing the maximum number of
load cases on input and the actual number of load cases
retrieved from the database on output.
INTEGER loadcase_ids() Array of the IDs of the load cases assigned to this lbc id.
INTEGER priority() Priority associated with the assigned load set.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Retrieves multiple entries from the “assigned_load_case” relation.
Example:
Please see db_get_load_cases_with_lbc (p. 1333) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_valid_cat_by_type ( typid, cat )

Description:
Retrieves all valid categories from the database for a specified type. The maximum number of
categories for a type is three.
Input:
INTEGER typid The specific lbc type for which the category is requested.
Output:
INTEGER cat(3) The categories associated with the specified lbc type.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches the categories associated with specified type from the lbc_variable_defn relation.
Example:
Please see db_get_valid_cat_by_type (p. 1345) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 11 311
Loads and Boundary Conditions

db_get_valid_eldim_by_type_cat ( typid, cat, eldim )

Description:
Retrieves all valid element dimensions for the specified types and categories in the database.
The maximum number of element dimensions is five.
Input:
INTEGER typid The specific lbc type for which the element dimensionality is
requested.
INTEGER cat The categories associated with the specified lbc type.
Output:
INTEGER eldim(5) The types of element dimensionality which correspond to the
input type and category.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches the element dimensionalities associated with specified type and category of lbc from
the lbc_variable_defn relation.
Example:
See example for db_get_valid_cat_by_type (p. 310). See also
db_get_valid_eldim_by_type_cat (p. 1346) in the MSC.Acumen, Volume 2: Code Examples.

db_get_valid_lbc_var_ids ( typid, cat, eldim, count, vid )

Description:
Retrieves all valid element variable ids for the specified combination pf type, category, and
dimensionality specified from the database.
Input:
INTEGER typid The specific lbc type for which the element dimensionality is
requested.
INTEGER cat The categories associated with the specified lbc type.
INTEGER eldim The types of element dimensionality for which the variable
IDs are requested.
INTEGER count Input/Output field which specifies the maximum storage
allocated by the calling routine, and outputs the actual
number of variable IDs fetched if it is not greater than the
count.
Output:
INTEGER count Input/Output field which specifies the maximum storage
allocated by the calling routine, and outputs the actual
number of variable IDs fetched if it is not greater than the
count.
INTEGER vid() Array of variable IDs defined by the combination of items
input.
INTEGER <Return Value> Returns the success or failure of the routine.
Main Index
312
Function Descriptions

Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Fetches the element dimensionalities associated with specified type and category of lbc from
the lbc_variable_defn relation.
Example:
Please see db_get_valid_lbc_var_ids (p. 1348) in the MSC.Acumen, Volume 2: Code Examples.

db_modify_load_case ( id, name, type, desc, nbrlc, lbc, dlcname, mv, priority )

Description:
Modifies a load case in the database.
Input:
INTEGER id The unique internal ID of the load case being modified in the
database.
STRING name[80] The new name of the load case being modified in the
database.
INTEGER type The new type of the load case being modified.
STRING desc[256] The description of the load case being modified.
INTEGER nbrlbc The number of lbcs being attached to this load case.
INTEGER lbc() Array of the IDs of the load\bc set IDs assigned to this load
case.
STRING dlcname[80] The name of the dynamic load case being used as a basis for
this definition. (This field is only applicable if a static load
case is being created from a dynamic load case.)
REAL mv Map variable.
INTEGER priority() The priority for the assigned load set.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000075 Load case name exists.
13000052 Load Case Not Found.
13000002 Unrecoverable database error.
External Dependencies and Side Effects:
Updates an entry in the “load_case” relation in the database and deletes and adds multiple
entries to the “assigned_load_case” relation.
Example:
Please see db_modify_load_case (p. 1349) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Materials
12
■ Database
■ Laminate Modeler

Main Index
314
Function Descriptions

12.1 Database

db_bulk_get_possible_cond_opts1 (etid, atid, acid, nbr, coc)

Description:
Retrieves all possible values of the condense option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
Output:
INTEGER nbr The number of condense option codes that were found for the
above specified set of parameters.
INTEGER coc() The unique condense option code values that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Fetches all condense option codes for the input set of parameters.
Example:
Please see db_bulk_get_possible_cond_opts1 (p. 1370) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_cond_opts2 (etid, atid, acid, goc, nbr, coc)

Description:
Retrieves all possible values of the condense option for the specified input options.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER goc The ID of the geometric option code selected.
Output:
INTEGER nbr The number of condense option codes that were found for the
above specified set of parameters.
INTEGER coc() The unique condense option code values that were found for
the above specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Main Index
CHAPTER 12 315
Materials

Remarks:
Fetches all condense option codes for the input set of parameters.
Example:
Please see db_bulk_get_possible_cond_opts2 (p. 1371) in the MSC.Acumen, Volume 2: Code
Examples.

db_bulk_get_possible_dof_sets (etid, atid, acid, coc, goc, foc, loc, mlc, mdc, nbr, dsid)

Description:
Retrieves all possible values of the condensation option for the specified input options. If an
input option is 0, it does not have a uniquely assigned value yet. The first three parameters
may not be zero.
Input:
INTEGER etid The ID of the element type selected by the user.
INTEGER atid The ID of the analysis type currently selected.
INTEGER acid The ID of the analysis code currently selected.
INTEGER coc The ID for the condense option if it has been uniquely
determined at point. otherwise, zero.
INTEGER goc The code for the geometric option if it has been uniquely
determined at point. otherwise, zero.
INTEGER foc The code for the formulation option if it has been uniquely
determined at point. otherwise, zero.
INTEGER loc The code for the laminate option if it has been uniquely
determined at point. otherwise, zero.
INTEGER mlc The code for the formulation option if it has been uniquely
determined at point. otherwise, zero.
INTEGER mdc The code for the material directionality if it has been uniquely
determined at point. otherwise, zero.
Output:
INTEGER nbr The number of condense option codes that were found for the
above specified set of parameters
INTEGER dsid() The unique dof set ID values that were found for the above
specified set of values.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Fetches all dof set ids for the input set of parameters.
Example:
Please see db_bulk_get_possible_dof_sets (p. 1372) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
316
Function Descriptions

db_get_constitutive_model (cid, cm_id, cm_name, linearity_code)

Description:
Gets a constitutive model in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER cm_id The constitutive model ID.
Output:
STRING cm_name[] The constitutive model name.
INTEGER linearity_code The linearity code.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine retrieves a row in the constitutive_model table in the database.
Example:
See example for db_get_matl_category (p. 318) or db_get_matl_prop_defn (p. 331). See also
db_get_constitutive_model (p. 1394) in the MSC.Acumen, Volume 2: Code Examples.

db_get_valid_const_models_count (cid, atid, mc_id, nbr)

Description:
Returns the number of valid constitutive models for the given analysis code ID, analysis type
ID and material category ID.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
Output:
INTEGER nbr The number of valid constitutive models.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the valid_constitutive_models table.
Example:
See example for db_get_valid_const_models (p. 317). See also
db_get_valid_const_models_count (p. 1414) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 317
Materials

db_get_valid_const_models (cid, atid, mc_id, cm_id)

Description:
Returns the constitutive model IDs for the given analysis code ID, analysis type ID and
material category ID.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
Output:
INTEGER cm_id() The constitutive model IDs.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the valid_constitutive_models table.
Example:
Please see db_get_valid_const_models (p. 1413) in the MSC.Acumen, Volume 2: Code Examples.

db_mo_const_models_specified (mid, cm_id, magics, active)

Description:
Modifies a constitutive model specified in the database.
Input:
INTEGER mid The material ID.
INTEGER cm_id The constitutive model ID.
INTEGER magics(5) The magic numbers ID.
INTEGER active The active flag.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000120 The material specified in the query was not found
13000164 The constitutive model was not found in the database
Remarks:
This routine modifies rows in the constitutive_mmodels_specified table in the database.
Example:
Please see db_mo_const_models_specified (p. 1417) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
318
Function Descriptions

db_delete_matl_const_model (mid, cmid)

Description:
Deletes a constitutive model defn from the database.
Input:
INTEGER mid The ID of the material associated with the material property
value.
INTEGER cmid The ID of the constitutive model.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes one record in the “matl_const_model_defn” table in the database.
Example:
Please see db_delete_matl_const_model (p. 1380) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_matl_category (cid, mc_id, mc_name, dirctionality)

Description:
Gets a material category definition in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER mc_id The material category defn ID.
Output:
STRING mc_name[] The material category defn name.
INTEGER dirctionality The directionality code.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine retrieves a row in the matl_category table in the database.
Example:
Please see db_get_matl_category (p. 1397) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 319
Materials

db_get_valid_mtl_category_cnt (cid, atid, nbr)

Description:
Returns the number of valid material categories for the given analysis code ID and analysis
type ID.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
Output:
INTEGER nbr The number of valid material categories.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the valid_material_categories table.
Example:
Please see db_get_valid_mtl_category_cnt (p. 1416) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_valid_mtl_categories (cid, atid, mc_id)

Description:
Returns the valid material categories for the given analysis code ID and analysis type ID.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
Output:
INTEGER mc_id() The material category ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the valid_material_categories table.
Example:
See example for db_get_valid_mtl_category_cnt (p. 319). See also
db_get_valid_mtl_categories (p. 1415) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
320
Function Descriptions

db_create_mtl_allowable_magics (cid, mc_id, magic_category_id, magic_alias_id,


nbr)

Description:
Creates ’nbr’ records in the allowable_magic_prop table.
Input:
INTEGER cid The analysis code ID.
INTEGER mc_id The material category ID. See Material Categories (p. 389) in
the PCL and Customization.
INTEGER magic_category_id The magic category ID. See Material Options and Material
Option Categories (p. 393) in the PCL and Customization.
INTEGER magic_alias_id() The magic (ooh) alias ID. See
db_create_mtl_magics_options (p. 394) in the PCL and
Customization.
INTEGER nbr The number of magic aliases.
Output:
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine access the allowable_magic_prop table.
Example:
Please see db_create_mtl_allowable_magics (p. 1376) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_mtl_allowable_magic_cnt (code_id, matl_cat_id, magic_category_id, nbr)

Description:
Returns the number of allowable magic properties for the given magic_category_id, code_id,
and matl_cat_id
Input:
INTEGER code_id The analysis code ID.
INTEGER matl_cat_id The material category ID.
INTEGER magic_category_id The magic category ID.
Output:
INTEGER nbr The number of magic aliases.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the allowable_magic_prop table.
Example:
Please see db_get_mtl_allowable_magic_cnt (p. 1402) in the MSC.Acumen, Volume 2: Code
Examples.
Main Index
CHAPTER 12 321
Materials

db_count_options (goc, coc, loc, foc, dsid, etop)

Description:
Retrieves a count of the number of distinct geometric (or laminate, or...) option codes.
Input:
None.
Output:
INTEGER goc The count of geometric options.
INTEGER coc The count of condense options.
INTEGER loc The count of laminate options.
INTEGER foc The count of formulation options.
INTEGER dsid The count of dof sets.
INTEGER etop The count of element topologies.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Counts all of the listed option codes.
Example:
Please see db_count_options (p. 1375) in the MSC.Acumen, Volume 2: Code Examples.

db_get_mtl_allowable_magics (code_id, matl_cat_id, magic_category_id,


magic_alias_id)

Description:
Returns the number of allowable magic properties for the given magic_category_id, cid, and
mc_id.
Input:
INTEGER code_id The analysis code ID.
INTEGER matl_cat_id The material category ID.
INTEGER magic_category_id The magic category ID.
Output:
INTEGER magic_alias_id() The magic alias ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the allowable_magic_prop table.
Example:
See example for db_get_mtl_allowable_magic_cnt (p. 320). See also
db_get_mtl_allowable_magics (p. 1403) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
322
Function Descriptions

db_get_mtl_magics (analysis_code_id, analysis_type_id, matl_category_id,


constit_model_id, magic_category_id)

Description:
Returns the material magic categories for the given cid, mc_id, and cm_id
Input:
INTEGER analysis_code_id The analysis code ID.
INTEGER analysis_type_id The analysis type ID.
INTEGER matl_category_id The material category ID.
INTEGER constit_model_id The constitutive model ID.
Output:
INTEGER magic_category_id() The magic category ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the matl_magic table.
Example:
Please see db_get_mtl_magics (p. 1404) in the MSC.Acumen, Volume 2: Code Examples.

db_get_mtl_magics_count (analysis_code_id, analysis_type_id, matl_category_id,


constit_model_id, nbr)

Description:
Returns the number of material magic properties for the given analysis_code_id,
analysis_type_id, matl_category_id, and constit_model_id
Input:
INTEGER analysis_code_id The analysis code ID.
INTEGER analysis_type_id The analysis type ID.
INTEGER matl_category_id The material category ID.
INTEGER constit_model_id The constitutive model ID.
Output:
INTEGER nbr The number of magic categories.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
This routine access the matl_magic table.
Example:
See example for db_get_mtl_magics (p. 322). See also db_get_mtl_magics_count (p. 1406)
in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 323
Materials

db_get_mtl_magics_defn (analysis_code_id, analysis_type_id, magic_category_id,


magic_label)

Description:
Returns the magic label given the analysis code ID and the magic category.
Input:
INTEGER analysis_code_id The analysis code ID.
INTEGER analysis_type_id The analysis type ID.
INTEGER magic_category_id The magic category ID.
Output:
STRING magic_label[] The magic label.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000086 No Records Found
Remarks:
This routine access the matl_magic_definition table.
Example:
See example for db_get_mtl_magics (p. 322). See also db_get_mtl_magics_defn (p. 1407) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_mtl_magics_options (analysis_code_id, magic_alias_id, magic_name)

Description:
Returns the magic alias given the analysis code ID and the magic alias.
Input:
INTEGER analysis_code_id The analysis code ID.
INTEGER magic_alias_id The magic alias ID.
Output:
STRING magic_name[] The magic alias.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000086 No Records Found
Remarks:
This routine access the matl_magic_alias table.
Example:
See example for db_get_matl_prop_defn (p. 331). Please see db_get_mtl_magics_options
(p. 1408) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
324
Function Descriptions

db_get_material_name_from_id (id, mat_name)

Description:
Returns the material name given the ID.
Input:
INTEGER id The material ID.
Output:
STRING mat_name[31] The name of the material.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000120 The material specified in the query was not found
Remarks:
This routine access the material table in the database.
Example:
Please see db_get_material_name_from_id (p. 1396) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_material_id_from_name (mat_name, id)

Description:
Returns the material ID given the name.
Input:
STRING mat_name[31] The name of the material.
Output:
INTEGER id The material ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000120 The material specified in the query was not found
Remarks:
This routine access the material table in the database.
Example:
Please see db_get_material_id_from_name (p. 1395) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_materials (count)

Description:
This function returns the number of materials currently defined in the database.
Input:
None.

Main Index
CHAPTER 12 325
Materials

Output:
INTEGER count The number of materials in the database
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Counts records in the “material” relation in the database for one specified region.
Example:
See example for db_get_all_material_names (p. 325). See also db_count_materials (p. 1373)
in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_material_names ()

Description:
Gets all material information from the database, in get all, get next method.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Example:
Please see db_get_all_material_names (p. 1385) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_material_name (name, id, cat, lin, dir, type)

Description:
Gets all material information from the database, in get all, get next method.
Input:
None.
Output:
STRING name[] The name of the material retrieved from the database.
INTEGER id The ID of the material.
INTEGER cat The material category.
INTEGER lin The material linearity code.
INTEGER dir The material directionality code.
INTEGER type The material type.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Main Index
326
Function Descriptions

Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred
Remarks:
Accesses all records in the “material” table in the database.
Example:
See example for db_get_all_material_names (p. 325). See also db_get_next_material_name
(p. 1411) in the MSC.Acumen, Volume 2: Code Examples.

db_modify_material (mid, desc, mc_id, lin, dir, matl_type)

Description:
Modifies a material in the database.
Input:
INTEGER mid The ID of the material to be modified.
STRING desc[] The description of the material being modified.
INTEGER mc_id The category for the material being modified.
INTEGER lin The linearity of the material being modified.
INTEGER dir The directionality for the material being modified.
INTEGER matl_type The type of the material being modified.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000004 Duplicate entry exists in table
13000007 An unspecified database error occurred
Remarks:
Modifies one record in the “material” table in the database.
Example:
Please see db_modify_material (p. 1419) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_material (name)

Description:
Deletes a material in the database.
Input:
STRING name[] The name of the material to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
CHAPTER 12 327
Materials

Error Conditions:
13000002 Unrecoverable database error
13000004 Duplicate entry exists in table
13000007 An unspecified database error occurred
Remarks:
Deletes one record in the “material” table in the database.
Example:
Please see db_delete_material (p. 1377) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_cond_opt_code_names ()

Description:
Gets all condense_option code names from the database, in get all, get next method.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Example:
Please see db_get_all_cond_opt_code_names (p. 1384) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_next_cond_opt_code_names (name, id)

Description:
Gets all condense_option code names from the database, in get all, get next method.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id The ID received from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred
Remarks:
Accesses all records in the “condense_option” table in the database.
Main Index
328
Function Descriptions

Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_next_cond_opt_code_names (p. 1410) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_lam_opt_code_names ()

Description:
Gets all laminate_option code names from the database, in get all, get next method.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Example:
See example for db_get_all_cond_opt_code_names (p. 327). See also
db_get_all_lam_opt_code_names (p. 1384) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_lam_opt_code_names (name, id)

Description:
Gets all laminate_option code names from the database, in get all, get next method.
Input:
None.
Output:
STRING name[31] The name retrieved from the database.
INTEGER id The ID retrieved from the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred
Remarks:
Accesses all records in the “laminate_option” table in the database.
Example:
See example fordb_get_all_cond_opt_code_names (p. 327). See also
db_get_next_lam_opt_code_names (p. 1410) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 329
Materials

db_get_allowable_matl_prop (cid, atid, mc_id, cm_id, magics, mp_id)

Description:
Returns an allowable material property in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
INTEGER cm_id The constitutive model ID.
INTEGER magics(5) The magic numbers ID.
Output:
INTEGER() mp_id() The material prop alias IDs.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine returns a row from the allowable_matl_prop table in the database.
Example:
Please see db_get_allowable_matl_prop (p. 1387) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_all_allow_matl_prop_cnt (cid, atid, mc_id, cm_id, nbr)

Description:
Returns an allowable material property in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
INTEGER cm_id The constitutive model ID.
Output:
INTEGER nbr The number of material prop aliases.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine returns a row from the allowable_matl_prop table in the database.
Example:
See example for db_get_all_allowable_matl_prop (p. 330). See also
db_get_all_allow_matl_prop_cnt (p. 1381) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
330
Function Descriptions

db_get_allowable_matl_prop_cnt (cid, atid, mc_id, cm_id, magics, nbr)

Description:
Returns an allowable material property in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
INTEGER cm_id The constitutive model ID.
INTEGER magics(5) The magic numbers ID.
Output:
INTEGER nbr The number of material prop aliases.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine returns a row from the allowable_matl_prop table in the database.
Example:
Please see db_get_allowable_matl_prop_cnt (p. 1388) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_all_allowable_matl_prop (cid, atid, mc_id, cm_id, mp_id)

Description:
Returns all allowable material property in the database for the given analysis code, analysis
type, material category and constitutive model.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
INTEGER cm_id The constitutive model ID.
Output:
INTEGER mp_id() The material prop alias IDs.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine returns rows from the allowable_matl_prop table in the database.
Example:
Please see db_get_all_allowable_matl_prop (p. 1382) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 12 331
Materials

db_get_matl_prop_alias (cid, atid, mc_id, cm_id, mp_id, mp_alias, field_ok)

Description:
Returns a material property alias in the database.
Input:
INTEGER cid The analysis code ID.
INTEGER atid The analysis type ID.
INTEGER mc_id The material category ID.
INTEGER cm_id The constitutive model ID.
INTEGER mp_id The material prop alias ID.
Output:
STRING mp_alias[] The material prop alias.
INTEGER field_ok The field ok flag.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000167 The material property alias was not found in the database
Remarks:
This routine returns a row from the material_prop_alias table in the database.
Example:
Please see db_get_matl_prop_alias (p. 1399) in the MSC.Acumen, Volume 2: Code Examples.

db_get_matl_prop_defn (mp_id, mp_name)

Description:
Returns the material property definition name given the ID.
Input:
INTEGER mp_id The material prop defn ID.
Output:
STRING mp_name[] The material prop defn name.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000163 The material property definition was not found in the database
Remarks:
This routine access the matl_prop_defn table in the database.
Example:
Please see db_get_matl_prop_defn (p. 1400) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
332
Function Descriptions

db_modify_matl_prop_value (mid, mp_id, fid, value, nbr)

Description:
Updates an material property value in the database.
Input:
INTEGER mid The material ID.
INTEGER mp_id() The material prop IDs.
INTEGER fid() The field IDs.
REAL value() The material values.
INTEGER nbr The dimension of the above three arrays.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000120 The material specified in the query was not found.
13000163 The material property definition was not found in the database
13000127 The field entered does not exist.
Remarks:
None.
Example:
Please see db_modify_matl_prop_value (p. 1421) in the MSC.Acumen, Volume 2: Code
Examples.

db_delete_material_property (mid, mpid)

Description:
Deletes a material property value from the database.
Input:
INTEGER mid The ID of the material associated with the material property
value.
INTEGER mpid The ID of the material property.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes one record in the “matl_prop_value” table in the database.
Example:
See example for db_modify_matl_prop_value (p. 332). See also
db_delete_material_property (p. 1378) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 333
Materials

db_get_comp_hal (mat_name, iopt, fiber_name, matrix_name, fiber_vol_frac,


matrix_vol_frac, theory, override, aspect_ratios, empirical_factors)

Description:
Returns the construction data for composite materials generated using the “Halpin -Tsai”
equations, given a material name.
Input:
STRING mat_name[31] The name of the material.
Output:
INTEGER iopt The construction option.
STRING fiber_name[] The name of the fiber.
STRING matrix_name[] The name of the matrix.
REAL fiber_vol_frac The fiber vol frac.
REAL matrix_vol_frac The matrix vol frac.
INTEGER theory The theory.
LOGICAL override The override.
REAL aspect_ratios() A 1 by 2 array of aspect ratios.
REAL emperical_factors() A 1 by 9 array of empirical factors.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
13000086 No Records Found
13000120 The material specified in the query was not found
Remarks:
This routine accesses the material and halpin_tsai tables.
Example:
Please see db_get_comp_hal (p. 1389) in the MSC.Acumen, Volume 2: Code Examples.

db_get_comp_sfc (mat_name, uni_mat_name, ndim, niter, theta_av, sig_theta, phi_av,


sig_phi, rho)

Description:
Returns the construction data for composite materials generated using the “Short Fiber” option,
given a material name.
Input:
STRING mat_name[31] The name of the material.
Output:
STRING uni_mat_name[31] The name of the short fiber.
INTEGER ndim The number of dimensions.
INTEGER niter The number of iterations.
REAL theta_av Theta_av.
REAL sig_theta Sig_theta.
REAL phi_av Phi_av.
REAL sig_phi Sig_phi.
Main Index
334
Function Descriptions

REAL rho Rho.


INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
13000086 No Records Found
13000120 The material specified in the query was not found
Remarks:
This routine accesses the material and short_fiber tables.
Example:
See example for db_get_comp_hal (p. 333). See also db_get_comp_sfc (p. 1391) in the
MSC.Acumen, Volume 2: Code Examples.

mat_3d_ani_to_3d_ort (s11, s12, s13, s22, s23, s33, div_tol, e11, e22, e33, v12, v23,
v31 )

Description:
Given the 3d orthotropic elements of the stiffness matrix, calculates the 3d orthotropic
engineering constants. The shear moduli ( Shear12, Shear23, Shear31 ) are not included since
there is a one to one relationship between them and Stiff44, Stiff55 and Stiff66 in ( 11, 22, 33, 12,
23, 31 ) matrix form. Jones “Mechanics of Composite Materials” ( 1975 ) page 38.
Input:
REAL s11 The 11 element of the stiffness matrix.
REAL s12 The 12 element of the stiffness matrix. Synonymous to s21.
REAL s13 The 13 element of the stiffness matrix. Synonymous to s31.
REAL s22 The 22 element of the stiffness matrix.
REAL s23 The 23 element of the stiffness matrix. Synonymous to s32.
REAL s33 The 33 element of the stiffness matrix.
REAL div_tol The division tolerance.
Output:
REAL e11 The elastic modulus in the 11 direction.
REAL e22 The elastic modulus in the 22 direction.
REAL e33 The elastic modulus in the 33 direction.
REAL v12 Poisson ratio relating directions 1 and 2. Not generally equivalent to
v21.
REAL v23 Poisson ratio relating directions 2 and 3. Not generally equivalent to
v32.
REAL v31 Poisson ratio relating directions 3 and 1. Not generally equivalent to
v13.
Error Conditions:
None.
Remarks:
None.
Example:
Please see mat_3d_ani_to_3d_ort (p. 1425) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 12 335
Materials

engin_cons_to_elastic_matrix (e, c, status)

Description:
Compute the stress-strain coefficients for a 3D orthotropic material from the nine engineering
constants. This routine was called ORTHCZ in the PATRAN 2.5 library. Do not allow any nulls
into the output.
Input:
REAL e(9) e = E11, E22, E33, NU12, NU23, NU31, G12, G23, G31.
Output:
REAL c(21) c = Material stiffness matrix in string format using the
PATCHES sequence for the 21 constants.
INTEGER status status = Error flag (0=success, 1=error)
Error Conditions:
None.
Remarks:
AIR FORCE DESIGN GUIDE CONVENTION
EII*VJI = EJJ*VIJ
Example:
Please see engin_cons_to_elastic_matrix (p. 1422) in the MSC.Acumen, Volume 2: Code
Examples.

mat_2d_ani_to_2d_ort (s11, s12, s22, div_tol, e11, e22, v12 )

Description:
Given the 2d, orthotropic elements of the reduced ( plane stress or 2d ) stiffness matrix,
calculates the 2d engineering constants. The in plane shear modulus is not included since there
is a one to one relationship between it and Stiff33 ( in ( 11, 22, 12 ) matrix form ). Jones
“Mechanics of Composite Materials” ( 1975 ) page 38.
Input:
REAL s11 The 11 element of the plane stress stiffness matrix.
REAL s12 The 12 element of the plane stress stiffness matrix.
Synonymous to s21.
REAL s22 The 22 element of the plane stress stiffness matrix.
REAL div_tol The division tolerance.
Output:
REAL e11 The elastic modulus in the 11 direction.
REAL e22 The elastic modulus in the 22 direction.
REAL v12 The in plane poisson ratio. Not generally equal to v21
Error Conditions:
None.
Remarks:
None.
Example:
Please see mat_2d_ani_to_2d_ort (p. 1424) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
336
Function Descriptions

get_qab_from_engin_cons (e, qab, ier )

Description:
Compute the reduced materials matrix Qab from the 4 engineering constants for a 2D
orthotropic material.
Input:
REAL e( ) Real array that contains the 4 engineering constants:
E(1) = E11.
E(2) = E22.
E(4) = NU12 .
E(7) = G12.
Output:
REAL qab( ) The computed reduced materials matrix
INTEGER ier Integer indicating the success or failure of the routine.
Error Conditions:
None.
Remarks:
All other elements of E are ignored.
Example:
Please see get_qab_from_engin_cons (p. 1423) in the MSC.Acumen, Volume 2: Code Examples.

n21_cons_to_sym_6x6_matrix (cm, cb )

Description:
Form the 6x6 symmetric matrix CM from the 21 terms in CB. This routine was called SYM6X6 in
the PATRAN 2.5 library.
Input:
REAL cb (21) Array of 21 engineering constants.
Output:
REAL cm (6,6) Value of the 6x6 symmetric matrix.
Error Conditions:
None.
Remarks:
None.
Example:
Please see n21_cons_to_sym_6x6_matrix (p. 1438) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 12 337
Materials

mat_load_show (mat_name, itype, iopt, desc, rvals, num_phases )

Description:
Load the material properties into the format needed for display after performing some error
checking.
Input:
STRING mat_name[] Material name.
INTEGER itype Please see Remarks below.
INTEGER iopt Composite option number (used only for HAL and SFC;
Halpin-Tsai = Option number (1-5)
Short Fiber = Option number (1-2) ).
Output:
STRING desc[2500] Material description.
REAL rvals(6, 36) Array of material properties.
INTEGER num_phases A type-dependent integer ( Laminate = ply count Rule-of-
Mixtures = phase count )
INTEGER <Return Value> See error returned.
Error Conditions:
28003001 The material name is ““blank””. Enter a material name.
28003026 Material %A% is not a laminated composite.
28003038 Material %A% is not a Rule-of-Mixtures composite.
28003059 Material %A% is not a Halpin-Tsai composite.
28003070 Short Fiber material %A% is a %A% material, but the existing form is used to
display %A% materials.
28003069 Halpin-Tsai material %A% is a %A% material, but the existing form is used to
display %A% materials.
28004416 Material %A% does not exist.
Remarks:
Composite material type.
#define MAT_TYP_HOMOG 0
#define MAT_TYP_LAM 1
#define MAT_TYP_MIX 2
#define MAT_TYP_HAL 3
#define MAT_TYP_SFC 4
#define MAT_TYP_EXTERNAL 101
Example:
See example for mat_hal_load_defn_show (p. 338), mat_lam_load_defn_show (p. 339),
mat_mix_load_defn_show (p. 339) or mat_sfc_load_defn_show (p. 340). See also
mat_load_show (p. 1430) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
338
Function Descriptions

mat_hal_load_defn_show (mat_name, iopt, fiber_name, matrix_name, fvf, mvf,


aratio1, aratio2, theory, override, fudge_factor1,
fudge_factor2, fudge_factor3, fudge_factor4, fudge_factor5,
fudge_factor6 )

Description:
Load the Halpin-Tsai material definition data into the format needed for display.
Input:
STRING mat_name[] Halpin-Tsai material name.
INTEGER iopt Halpin-Tsai option flag :
1=continuous fiber
2=discontinuous fiber
3=continuous ribbon
4=discontinuous ribbon
5=particulate).
Output:
STRING fiber_name[] Fiber material name.
STRING matrix_name[] Matrix material name.
REAL fvf Fiber volume fraction.
REAL mvf Matrix volume fraction.
STRING aratio1[] String representation of 1st aspect ratio.
STRING aratio2[] String representation of 2nd aspect ratio.
INTEGER theory 1=New Theory (GTT).
2=Old Theory (NUTT).
LOGICAL override If ON, use empirical factors in ESTRINGi.
STRING fudge_factor1[] String representation of 1st empirical factor
STRING fudge_factor2[] String representation of 2nd empirical factor
STRING fudge_factor3[] String representation of 3rd empirical factor.
STRING fudge_factor4[] String representation of 4th empirical factor.
STRING fudge_factor5[] String representation of 5th empirical factor
STRING fudge_factor6[] String representation of 6th empirical factor.
INTEGER <Return Value> See error returned.
Error Conditions:
28003001 The material name is ““blank””. Enter a material name.
28004416 Material %A% does not exist.
28003069 Halpin-Tsai material %A% is a %A% material, but the existing form is used to
display %A% materials.
28003060 Unable to show the properties for composite material %A%.
Remarks:
None.
Example:
Please see mat_hal_load_defn_show (p. 1426) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 339
Materials

mat_lam_load_defn_show (mat_name, num_plies, ply_names, thicks, orients,


num_def, iconv, offset_string )

Description:
Load the laminate definition data into the format needed for display.
Input:
STRING mat_name[] Laminate material name.
INTEGER num_plies Number of plies.
Output:
INTEGER ply_names Ply material names (passed as an integer to get through the
wrapper).
REAL thicks Ply thicknesses (passed as an integer to get through the
wrapper).
REAL orients Ply orientations (passed as an integer to get through the
wrapper)
INTEGER num_def Number of plies defined (!= total ply count if ICONV > 1)
INTEGER iconv Stacking sequence convention.
STRING offset_string[] String containing laminate offset.
INTEGER <Return Value> See error returned.
Error Conditions:
28003001 The material name is ““blank””. Enter a material name.
28004416 Material %A% does not exist
28003042 Unable to show the offset for laminate material %A%.
Remarks:
None.
Example:
Please see mat_lam_load_defn_show (p. 1428) in the MSC.Acumen, Volume 2: Code Examples.

mat_mix_load_defn_show (mat_name, num_phases, name_string2, name_string3,


name_string4, phase_string, v_f_string, orient_string, ncn,
ncv, nco )

Description:
Load the Rule-of-Mixtures material definition data into the format needed for display.
Input:
STRING mat_name[] Rule-of-Mixtures material name.
INTEGER num_phases Number of phases.
Output:
STRING name_string2[] String containing the second phase material name and
workspace.
STRING name_string3[] String containing the third phase material name and
workspace.
STRING name_string4[] String containing the fourth phase material name and
workspace.
STRING phase_string[] String containing the primary phase material name.
Main Index
340
Function Descriptions

STRING v_f_string[] Strings containing compressed phase volume fraction string


and compressed ply orientation string.
STRING orient_string[] String containing the orientation string.
INTEGER ncn Number of characters in compressed phase material name
string
INTEGER ncv Number of characters in compressed phase volume fraction
string
INTEGER nco Number of characters in compressed phase orientation string.
INTEGER <Return Value> See error returned.
Error Conditions:
28003001 The material name is ““blank””. Enter a material name.
28003038 Material %A% is not a Rule-of-Mixtures composite.
28003043 Unable to show the phase material name string for Rule-of-Mixtures material
%A%.
28003044 Unable to show the phase volume fraction string for Rule-of-Mixtures material
%A%.
28003045 Unable to show the phase orientation string for Rule-of-Mixtures material %A%.
28004416 Material %A% does not exist.
Remarks:
None.
Example:
Please see mat_mix_load_defn_show (p. 1432) in the MSC.Acumen, Volume 2: Code Examples.

mat_sfc_load_defn_show (mat_name, iopt, uni_mat_name, fmo, smo, fsd, ssd, cor,


niter )

Description:
Load the Short Fiber material definition data into the format needed for display.
Input:
STRING mat_name[] Short Fiber material name.
INTEGER iopt Short Fiber material option.
Output:
STRING uni_mat_name[] Unidirectional material name.
REAL fmo First mean orientation.
REAL smo Second mean orientation
REAL fsd First standard deviation.
REAL ssd Second standard deviation.
REAL cor Correlation coefficient
INTEGER niter Number of Monte Carlo iteration.
INTEGER <Return Value> See error returned.
Error Conditions:
28003001 The material name is ““blank””. Enter a material name.
28003070 Short Fiber material %A% is a %A% material, but the existing form is used to
display %A% materials.
28004416 Material %A% does not exist
Main Index
CHAPTER 12 341
Materials

Remarks:
None.
Example:
Please see mat_sfc_load_defn_show (p. 1434) in the MSC.Acumen, Volume 2: Code Examples.

material.namedelete (<material_name>, <descrip>, <num_material>)

Description:
This function creates finite element mesh on solids and returns the FEM data for the solid. It
returns an integer status of zero on successful completion.
Input:
STRING material_name[]() The names of the material. Array size gets allocated from
ARRAY the num_material argument.
STRING descrip[] Description of the material. Can be “”.
INTEGER num_material The number of materials to be deleted.
Output:
INTEGER <Return Value> 0 for success., error code for failure.
Error Conditions:
130000120 Material does not exist in the database
130000007 Database not open.
Example:
Please see material.namedelete (p. 1436) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
342
Function Descriptions

12.2 Laminate Modeler

p3cm.close_2 (detail )

Description:
This function closes the Laminate Modeler Layup database.
Input:
INTEGER detail Value is 0 for closing the file.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None.
Example:
Please see p3cm.close_2 (p. 1439) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.create_book_layup2 (num_plies_in, index_in, report_it, state, rep_togs,


display_it, material, view_arrow, init_vector, disp_area,
max_strn, angles, pattern, cutout, offval, pat_igs, pat_dxf,
cut_igs, cut_dxf, curve_str, layer_str, hardcopy_it, options )
Description:
This function creates the book report of the layup existing in the Laminate Modeler database.
The layup report file “./filename.lm_report” is created. The postscript file
“./filename.1_ply_1.ps.01” is also created.
Input:
INTEGER num_plies_in Number of plies in the database.
INTEGER index_in() Array of the index.
LOGICAL report_it Layup report option display.
STRING state[] Status of the layup report i.e. “Expand” or “Compress”
LOGICAL rep_togs(6) Array of the report which toggles display options “Index”,
“Name”, “Type”, Multiplier”, “Side” & “Angle Offset”
LOGICAL display_it Ply data display option.
LOGICAL material Material . This is the Laminate Modeler Ply Graphics
Display Option.
LOGICAL view_arrow Application Direction . This is the Laminate Modeler Ply
Graphics Display Option.
LOGICAL init_vector Reference Direction . This is the Laminate Modeler Ply
Graphics Display Option.
LOGICAL disp_area Selected Area. This is the Laminate Modeler Ply Graphics
Display Option.
LOGICAL max_strn Maximum Strain . This is the Laminate Modeler Ply Graphics
Display Option.
LOGICAL angles Angles. This is the Laminate Modeler Ply Graphics Display
Option.
LOGICAL pattern Draped Pattern. This is the Laminate Modeler Ply Graphics
Display Option.
Main Index
CHAPTER 12 343
Materials

LOGICAL cutout Flat Pattern. This is the Laminate Modeler Ply Graphics Display
Option.
REAL offval Offset value. By default, value is 0.0.
LOGICAL pat_igs This is the Laminate Modeler Ply “Draped Pattern IGES
files” Export Option.
LOGICAL pat_dxf This is the Laminate Modeler Ply “Draped Pattern DXF
files” Export Option.
LOGICAL cut_igs This is the Laminate Modeler Ply “Flat Pattern IGES files”
Export Option.
LOGICAL cut_dxf This is the Laminate Modeler Ply “Flat Pattern DXF files”
Export Option.
STRING curve_str[] “POLYLINE” or “SPLINE”
STRING layer_str[] Layer String.
LOGICAL hardcopy_it Image creation display option.
STRING options[] “printer=Postscript Default, driver=Postscript,
destination=Unknown, window=Current Viewport,
save=YES, output_file=, paper=Letter, left_margin=0.5 in,
right_margin=0.5 in, top_margin=0.5 in,
bottom_margin=0.5 in, default_units=Inches,
orientation=Landscape, copies=1, format=Black to White,
background=White, lines_&_text=Black, line_weight=0.5
pts, text_scale=100%, image_size=Fit on Page,
scale_factor=1.0, center=Yes, draw_borders=Yes,
quality=Normal, color_model=RGB, gcr=75 %”
Output:
<Return Status> This function creates the layup report file
“./filename.lm_report.0*”. and postscript file
“./filename.1_ply_1.ps.0*” .
Error Conditions:
None
Example:
Please see p3cm.create_book_layup2 (p. 1440) in the MSC.Acumen, Volume 2: Code Examples.

P3cm.create_laminates_layup_2 (areaspec, an_code_name, an_type_name,


orientation, prim_entity, switch_angle_in, sec_entity,
num_tols, ang_tols, thick_tols, tol_areas,
element_type, prefix, first_laminate_id,
first_property_id, preview )
Description:
This function creates the laminate layup in the Laminate Modeler database.
Input:
STRING areaspec[] “Select Area”, “ALL” or “Select Elements”
STRING an_code_name[] “MSC.Nastran”
STRING an_type_name[] “STRUCTURAL”
STRING orientation[] Laminate Orientation i.e. “Coordinate System”, “Vector”,
“Angle” or “Laminate Only”.
STRING prim_entity[] Primary Coordinate System.
Main Index
344
Function Descriptions

REAL switch_angle_in Switch Angle Value.


STRING sec_entity[] Secondary Coordinate System
INTEGER num_tols Tolerance number.
REAL ang_tols() Angle tolerance array. By default value is 5.0 degrees.
REAL thick_tols() Thickness tolerance array. By default value is 5.0 %
STRING tol_areas[]() Array of the define overrides
STRING element_type[] Selection of the element type for analysis model as below:
"2D_Stan. Lam. Plate (CQUAD4/PCOMP)",
"2D_Rev. Lam. Plate (CQUAD4/PCOMP)"
STRING prefix[] Prefix i.e. LM_Layup.
INTEGER first_laminate_id First laminate identifier.
INTEGER first_property_id First property identifier.
LOGICAL preview Preview Option. TRUE for Display.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see P3cm.create_laminates_layup_2 (p. 1443) in the MSC.Acumen, Volume 2: Code
Examples.

p3cm.create_layup_add_2 (layup_name, layup_description, num_plies, ply_names,


type_names, instances, sides, offsets, num_offs,
off_values, off_flags, off_starts, off_views, off_areas,
num_tols, ang_tols, thick_tols, tol_areas, model_flag,
element_type, solid_flag, bacon_flag )
Description:
This function creates the layup in the Laminate Modeler database.
Input:
STRING layup_name[] Laminate Modeler layup name.
STRING layup_description[]As Default, the description is:
"LM_Layup created from : ./Filename by LAMINATE
MODELER"
INTEGER num_plies Number of Laminate Modeler plies
STRING ply_names[]() Array of Laminate Modeler ply names
STRING type_names[]() Array of Laminate Material material types.
INTEGER instances() Array size depends upon the number of plies.
STRING sides[]() Array of sides. “Top”, “Bottom” and “Middle”.
REAL offset() Array of offsets values. By default it is 0.
INTEGER num_offs Offsets number.
REAL off_values() Offsets values array. By deault value is 0.0.
STRING off_flags[]() Offsets flags array.
REAL off_starts() Offsets starts array. By default value is 0.0.
REAL off_views() Offsets views array. By default value is 0.0.
STRING off_areas[]() Array of the define offsets selected areas values.
Main Index
CHAPTER 12 345
Materials

INTEGER num_tols Tolerance number.


REAL ang_tols() Angle tolerance array. By deault value is 5.0 degrees.
REAL thick_tols() Thickness tolerance array. By default value is 5.0 %
STRING tol_areas[]() Array of the define overrides
LOGICAL model_flag Analysis Model Display Option.
STRING element_type[] Selection of the element type for analysis model as below:
"2D_Stan. Lam. Plate (CQUAD4/PCOMP)", "2D_Rev.
Lam. Plate (CQUAD4/PCOMP)"
LOGICAL solid_flag Solid element Option.
LOGICAL bacon_flag BACON Option.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not create layup due to insufficient input data.
Example:
Please see p3cm.create_layup_add_2 (p. 1446) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.create_material_add (type_name, material_name, analysis_material_name,


thickness, max_strain, warp_weft_angle)
Description:
This function creates the material name for Laminate Modeler database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”,
“Scissor”, “Slide” or “Project”
STRING material_name[] Laminate Modeler material name
STRING analysis_material_name[]Created material name in the database.
REAL thickness Additional property of the material. By default the
value of thickness is 0.1 unit.
REAL max_strain Additional property of the material. By default the
value of the Maximum Strain is taken 60.0 degrees.
REAL warp_weft_angle Additional property of the material. By default the
value of the Warp/Weft Angle is 90.0 degrees.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Material name already used. Layup Module Error.
Example:
Please see p3cm.create_material_add (p. 1448) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
346
Function Descriptions

p3cm.create_ply_add_2 (type_name, material_name, ply_name, start_pt, view_dirn,


ref_dirn, ref_ang, warp_weft_angle, max_strain, step_length,
axis_type, warpaxis_str, weftaxis_str, extn_type,
max_sweeps, bounds, num_areas, area_strs, split_str)
Description:
This function creates the new ply for Laminate Modeler database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”, “Scissor”,
“Slide” or “Project”
STRING material_name[] Laminate Modeler Material Name
STRING ply_name[] Laminate Modeler Ply Name
REAL start_pt(3) Starting Point (3D coordinate)
REAL view_dirn(3) Application Direction as a 3D vector .
REAL ref_dirn(3) Reference Direction, by default it is [0., 0., 0.]
REAL ref_ang Reference Angle, by default it is 0.0.
REAL warp_weft_angle Additional Material Property. By default the value of the
Warp/Weft Angle is 90.0 degrees.
REAL max_strain Additional Material Property. By default the value of the
Maximum Strain is taken 60.0 degrees.
REAL step_length Step Length is the parameter of geometry. By default value
is 1.0
INTEGER axis_type This is a Control Parameter used for Geometry i.e.
0 - None Axis type
1 - Geodesic Axis type
2 - Planner
STRING warpaxis_str[] Warp Axis String, By default value ““
STRING weftaxis_str[] Waft Axis String, By default value ““
INTEGER extn_type This is the extension type used for geometry control
parameters:
1 - Geodesic
2 - Energy
3 - Maximum
INTEGER max_sweeps By default value is 0
REAL bounds() Boundaries Parameters Array for limit fabric size. This is
the array of four elements for example: [minimum warp,
maximum warp, minimum weft, maximum weft]
INTEGER num_areas Number of selected areas.
STRING area_strs[]() Array of the selected areas.
STRING split_str[] Split Definition selected either by Geometry or by FEM
data.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not create ply due to insufficient input data.
Example:
Please see p3cm.create_ply_add_2 (p. 1450) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 12 347
Materials

p3cm.create_results_failure ( res_name, area, criterion, basis, num_mats,


mat_names, mat_allows, name, ply_sort, ply_results,f
ailure_index, reserve_factor, margin_safety,
critical_component, critical_ply )
Description:
This function creates the Laminate Modeler results by using the LM_Ply Failure Calculation
method.
Input:
STRING res_name[]() Array of the results names, i.e. load case, subcase,
primary result case, secondary result case & layer result
case.
STRING area[] Selected area for results data.
STRING criterion[] Criteria set for getting the results i.e. “Maximum”, “Tsai-
Wu”, “Hill”, “Haffman”, “Hakinson”, “Cowin” & “User
Defiened”.
STRING basis[] Basis of the failure i.e. “STRESS” etc.
INTEGER num_mats Number of materials.
STRING mat_names[]() Array of the LM material for selected area and other
parameters.
REAL mat_allows() Array of the material allowables.
STRING name[] Name of the created results.
LOGICAL ply_sort “Ply_Sort” Option is not yet implemented in the
Laminate Modeler. By default it is FALSE.
LOGICAL ply_results Ply by Ply Results Display Option.
LOGICAL failure_index Failure Index Display Option.
LOGICAL reserve_factor “Reserve_Factor” Option is not yet implemented in the
Laminate Modeler. By default it is FALSE.
LOGICAL margin_safety Margin of Safety Display Option.
LOGICAL critical_component Critical Component Display Option.
LOGICAL critical_ply Critical Ply Display Option.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Module Error.
Example:
Please see p3cm.create_results_failure (p. 1452) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.create_results_mid_sort ( res_name, area, num_mats, mat_names)

Description:
This functions creates the Laminate Modeler results by using the material identifier sorting
method.
Input:
STRING res_name[]() Array of the results names, i.e. load case, subcase,
primary result case, secondary result case & layer
result case.
STRING area[] Selected area for results data.
Main Index
348
Function Descriptions

INTEGER num_mats Number of materials.


STRING mat_names[]() Array of the LM material for selected area and
other parameters.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Module Error.
Example:
Please see p3cm.create_results_mid_sort (p. 1454) in the MSC.Acumen, Volume 2: Code
Examples.

p3cm.create_results_sort (res_name)

Description:
This functions creates the Laminate Modeler results by using the LM_Ply Sorting method.
Input:
STRING res_name[]() Array of the results names, i.e. load case, subcase,
primary result case, secondary result case & layer result
case.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Module Error.
Example:
Please see p3cm.create_results_sort (p. 1455) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.delete_laminates (num_laminates, laminates)

Description:
This function deletes the laminates from the Laminate Modeler database.
Input:
INTEGER num_laminates Number of laminates.
STRING laminates[](num_laminates)Array of the laminates.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None.
Example:
Please see p3cm.delete_laminates (p. 1457) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 349
Materials

p3cm.delete_material_name (type_name, material_name)

Description:
This function deletes the material name from the database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”,
“Scissor”, “Slide” or “Project”.
STRING material_name[] Laminate Modeler material name.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not find specified material.
Example:
Please see p3cm.delete_material_name (p. 1458) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.delete_ply_name (type_name, ply_name)

Description:
This function deletes the ply name from the Laminate Modeler database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”,
“Scissor”, “Slide” or “Project”
STRING ply_name[] Laminate Modeler ply name
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not find specified layer.
Example:
Please see p3cm.delete_ply_name (p. 1460) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.delete_propsets (num_propsets, propsets)

Description:
This function deletes the property sets from the Laminate Modeler Database.
Input:
INTEGER num_propsets Number of property sets.
STRING propsets[](num_propsets)Array of the property sets.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
13000119 Property Sets could not retrieved from the database. 0 Property Sets
deleted.
Example:
Please see p3cm.delete_propsets (p. 1461) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
350
Function Descriptions

p3cm.import_model_file_2 (mesh, materials, node_id_offset, elem_id_offset,


create_group, gr_name)
Description:
This function imports the model file from Laminate Modeler database.
Input:
LOGICAL mesh Mesh to be imported.
LOGICAL materials Materials to be imported.
LOGICAL create_group Created group to be imported.
INTEGER node_id_offset Node ID offset.
INTEGER elem_id_offset Element ID offset.
STRING gr_name[] Name of the created group.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.import_model_file_2 (p. 1463) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.import_plies_file_2 (num_files, files, angle_tolerance, distance_tolerance,


create_layup, preview, merge_nodes)
Description:
This function imports the ply file from Laminate Modeler database.
Input:
INTEGER num_files Number of imported ply files
STRING files[](num_files) Array of the imported ply file names.
REAL angle_tolerance Angle tolerance in degrees. By default value is 25. deg.
REAL distance_tolerance Distance tolerance in % . By default value is 5.0 %. This
value is either relative or absolute.
LOGICAL create_layup Add plies to layup option.
LOGICAL preview Preview plies before import option.
LOGICAL merge_nodes Merge Nodes before import option.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not open file for reading.
Example:
Please see p3cm.import_plies_file_2 (p. 1464) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 351
Materials

p3cm.modify_material (type_name, old_material_name, material_name,


analysis_material_name, thickness, max_strain,
warp_weft_angle)
Description:
This function modifies the existing material properties for Laminate Modeler database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”,
“Scissor”, “Slide” or “Project”
STRING old_material_name[] Laminate Modeler existing Material Name
STRING material_name[] Laminate Modeler modified Material Name
STRING analysis_material_name[]Created Material Name in the database.
REAL thickness Additional property of the material. By default the
value of thickness is 0.1 unit.
REAL max_strain Additional property of the material. By default the
value of the Maximum Strain is taken 60.0 degrees.
REAL warp_weft_angle Additional property of the material. By default the
value of the Warp/Weft Angle is 90.0 degrees.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not find Specified Material name. Layup Module Error.
Example:
Please see p3cm.modify_material (p. 1466) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.modify_ply (type_name, material_name, old_ply_name, ply_name, start_pt,


view_dirn, ref_dirn, ref_ang, warp_weft_angle, max_strain,
step_length, axis_type, warpaxis_str, weftaxis_str, extn_type,
max_sweeps, bounds, num_areas, area_strs, split_str)
Description:
This function modifies the existing ply to the new ply name for Laminate Modeler database.
Input:
STRING type_name[] Material type in Laminate Modeler like “Paint”,
“Scissor”, “Slide” or “Project”
STRING material_name[] Laminate Modeler material name
STRING old_ply_name[] Existing ply name
STRING ply_name[] Modified ply name
REAL start_pt(3) Starting point (3D coordinate)
REAL view_dirn(3) Application direction as a 3D vector
REAL ref_dirn(3) Reference direction, by default it is [0., 0., 0.]
REAL ref_ang Reference angle, by default it is 0.0
REAL warp_weft_angle Additional material property. By default the value
of the Warp/Weft Angle is 90.0 degrees.
REAL max_strain Additional material property. By default the value
of the maximum strain is taken 60.0 degrees.
REAL step_length Step length is the parameter of geometry. By
default value is 1.0
Main Index
352
Function Descriptions

INTEGER axis_type This is a control parameter used for Geometry i.e.


0 - None Axis type
1 - Geodesic Axis type
2 - Planner
STRING warpaxis_str[] Warp Axis String, By default value ““
STRING weftaxis_str[] Waft Axis String, By default value ““
INTEGER extn_type This is the Extension type used for Geometry
Control Parameters like:
1 - Geodesic
2 - Energy
3 - Maximum
INTEGER max_sweeps By default value is 0.
REAL bounds() Boundaries Parameters Array for limit fabric size.
This is the array of four elements for example:
[minimum warp, maximum warp, minimum weft,
maximum weft]
INTEGER num_areas Number of selected areas.
STRING area_strs[](num_areas) Array of the selected areas.
STRING split_str[] Split definition selected either by Geometry or by
FEM data.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
-1 Could not modify ply due to insufficient input data.
Example:
Please see p3cm.modify_ply (p. 1467) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.new (filename)

Description:
This function opens the new layup file for begining the Laminate Modeler session.
Input:
STRING filename[] The new layup file name. (As default “db_filename.layup”)
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None.
Example:
Please see p3cm.new (p. 1470) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 353
Materials

p3cm.set_offsets (num_offs, off_values, off_flags, off_starts, off_views, off_areas)

Description:
This function sets the offsets data for creating the new layup in Laminate Modeler database.
Input:
INTEGER num_offs Number of the defined offsets.
REAL off_values() Array of the offset value for each defined offsets.
STRING off_flags[]() Array of the offset flag for each defined offsets. There are
three types of flags as Middle, Top & Bottom. These flag
types represent the value as below:
“0” for Middle type,
“1” for Top type
“-1” for Bottom type.
REAL off_starts() Array of the 3D coordinate values of definition points for
all defined offsets. It represents the starting points of the
offsets.
REAL off_views() Array of the 3D coordinate values of definition direction for
all defined offsets. It represents the directional views of the
offsets.
STRING off_areas[]() This represents the array of the selected areas for each
defined offset in the form of elements 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:
None
Example:
Please see p3cm.set_offsets (p. 1471) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.open (filename)

Description:
This function opens the existing laminate modeler database.
Input:
STRING filename[] The existing layup filename.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None.
Example:
Please see p3cm.open (p. 1472) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
354
Function Descriptions

p3cm.save_as_2 (filename, detail)

Description:
This function saves the Laminate Modeler database.
Input:
STRING filename[] The open layup file name.
INTEGER detail Set this value = 0
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None.
Example:
Please see p3cm.save_as_2 (p. 1473) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.set_export_options_2 (draped_pattern_iges, draped_pattern_dxf,


flat_pattern_iges, flat_pattern_dxf, mold_surface_iges,
curve, layer)
Description:
This function sets the export options for Laminate Modeler database.
Input:
LOGICAL draped_pattern_igesThis is the Laminate Modeler Ply “Draped Pattern
IGES files” Export Options.
LOGICAL draped_pattern_dxf This is the Laminate Modeler Ply “Draped Pattern
DXF files” Export Options.
LOGICAL flat_pattern_iges This is the Laminate Modeler Ply “Flat Pattern IGES
files” Export Options.
LOGICAL flat_pattern_dxf This is the Laminate Modeler Ply “Flat Pattern DXF
files” Export Options.
LOGICAL mold_surface_iges This is the Laminate Modeler Layup Mold Surface
IGES files Options
STRING curve[] “POLYLINE” or “SPLINE”
STRING layer[] “POLYLINE”
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.set_export_options_2 (p. 1475) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 355
Materials

p3cm.set_graphics_options_2 (message, ply_graphics, layup_graphics, material,


app_direction, ref_direction, max_strain,
selected_area, flat_pattern, draped_pattern,
surface_offset, angles, offset_val, scale)
Description:
This function sets the graphics options for Laminate Modeler database.
Input:
LOGICAL message TRUE for opening the message file .
LOGICAL ply_graphics LM_ply Display Control. TRUE for Display.
LOGICAL layup_graphics LM_Layup Display Control. TRUE for Display.
LOGICAL material Material. This is the Laminate Modeler Ply Graphics Display
Options.
LOGICAL app_direction Application Direction . This is the Laminate Modeler Ply Graphics
Display Options
LOGICAL ref_direction Reference Direction . This is the Laminate Modeler Ply Graphics
Display Options
LOGICAL max_strain Maximum Strain . This is the Laminate Modeler Ply Graphics
Display Options
LOGICAL selected_area Selected Area. This is the Laminate Modeler Ply Graphics Display
Options
LOGICAL flat_pattern Flat Pattern. This is the Laminate Modeler Ply Graphics Display
Options
LOGICAL draped_pattern Draped Pattern. This is the Laminate Modeler Ply Graphics Display
Options
LOGICAL surface_offset Surface Offset. This is the Laminate Modeler Layup Graphics
Display Options.
LOGICAL angles Angles. This is the Laminate Modeler Ply Graphics Display Options.
REAL offset_val Offset value. By default value is 0.0.
REAL scale Scale value (0.1 to 10.0)
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.set_graphics_options_2 (p. 1476) in the MSC.Acumen, Volume 2: Code
Examples.

p3cm.set_tolerance (num_tols, ang_tols, thick_tols, tol_area)

Description:
This function sets the tolerance data for Laminate Modeler database.
Input:
INTEGER num_tols Tolerance number.
REAL ang_tols() Angle tolerance array. By default value is 5.0 degrees.
REAL thick_tols() Thickness tolerance array. By default value is 5.0 %
STRING tol_areas[]() Array of the define overrides .
Main Index
356
Function Descriptions

Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.set_tolerance (p. 1478) in the MSC.Acumen, Volume 2: Code Examples.

p3cm.show_laminate (elem_vstr, nprop, prop, nlam, lam, property, display_method,


scale, nlay, lay)
Description:
This function shows the laminates from the Laminate Modeler database.
Input:
STRING elem_vstr[] Array of the selected elements to show the laminate.
INTEGER nprop Number of selected properties.
STRING prop[](nprop) Array of the selected properties sets.
INTEGER nlam Number of selected laminates.
INTEGER lam(nlam) Array of the selected laminates.
STRING property[] Select properties i.e:
“Material”
“Orientation”
“Thickness”
STRING display_method[] Display method i.e:
“Model Plot”
“Scalar Plot”
“Vector Plot”
“XY Plot”
REAL scale Thickness Scale. (0.1 to 10 value)
INTEGER nlay Number of selected layers.
INTEGER lay(nlay) Array of the selected layers.
Output:
INTEGER <Return Value> 0 for success of the function.
Error
Conditions:
None
Example:
Please see p3cm.show_laminate (p. 1479) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 12 357
Materials

p3cm.show_layup_exploded (num_selected, index, offset_mult)

Description:
This function shows the selected laminate modeler layup from the database.
Input:
INTEGER num_selected Number of Laminate Modeler plys
INTEGER index(num_selected)Array of ply ids
REAL offset_mult Offset distance multiplier. By default, value is taken
as 1.0
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.show_layup_exploded (p. 1482) in the MSC.Acumen, Volume 2: Code
Examples.

p3cm.show_ply (type_id_name, ply_name, plot_flag)

Description:
This function deletes the ply name from the database.
Input:
STRING type_id_name[] ID string for various material types like “Paint”,
“Scissor”, “Slide” or “Project”.
STRING ply_name[] Laminate Modeler Ply Name.
LOGICAL plot_flag TRUE to show the existing ply.
Output:
INTEGER <Return Value> 0 for success of the function.
Error Conditions:
None
Example:
Please see p3cm.show_ply (p. 1483) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
358
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Analysis
13
■ General

Main Index
360
Function Descriptions

13.1 General

analysis_get.pset_for_job (analysis_code, anal_job_name, anal_job_id )

Description:
This function will get the analysis job id for a specific job and analysis code.
Input:
STRING analysis_code[31] This value specifies the name of the analysis code.
STRING anal_job_name[] This value specifies the name of the job.
Output:
INTEGER anal_job_id This value returns the identifier associated with the specified
analysis code and job name.
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.
Example:
Please see analysis_get.pset_for_job (p. 1486) in the MSC.Acumen, Volume 2: Code Examples.

analysis_import (<analysis_code>,<jobname>,<object>,<filename>,<wait>)

Description:
This function controls the submittal of either a "Result File" importation or an "Input File "
importation. It generates the geometry and FEM data from a input file like ".bdf" or from a result
file like ".op2" file.
The function does the following steps:
1. If running from a session file, it gives the user the option of waiting for the analysis to
finish.
2. Checks for old preference and updates if required.
3. Runs the preference specific result import routine if provided by the analysis code, else
runs the generic import routine.
4. Calls the analysis code specific function to get the name of the translation program.
Input:
STRING analysis_code[] The name of the analysis code.
STRING jobname[] The name of the importation job.
STRING object[] Object being read, “Result File” or “Input file”.
STRING filename[] ‘.bdf’ file to be read, when “object” is “Input File”.
‘.op2’ or ‘.fil’ file to be read when the object is “Result File”.
LOGICAL wait True to wait for completion before continuing. False to
execute command asynchronously.
Output:
None
Error Conditions:
None
Main Index
CHAPTER 13 361
Analysis

Note:
The function has return statements but does not return any value. The function can be enhanced
to check the status of execution by returning a value.
Example:
Please see analysis_import (p. 1487) in the MSC.Acumen, Volume 2: Code Examples.

analysis_main.job_name_lbox (<num_items>,<job_name>)

Description:
This function is a callback to the “Available Jobs” listbox in the “Analysis” form.
Input:
INTEGER num_items Number of items
STRING ARRAY job_name[](num_items) Array of job names.
Output:
None
Error Conditions:
None
Example:
Please see analysis_main.job_name_lbox (p. 1491) in the MSC.Acumen, Volume 2: Code
Examples.

analysis_main.user_function ( <classname>, <function_name>, <exist_flag>)

Description:
This function executes a given function under a classname. It first checks the status of the
function and checks whether it exists and whether it is currently loaded in memory. If the
function does not exist then the value of the output return is 0. If the function gets executed
then the value of exist_flag returned is 1. It invokes a class function. Problems could occur if
the function has input arguments. This function can best be utilized for "init" or "display"
functions. This function works only if the Analysis Form is open in Patran.
Input:
STRING classname[ ] The classname of the function
STRING function_name[ ] Function name
LOGICAL exist_flag Status of execution of the function. Returns 1 on execution
and 0 for failure.
Output:
INTEGER <Return Value> 1 for success and 0 for failure.
Error Conditions:
None.
Example:
Please see analysis_main.user_function (p. 1492) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
362
Function Descriptions

analysis_submit ( <analysis_code>,<jobname>,<wait_for_analysis>)

Description:
The function submits the jobname for analysis with a wait for analysis flag option. If running in
batch mode the wait flag can be set to TRUE to assure that the process will wait for completion
of the analysis prior to continuing. The analysis_submit() call must follow a job preparation
sequence that is dependent upon the analysis solver preference selected. For the MSC.Nastran
preference, a typical job submission involves the following sequence. A job file is created by a
series of calls: jobfile.open, msc_delete_old_files, jobfile.write_spl, jobfile.writec, jobfile.writei,
jobfile.close. Next, mscnastran_job.associate_subcases, and then finally analysis_submit is
called. An exact sequence is best found from MSC.Patran session files.
The function does the following steps:
1. Displays fatal message if the database is not ready for submission to analysis.
2. Does some steps before invoking the translator.
3. Builds up code specific name and call.
4. Gets the name of the currently open database.
5. Replaces all blank characters with “\” in order to handle database path names with
blank characters.
6. Evaluates LBC’s from geometry to elements.
7. Checks whether there are any tasks set to be done by the user before calling the
translator.
8. Calls the analysis code specific submit routine.
9. Assign last jobname.
10. After translation, checks for any user clean-up required.
Input:
STRING analysis_code[] The name of the analysis code.
STRING jobname[] The name of the job to be loaded in the job name databox.
LOGICAL wait_for_analysis True to wait for completion before continuing. False to
execute command asynchronously
Output:
None
Error Conditions:
None
Note:
The function has return statements but does not return any value. The function can be enhanced
to check the status of execution by returning a value.
Following are the analysis names supported by MSC interfaces:

Main Index
CHAPTER 13 363
Analysis

Analysis Code:
MSC.Nastran MSC.Patran Structural Optimization
ABAQUS MARC K6
ANSYS LMS CADA-X
MARC FASTRUDL
MSC.Patran FEA SESAM
MSC.Patran Thermal DYNA3D
MSC.Patran CFD RCS
MSC.Patran Advanced FEA CFX-F3D
MARC K CFX-FLOW
ANSYS 5 MSC.Droptest
MSC.Patran Team MSC.Forging
SAMCEF LS-DYNA3D
PATRAN 2NF PAMCRASH
MSC.Dytran

Example:
Please see analysis_submit (p. 1494) in the MSC.Acumen, Volume 2: Code Examples.

analysis_submit_2 (<analysis_code>,<jobname>)

Description:
This is a new function designed to replace the call to analysis_submit in the session files. The
‘wait-flag’ in the analysis_submit() is set to TRUE to wait for completion before continuing and
FALSE to execute command asynchronously. This function anslysis_submit_2() asks the user
for input to the wait flag and then calls the analysis_submit function with the appropriate wait
flag.
The function does the following steps:
1. If running from a session file, it gives the user the option of waiting for the analysis to
finish.
2. Checks for abort before asking the user about waiting for the analysis to complete.
3. Calls the analysis_submit function with the appropriate wait flag.
Input:
STRING analysis_code[] The name of the analysis code.
STRING jobname[] The name of the job to be loaded in the job name databox.
Output:
None
Error Conditions:
None

Main Index
364
Function Descriptions

Notes:
The function has return statements but does not return any value. The function can be enhanced
to check the status of execution by returning a value.
Please refer to description of the Function – analysis_submit() for a list of Analysis Codes.
Example:
Please see analysis_submit_2 (p. 1498) in the MSC.Acumen, Volume 2: Code Examples.

db_set_pref (pref_id, data_type, int_pref, log_pref, real_pref, char_pref)

Description:
This function will set the geometric preferences in the database.
Input:
INTEGER pref_id This value specifies the internal identifier of the preference to
be set in the database.
INTEGER data_type This value specifies the data type of the preference to be set in
the database.
INTEGER int_pref This value specifies the integer preference to be set in the
database.
LOGICAL log_pref This value specifies the logical preference to be set in the
database.
REAL real_pref This value specifies the real preference to be set in the
database.
STRING char_pref[31] This value specifies the character preference to be set in the
database.
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:
13000088 Preference not found
13000002 Unrecoverable database error
Remarks:
Not adding a preference to the database is a common cause of receiving a returned value of
13000088. The PCL function db_add_pref (p. 434) can be used to add a preference to the
database.
Example:
Please see db_set_pref (p. 1569) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 13 365
Analysis

db_get_job_info (analysis_code_id, jobname_id, jobname, description, param_set_id,


status)

Description:
Retrieves the jobname, description, parameter set id, and status given the analysis code id and
jobname id.
Input:
INTEGER analysis_code_id The ID of the analysis codes to which the jobnames are
associated in the database.
INTEGER jobname_id The ID of the jobname associated with analysis_code input.
Output:
STRING jobname[80] The jobname associated with analysis code input.
STRING description[256] The job description associated with the analysis code input.
INTEGER param_set_id The ID of the parameter set associated with the analysis
code and job ID.
INTEGER status The status of the job being retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves an entry from the “jobname” relation.
Example:
See example for db_update_jobname_for_a_code (p. 375), db_get_id_given_job_name
(p. 381), or db_get_id_given_job_name_code (p. 382). See also db_get_job_info (p. 1545) in
the MSC.Acumen, Volume 2: Code Examples.

db_set_model_file_suffix (name, suffix)

Description:
Updates the control info table in the database.
Input:
STRING name[31] Name of the analysis code whose suffix is to be set.
STRING suffix[6] Name of the suffix for the analysis code named above.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Updates one record in the “analysis_code” table in the database.

Main Index
366
Function Descriptions

Example:
Please see db_set_model_file_suffix (p. 1568) in the MSC.Acumen, Volume 2: Code Examples.

db_set_results_file_suffix (name, suffix)

Description:
Updates the control info table in the database.
Input:
STRING name[31] Name of the analysis code whose suffix is to be set.
STRING suffix[6] Name of the suffix for the analysis code named above.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Updates one record in the “analysis_code” table in the database.
Example:
See example for db_set_model_file_suffix (p. 365). See also db_set_results_file_suffix
(p. 1570) in the MSC.Acumen, Volume 2: Code Examples.

db_set_default_anal_code (name)

Description:
Updates the control info table in the database.
Input:
STRING name[31] Name of the new current analysis code.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Updates one record in the “control_info” table in the database.
Example:
Please see db_set_default_anal_code (p. 1566) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 13 367
Analysis

db_get_default_anal_code (name)

Description:
Retrieves the default analysis code associated with the model.
Input:
None.
Output:
STRING name[31] Analysis code name.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
None.
Example:
See example for db_get_steps_for_a_job (p. 384). See also db_get_default_anal_code
(p. 1538) in the MSC.Acumen, Volume 2: Code Examples.

db_get_anal_code_name (id, name)

Description:
Retrieves the analysis code name associated with the specified analysis code id.
Input:
INTEGER id Integer containing the ID of the analysis code.
Output:
STRING name[31] String where the name of the analysis code is to be placed.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
None.
Example:
Please see db_get_anal_code_name (p. 1534) in the MSC.Acumen, Volume 2: Code Examples.

db_get_anal_code_id (name, id)

Description:
Retrieves the analysis code id associated with the specified analysis code name.
Input:
STRING name[31] The name of the analysis code.

Main Index
368
Function Descriptions

Output:
INTEGER id Integer containing the ID of the analysis code.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
None.
Example:
See example for db_get_steps_for_a_job (p. 384). See also db_get_anal_code_id (p. 1533) in
the MSC.Acumen, Volume 2: Code Examples.

db_count_anal_codes (count)

Description:
Retrieves the number of analysis codes stored in the database.
Input:
None.
Output:
INTEGER count The number of analysis codes stored in the database
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Counts all records in the “analysis_code” relation in the database.
Example:
Please see db_count_anal_codes (p. 1504) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_anal_codes ()

Description:
Gets all analysis code names from the database, in get all, get next method.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred

Main Index
CHAPTER 13 369
Analysis

Remarks:
Accesses all records in the “analysis_code” table in the database.
Example:
See example for db_count_anal_codes (p. 368). See also db_get_all_anal_codes (p. 1530) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_next_anal_code (name)

Description:
Gets all analysis code names from the database, in get all, get next method.
Input:
None.
Output:
STRING name[31] The name of the analysis code retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred
Remarks:
Accesses all records in the “analysis_code” table in the database.
Example:
See example for db_count_anal_codes (p. 368). See also db_get_next_anal_code (p. 1551) in
the MSC.Acumen, Volume 2: Code Examples.

db_set_default_anal_type (name)

Description:
Updates the control info table in the database.
Input:
STRING name[31] Name of the new current analysis type.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Updates one record in the “control_info” table in the database.
Example:
Please see db_set_default_anal_type (p. 1567) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
370
Function Descriptions

db_get_default_anal_type (name)

Description:
Retrieves the default analysis type associated with the model.
Input:
None.
Output:
STRING name[31] Location for returned value.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
None.
Example:
Please see db_get_default_anal_type (p. 1539) in the MSC.Acumen, Volume 2: Code Examples.

db_get_anal_type_name (id, name)

Description:
Retrieves the analysis type name associated with the specified analysis type id.
Input:
INTEGER id Integer containing the ID of the analysis type.
Output:
STRING name[31] Pointer to a string where the name of the analysis type is to be
placed.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
None.
Example:
Please see db_get_anal_type_name (p. 1536) in the MSC.Acumen, Volume 2: Code Examples.

db_get_anal_type_id (name, id)

Description:
Retrieves the analysis type id associated with the specified analysis type name.
Input:
STRING name[31] Pointer to a string containing the name of the analysis type.

Main Index
CHAPTER 13 371
Analysis

Output:
INTEGER id Location to receive the resulting value.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error.
13000014 Viewport not found.
13000007 An unspecified database error occurred.
Remarks:
None.
Example:
Please see db_get_anal_type_id (p. 1535) in the MSC.Acumen, Volume 2: Code Examples.

db_count_anal_types (name, count)

Description:
Retrieves the number of analysis types stored in the database.
Input:
STRING name[31] The name of the analysis code for which the type are to be
returned
Output:
INTEGER count The number of analysis types stored in the database
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Remarks:
Counts all records in the “analysis_type” relation in the database.
Example:
Please see db_count_anal_types (p. 1504) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_anal_types (name)

Description:
Gets all analysis type names from the database corresponding to an analysis code name, in get
all, get next method.
Input:
STRING name[31] The space to receive the analysis type name and to give the
analysis code name.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
372
Function Descriptions

Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed
13000007 An unspecified database error occurred.
Remarks:
Accesses all records in the “supported_analysis_type” table.
Example:
See example for db_count_anal_types (p. 371). See also db_get_all_anal_types (p. 1531) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_next_anal_type (name)

Description:
Gets all analysis type names from the database corresponding to an analysis code name, in get
all, get next method.
Input:
None.
Output:
STRING name[31] The name of the analysis type retrieved and the name of the
analysis code.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000117 The query specified has completed
13000007 An unspecified database error occurred.
Remarks:
Accesses all records in the “supported_analysis_type” table.
Example:
See example for db_count_anal_types (p. 371). See also db_get_next_anal_type (p. 1552) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_at_for_ac (acname, atname)

Description:
Gets the default analysis type for a given analysis code from the database.
Input:
STRING acname[31] The name of the analysis code.
Output:
STRING atname[31] The name of the default analysis type.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
CHAPTER 13 373
Analysis

Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Remarks:
Accesses the default analysis type in the “analysis_code” table in the database.
Example:
See example for db_count_anal_types (p. 371). See also db_get_at_for_ac (p. 1538) in the
MSC.Acumen, Volume 2: Code Examples.

db_set_at_for_ac (anal_code, anal_type)

Description:
Updates the default analysis type for an analysis code.
Input:
STRING anal_code[31] Name of the analysis code.
STRING anal_type[31] Name of the new current analysis type.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occurred.
Remarks:
Updates one record in the “analysis_code” table in the database.
Example:
Please see db_set_at_for_ac (p. 1565) in the MSC.Acumen, Volume 2: Code Examples.

db_create_job_name_for_a_code (ac_id, jobname, jobdesc, status, jobname_id,


param_set_id )

Description:
Creates a new jobname for an analysis code. The next available jobname_id and param_set_id
are returned.
Input:
INTEGER ac_id Analysis code ID to which the jobname is associated.
STRING jobname[80] The job name being created for an analysis code.
STRING jobdesc[256] The description of the job being created.
INTEGER status The status of the job being created.
Output:
INTEGER jobname_id The ID of the next available jobname ID is returned from the
application.
INTEGER param_set_id The next available param_set_id is returned from the
application.
Main Index
374
Function Descriptions

INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
Remarks:
Adds an entry to the “jobname” relation.
Example:
Please see db_create_job_name_for_a_code (p. 1513) in the MSC.Acumen, Volume 2: Code
Examples.

db_count_job_names_for_a_code (acode_id, num_acodes)

Description:
Retrieves the number of job names associated with an analysis code.
Input:
INTEGER acode_id The analysis code ID
Output:
INTEGER num_acodes The number of distinct job names associated with the analysis
code ID
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
Counts records in the “jobname” relation in the database.
Example:
Please see db_count_job_names_for_a_code (p. 1507) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_jobnames_for_a_code (analysis_code_id, count, jobname, jobname_id,


description, param_set_id, status)

Description:
Retrieves an array of jobnames, jobname_ids, descriptions, and statuses for all jobs up to count
in the analysis code id which the jobnames are associated with.
Input:
INTEGER analysis_code_id The ID of the analysis codes to which the jobnames are
associated in the in the database.
INTEGER count On input, the maximum number of jobs that can be
returned from the database.
Output:
INTEGER count On output, the actual number that was returned.
STRING jobname[80]() The array of jobnames associated with analysis code input.
The 80 char field is padded with blanks, and the array
treated as a contiguous data string.
Main Index
CHAPTER 13 375
Analysis

INTEGER jobname_id() The ID of the jobname associated with analysis_code


input.
STRING description[256]() The array of job descriptions associated with the analysis
code input. The 256 char field padded with blanks, and the
array is treated as a continuous string.
INTEGER param_set_id() The ID of the parameter set associated with the analysis
code and job ID.
INTEGER status() The status of the job being retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “jobname” relation.
Example:
See example for db_count_job_names_for_a_code (p. 374). See also
db_get_jobnames_for_a_code (p. 1549) in the MSC.Acumen, Volume 2: Code Examples.

db_update_jobname_for_a_code (analysis_code_id, jobname, description, status,


jobname_id, param_set_id)

Description:
If the analysis_code_id and jobname_id match and existing record, and the new jobname input
does not already exist, the jobname, description, and status fields are updated.
Input:
INTEGER analysis_code_id
STRING jobname[80] The analysis code ID of the step being updated.
STRING description[256] The analysis step name being updated.
INTEGER status The status of the jobname being updated.
INTEGER jobname_id The ID of the jobname being modified.
Output:
INTEGER param_set_id The param_set_id which is being deleted.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Updates an entry to the “jobname” relation. Deletes entries from the “param_set” relation that
correspond to the jobname if any exist.
Example:
Please see db_update_jobname_for_a_code (p. 1573) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
376
Function Descriptions

db_create_job_name_list (jobname_id, nbr_of_loadcases, loadcase_ids)

Description:
Inserts a list of load case ids into the jobname_list table.
Input:
INTEGER jobname_id The job name ID.
INTEGER nbr_of_loadcases The number of load case ids.
INTEGER loadcase_ids() The load case ids associated with the job name ID.
Output:
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine creates records the jobname_list table in the database.
Example:
Please see db_create_job_name_list (p. 1514) in the MSC.Acumen, Volume 2: Code Examples.

db_create_job_name_list_entry (jobname_id, load_case_id, analysis_step_id)

Description:
Creates a new jobname list entry.
Input:
INTEGER jobname_id The ID of the jobname to which the list entries are associated.
INTEGER load_case_id The ID of the load case to which the list entries are associated.
INTEGER analysis_step_id The ID of the analysis step to which the list entries are
associated.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Adds an entry to the “jobname_list” relation.
Example:
Please see db_create_job_name_list_entry (p. 1515) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 13 377
Analysis

db_get_jobname_list_entries (jobname_id, count, load_case_id, step_id)

Description:
Retrieves the load case id and step id for each job name id, up to count.
Input:
INTEGER jobname_id The ID of the jobnames codes to which the jobname lists are
associated in the in the database.
INTEGER count On input, the maximum number of entries that can be returned
from the database.
Output:
INTEGER count On output, the actual number that was returned.
INTEGER load_case_id() The ID of the load case associated with jobname_id input.
INTEGER step_id() The step_id of the job being retrieved.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “jobname_list” relation.
Example:
See example for db_get_step_info (p. 385). See also db_get_jobname_list_entries (p. 1547)
in the MSC.Acumen, Volume 2: Code Examples.

db_count_job_name_list_entry (jobname_id, num_lists)

Description:
Retrieves the number of job_list entries associated with a jobname.
Input:
INTEGER jobname_id The jobname ID.
Output:
INTEGER num_lists The number of distinct jobname_list entries associated with a
jobname.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
Counts records in the “jobname_list” relation in the database.
Example:
Please see db_count_job_name_list_entry (p. 1506) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
378
Function Descriptions

db_delete_job_name_list (jobname_id)

Description:
Deletes jobname list entries from the database.
Input:
INTEGER jobname_id Id of the jobname associated with the jobname list entries to be
deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes records in the “jobname_list” table in the database.
Example:
See example for db_count_job_name_list_entry (p. 377). See also db_delete_job_name_list
(p. 1524) in the MSC.Acumen, Volume 2: Code Examples.

db_create_job_name (jobname, id)

Description:
Returns the jobname id upon inserting the jobname.
Input:
STRING jobname[] The job name.
Output:
INTEGER id The job ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000158 This job name already exists in the database.
Remarks:
This routine creates a record the jobname table in the database.
Example:
Please see db_create_job_name (p. 1512) in the MSC.Acumen, Volume 2: Code Examples.

db_assign_last_jobname (jobname)

Description:
Assigns the last jobname to the control info table.
Input:
STRING jobname[80] The last job name to be put in the control info table.

Main Index
CHAPTER 13 379
Analysis

Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Updates an entry to the “control_info” relation.
Example:
Please see db_assign_last_jobname (p. 1502) in the MSC.Acumen, Volume 2: Code Examples.

db_get_last_jobname (jobname)

Description:
Retrieves the last used jobname.
Input:
None.
Output:
STRING jobname[80] The last used jobname from the control info relation.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves one record from the “control_info” relation.
Example:
Please see db_get_last_jobname (p. 1550) in the MSC.Acumen, Volume 2: Code Examples.

db_get_job_name_given_id (id, name)

Description:
Returns the job name given the id.
Input:
INTEGER id The job name ID.
Output:
STRING name[] The job name.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine access the jobname table in the database.
Example:
See also db_get_job_name_given_id (p. 1546) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
380
Function Descriptions

db_count_all_job_name_ids (nbr_of_jobnames)

Description:
Returns the number of all the job name ids.
Input:
None.
Output:
INTEGER nbr_of_jobnames The number of ids being returned
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
This routine accesses the jobname table in the database.
Example:
INTEGER status, num_jobnames, max_jobnames, jobname_ids (VIRTUAL)
Please see db_count_all_job_name_ids (p. 1503) in the MSC.Acumen, Volume 2: Code Examples.

db_get_all_job_name_ids (max_count, nbr_of_jobnames, id)

Description:
Returns an array of all of the job name ids.
Input:
INTEGER max_count The maximum number of IDs for which space has been
allocated.
Output:
INTEGER nbr_of_jobnames The number of IDs being returned.
INTEGER id() The job name IDs.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
13000093 Too Many Values Returned for Space Allocated
Remarks:
This routine access the jobname table in the database.
Example:
See example for db_count_all_job_name_ids (p. 380). See also db_get_all_job_name_ids
(p. 1532) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 13 381
Analysis

db_get_all_job_names ()

Description:
Gets a job name from the database.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000117 The query specified has completed
Remarks:
Accesses records in the jobname table in the database.
Example:
Please see db_get_all_job_names (p. 1533) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_job_name (jobname)

Description:
Gets a job name from the database.
Input:
None.
Output:
STRING jobname[] The job name.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000117 The query specified has completed
Remarks:
Accesses records in the jobname table in the database.
Example:
See example for db_get_all_job_names (p. 381). See also db_get_next_job_name (p. 1553) in
the MSC.Acumen, Volume 2: Code Examples.

db_get_id_given_job_name (jobname, id)

Description:
Returns the jobname id given the jobname.
Input:
STRING jobname[] The job name.
Output:
INTEGER id The job ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Main Index
382
Function Descriptions

Error Conditions:
None.
Remarks:
This routine access the jobname table in the database.
Example:
Please see db_get_id_given_job_name (p. 1539) in the MSC.Acumen, Volume 2: Code Examples.

db_get_id_given_job_name_code (acode, jobname, id)

Description:
Returns the jobname id given the jobname.
Input:
INTEGER acode Analysis code ID.
STRING jobname[] The job name.
Output:
INTEGER id The job ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000159 The job name id was not found in the database
Remarks:
This routine access the jobname table in the database.
Example:
Please see db_get_id_given_job_name_code (p. 1541) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_id_given_load_case_name (jobname, load_case_id)

Description:
Returns the jobname id given the load case name.
Input:
STRING jobname[] The load case name.
Output:
INTEGER load_case_id The load case ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000052 Load case not found
Remarks:
This routine access the load_case table in the database.
Example:
See example for db_create_job_name_list (p. 376), or db_create_job_name_list_entry
(p. 376). See also db_get_id_given_load_case_name (p. 1542) in the MSC.Acumen, Volume 2:
Code Examples.

Main Index
CHAPTER 13 383
Analysis

db_delete_job_name (id)

Description:
Deletes a jobname and all jobname list entries from the database.
Input:
INTEGER id ID of the jobname to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes records in the “jobname_list” table in the database.
Example:
See example for db_get_id_given_job_name_code (p. 382). See also db_delete_job_name
(p. 1523) in the MSC.Acumen, Volume 2: Code Examples.

db_create_analysis_step (stepname, stepdesc,ac_id, step_id, param_set_id)

Description:
Creates a new analysis step with name and description for the given analysis code.
Input:
STRING stepname[80] The analysis step name being created
STRING stepdesc[256] The description of the step being created.
INTEGER ac_id The analysis code ID of the step being created.
Output:
INTEGER step_id The ID of the next available step ID is returned from the
application.
INTEGER param_set_id The next available param_set_id is returned from the
application.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Adds an entry to the “jobname” relation.
Example:
Please see db_create_analysis_step (p. 1510) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
384
Function Descriptions

db_get_analysis_steps (analysis_code_id, count, stepname, step_id, description,


param_set_id)

Description:
Returns the array of analysis step names, ids, descriptions, and the parameter set ids that are
associated with the given analysis code id.
Input:
INTEGER analysis_code_id The ID of the analysis codes to which the step names are
associated in the database.
INTEGER count On input, the maximum number of jobs that can be returned
from the database.
Output:
INTEGER analysis_code_id On output, the actual number that was returned.
STRING stepname[80]() The array of step names associated with analysis code input.
The 80 char field is padded with blanks, and the array treated
as a contiguous data string.
INTEGER step_id() The ID of the stepname associated with analysis_code input.
STRING description[256]() The array of job descriptions associated with the analysis
code input. The 256 char field padded with blanks, and the
array is treated as a continuous string.
INTEGER param_set_id() The ID of the parameter set associated with the analysis code
and job ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “analysis_step” relation.
Example:
Please see db_get_analysis_steps (p. 1537) in the MSC.Acumen, Volume 2: Code Examples.

db_get_steps_for_a_job (analysis_code_id, jobname_id, count, stepname, step_id,


description, param_set_id)

Description:
This function returns the step names, ids, description and the parameter set id for a given
analysis code id and jobname.
Input:
INTEGER analysis_code_id The ID of the analysis code to which the step names are
associated in the in the database.
INTEGER jobname_id The ID of the job to which the step names are associated in
the in the database.
INTEGER count The maximum number of jobs that can be returned from the
database.

Main Index
CHAPTER 13 385
Analysis

Output:
STRING stepname[80]() The array of step names associated with analysis code input.
The 80 char field is padded with blanks, and the array treated
as a contiguous data string.
INTEGER step_id() The ID of the stepname associated with analysis_code input.
STRING description[256]() The array of job descriptions associated with the analysis
code input. The 256 char field padded with blanks, and the
array is treated as a continuous string.
INTEGER param_set_id() The ID of the parameter set associated with the analysis code
and job ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “analysis_step” relation.
Example:
Please see db_get_steps_for_a_job (p. 1564) in the MSC.Acumen, Volume 2: Code Examples.

db_get_step_info (analysis_code_id, step_id, stepname, description, param_set_id)

Description:
return to the step name, description, and parameter set id given the step id.
Input:
INTEGER analysis_code_id The ID of the analysis codes to which the jobnames are
associated in the in the database.
INTEGER step_id The ID of the stepname associated with analysis_code and
jobname_id input.
Output:
STRING stepname[80] The step_name associated with analysis code and jobname
input.
STRING description[256] The array of job descriptions associated with the analysis
code input. The 256 char field padded with blanks, and the
array is treated as a continuous string.
INTEGER param_set_id The ID of the parameter set associated with the analysis code
and job ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves an entry from the “jobname” relation.
Example:
Please see db_get_step_info (p. 1562) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
386
Function Descriptions

db_count_analysis_steps (acode_id, num_steps)

Description:
Retrieves the number of analysis steps for an analysis code.
Input:
INTEGER acode_id The analysis code ID.
Output:
INTEGER num_steps The number of analysis steps associated with an analysis code.
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
Counts records in the “jobname_list” relation in the database.
Example:
See example for db_get_analysis_steps (p. 384). See also db_count_analysis_steps
(p. 1505) in the MSC.Acumen, Volume 2: Code Examples.

db_count_steps_for_a_job (ac_id,job_id,num_steps)

Description:
Retrieves the number of analysis steps for a specified job and analysis code.
Input:
INTEGER ac_id The analysis code ID
INTEGER job_id The specific job to which the steps are associated
Output:
INTEGER num_steps The number of analysis steps associated
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
Counts records in the “analysis_step” relation in the database.
Example:
See example for db_get_steps_for_a_job (p. 384). See also db_count_steps_for_a_job
(p. 1509) in the MSC.Acumen, Volume 2: Code Examples.

db_get_id_given_step_name (acode, stepname, id)

Description:
Returns the stepname id given the stepname.
Input:
INTEGER acode Analysis code ID.
STRING stepname[] The step name.
Main Index
CHAPTER 13 387
Analysis

Output:
INTEGER id The step ID.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
13000204 The specified analysis step was not found
Remarks:
This routine access the analysis_step table in the database.
Example:
See example for db_update_analysis_step (p. 387), or db_delete_analysis_step_id (p. 387).
See also db_get_id_given_step_name (p. 1543) in the MSC.Acumen, Volume 2: Code Examples.

db_update_analysis_step (analysis_code_id, analysis_step_id, analysis_step_name,


description, param_set_id)

Description:
Updates analysis stepware and decription for the given analysis step.
Input:
INTEGER analysis_code_id The analysis code ID of the step being updated.
INTEGER analysis_step_id The ID of the step being modified.
STRING analysis_step_name[80]The analysis step name being updated.
STRING description[256] The description of the step being updated.
Output:
INTEGER param_set_id The param_set_id which is being deleted.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Updates an entry to the “analysis_step” relation.
Example:
Please see db_update_analysis_step (p. 1571) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_analysis_step_id (ac_id, step_id)

Description:
Deletes analysis step entries from the database
Input:
INTEGER ac_id Id of the analysis code to which the analysis step to be deleted
is associated.
INTEGER step_id Id of the analysis step to be deleted.

Main Index
388
Function Descriptions

Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes a record in the “analysis_step” table in the database.
Example:
Please see db_delete_analysis_step_id (p. 1521) in the MSC.Acumen, Volume 2: Code Examples.

db_create_param_set_entry (param_set_id, param_name, param_type, param_real,


param_char , param_int)

Description:
Create an entry in the param_set relation. This entry can be of a type real, character, or integer.
A type of array of reals will soon be added.
Input:
INTEGER param_set_id Parameter set ID to be added to the database.
STRING param_name[80] The parameter name being added parameter set relation.
INTEGER param_type The type of parameter set being added to the database. Only
one type of entry will be added for a parameter name, the
other types of parameters should be NULL.
DbInteger1
DbLogical2
DbReal3
DbCharacter4
DbRealArray5
DbAllTypes6
REAL param_real The real value of the parameter to be added to the database
relation.
STRING param_char[256] The character value of the parameter to be added to the
database relation.
INTEGER param_int The integer value of the parameter to be added to the
database relation.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Adds an entry to the “param_set” relation.
Example:
Please see db_create_param_set_entry (p. 1517) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 13 389
Analysis

db_count_param_set_entries (param_id, num_params)

Description:
Retrieves the number of parameters for a given parameter_set_id.
Input:
INTEGER param_id The parameter set ID
Output:
INTEGER num_params The number of parameters associated with a parameter set ID
INTEGER <Return Value> Returns the success or failure of the routine
Error Conditions:
None.
Remarks:
Counts records in the “param_set” relation in the database.
Example:
See example for db_get_param_set_ent_pcl (p. 390). See also db_count_param_set_entries
(p. 1508) in the MSC.Acumen, Volume 2: Code Examples.

db_get_param_set_entry (param_set_id, param_name, param_type, param_real,


param_char, param_int)

Description:
Get an entry in the param_set relation. This entry may be of the type real, character, or integer.
Input:
INTEGER param_set_id The ID of the parameter sets which will be fetched from the
database.
STRING param_name[80] The array of param_names associated with analysis code
input.
Output:
INTEGER param_type The type of param being fetched from the database.
REAL param_real Real parameter.
STRING param_char[256] Array containing a char parameter.
INTEGER param_int Integer parameter.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves an entry from the “param_set” relation.
Example:
See example for db_get_step_info (p. 385). See also db_get_param_set_entry (p. 1557) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
390
Function Descriptions

db_get_param_set_ent_pcl (param_set_id, count, param_name, param_type,


param_real, param_char, param_int)

Description:
Allows strings of param chars to be returned to pcl. Retrieves the parameter names, types,
values, and the count given the count expected and the parameter set id.
Input:
INTEGER param_set_id The ID of the parameter sets which tre to be fetched from the
database.
INTEGER count The number of params to be returned from the database.
Output:
INTEGER count
STRING param_name[80]() The array of param_names associated with analysis code
input.
INTEGER param_type() The type of param being fetched from the database.
REAL param_real() Array containing a real parameter.
STRING param_char[256]() Array containing a char parameter.
INTEGER param_int() Array containing a integer parameter.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “param_set” relation.
Example:
Please see db_get_param_set_ent_pcl (p. 1554) in the MSC.Acumen, Volume 2: Code Examples.

db_get_param_set_entries (param_set_id, count, param_name, param_type,


param_real, param_char, param_int)

Description:
Retrieves the parameter names, types, values and the count given the count expected and the
parameter set id.
Input:
INTEGER param_set_id The ID of the parameter sets which are to be fetched from the
database.
INTEGER count The number of parameters to be returned from the database.
Output:
INTEGER count The number actually returned from the database.
STRING param_name[80]() The array of param_names associated with analysis code
input.
INTEGER param_type() The type of param being fetched from the database.
REAL param_real() Array containing a real parameter.
STRING param_char[256]() Array containing a char parameter.

Main Index
CHAPTER 13 391
Analysis

INTEGER param_int() Array containing an integer parameter.


INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Retrieves multiple entries from the “param_set” relation.
Example:
Please see db_get_param_set_entries (p. 1555) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_param_set_entry (param_set_id, name)

Description:
Deletes the entries listed by the parameter set id from the database.
Input:
INTEGER param_set_id Id of the param_set whose entries are to be deleted.
STRING name[80] Name of the param_set to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes a record in the “param_set” table in the database.
Example:
Please see db_get_param_set_entry (p. 1557) in the MSC.Acumen, Volume 2: Code Examples.

db_delete_param_set_entries (param_set_id)

Description:
Deletes the entries listed by the parameter set id from the database.
Input:
INTEGER param_set_id Id of the param_set whose entries are entries to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Deletes records in the “param_set” table in the database.
Main Index
392
Function Descriptions

Example:
Please see db_get_param_set_entries (p. 1555) in the MSC.Acumen, Volume 2: Code Examples.

db_create_pset_matrix_entry (param_set_id, param_name, nrows, ncols, matrix)

Description:
Create a matrix type parameter with param_set_id and param_name.
Input:
INTEGER param_set_id Parameter set ID to be added to the database.
STRING param_name[80] The parameter name being added parameter set relation.
INTEGER nrows The number of rows in the matrix parameter.
INTEGER ncols The number of columns in the matrix parameter.
REAL matrix() The array of floats comprising the matrix.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Adds an entry to the “param_set” relation.
Example:
See example for db_delete_param_set_entry (p. 391). See also
db_create_pset_matrix_entry (p. 1519) in the MSC.Acumen, Volume 2: Code Examples.

db_get_pset_matrix_entry (param_set_id, param_name, matrix)

Description:
Gets a matrix parameter set entry from the database.
Input:
INTEGER param_set_id Internal unique ID of the matrix values to be retrieved from the
database.
STRING param_name[80] Name of the param set being retrieved from the database.
REAL matrix() The information previously contained in the blob, but returned
to the calling routine in a float array.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Accesses one record in the “param_set” table in the database.
Example:
Please see db_get_pset_matrix_entry (p. 1559) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 13 393
Analysis

db_get_pset_matrix_size (param_set_id, param_name, nrows, ncols)

Description:
Gets a the size of a matrix parameter set entry from the database.
Input:
INTEGER param_set_id Internal unique ID of the matrix values to be retrieved from
the database.
STRING param_name[80] Name of the param set being retrieved from the database.
Output:
INTEGER Number of rows in the matrix.
INTEGER Number of columns in the matrix.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
Accesses one record in the “param_set” table in the database.
Example:
See example for db_get_pset_matrix_entry (p. 392). See also db_get_pset_matrix_size
(p. 1561) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.close ()

Description:
This function closes the last jobfile opened by the jobfile.open function.
The function
1. Checks the job status of the file before closing.
2. Returns error code if file is not found or is blank, or file name is invalid.
Input:
NONE
Output:
INTEGER <Return Value> Returns 0 if function is executed successfully. Otherwise
returns a non-zero error code.
Error Conditions:
None.
Example:
Please see jobfile.close (p. 1575) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
394
Function Descriptions

jobfile.create_matrix (values, num_values)

Description:
This function writes a real matrix of any size into the jobfile and then as a matrix in the
database. The label and size of the matrix is defined by the jobfile.writeSS() function.
Input:
REAL ARRAY values(num_values) The values to be entered in the matrix.
INTEGER num_values The number of values to be entered in the database.
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 (Ch. 11) for information on any error values returned by this function.
Example:
Please see jobfile.create_matrix (p. 1576) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.open ( <jobname> , <job_type> )

Description:
This function opens the output file for deck creation. It writes the parameters to be used in the
Results/Model data files. A file “jobname.jbr is created when the MSC.Nastran preference is
selected. The function returns an integer value '0' if executed properly. The functions that are
used subsequent to this function are the msc_delete_old_files, jobfile.writec, jobfile.writef,
jobfile.writei. The file must necessarily be closed by the jobfile.close function.
The function does the following steps:
1. Checks for the jobname validity.
2. Assigns suitable extension to the output file.
Input:
STRING jobname[] The name of the output file to be created.
STRING job_type[] The type of the output file desired
Output:
INTEGER <Return Value> Returns 0 if function is executed successfully. Otherwise
returns a non-zero integer value.
Error Conditions:
None
Note:
Following are the job_types supported by MSC interfaces:
“RESULTS”, “MODEL”, “OUTPUT2”, “ANALYZE NO JOBFILE”
Example:
Please see jobfile.open (p. 1578) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 13 395
Analysis

jobfile.set_job_status ( <job_status>, <message_string>)

Description:
This function sets the job_status with the corresponding description for the jobfile.
Input:
INTEGER job_status The status of the job to be set.
STRING message_string [ ] The message string describing the job type.
Output:
LOGICAL < Return_status> Returns TRUE on successful execution.
Error Conditions:
None.
Example:
Please see jobfile.set_job_status (p. 1579) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writec ( <label_str> , <char_val > )

Description:
This function writes character strings in the jobfile opened by the jobfile.open function. The
other equivalents to this function are jobfile.writei, jobfile.writer and jobfile.write_spl.
Jobfile.writec("str_1","str_2 ") writes the following to the output file : str_1 = str_2. and for
jobfile.writec("","str_2), the output is str_2.
The function does the following steps:
1. Checks the session file compatibility for MARC, MSC.Nastran.
2. Writes the input charaters to the file opened by the jobfile.open() function.
Input:
STRING label_str [] The name of the variable (parameter) to be defined in the
output file.
STRING char_val[] The string value to be assigned to the solution parameter.
Output:
None
Error Conditions:
None
Note:
The function has return statements but does not return any value. The function can be
enhanced to check the status of execution by returning a value.
Example:
Please see jobfile.writec (p. 1580) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
396
Function Descriptions

jobfile.writei ( <label_str> , <int_val > )

Description:
This function writes integer values in the jobfile opened by the jobfile.open function. The other
equivalents to this function are jobfile.writec, jobfile.writer and jobfile.write_spl.
Jobfile.writec("str_1",int) writes the following to the output file : str_1 = int.
The function does the following steps:
1. Checks the session file compatibility for MARC, MSC.Nastran.
2. Writes the input integer values to the file opened by the jobfile.open() function.
Input
STRING label_str [] The name of the variable (parameter) to be defined in the
output file.
INTEGER int_val The integer value to be assigned to the solution parameter.
Output
None
Error Conditions:
None
Note:
The function has return statements but does not return any value. The function can be enhanced
to check the status of execution by returning a value.
Example:
Please see jobfile.writei (p. 1581) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writer ( <label_str> , <r_val > )

Description:
This function writes real values in the jobfile opened by the jobfile.open function. The other
equivalents to this function are jobfile.writei, jobfile.writec and jobfile.write_spl.
Jobfile.writer("str_1",r_val) writes the following to the output file : str_1 = r_val.
Input
STRING label_str [] The name of the variable (parameter) to be defined in the
output file.
REAL r_val The real value to be assigned to the solution parameter
Output
None
Error Conditions:
None
Note:
The function has return statements but does not return any value. The function can be
enhanced to check the status of execution by returning a value.
Example:
Please see jobfile.writer (p. 1582) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 13 397
Analysis

jobfile.write_spl ( <label_str> , <char_str()> )

Description:
This function writes character string arrays in the jobfile opened by the jobfile.open function.
The other equivalents to this function are jobfile.writei, jobfile.writer and jobfile.writec. This
function writes pure string or string arrays as opposed to the function jobfile.writec which
inserts two strings with a "=" in between.
Input:
STRING label_str [] The name of the variable (parameter) to be defined in the
output file.
STRING ARRAY char_str []() The character string array to be assigned to the solution
parameter
Output:
None
Error Conditions:
None
Note:
The function has return statements but does not return any value. The function can be
enhanced to check the status of execution by returning a value.
Example:
Please see jobfile.write_spl (p. 1583) in the MSC.Acumen, Volume 2: Code Examples.

msc_delete_old_files ( <job_name >,<model_suffix>,<results_suffix >)

Description:
This function follows the jobfile.open() function. It searches and deletes all previous versions of
the model and results files to avoid interference with the new jobname.
The function does the following steps:
1. Creates the file names of all the possible old files with the given extension.
2. Checks the existence of files with these names.
3. If no file is found returns with a successful status.
4. If refused permission with file delete, returns with a status.
5. Deletes all old files with the jobname and extensions from the current directory.
Input:
STRING job_name [] The name of the analysis code.
STRING model_suffix[] The suffix assigned to the NASTRAN input file by the user.
STRING results_suffix[] The suffix assigned to the OUTPUT file by the user.
Output:
INTEGER <Return Value> Returns the status of the function.
0 is returned for success, i.e. no files found or all files
successfully deleted
1 is returned for unsuccessful deletion of files, i.e. no
permission to delete files.
Main Index
398
Function Descriptions

Error Conditions:
None
Example:
Please see msc_delete_old_files (p. 1584) in the MSC.Acumen, Volume 2: Code Examples.

mscnastran_anlyze_sub_create.available_callback (<num_items>,
<subcase_name>)
Description:
This function is callback to “Available Subcases” listbox in “Subcase Create” form. Execution of
this function will display the corresponding subcase name in “Subcase Name” databox
available in “Subcase Create” form.
Input:
INTEGER num_items Number of items.
STRING subcase_name[] Subcase name.
Output:
None
Error Conditions:
None
Example:
Please see mscnastran_anlyze_sub_create.available_callback (p. 1585) in the MSC.Acumen,
Volume 2: Code Examples.

mscnastran_analyze_tp.get_version_number (<version_no>)

Description:
This function will get the version number of the MSC.Nastran preference.
Input:
REAL version_no Version number of MSC.Nastran.
Output:
None
Error Conditions:
None
Example:
Please see mscnastran_analyze_tp.get_version_number (p. 1586) in the MSC.Acumen,
Volume 2: Code Examples.

mscnastran_job.associate_subcases (<sseq_str>,<job_name>,<num_subcases>,
<subcase_names>)
Description:
This function will associate the subcases to a job for the MSC.Nastran preference.
Input:
STRING sseq_str[] Solution sequence number.
STRING job_name[] Name of the job.
Main Index
CHAPTER 13 399
Analysis

INTEGER num_subcases Number of subcases.


STRING subcase_names[]() Array of subcase names.
Output:
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see mscnastran_job.associate_subcases (p. 1587) in the MSC.Acumen, Volume 2: Code
Examples.

mscnastran_subcase.create (<sseq_str>,<subcase_names>,<subcase_desc>)

Description:
This function will create subcases for the MSC.Nastran preference.
Input:
STRING sseq_str[] Solution sequence number.
STRING subcase_names[] Name of subcase
STRING subcase_desc[] Subcase description
Output:
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see mscnastran_subcase.create (p. 1589) in the MSC.Acumen, Volume 2: Code Examples.

mscnastran_subcase.create_char_param (<sseq_str>,<char_value>)

Description:
This function will load a character value for a subcase parameter into the database.
Input:
STRING param_name[] Name of the subcase parameter.
STRING char_value[] Value of the parameter.
Output:
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see mscnastran_subcase.create_char_param (p. 1590) in the MSC.Acumen, Volume 2:
Code Examples.

Main Index
400
Function Descriptions

mscnastran_update.job (<job_name>)

Description:
This function will update an old job to format of current MSC.Nastran preference.
Input:
STRING job_name[] Name of the job.
Output:
INTEGER <Return Value>Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error values returned by this function.
Example:
Please see mscnastran_update.job (p. 1591) in the MSC.Acumen, Volume 2: Code Examples.

uil_app_analysis.change_current_branch (num_branches>,<labels>,<post_them>)

Description:
This function will change the current branch of the option menu tree to the new branch for
analysis application
Input:
INTEGER num_branches Number of menus in new branch.
STRING labels[](num_branches)Array of item labels for each menu.
LOGICAL post_them Flag to indicate if the menus are to be posted after they are
set.
Output:
Error Conditions:
None
Example:
Please see uil_app_analysis.change_current_branch (p. 1592) in the MSC.Acumen, Volume 2:
Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Fields
14
■ General

Main Index
402
Function Descriptions

14.1 General

db_get_all_field_names (object)

Description:
Gets all lbc object names from the database, in get all, get next method.
Input:
INTEGER object The object ID for the rows selected
Output:
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Example:
Please see db_get_all_field_names (p. 1598) in the MSC.Acumen, Volume 2: Code Examples.

db_get_next_field_name (id, name)

Description:
Gets all lbc object names from the database, in get all, get next method.
Input:
None.
Output:
INTEGER id The unique internal ID of the field in the database.
STRING name[ The name of the field in the database.
INTEGER <Return Value> .
Error Conditions:
13000002 Unrecoverable database error
13000117 The query specified has completed
13000007 An unspecified database error occurred
Remarks:
Accesses all records for a specified object in the “field” table in the database.
Example:
See example for db_get_all_field_names (p. 402). See also db_get_next_field_name
(p. 1606) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 14 403
Fields

db_get_field_id (name, id)

Description:
Gets a field id in the database.
Input:
STRING name[] The name of the field.
Output:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Gets a record in the “field” table.
Example:
See example for field_fem_const_eval (p. 412) or db_get_max_field (p. 407) or
db_modify_field (p. 408). See also db_get_field_id (p. 1602) in the MSC.Acumen, Volume 2:
Code Examples.

db_get_field_attrs (id, name, object, nvar, ivar1, ivar2, ivar3)

Description:
Gets a field in the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
Output:
STRING name[] The name of the field.
INTEGER object 0 = spatial; 1 = material; 2 = time
INTEGER nvar The number of functions used to define this field.
INTEGER ivar1 Values 1-4
INTEGER ivar2 Values 1-4
INTEGER ivar3 Values 1-4
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Gets a record in the “field” table and one in either the “field_function” or “field_table” table in
the database.
Example:
See example for db_get_all_field_names (p. 402). See also db_get_field_attrs (p. 1599) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
404
Function Descriptions

fields_create_general_term (field_name, term_field_id, term_type, term_id, length,


general_term_string)
Description:
This function creates a term for a general field in the database. This function covers the contact
LBCs definitions for ABAQUS also.
Input:
STRING field_name[] This value specifies the existing general field name.
INTEGER term_field_id This value specifies the term field id.
INTEGER term_type This value specifies the type of the term i.e. Function,
Field & Independent Variable.
INTEGER term_id This value specifies the term identifiers.
INTEGER length String length of general_term_string.
STRING general_term_string[length] This string represents the term type of general field.
- For the function term type “Independent
Variables”, the function term is selected from
allready existed function expressions like ’RAD’,
‘UD’, ‘X’, ‘Y’, ‘Z’, ‘e’, ‘er’, ‘f’, ‘t’,’u’& ‘v’.
- For the function term type “P3 Functions”, user
creates the function expression by using selected
Arithmetic Operators.
In the case of ABAQUS “contact LBC” definition is:
general_term_string =
"contact_lbc(20|12|13|14|15|16|19|20|21|22|23|
24|25|26|27|28|29|30|31|33|35|1|1|1|1|2|3|3
|2|0.2|0.|0.|0.|0.|0.|0.|0.|0.|0.|0.|0.)"
where
“|” is Field argument separator
general_data_count = 20
20 data variables ids
20 data values
|12 = LBC_VAR_CONTACT_TYPE
|13 = LBC_VAR_SLIDING_TYPE
|14 = LBC_VAR_SURFACE_BEHAVIOR
|15 = LBC_VAR_FRICTION_FORMULATION
|16 = LBC_VAR_PENETRATION_TYPE
|19 = LBC_VAR_MASTER_REGION_ID
|20 = LBC_VAR_SLAVE_REGION_ID
|21 = LBC_VAR_VISCOUS_DAMPING
|22 = LBC_VAR_FRICTION_COEF
|23 = LBC_VAR_SHEAR_STRESS_LIMIT
|24 = LBC_VAR_PRESS_ZERO_CLEAR

Main Index
CHAPTER 14 405
Fields

|25 = LBC_VAR_CLEAR_ZERO_PRESS
|26 = LBC_VAR_NEGATIVE_PRESSURE
|27 = LBC_VAR_OVER_CLOSURE
|28 = LBC_VAR_DAMPING_ZERO_CLEAR
|29 = LBC_VAR_CLEARANCE_ZERO_DAMP
|30 = LBC_VAR_FRAC_CLEARANCE
|31 = LBC_VAR_ADJUST_TOLERANCE
|33 = LBC_VAR_OUT_OF_PLANE_WIDTH
|35 = LBC_VAR_CROSS_SECT_AREA
|1 = “General” Contact Type
|1 = “Large” Sliding Type
|1 = “Hard” Surface Behavior
|1 = “Penalty” Friction Formulation
|2 = “One Sided” Penetration Type
|3 = Master Region Id
|3 = Slave Region Id
|2 = “Off” Viscous Damping
|0.2 = ““ Friction Coefficient (Databox Input)
|0. = Shear Stress Limit (Databox Input)
|0. = Pressure Zero Clearance
|0. = Clearance Zero Pressure
|0. = Negative Pressure
|0. = Over Closure
|0. = Damping Zero Clearance
|0. = Clearance Zero Damping
|0. = Frac Clearance
|0. = Adjust Tolerance (Databox Input)
|0. = Out of Plane Width
|0. = Cross Sectional Area
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.
Example:
Please see fields_create_general_term (p. 1613) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
406
Function Descriptions

get_field_values_no_trans ( field_id, num_evals, eval_dim, field_dim, eval_points,


field_values )
Description:
Return the values of the field ID for NPTS locations specified by POINTS in VALUES. NO
transformation of the points is done.
Input:
INTEGER field_id Field ID.
INTEGER num_evals Number of points to be evaluated.
INTEGER eval_dim Number of coordinates defining POINTS.
INTEGER field_dim Dimensionality of field. (1 or 3).
REAL eval_points (num_evals,eval_dim)Values of the coordinates of the points.
Output:
REAL field_values (num_evals,eval_dim) Values of the fields.
INTEGER <Return Value> .See error returned.
Error Conditions:
30001401 Unable to allocate enough memory to evaluate the field.
30001402 No Evaluation method is defined for this field type.
Remarks:
For REALS, PCL ordering is needed.
Example:
Please see get_field_values_no_trans (p. 1620) in the MSC.Acumen, Volume 2: Code Examples.

get_field_values ( field_id, num_evals, eval_dim, field_dim, eval_points, field_values )

Description:
Return the values of the field ID for NPTS locations specified by POINTS in VALUES.
Transformation matrix for the specified CID.
Input:
INTEGER field_id Field ID.
INTEGER num_evals Number of points to be evaluated.
INTEGER eval_dim Number of coordinates defining POINTS.
INTEGER field_dim Dimensionality of field. (1 or 3).
REAL eval_points (num_evals,eval_dim)Values of the coordinates of the points.
Output:
REAL field_values (num_evals,field_dim) Values of the fields.
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
30001401 Unable to allocate enough memory to evaluate the field.
30001402 No Evaluation method is defined for this field type.
Remarks:
For REALS, PCL ordering is needed.

Main Index
CHAPTER 14 407
Fields

Example:
Please see get_field_values (p. 1619) in the MSC.Acumen, Volume 2: Code Examples.

db_get_max_field (id)

Description:
Gets the largest field id from the database.
Input:
None.
Output:
INTEGER id Highest field ID used.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000007 An unspecified database error occurred
Remarks:
Selects the largest field id from the database.
Example:
None.

fld_evl_get_maxnod_for_group (gid, maxnod)

Description:
Calculate the maximum number of nodes for any element in group GID.
Input:
INTEGER gid Group id - 0 get all elems in model.
Output:
INTEGER maxnod Max number of nodes in any element.
INTEGER <Return Value> .0 if no error, else error code.
Error Conditions:
None.
Remarks:
None.
Example:
Please see fld_evl_get_maxnod_for_group (p. 1618) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
408
Function Descriptions

db_modify_field (id, name, object, type, etype, eid, extra_opt, cid_type, cid, defn_type,
nvar, ivar1, ivar2, ivar3, fn1_size, fn2_size, fn3_size, fn1, fn2, fn3,
lin_def, nxvals, nyvals, nzvals, xvals, yvals, zvals, vals)
Description:
Modifies a field in the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
STRING name[] The name of the field to be modified.
INTEGER object 0 = spatial; 1 = material; 2 = time
INTEGER type 0 = scalar; 1 = vector
INTEGER etype he entity type.
INTEGER eid The entity ID.
INTEGER extra_opt The extrapolation option.
INTEGER cid_type 0 = Real; 1 = Parametric
INTEGER cid The ID of the coordinate frame used to define this field.
INTEGER defn_type 0 = Function; 1 = Table; 2 = Fem;
INTEGER nvar The number of functions used to define this field.
INTEGER ivar1 Values 1-4
INTEGER ivar2 Values 1-4
INTEGER ivar3 Values 1-4
INTEGER fn1_size The size of the first function used to define this field.
INTEGER fn2_size The size of the second function used to define this field.
INTEGER fn3_size The size of the third function used to define this field.
STRING fn1[fn1_size] The first function that defines this field.
STRING fn2[fn2_size] The second function that defines this field.
STRING fn3[fn3_size] The third function that defines this field.
LOGICAL lin_def Flag indicating whether this was a linear definition.
INTEGER nxvals The number of x values for this field.
INTEGER nyvals The number of y values for this field.
INTEGER nzvals The number of z values for this field.
REAL xvals(nxvals) The x values for this field.
REAL yvals(nyvals) The y values for this field.
REAL zvals(nzvals) The z values for this field.
REAL vals(nxvals, nyvals, nzvals)
The field values for this table field.
Output:
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Modifies a record in the “field” table and one in either the “field_function”, “field_fem” or
“field_table” table in the database.
Example:
Please see db_modify_field (p. 1608) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 14 409
Fields

db_delete_field (id)

Description:
Deletes a field in the database.
Input:
INTEGER id The unique internal ID identifying the field in the
database.
Output:
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Deletes a record in the “field” table and one in either the “field_function” or “field_table” table
in the database.
Example:
See example for db_get_max_field (p. 407). See also db_delete_field (p. 1596) in the
MSC.Acumen, Volume 2: Code Examples.

fld_cre_fem_res_sca (fid, grpid, scalid)

Description:
Transform a scalar elem table to a lbc field table formatted for efficient use in a FEM field. The
table will contain one entry per element in the group and will be sorted by element id.
Input:
INTEGER fid Field ID to be converted.
INTEGER grpid Group ID.
INTEGER scalid Scalar_elem_table ID referenced by the field.
Output:
INTEGER <Return Value> .0 success, otherwise an error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see fld_cre_fem_res_sca (p. 1616) in the MSC.Acumen, Volume 2: Code Examples.

fld_cre_fem_res_vec (fid, vecid, elmflg)

Description:
Transform a vector graphics table to a lbc field table.
Input:
INTEGER fid Field ID to be converted.
INTEGER vecid Ggraphics_vector_table ID referenced by the field.
Main Index
410
Function Descriptions

Output:
INTEGER elmflg !=0 a field_res_elem table was created =0 a field_res_node table
was created
INTEGER <Return Value> .0 success, otherwise an error
Error Conditions:
None.
Remarks:
None.
Example:
See example for fld_cre_fem_res_sca (p. 409). See also fld_cre_fem_res_vec (p. 1617) in the
MSC.Acumen, Volume 2: Code Examples.

db_delete_field_res (id)

Description:
This function deletes the field_res_elm or the field_res_not table from a specified database field.
Input:
INTEGER id This value specifies the identifier of a field in the database.
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:
13000002 Unrecoverable database error
Remarks:
Deletes a record in the “field_res_elem” table or “field_res_node” table in the database.
Example:
Please see db_delete_field_res (p. 1597) in the MSC.Acumen, Volume 2: Code Examples.

field_create_field_lbc (id, name, type, ent_type, nvals, eid, elem_face, elem_edge,


node_pos, vals)
Description:
Create an LBC type field
Input:
INTEGER id Field ID ( ID nonzero, otherwise use next available field ID
).
STRING name[31 Field name.
INTEGER type =1 scalar data, =3 vector data.
INTEGER ent_type Category - Nodal or Element.
INTEGER nvals INumber of points defining the field.
INTEGER eid(nvals) Ids of the elements/nodes.
INTEGER elem_face(nvals) Id of the element faces.
INTEGER elem_edge(nvals) Id of the element edges.

Main Index
CHAPTER 14 411
Fields

INTEGER node_pos(nvals) Id of nodal position ( for elem variable).


REAL vals(nvals, type) Values of the field
Output:
INTEGER id .Field ID returned.
INTEGER <Return Value> 0 success, otherwise an error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see field_create_field_lbc (p. 1611) in the MSC.Acumen, Volume 2: Code Examples.

db_get_field_lbc (id, nvals, eid, elem_face, elem_edge, node_pos, vals)

Description:
Gets an lbc field from the database.
Input:
INTEGER id The unique internal ID identifying the field in the
database.
INTEGER nvals The number of values that the output arrays are
dimensioned to handle.
Output:
INTEGER nvals The number of values that are in the output arrays.
INTEGER eid(nvals) The entity ID.
INTEGER elem_face(nvals) The elem face ID.
INTEGER elem_edge(nvals) The elem edge ID.
INTEGER node_pos(nvals) The node position.
REAL vals(nvals, type) The scalar, vector, or tensor values of the field.
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Gets a record in the “field” table and one in either the “field_res_elem” or “field_res_node”
table in the database.
Example:
Please see db_get_field_lbc (p. 1602) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
412
Function Descriptions

db_get_field_lbc_type (id, type, object)

Description:
Gets a field type from the database
Input:
INTEGER id The unique internal ID identifying the field in the database.
Output:
INTEGER type The type of the field.
INTEGER object 0 = spatial; 1 = material; 2 = time
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Reads a record in the “field” table.
Example:
Please see db_get_field_lbc_type (p. 1604) in the MSC.Acumen, Volume 2: Code Examples.

field_fem_const_eval (gid, numint, nindep, intrpl, extrap, maxnod, cnst, eids, geoloc,
offflg)
Description:
Evaluate a FEM type field at NUMINT points. If point is outside the range set the indices
according to EXTRAP return the constraints.
Input:
INTEGER gid Group ID.
INTEGER numint Number of interpolents to be evaluated.
INTEGER nindep Number of independent variables.
REAL intrpl(numint, nindep) Locations of interpolents.
INTEGER extrap Extrapolation Option.
INTEGER maxnod Maximum # of nodes of any element in GID.
Output:
REAL cnst(numint, maxnod) Values of the constraints.
INTEGER eids(numint) Elem IDS corresponding to the constraints.
REAL geoloc(numint, nindep)Location of the interpolated points.
INTEGER offflg(numint) =1 GEOLOC(,i) not within GEOTOL of POINTS
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
None.
Remarks:
None.
Example:
Please see field_fem_const_eval (p. 1614) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 14 413
Fields

db_get_field_dfem (id, nvals, method, eid, elem_face, elem_edge, node_pos, nodeid,


vals)
Description:
Gets an lbc field from the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER nvals The number of values that the output arrays are present in
the table.
Output:
INTEGER nvals The number of values that the output arrays are present in
the table.
INTEGER method(nvals) The method used. 1 = vector 2 = nodeID
INTEGER eid(nvals) The entity id.
INTEGER elem_face(nvals) The elem face id.
INTEGER elem_edge(nvals) The elem edge id.
INTEGER node_pos(nvals) The node position.
INTEGER nodeid(nvals) The node ID if using method = 2
REAL vals(nvals, type) The scalar,vector, or tensor values of the field. If method = 1
INTEGER <Return Value> .Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
13000002 Unrecoverable database error
Remarks:
Gets a record in the “field” table and one in either the “field_res_elem” or “field_res_node”
table in the database.
Example:
Please see db_get_field_dfem (p. 1600) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
414
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Results
15
■ General

Main Index
416
Function Descriptions

15.1 General

db_count_result_types_for_elem (elementId, resultTypeCount)

Description:
Given an elementId, count all the unique result types used by it.
Input:
INTEGER elementId The element ID.
Output:
INTEGER resultTypeCount Count of all the unique result types used by the given
element ID.
INTEGER <Return Value> .Integer indicating the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Example:
Please see db_count_result_types_for_elem (p. 1624) in the MSC.Acumen, Volume 2: Code
Examples.

db_get_results_file_suffix (name, suffix)

Description:
Retrieves the results file suffix associated with the named analysis code.
Input:
STRING name[31] Name of the analysis code for which the suffix is to be
retrieved.
Output:
STRING suffix[6] Location into which the named suffix is to be retrieved.
INTEGER <Return Value> Success or failure of routine.
Error Conditions:
13000002 Unrecoverable database error
13000007 An unspecified database error occurred
Remarks:
None.
Example:
Please see db_get_results_file_suffix (p. 1627) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 15 417
Results

db_get_elem_scalar_name (scalar_id, name)

Description:
This function retrieves the name of an element scalar table from the database.
Input:
INTEGER scalar_id This value specifies an identifier for an element scalar table in
the database.
Output:
STRING name[] The value returns the name of the specified element scalar
table. This name is used for display purposes only and is not a
unique table identifier.
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:
13000002-> Unrecoverable database error
13000007-> An unspecified database error occurred
Remarks:
Accesses one record in the “graphics_elem_scalar” table in the database.
Example:
Please see db_get_elem_scalar_name (p. 1625) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.create_jobname ()

Description:
This function creates a jobname for an analysis. It returns error conditions for the jobname
creation as an output.
Input:
None
Output:
INTEGER <Return Value> The status of the execution. Returns 0 for successful
completion and an error code in case of error.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry for jobname.
13000007 An unspecified database error occured.
13000158 Jobname already exists in the database.
13000159 Jobname id not found in the database.
Example:
Please see jobfile.create_jobname (p. 1628) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
418
Function Descriptions

jobfile.create_param ( <label>, <int_value >,<real_value>,<string_value>,


<param_type>)

Description:
This function creates a parameter for the current parameter set of the type indicated. Every
new jobname or subcase is referenced by a new param_set_id. All the parameters for the
jobname or subcase can be accessed through this param_set_id. This function
(jobfile.create_param) writes the parameter name and assigns its value, first in the jobfile and
then in the database. The parameter can be of type string, integer or real. For example, if a
string “Load_case” is passed in the first argument, it creates a new param_set_id. Subsequent
functions will define the other parameters. This function also creates a new step when the load
case parameter is encountered in the label string. It also increments the version of the file search
path parameter when it is encountered.
Input:
STRING label [ ] The parameter name to create.
INTEGER int_value The integer value to be assigned to the parameter.
REAL real_value The real value to be assigned to the parameter.
STRING string_value[ ] The string value to be assigned to the parameter.
INTEGER para_type The type of parameter to be added.
1 -INTEGER
3 - REAL
4 - STRING.
Output:
INTEGER <Return Value> Returns 0 for successful execution, else returns the error
code.
Error Conditions:
13000002 Unrecoverable database error.
13000007 An unspecified database error occured.
13000052 Load case not found.
13000204 The specified analysis step not found.
Example:
Please see jobfile.create_param (p. 1628) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.eval_list ( <list>, <sublist_filter>)

Description:
This function sorts the values in the string ‘list[ ]’in the form of a real or integer array. This
function should be followed by function jobfile.write_array_as_list to write the array to the
jobfile. Refer to file ‘lpenums.i’ for values of sublist filters.
Input:
STRING list [ ] The values of the array in string format.

Main Index
CHAPTER 15 419
Results

INTEGER sublist_filter The type of array. Refer to file ‘lpenums.i’ for values.
512 - if the list contain nodes.
1024 - if the list contain elements.
16348 - if the list contain real values.
8192 - if the list contain integer values.
Output:
INTEGER < Return_status> Returns 0 on successful execution.
Error Conditions:
14000045 Improper input list.
Example:
Please see jobfile.eval_list (p. 1630) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_array_as_list ( <label>, <value_format>, <num_values_on_line>)

Description:
This function writes values of an array in string format to the jobfile. The array is specified by
the function jobfile.eval_list(). ‘Value_format’ is a string to specify the format for the array as
per the string input/output routines.
Input:
STRING label [ ] The label text to be written to the jobfile.
STRING value_format [ ] The format for the array values (i.e. “%I2.2%”, “%G2%”.)
INTEGER num_values_on_line The value to specify the number of values to be written on a
single line in the jobfile.
Output:
INTEGER < Return_status> Returns a 0 on successful execution.
Error Conditions:
None
Example:
Please see jobfile.write_array_as_list (p. 1631) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_element_list ( <label>, <element_list>)

Description:
This function writes element numbers from the string in the databox as string format to the
jobfile. The element_list[ ] should start with ‘elm’ or ‘Element’ for the function to get executed.
Input:
STRING label [ ] The label text to be written to the jobfile.
STRING element_list [ ] The element numbers in string format to be written to the
jobfile.
Output:
None
Error Conditions:
None
Main Index
420
Function Descriptions

Example:
Please see jobfile.write_element_list (p. 1632) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_integer_list ( <label>, <integer_value>)

Description:
This function writes integer values from the databox in string format to the jobfile.
Input:
STRING label [ ] The text to be written to the jobfile.
STRING integer_value [ ] The integer values in string format to be written to the
jobfile.
Output:
None
Error Conditions:
None
Example:
Please see jobfile.write_integer_list (p. 1633) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_node_list ( <label>, <node_list>)

Description:
This function writes node numbers from the string in the databox in string format to the jobfile.
The node_list[ ] should start with ‘node’ for the function to get executed.
Input:
STRING label [ ] The label text to be written to the jobfile.
STRING node_list [ ] The node list in string format to be written to the jobfile.
Output:
None
Error Conditions:
None
Example:
Please see jobfile.write_node_list (p. 1635) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_real_list ( <label>, <real_value>)

Description:
This function writes real values from the databox in string format to the jobfile.
Input:
STRING label [ ] The text to be written to the jobfile.
STRING real_value[ ] The real values in string format to be written to the jobfile.
Output:
None

Main Index
CHAPTER 15 421
Results

Error Conditions:
None
Example:
Please see jobfile.write_real_list (p. 1636) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_stream ( <label>, <int_value >, <real_value>,<string_value>)

Description:
This function writes text (a formatted string) with the integer, real and string values (defined in
the other arguments) to the jobfile. The format of the values is specified in the label argument.
The function jobfile.write_stream() can be used in this way:
jobfile.write_stream("The values are : integer value : %I%, real value : %G% and string
value:%A%",15, 5.5, "test string ")
This will write the following statement to the jobfile:
The values are : integer value : 15, real value : 5.5 and string value: test string.
%I%, %G%, %A% are formats to specify integer, real and string values respectively.
Input:
STRING label [ ] The text to be written to the jobfile.
INTEGER int_value The integer value to be written in the text to the jobfile.
REAL real_value The real value to be written in the text to the jobfile.
STRING string_value[ ] The string value to be written in the text to the jobfile.
Output:
None
Error Conditions:
None
Example:
Please see jobfile.write_stream (p. 1637) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.write_string (<label>,<value>)

Description:
This function will write a statement “label” = “value” to the jobfile opened by the jobfile.open()
function. For total text length exceeding 80 characters, it is written to the next line in the jobfile.
For instance, if the user wants to specify that the output should be in the form of an .op2 file
only, then the command is: jobfile.write_string(“DATA OUTPUT”,”OP2 ONLY”). This will
write the following statement to the jobfile: DATA OUTPUT = OP2 ONLY.
Input:
STRING label [ ] The name of the parameter.
STRING value [ ] The value for the parameter.
Output:
INTEGER <Return Value> Returns 0 for success, else returns the error code.
Error Conditions:
6013024 The maximum number of characters that can be written to
the control file for a parameter is 240.
Main Index
422
Function Descriptions

Example:
Please see jobfile.write_string (p. 1638) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writer ( <label>, <real_value>)

Description:
This function writes real values to the jobfile. The format is ‘label = real_value’.
Input:
STRING label [ ] The label to be written to the jobfile.
REAL real_value The real value to be written to the jobfile.
Output:
None
Error Conditions:
None
Example:
Please see jobfile.writer (p. 1639) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writeS1 (<label>,<rl_val>)

Description:
This function will write an array of one real value to the jobfile opened by the jobfile.open()
function.
Input:
STRING label [ ] The name of the parameter.
REAL rl_val (1) The array of one real value to be written.
Output:
None
Error Conditions:
None
Example:
Please see jobfile.writeS1 (p. 1640) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writeS2 (<label>,<rl_val>)

Description:
This function will write an array of two real values to the jobfile opened by the jobfile.open()
function.
Input:
STRING label [ ] The name of the parameter.
REAL rl_val (2) The array of two real values to be written
Output:
None

Main Index
CHAPTER 15 423
Results

Error Conditions:
None
Example:
Please see jobfile.writeS2 (p. 1641) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writeS3 (<label>,<rl_val>)

Description:
This function will write an array of three real values to the jobfile opened by the jobfile.open()
function.
Input:
STRING label [ ] The name of the parameter.
REAL rl_val (3) The array of three real values to be written
Output:
None
Error Conditions:
None
Example:
Please see jobfile.writeS3 (p. 1642) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writeS4 (<label>,<rl_val>)

Description:
This function will write an array of four real values to the jobfile opened by the jobfile.open()
function.
Input:
STRING label [ ] The name of the parameter.
REAL rl_val (4) The array of four real values to be written
Output:
None
Error Conditions:
None
Example:
Please see jobfile.writeS4 (p. 1643) in the MSC.Acumen, Volume 2: Code Examples.

jobfile.writeSS (<label>,<int_val>)

Description:
This function will write an array of two integer values to the jobfile opened by the jobfile.open()
function.
Input:
STRING label [ ] The name of the parameter.
Main Index
424
Function Descriptions

INTEGER int_val (2) The array of two integer values to be written


Output:
None
Error Conditions:
None
Example:
Please see jobfile.writeSS (p. 1644) in the MSC.Acumen, Volume 2: Code Examples.

rdm_result_minmax_get ( group_name, min, max)

Description:
This function obtains the minimum and maximum values from the current “active” result
which is controlling the current viewport spectrum/range.
Input:
STRING group_name[] The current viewport spectrum range.
Output:
REAL min Minimum value of results.
REAL max Maximum value of results.
Error Conditions:
None.
Example:
Please see rdm_result_minmax_get (p. 1645) in the MSC.Acumen, Volume 2: Code Examples.

res_db_cgetlayerposids (<rescase_id>,<rt_id>,<nlayers>,<layerposids>)

Description:
This function will retrieve a list of layers of a result type in a given result case
Input:
INTEGER rescase_id Result case id
INTEGER rt_id Result type id
Output:
INTEGER nlayers Number of layers
INTEGER layerposids() Layer position ids
INTEGER <Return Value> Returns 0 for success, otherwise returns the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error
values returned by this function.
Example:
Please see res_db_cgetlayerposids (p. 1647) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 15 425
Results

res_db_cgetrescases (<num_ldcases>,<loadcase_id>,<subcase_id>,<rescase_id>)

Description:
This function will retrieve result case ids.
Input:
INTEGER num_ldcases Number of load cases
INTEGER loadcase_id() Load case ids
INTEGER subcase_id() Subcase ids
Output:
INTEGER rescase_id() Result case ids.
INTEGER <Return Value> Returns 0 for success, otherwise return the error code.
Error Conditions:
See the Status Message(Ch 11) for information on any error
values returned by this function.
Example:
Please see res_db_cgetrescases (p. 1648) in the MSC.Acumen, Volume 2: Code Examples.

res_utl_create_elem_result ( resultids, primary_title, secondary_title, cnt, ids, cidlist,


datatype, location, nresults, results)
Description:
This function creates new result case and writes to the database. The new result case can be
displayed in the viewport. The primary results id and secondary results ids are created newly
by passing some input value to the function.
Input:
INTEGER resultids(5) Array of the results case ids i.e. load case id, subcase id,
primary case id, secondary case id and layer case id.
The primary id and secondary id are not used as inputs by
this function. This value is used as both as input and an
outputs to the function and would be passed by the calling
function as a single argument.
STRING primary_title[] This value specifies the primary result title.
STRING secondary_title[] This value specifies the secondary result title.
INTEGER cnt Number of Element results returned.
INTEGER ids(VIRTUAL) Array of the extracted elem ids.
STRING cidlist[] List format of a coordinate system for vector and tensor
transformations. NULL string will be interpreted as no
transformation.
INTEGER datatype This value returns the datatype i.e.
Scalar =1, Vector = 2, Tensor =3
STRING location[] This value specifies the location of the coordinate frame
identifier. “A[sis]”, “C[entroid], “N[odal] or ““ = “A[sis]”
INTEGER nresults(VIRTUAL) Array of the results per element.
REAL results(VIRTUAL) Array of the extracted results.

Main Index
426
Function Descriptions

Output:
INTEGER resultids(5) Array of the results case ids i.e. load case id, subcase id,
primary case id, secondary case id and layer case id. The
load case, sub case and layer ids are not used as output
values by this function.
The primary id and secondary id are used as outputs by
this function. This value is used as both as input and an
outputs to the function and would be passed by the calling
function as a single argument.
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:
None
Example:
Please see res_utl_create_elem_result (p. 1650) in the MSC.Acumen, Volume 2: Code Examples.

res_utl_extract_elem_history2 (nrc, lcids, subids, resultids, elem_list, derivation,


location, cidlist, avg_method, avg_domain,
extrap_method, complex_form, complex_angle,
datatype, resloc, cnt, ids, nresults, results, min_loc,
max_loc)
Description:
This function will extract the specified results data from the database. Extrapolation and
averaging will be performed as necessary when element based results are requested. The result
datatype returned will be determined by the derivation method. This routine will return scalar,
vector and tensor data. Apart from that it also gives an array index for each minimum and
maximum element result component.
Input:
INTEGER nrc Number of input loadcases.
INTEGER lcids(virtual) Loadcase ids array.
INTEGER subids(virtual) Subcase id array.
INTEGER resultids(3) Primary id, secondary id and layer id.
STRING elem_list[] List of element ids
STRING derivation[] Derivation Specifier:
Tensor to Scalar: “VONM”, “OCT”, “HYDRO”, “INV1”,
“INV2”, “INV3”, “MAXSHR”, “MAXCMP”, “MINCMP”,
“P1”, “P2”, “P3”, “XX”, “YY”, “ZZ”, “XY”, “YZ”, “ZX”,
Tensor to Vector: “PV1”, “PV2”, “PV3”, any 3 component
initials (“XXYYZZ”)
Vector to Scalar: “X”, “Y”, “Z”, “MAG”, “MINCMP”,
“MAXCMP”, “AVG”
STRING location[] Location Specifier:
“A[sis]”, “C[entroid], “N[odal] or ““ = “A[sis]”
STRING cidlist[] List format of a coordinate frame.
NULL will be interpreted as no transformation.
Main Index
CHAPTER 15 427
Results

STRING avg_method[] Average Method string (see below).


STRING avg_domain[] Average Domain string (see below).
STRING extrap_method[] Extrapolation Method string (see below).
STRING complex_form[] Complex form string (see below).
REAL complex_angle Used with complex results when complex form is “Angle”.
Output:
INTEGER datatype Scalar =1, Vector = 2, Tensor =3
INTEGER resloc Centroid =1, Nodal =2, Multiple =3
INTEGER cnt Number of nodal results returned .
INTEGER ids(virtual) Array of the extracted elem ids.
INTEGER nresults(virtual) Array of the results per element.
REAL results(virtual) Array of the extracted results.
INTEGER min_loc(virtual) Subcase ID for each elem min component.
INTEGER max_loc(virtual) Subcase ID for each elem max component.
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.
Remarks:
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
Example:
Please see res_utl_extract_elem_history2 (p. 1653) in the MSC.Acumen, Volume 2: Code
Examples.

res_utl_extract_elem_results2 (resultsids, elem_list, derivation, location, cidlist,


avg_method, avg_domain, extrap_method,
complex_form, complex_angle, datatype, resloc, cnt,
ids, nresults, results, min_loc, max_loc)
Description:
This function extracts the specified results data from the database. Extrapolation and averaging
will be performed as necessary when element based results are requested. The result datatype
returned will be determined by the derivation method. This routine will return scalar, vector
and tensor data. Apart from that it also gives an array index for each minimum and maximum
element result component.

Main Index
428
Function Descriptions

Input:
INTEGER resultsids() Array of the results case ids i.e. load case id, subcase id,
primary case id, secondary case id and layer case id.
STRING elem_list[] List of element ids for which to extract results.
STRING derivation[] Derivation Specifier:
Tensor to Scalar: “VONM”, “OCT”, “HYDRO”, “INV1”,
“INV2”, “INV3”, “MAXSHR”, “MAXCMP”, “MINCMP”,
“P1”, “P2”, “P3”, “XX”, “YY”, “ZZ”, “XY”, “YZ”, “ZX”,
Tensor to Vector: “PV1”, “PV2”, “PV3”, any 3 component
initials (“XXYYZZ”)
Vector to Scalar: “X”, “Y”, “Z”, “MAG”, “MINCMP”,
“MAXCMP”, “AVG”
STRING location[] This value specifies the location of the coordinate frame
identifier. “A[sis]”, “C[entroid], “N[odal] or ““ = “A[sis]”
STRING cidlist[] List format of a coordinate system for vector and tensor
transformations. NULL string will be interpreted as no
transformation.
STRING avg_method[] Average Method string (see below).
STRING avg_domain[] Average Domain string (see below).
STRING extrap_method[] Extrapolation Method string (see below).
STRING complex_form[] Complex form string (see below).
REAL complex_angle Used with complex results when complex form is “Angle”
Output:
INTEGER datatype This value returns the datatype i.e.
Scalar =1, Vector = 2, Tensor =3
INTEGER resloc This value returns the result location. Valid value are :
Centroid =1, Nodal =2, Multiple =3
INTEGER cnt Number of Element results returned.
INTEGER ids() Array of the extracted elem ids.
INTEGER nresults() Array of the results per element.
REAL results() Array of the extracted results.
INTEGER min_loc() Subcase ID for each elem minimum component.
INTEGER max_loc() Subcase ID for each elem maximum component.
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
database.
Remarks:
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
Main Index
CHAPTER 15 429
Results

The input value complex_form can have the following values:


“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
Example:
Please see res_utl_extract_elem_results2 (p. 1656) in the MSC.Acumen, Volume 2: Code
Examples.

res_utl_extract_nodal_history2 (nrc, lcids, subids, resultids, node_list, derivation,


cidlist, avg_method, avg_domain, extrap_method,
complex_form, complex_angle, datatype, cnt, ids,
results, min_loc, max_loc)
Description:
This function will extract the specified results data from the database. Extrapolation and
averaging will be performed as necessary when nodes based results are requested. The result
datatype returned will be determined by the derivation method. This routine will return scalar,
vector and tensor data. Apart from that it also gives an array index for each minimum and
maximum nodal result component.
Input:
INTEGER nrc Number of result cases to be extracted.
INTEGER lcids() Loadcase ids array.
INTEGER subids() Subcase id array.
INTEGER resultids() Primary id, secondary id and layer id.
STRING elem_list[] List of nodes ids at which to extract results.
STRING derivation[] Derivation Specifier:
Tensor to Scalar: “VONM”, “OCT”, “HYDRO”, “INV1”,
“INV2”, “INV3”, “MAXSHR”, “MAXCMP”, “MINCMP”,
“P1”, “P2”, “P3”, “XX”, “YY”, “ZZ”, “XY”, “YZ”, “ZX”,
Tensor to Vector: “PV1”, “PV2”, “PV3”, any 3 component
initials (“XXYYZZ”)
Vector to Scalar: “X”, “Y”, “Z”, “MAG”, “MINCMP”,
“MAXCMP”, “AVG”
STRING cidlist[] List format of a coordinate system for vector/tensor
transformations. NULL will be interpreted as no
transformation.
STRING avg_method[] Average Method string (see below).
STRING avg_domain[] Average Domain string (see below).
STRING extrap_method[] Extrapolation Method string (see below).
STRING complex_form[] Complex form string (see below).
REAL complex_angle Used with complex results when complex form is
“Angle”.
Output:
INTEGER datatype This value returns the data type. Valid values are:
Scalar =1, Vector = 2 and Tensor =3
INTEGER cnt Number of Nodal results returned
INTEGER ids() Array of the extracted nodes ids
REAL results() Array of the extracted results at all the specified nodes.
INTEGER min_loc() Subcase ID for each node as minimum component
Main Index
430
Function Descriptions

INTEGER max_loc() Subcase ID for each node as maximum component


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.
Remarks:
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
Example:
Please see res_utl_extract_nodal_history2 (p. 1658) in the MSC.Acumen, Volume 2: Code
Examples.

res_utl_extract_nodal_results2 (resultsids, node_list, derivation, cidlist, avg_method,


avg_domain, extrap_method, complex_form,
complex_angle, datatype, cnt, ids, results, min_loc,
max_loc)
Description:
This function extracts the specified results data from the database. Extrapolation and averaging
will be performed as necessary when nodal based results are requested. The result datatype
returned will be determined by the derivation method. This routine will return scalar, vector
and tensor data. Apart from that it also gives an array index for each minimum and maximum
nodes result component.
Input:
INTEGER resultsids() Array of the results case ids i.e. load case id, subcase id,
primary case id, secondary case id and layer case id.
STRING node_list[] List of nodes ids for which to extract results.
STRING derivation[] Derivation Specifier:
Tensor to Scalar: “VONM”, “OCT”, “HYDRO”, “INV1”,
“INV2”, “INV3”, “MAXSHR”, “MAXCMP”, “MINCMP”,
“P1”, “P2”, “P3”, “XX”, “YY”, “ZZ”, “XY”, “YZ”, “ZX”,
Tensor to Vector: “PV1”, “PV2”, “PV3”, any 3 component
initials (“XXYYZZ”)
Vector to Scalar: “X”, “Y”, “Z”, “MAG”, “MINCMP”,
“MAXCMP”, “AVG”

Main Index
CHAPTER 15 431
Results

STRING cidlist[] List format of a coordinate system for vector and tensor
transformations. NULL string will be interpreted as no
transformation.
STRING avg_method[] Average Method string (see below).
STRING avg_domain[] Average Domain string (see below).
STRING extrap_method[] Extrapolation Method string (see below).
STRING complex_form[] Complex form string (see below).
REAL complex_angle Used with complex results when complex form is “Angle”
Output:
INTEGER datatype This value returns the dta type i.e.
Scalar =1, Vector = 2, Tensor =3
INTEGER cnt Number of Nodal results returned.
INTEGER ids() Array of the extracted nodes ids.
REAL results() Array of the extracted results.
INTEGER min_loc() Subcase ID for each node minimum component.
INTEGER max_loc() Subcase ID for each node maximum component.
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
database.
Remarks:
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
Example:
Please see res_utl_extract_nodal_results2 (p. 1661) in the MSC.Acumen, Volume 2: Code
Examples.

res_utl_transform_nodal_results (node_count, node_ids, cid, ncomp, resvals)

Description:
This function transforms the specified nodal results for specified coordinate system.
Input:
INTEGER node_count Number of nodal results returned.
INTEGER node_ids() Array of the extracted nodes ids.
INTEGER cid Coordinate frame identifier.
INTEGER ncomp This value specifies the number of component as 1, 3 or 6.
REAL resvals() Array of the specified results.
Main Index
432
Function Descriptions

Output:
REAL resvals() Array of the transformed results.
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:
4500015 The Specified Cordinate Frame Id does not exist.
Example:
Please see res_utl_transform_nodal_results (p. 1664) in the MSC.Acumen, Volume 2: Code
Examples.

vki_db_getresid (<rescase_id>,<prires_id>,<secres_id>)

Description:
This function will retrieve result type id from the database.
Input:
INTEGER rescase_id Result case id.
INTEGER prires_id Primary result id.
INTEGER secres_id Secondary result id.
Output:
INTEGER rt_id <Return Value>Result type id.
Error Conditions:
NONE
Example:
Please see vki_db_getresid (p. 1666) in the MSC.Acumen, Volume 2: Code Examples.

xy_curve_results_set_wnd ( <window_name>, <num_points >, <curve_name>,


<x_values>, <y_values> )

Description:
This function opens a window and draws a graph using given number of points and the array
for coordinates of the points. The function internally sets the array size for the x and y values.
It returns an integer with 0 as success condition or the error code in case of failure.
Input:
STRING window_name[ ] The name of the window to open the X-Y curve.
INTEGER num_points Number of points to decide the curve
STRING curve_name[ ] The name to be assigned to the curve
REAL x_values() The array of real values of the x values of the points on the
ARRAY curve.
REAL y_values() The array of real values of the y values of the points on the
ARRAY curve.
Output:
INTEGER <Return Value> 0 for success or the error code for failure.
Error Conditions:
130000007 Database not open.
Example:
Please see xy_curve_results_set_wnd (p. 1668) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Preferences
16
■ Database
■ General

Main Index
434
Function Descriptions

16.1 Database

db_get_pref (pref_id, data_type, int_pref, log_pref, real_pref, char_pref)

Description:
This function will get a preference from the database.
Input:
INTEGER pref_id This value specifies the id value of the preference to be
retrieved.
INTEGER data_type This value is not used.
Output:
INTEGER int_pref This value returns the integer preference value.
LOGICAL log_pref This value returns the logical preference value.
REAL real_pref This value returns the real preference value.
STRING char_pref[31] This value returns the string preference value.
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:
13000002 Unrecoverable database error.
13000088 Preference not found.
Remarks:
Accesses one record in the “preference” table in the database.
Example:
Please see db_get_pref (p. 1673) in the MSC.Acumen, Volume 2: Code Examples.

db_add_pref (id, data_type, int_pref, log_pref, real_pref, name)

Description:
Adds preferences to the database.
Input:
INTEGER id The internal id of the preference to be added to the database
INTEGER data_type The data type of the preference to be added to the database
INTEGER int_pref The value of the integer preference to be added to the database
INTEGER log_pref The value of the logical preference to be added to the database
REAL real_pref The value of the real preference to be added to the database
STRING name[31] The value of the character preference to be added to the
database
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason
Error Conditions:
13000088 Preference not found
13000002 Unrecoverable database error
Main Index
CHAPTER 16 435
Preferences

Remarks:
Accesses one record in the “preference” table in the database.
Example:
Please see db_add_pref (p. 1672) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
436
Function Descriptions

16.2 General

pref_anal_get (anal_code, anal_type, mod_suf, res_suf )

Description:
Get the Analysis Preference parameters.
Input:
None
Output:
STRING anal_code[31] Analysis Code Name.
STRING anal_type[31 Analysis Type.
STRING mod_suf[4] Model File Suffix.
STRING res_suf[4] Results File Suffix.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_anal_get (p. 1675) in the MSC.Acumen, Volume 2: Code Examples.

pref_anal_set (anal_code, anal_type, mod_suf, res_suf )

Description:
Set the Analysis Preference parameters.
Input:
STRING anal_code[31] Analysis Code Name.
STRING anal_type[31] Analysis Type.
STRING mod_suf[4] Model File Suffix.
STRING res_suf[4] Results File Suffix.
Output:
INTEGER <Return Value> 0: no error.
1: fatal error
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_anal_set (p. 1676) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 16 437
Preferences

pref_confirm_get (confirm )

Description:
Get the Global Preference Confirm status.
Input:
None
Output:
LOGICAL confirm Confirm Flag.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_confirm_get (p. 1677) in the MSC.Acumen, Volume 2: Code Examples.

pref_display_method_get (disp_meth )

Description:
Get the Graphics Display Method Preference type.
Input:
None
Output:
INTEGER disp_meth Display Method.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_display_method_get (p. 1678) in the MSC.Acumen, Volume 2: Code Examples.

pref_entity_dp_get (ed_prop )

Description:
Get the Entity Display Property Preference.
Input:
None
Output:
STRING ed_prop[] Entity Display Property.
INTEGER <Return Value> 0: no error.
1: fatal error.
Main Index
438
Function Descriptions

Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_entity_dp_get (p. 1679) in the MSC.Acumen, Volume 2: Code Examples.

pref_entity_dp_set (ed_prop )

Description:
Set the Entity Display Property Preference.
Input:
STRING ed_prop[] Entity Display Property.
Output:
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
See example for pref_display_method_get (p. 437). See also pref_entity_dp_set (p. 1680) in
the MSC.Acumen, Volume 2: Code Examples.

pref_env_get_integer (prefname, value )

Description:
Retrieve the value of an integer preference.
Input:
STRING prefname[] Name of preference to load.
Output:
INTEGER value Result preference integer.
INTEGER <Return Value> 0: no error, else see error returned.
Error Conditions:
12002001 The environment preference was not found.
12002002 The environment preference is of the wrong datatype.
Remarks:
None.
Example:
Please see pref_env_get_integer (p. 1683) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 16 439
Preferences

pref_env_get_logical (prefname, value )

Description:
Retrieve the value of a logical preference.
Input:
STRING prefname[] Name of preference to load.
Output:
LOGICAL value Result preference logical.
INTEGER <Return Value> 0: no error, else see returned error.
Error Conditions:
12002001 The environment preference was not found.
12002002 The environment preference is of the wrong datatype.
Remarks:
None.
Example:
See example for pref_env_get_integer. See also pref_env_get_logical (p. 1684) in the
MSC.Acumen, Volume 2: Code Examples.

pref_env_get_real (prefname, value)

Description:
Retrieve the value of a real preference.
Input:
STRING prefname[] Name of preference to load.
Output:
REAL value Result preference real.
INTEGER <Return Value> 0: no error, else see error returned.
Error Conditions:
12002001 The environment preference was not found.
12002002 The environment preference is of the wrong datatype.
Remarks:
None.
Example:
See example for pref_env_get_integer (p. 438). See also pref_env_get_real (p. 1685) in the
MSC.Acumen, Volume 2: Code Examples.

Main Index
440
Function Descriptions

pref_env_get_string (prefname, maxlen, value )

Description:
Retrieve the value of a string preference.
Input:
STRING prefname[] Name of preference to load.
INTEGER maxlen Max length of return string w/o null.
Output:
STRING value[] Result preference string.
INTEGER <Return Value> 0; no error, else see error returned.
Error Conditions:
12002001 The environment preference was not found.
12002002 The environment preference is of the wrong datatype.
12002003 The string buffer is too small for the preference.
Remarks:
None.
Example:
See example for pref_env_get_integer (p. 438). See also pref_env_get_string (p. 1686) in the
MSC.Acumen, Volume 2: Code Examples.

pref_fa_get (<lbc_color>,<lbc_display>, <ep_color>,<ep_display>, <display_fem )

Description:
This function gets the color preferences and flags for the display of Loads/Boundary
Conditions and Element Properties. The function pref_fa_set sets the attributes for display of
Loads/ Boundary Conditions and Element Properties.
Input:
None
Output:
INTEGER lbc_color() Load/Boundary Condition colors.
ARRAY
LOGICAL lbc_display() Load/Boundary Condition display flags.
ARRAY
INTEGER ep_color() Element Property colors.
ARRAY
LOGICAL ep_display() Element Property display flags.
ARRAY
LOGICAL display_fem Display on FEM Only flag.
INTEGER <Return Value> 0 for success , 1 for failure
Error Conditions:
None
Notes:
Refer to notes below the function pref_fa_set.

Main Index
CHAPTER 16 441
Preferences

Example:
Please see pref_fa_get (p. 1686) in the MSC.Acumen, Volume 2: Code Examples.

pref_fa_set (<set_flags>, <lbc_color>, <lbc_display>, <ep_color>, <ep_display>,


<display_fem> )

Description:
This function sets the color preferences, flags for the Display of Loads/Boundary Conditions
and Element Properties. The function should preferably be used from the graphical user-
interface menu, Display, Load/BC/Element Props.
Input:
LOGICAL set_flags() Array of logical values used to determine if a preference is
ARRAY set.
INTEGER lbc_color() Load/Boundary Condition colors.
ARRAY
LOGICAL lbc_display() Load/Boundary Condition display flags.
ARRAY
INTEGER ep_color() Element Property colors.
ARRAY
LOGICAL ep_display() Element Property display flags.
ARRAY
LOGICAL display_fem Display on FEM Only flag.
Output:
INTEGER <Return Value> 0 - no error , 1 - fatal error.
Error Conditions:
None
Notes:
The flag for the Load/BC/Element Properties, if set as TRUE, displays the attribute in the
graphic screen. The property is hidden in the graphic screen if this value is set as FALSE. The
color codes can be set from integers 0 to 15 – it is the color in which the property will be
displayed. The “set flag” argument shows the change in the values over the previous ones. If
any value of the flag or color is changed over the previous one, it is set as TRUE, else if previous
value is to be used, it is set at FALSE. The order for the set flags is as follows:
1 - 40 : Color Change of LBC’s
41 - 80 : Flag change of LBC’s
81 - 90 : Color change of EP’s
91 – 100 : Flag change of EP’s
101 : Flag change of Display fem.
For example, if the color of the property “distributed load” is to be changed, then set_flag(19) is
set as TRUE and set_flag(i) (i from 1 to 18 and 20 to 101 ) is set to FALSE. If the flag of the Element
Property “Axis 1 Orientation Vector” is to be changed, then set-flag(93) is set as TRUE and set-
flag(i) (i = 1 to 92 and 94 to 101) is set as FALSE. See tables below for serial numbers of the LBC’s
and Element Properties.

Main Index
442
Function Descriptions

Serial No. Description of LBC


1 Displacement
2 Force
3 Pressure
4 Temperature
5 Inertial Load
6 Initial displacement
7 Initial Velocity
8
9
10
11 Convection ( To Ambient)
12 Applied Heat (Normal Fluxes)
13 Applied Heat (Nodal Source)
14 Initial Temperature
15
16 Temp (Thermal)
17 Applied Heat (Volumetric Generation)
18
19 Distributed Load
20
21 Applied Heat (Directional Fluxes)
22 Convection ( Flow tube to Ambient)
23 Convection ( Coupled)
24 Convection ( Coupled flow rate)
25 Convection (Advection)
26 Convection (Duct Flow)
27 Convection (Ambient space)
28 Convection (Ambient nodes)
29 Convection (Enclosures)
30
31
32
33 Contact (Slide line)
34
35
36 Beam splines
37 Surface splines
38
39 Control device
40 Mass flux
Main Index
CHAPTER 16 443
Preferences

Serial No. Description of Element Property


1 Beam XY Plane Vector
2 Beam nodal offset
3 Axis 1 Orientation Vector
4 Axis 2-3 Orientation Vector
5 General Vector
6 General Marker
7
8
9
10

Example:
Please see pref_fa_set (p. 1688) in the MSC.Acumen, Volume 2: Code Examples.

pref_geo_cid_int_string (cid, sdb_string )

Description:
Construct the selectdatabox string in SDB_STRING from the coordinate frame ID specified in
CID. Assume CID is a valid coordinate frame. SDB_STRING on input should be long enough to
accommodate the completed string.
Input:
INTEGER cid Default Coordinate Frame ID.
Output:
STRING sdb_string[] SelectDataBox string.
INTEGER <Return Value> 0: no error, else see error returned.
Error Conditions:
12001005 The string representation of the selectdatabox label for a coordinate frame
exceeds 25 characters.
Remarks:
None.
Example:
Please see pref_geo_cid_int_string (p. 1689) in the MSC.Acumen, Volume 2: Code Examples.

pref_geo_cid_string_int (sdb_string, cid )

Description:
Get the default coordinate frame ID in CID from the selectdatabox input string and verify the
coordinate frame.
Input:
STRING sdb_string[] SelectDataBox string.

Main Index
444
Function Descriptions

Output:
INTEGER cid Default Coordinate Frame ID.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_geo_cid_string_int (p. 1690) in the MSC.Acumen, Volume 2: Code Examples.

pref_geo_get (defcid, rgtol )

Description:
Get the Geometric Modeling Preference parameters.
Input:
None
Output:
INTEGER defcid Default Coordinate Frame ID.
REAL rgtol Relative Geometric Tolerance.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
See example for pref_geo_cid_int_string (p. 443). See also pref_geo_get (p. 1691) in the
MSC.Acumen, Volume 2: Code Examples.

pref_get_anal_attributes (anal_code, anal_type, mod_suf, res_suf )

Description:
Get the Analysis Preference suffixes.
Input:
STRING anal_code[31] Analysis Code Name.
Output:
STRING anal_type[31] Analysis Type.
STRING mod_suf[4] Model File Suffix.
STRING res_suf[4] Results File Suffix.
INTEGER <Return Value> 0: no error.
1: fatal error.
Main Index
CHAPTER 16 445
Preferences

Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_get_anal_attributes (p. 1692) in the MSC.Acumen, Volume 2: Code Examples.

pref_get_anal_code_count (num_codes )

Description:
Get the number of analysis codes and prepare for their fetch by calling
DB_GET_ALL_ANAL_CODES.
Input:
None
Output:
INTEGER num_codes Number of Analysis Codes in d.b.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_get_anal_code_count (p. 1692) in the MSC.Acumen, Volume 2: Code Examples.

pref_get_anal_type_count (anal_code, num_types )

Description:
Get the number of analysis types associated with ANAL_CODE and prepare for their fetch by
calling DB_GET_ALL_ANAL_TYPES.
Input:
STRING anal_code [31] Default analysis code.
Output:
INTEGER num_types Number of Analysis Types in d.b.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_get_anal_type_count (p. 1693) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
446
Function Descriptions

pref_get_next_anal_code (anal_code )

Description:
Get next analysis code name.
Input:
None
Output:
STRING anal_code[31] Analysis Code Name.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
See example for pref_get_anal_code_count (p. 445). See also pref_get_next_anal_code
(p. 1694) in the MSC.Acumen, Volume 2: Code Examples.

pref_get_next_anal_type (anal_type )

Description:
Get next analysis type.
Input:
None
Output:
STRING anal_type[31] Analysis type.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
See example for pref_get_anal_type_count (p. 445). See also pref_get_next_anal_type
(p. 1695) in the MSC.Acumen, Volume 2: Code Examples.

pref_global_get (confirm, wm_opt, glo_mod_tol )

Description:
Get the Global Preference parameters.
Input:
None
Main Index
CHAPTER 16 447
Preferences

Output:
LOGICAL confirm Confirm Flag.
INTEGER wm_opt Warning Message Option.
1=none
2=ring bell
3=non-modal form
REAL glo_mod_tol Global Model Tolerance.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_global_get (p. 1696) in the MSC.Acumen, Volume 2: Code Examples.

pref_graphics_get (disp_meth, p_color, s_color, e_color, extend, fit_view, center,


hard_rend, anti_alias, td_vector, rt_display, s_light, p_marker,
s_marker, m_color, m_size, gm_size, nm_size, l_format, nsigd )

Description:
Get the Graphics Preference parameters.
Input:
None
Output:
INTEGER disp_meth Display Method.
INTEGER p_color Primary Color.
INTEGER s_color Secondary Color.
INTEGER e_color Error Color.
LOGICAL extend Autoextend Flag.
LOGICAL fit_view Autofitview Flag.
LOGICAL center Autocenter Flag.
LOGICAL hard_rend Hardware Rendering Flag.
LOGICAL anti_alias Anti-Alias Flag.
LOGICAL td_vector 3-D Vector Display Flag.
LOGICAL rt_display Result Title Display Flag.
LOGICAL s_light Symmetric Light Flag.
INTEGER p_marker Primary Marker.
INTEGER s_marker Secondary Marker.
INTEGER m_color Marker Color.
INTEGER m_size Marker Size.
INTEGER gm_size Grid Marker Size.
INTEGER nm_size Node Marker Size.
Main Index
448
Function Descriptions

INTEGER l_format Results Label Format.


INTEGER nsigd Number of significant results digits.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_graphics_get (p. 1696) in the MSC.Acumen, Volume 2: Code Examples.

pref_graphics_marker_data_get (p_marker, s_marker, m_color, m_size )

Description:
Get the Graphics Preference parameters for markers.
Input:
None
Output:
INTEGER p_marker Primary Marker.
INTEGER s_marker Secondary Marker.
INTEGER m_color Marker Color.
INTEGER m_size Marker Size.
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_graphics_marker_data_get (p. 1698) in the MSC.Acumen, Volume 2: Code
Examples.

pref_entity_set (set_flag, ed_prop, r_style, precision, fa_vectors, dv_results, d_defo,


shcolor, gcolor, lcolor, pcolor, hpcolor, tscolor, bdcolor, ncolor, pecolor,
bcolor, trcolor, qcolor, tecolor, wcolor, hecolor, mcolor, g_label, l_label,
p_label, hp_label, ts_label, bd_label, n_label, pe_label, b_label,
tr_label, q_label, te_label, w_label, he_label, m_label )

Description:
Set the Graphics Entity Types Preference parameters.
Input:
LOGICAL set_flag(37) Flag array for setting individual Preferences.
STRING ed_prop[] Entity Type Display Property.
Main Index
CHAPTER 16 449
Preferences

STRING r_style[] Render Style.


INTEGER precision 0=fast.
1=accurate.
LOGICAL fa_vectors Display Functional Ass. Vectors.
LOGICAL dv_results Display Vector Results Flag.
LOGICAL d_defo Display Deformation Flag.
INTEGER shcolor Shade Color.
INTEGER gcolor Grid Color.
INTEGER lcolor Line Color.
INTEGER pcolor Patch Color.
INTEGER hpcolor Hyperpatch Color.
INTEGER tscolor Trimmed Surface Color.
INTEGER bdcolor Body Color.
INTEGER ncolor Node Color.
INTEGER pecolor Point Element Color.
INTEGER bcolor Bar Color.
INTEGER trcolor Tri Color.
INTEGER qcolor Quad Color.
INTEGER tecolor Tet Color.
INTEGER wcolor Wedge Color.
INTEGER hecolor Hex Color.
INTEGER mcolor MPC Color.
LOGICAL g_label Grid Label Flag.
LOGICAL l_label Line Label Flag.
LOGICAL p_label Patch Label Flag.
LOGICAL hp_label Hyperpatch Label Flag.
LOGICAL ts_label Trimmed Surface Label Flag.
LOGICAL bd_label Body Label Flag.
LOGICAL n_label Node Label Flag.
LOGICAL pe_label Point Element Label Flag.
LOGICAL b_label Bar Label Flag.
LOGICAL tr_label Tri Label Flag.
LOGICAL q_label Quad Label Flag.
LOGICAL te_label Tet Label Flag.
LOGICAL w_label Wedge Label Flag.
LOGICAL he_label Hex Label Flag.
LOGICAL m_label MPC Label Flag.
Output:
INTEGER <Return Value> 0: no error.
1: fatal error.
Error Conditions:
None.
Remarks:
None.
Example:
Please see pref_entity_set (p. 1681) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
450
Function Descriptions

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Utilities
17
■ Arrays
■ Math
■ RPCs
■ Security

■ Strings
■ Performance

Main Index
452
Function Descriptions

17.1 Arrays

array_copy_real (array1, array2, n)

Description:
This function copies all n elements from real array array1 to real array array2.
Input:
REAL array1(n) Source array.
INTEGER n Number of elements in source array.
Output:
REAL array2(n) Resultant array.
Error Condition:
None
Example:
Please see array_copy_real (p. 1702) in the MSC.Acumen, Volume 2: Code Examples.

array_del_zero_int (array, numval)

Description:
This function deletes all zeros from an integer array.
Input:
INTEGER ARRAY array(numval) Source array.
INTEGER numval Number of elements in source array.
Output:
INTEGER ARRAY array(numval) Resultant array with zeros deleted.
INTEGER numval Adjusted number of elements in resultant array.
Error Condition:
None
Example:
Please see array_del_zero_int (p. 1703) in the MSC.Acumen, Volume 2: Code Examples.

array_fill_int (array, n, dim)

Description:
This function sets each of n elements of an array to a given input value.
Input:
INTEGER ARRAY array(dim) Source array.
INTEGER ARRAY dim Number of elements in source array.
INTEGER ARRAY n Input value for the filled array.
Output:
REAL ARRAY array(dim) Resultant array filled by input value.
Error Condition:
None

Main Index
CHAPTER 17 453
Utilities

Example:
Please see array_fill_int (p. 1703) in the MSC.Acumen, Volume 2: Code Examples.

array_fill_zero_int (array, n)

Description:
Set every component in an integer array to 0.
Input:
INTEGER n Array size.
Output:
INTEGER array() Array set to zero.
Error Conditions:
None.
Remarks:
None.
Example:
Please see array_fill_zero_int (p. 1704) in the MSC.Acumen, Volume 2: Code Examples.

array_fill_zero_real (array, dim)

Description:
This function sets each of the elements of the array to zero real values.
Input:
REAL array(dim) Source array.
INTEGER dim Number of elements in source array.
Output:
REAL array(dim) Resultant array with zero values.
Error Condition:
None
Example:
Please see array_fill_zero_real (p. 1705) in the MSC.Acumen, Volume 2: Code Examples.

array_real_fill_null (array, n)

Description:
Set every component in a real array to the null value.
Input:
INTEGER n Array size.
Output:
REAL array() Array filled with null values.
Error Conditions:
None.
Remarks:
None.
Main Index
454
Function Descriptions

Example:
Please see array_real_fill_null (p. 1706) in the MSC.Acumen, Volume 2: Code Examples.

array_sort_and_del_dupl_int (array, n, dim)

Description:
This function sqeezes all duplicate values from the first n locations of an unsorted integer array.
This function does not exist in MSC.Patran V9.0. It works in MSC.Patran V8.5.
Input:
INTEGER ARRAY array(dim) Array to be sqeezed.
INTEGER dim Actual number of elements in array.
INTEGER n Number of array elements to be considered.
Output:
INTEGER ARRAY array(dim) Sorted array with no duplicates.
INTEGER n Adjusted element count.
Error Condition:
None
Example:
Please see array_sort_and_del_dupl_int (p. 1706) in the MSC.Acumen, Volume 2: Code
Examples.

Main Index
CHAPTER 17 455
Utilities

17.2 Math

math_get_no_data_null (rval )

Description:
Return the no valid value real number.
Input:
None
Output:
REAL rval The value that represents no valid real.
Error Conditions:
None.
Remarks:
None.
Example:
Please see math_get_no_data_null (p. 1710) in the MSC.Acumen, Volume 2: Code Examples.

math_is_no_data_null (rval )

Description:
Return True if the input is the math no data null value, False otherwise.
Input:
REAL rval The value to check against the no valid real value.
Output:
REAL rval The value to check against the no valid real value.
LOGICAL <Return Value> TRUE if value is NULL.
Error Conditions:
None.
Remarks:
Want to pass by address (must be writable).
Example:
Please see math_is_no_data_null (p. 1710) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
456
Function Descriptions

math_mat_add (matrix3, matrix1, matrix2, dim1, dim2)

Description:
This function adds the two matrices into the third matrix.
Input:
REAL matrix1(dim1, dim2) First matrix to be added.
REAL matrix2(dim1, dim2) Second matrix to be added.
INTEGER dim1 Dimensional values.
INTEGER dim2 Dimensional values.
Output:
REAL matrix3(dim1, dim2) Resultant matrix after the addition
Example:
Please see math_mat_add (p. 1711) in the MSC.Acumen, Volume 2: Code Examples.

math_mat_invert (matrix , dim, tol, i_return_value)

Description:
This function inverts the matrix.
Input:
REAL matrix(dim, dim) Matrix to be inverted.
INTEGER dim Dimensional value.
REAL tol System tolerance for singularity checking.
Output:
REAL matrix(dim, dim) Resultant matrix after inversion.
INTEGER i_return_value 0 for success of function
Example:
Please see math_mat_invert (p. 1712) in the MSC.Acumen, Volume 2: Code Examples.

math_mat_mult (matrix1, matrix2, matrix3, dim1, dim2, dim3)

Description:
This function multipies two matrices.
Input:
REAL matrix1(dim1, dim2) First matrix to be multiplied.
REAL matrix2(dim2, dim3) Second matrix to be multiplied.
INTEGER dim1 Dimensional value.
INTEGER dim2 Dimensional value.
INTEGER dim3 Dimensional value.
Output:
REAL matrix3(dim1, dim3) Resultant matrix after multipication.
Example:
Please see math_mat_mult (p. 1713) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
CHAPTER 17 457
Utilities

math_mat_transp_in_place (matrix, dim)

Description:
This function transposes a matrix.
Input:
REAL matrix(dim, dim) Matrix to be transposed.
INTEGER dim Dimensional value.
Output:
REAL matrix(dim, dim) Transposed matrix.
Example:
Please see math_mat_transp_in_place (p. 1714) in the MSC.Acumen, Volume 2: Code Examples.

math_vec_len (vector)

Description:
This function computes the length of a vector.
Input:
REAL ARRAY vector(3) Three dimensional vector
Output:
REAL <Return Value> Length of the vector
Error Condition:
None
Example:
Please see math_vec_len (p. 1714) in the MSC.Acumen, Volume 2: Code Examples.

math_vec_norm (syseps, vector)

Description:
This function normalizes a three dimensional vector.
Input:
REAL syseps The system epsilon, used to determine when a floating
point number is essentially zero, as far as the system is
concerned.
REAL ARRAY vector(3) Three dimensional vector
Output:
REAL ARRAY vector(3) The normalized three dimensional vector
INTEGER <Return Value> Return value is 1 if the length of the vector is zero,
otherwise 0.
Error Condition:
None
Example:
Please see math_vec_norm (p. 1715) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
458
Function Descriptions

mth_vec_add (dim, vector1, vector2, vector3)

Description:
This function computes the sum of two n-dimensional vectors.
Input:
INTEGER dim Dimensional value of vectors.
REAL ARRAY vector1(dim) First vector to be added
REAL ARRAY vector2(dim) Second vector to be added
Output:
REAL ARRAY vector3(dim) Resultant vector
Error Condition:
None
Example:
Please see mth_vec_add (p. 1716) in the MSC.Acumen, Volume 2: Code Examples.

mth_vec_cross_prod (vector1, vector2, vector3, dim)

Description:
This function computes the cross product of two 3-dimensional vector arrays.
Input:
INTEGER dim Dimensional value of vectors.
REAL ARRAY vector1(dim, 3) First vector.
REAL ARRAY vector2(dim, 3) Second vector.
Output:
REAL vector3(dim, 3) Resultant cross product vector.
Error Condition:
None
Example:
Please see mth_vec_cross_prod (p. 1717) in the MSC.Acumen, Volume 2: Code Examples.

mth_vec_dot_prod (vector1, vector2)

Description:
This function computes the dot product of two 3-dimensional vectors.
Input:
REAL ARRAY vector1(3) First vector.
REAL ARRAY vector2(3) Second vector.
Output:
REAL <Return Value> Resultant dot product real value.
Error Condition:
None
Example:
Please see mth_vec_dot_prod (p. 1717) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 459
Utilities

mth_vec_length (vector)
Description:
This function computes the length of a vector.
Input:
REAL ARRAY vector(3) Three dimensional vector.
Output:
REAL <Return Value> Length of the vector.
Error Condition:
None
Example:
Please see mth_vec_length (p. 1718) in the MSC.Acumen, Volume 2: Code Examples.

mth_vec_scale (scale_factor, n, vector)


Description:
This function scales a vector by a scale factor.
Input:
REAL scale_factor Scale factor value.
REAL ARRAY vector(n) Three dimensional vector.
INTEGER n Dimensional value.
Output:
REAL vector(n) The scaled vector.
Error Condition:
None
Example:
Please see mth_vec_scale (p. 1719) in the MSC.Acumen, Volume 2: Code Examples.

util_equal_real (a, b, nsig )

Description:
Determine if a and b are equal out to NSIG significant digits.
Input:
REAL a Test values.
REAL b Comparison value.
INTEGER nsig Number of significant digits.
Output:
LOGICAL <Return Value> Returns TRUE if a and b are equal to the nsig significant digit,
FALSE otherwise.
Error Conditions:
None.
Remarks:
None.
Example:
Please see util_equal_real (p. 1767) in the MSC.Acumen, Volume 2: Code Examples.
Main Index
460
Function Descriptions

util_real_equal_null (val)

Description:
Test if a real value is null.
Input:
REAL val Value to test.
Output:
LOGICAL <Return Value> Returns TRUE if input value is null.
Error Conditions:
None.
Remarks:
None.
Example:
Please see util_real_equal_null (p. 1769) in the MSC.Acumen, Volume 2: Code Examples.

util_rounder (rval, nsigd, rout )

Description:
Round off RVAL to NSIGD significant digits in ROUT.
Input:
REAL rval The value to be rounded.
INTEGER nsigd Number of significant digits NSIGD must be positive to get a
meaningful answer. If it is not, a warning will be issued that
NSIGD will be assumed to be one.
Output:
REAL rout Rounded value of RVAL.
INTEGER <Return Value> Return status ( =0 if no error ).
Error Conditions:
None.
Remarks:
None.
Example:
Please see util_rounder (p. 1769) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 461
Utilities

17.3 RPCs
The following describes the functional interface used for performing RPC calls from a
MSC.Patran client (in PCL) to a RPC server. The functions are broken into three distinct groups:
client calls (initialization, service requests), data write calls and data read calls. Every client has
two associated “data streams”; the output stream (commands and data sent to the server) and
the input stream (status and/or data returned from the server). In order to manage these streams
properly, every client will require the following steps in the listed order:
client/server initialization
• Register the server (once only) [rpc_add_server]
• Initialize the server (once only) [rpc_init_client]
client/server data manipulation
• Write the output stream [rpc_put_xxx]
• Call the server [rpc_call]
• Read the input stream [rpc_get_xxx]
The first two steps are done during client start-up/initialization only. The last three steps must
be done for every server request.
The allowable data types are described below.
MSC.Patran Datatype Value Purpose
Status 1 server SUCCESS/FAILURE return
Command 2 client request code
Integer 3 whole number (C int)
Boolean 4 TRUE/FALSE
Real 5 single precision float (C float)
String 6 text (C char[])
Integer Array 7 array of Integer
Boolean Array 8 array of Boolean
Real Array 9 array of Real
Output stream (data write) calls
All of the rpc_put_xxx routines will send data to the output stream.
NOTE: Any malloc failure will cause the entire output stream to be cleared.
Input stream (data read) calls
All of the rpc_get_xxx routines will copy data from the input stream into input variable. After
these routines are called, the input stream pointer will automatically advance to the next
position. There is no opportunity to retrieve the same data more than once. There are data
inquiry commands that do not advance this pointer (rpc_inquire_xxx).

Main Index
462
Function Descriptions

Example of the C code used to generate a server:

static char rcsid[]=


"$Header: /kola/users/pflib/testfiles/rpc/RCS/test1.c,v 1.2 93/10/04 16:20:02 malamut Exp $";
RpcHandler(handle)
int handle;
{ int type, count, rand_int, arr_int[5], cnt, bufsize;
float rand_flt, arr_flt[5];
char string[256];
char buf[256];
RpcInquireItem(handle, &type, &count);
printf("type = %d, count = %d\n", type, count);
switch ( type ) {
/* Datatype status */
case 1:
RpcGetStatus(handle, &rand_int);
RpcPutStatus(handle, rand_int);
break;
/* Datatype command */
case 2:
RpcGetCommand(handle, &rand_int);
RpcPutCommand(handle, rand_int);
break;
/* Datatype integer */
case 3:
RpcGetInteger(handle, &rand_int);
RpcPutInteger(handle, rand_int);
break;
/* Datatype boolean */
case 4:
RpcGetBoolean(handle, &rand_int);
RpcPutBoolean(handle, rand_int);
break;
/* Datatype real */
case 5:
RpcGetReal(handle, &rand_flt);
RpcPutReal(handle, rand_flt);
break;
/* Datatype string */
case 6:
RpcGetString(handle, &string[0], sizeof(string));
RpcPutString(handle, string);
break;
/* Datatype integer array */
case 7:
bufsize = sizeof(arr_int)/sizeof(arr_int[0]);
RpcGetIntArray(handle, &arr_int, &cnt, bufsize);
RpcPutIntArray(handle, arr_int, cnt);
break;
/* Datatype boolean array */
case 8:
bufsize = sizeof(arr_int)/sizeof(arr_int[0]);
RpcGetBoolArray(handle, &arr_int, &cnt, bufsize);
RpcPutBoolArray(handle, arr_int, cnt);
break;
/* Datatype real array */
case 9:
bufsize = sizeof(arr_flt)/sizeof(arr_flt[0]);
RpcGetRealArray(handle, &arr_flt, &cnt, bufsize);
RpcPutRealArray(handle, arr_flt, cnt);
break;
default:
RpcServerEnd(); /* Server will die after current Rpc call completes */
}
}
Main Index
CHAPTER 17 463
Utilities

/****************************************************************************
*
* The all PDA RPC servers must make a call to RpcInitServer. This establishes
* the server's run-time environment as follows. All clients must make a call
* to RpcAddServer and RpcInitClient.
*
* RpcInitServer( int prognum - program number for client/server
* same value as in RpcInitClient
* int progver - program version
* void (*handler)(int) - RPC service handler
* logical inetd - server startup via inetd.
* int server_timeout - # of seconds of inactivity
* before server dies
* logical rpc_debug - display rpc data on stdout
***************************************************************************/
main(argc, argv)
int argc;
char **argv;
{
int prognum;
if((argc != 2) || (sscanf(argv[1], "%d", &prognum) != 1)){
printf("usage : %s <prognum>\n", argv[0]);
exit(2);
}
RpcInitServer(prognum, 1, RpcHandler, 0, 30, 0);
}

rpc_add_server (server, prog_num, prog_ver, host)

Description:
rpc_add_server “registers” a service name (server) and associates it with a program number,
program version and server host. This service name may be used later. Typically, all servers will
be registered during start-up processing. This does not cause the server to start.
Input:
STRING server[] Name of RPC server.
INTEGER prog_num Server program number.
INTEGER prog_ver Server program version.
STRING host[] Host where server will run.
Output:
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
Success (0)-> registered OK
47000001-> Malloc failure (FATAL)
47000004-> RPC exists, warning only (ignore)
Remarks:
None.
Example:
Please see rpc_add_server (p. 1720) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
464
Function Descriptions

rpc_init_client (server, handle)

Description:
rpc_init_client returns a handle to be used for all server communication. It initializes the
client/server communication link and data structures and will cause the server to start
execution.
Input:
STRING server[] Name of RPC server program.
Output:
INTEGER handle Handle used by client to communicate with server.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
Success (0)-> registered OK
47000004-> server not registered
47000001->Malloc failure (FATAL)
47000003->Client create error (FATAL)
Remarks:
None.
Example:
Please see rpc_init_client (p. 1741) in the MSC.Acumen, Volume 2: Code Examples.

rpc_call (handle)

Description:
rpc_call will send make an RPC (remote procedure call). The client’s output data will be sent
and the client will wait for a response from the server.
Input:
INTEGER handle Pointer to client/server communication structure.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
Success (0)-> Registered OK
47000008-> RPC call failure.
Remarks:
None.
Example:
Please see rpc_call (p. 1721) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 465
Utilities

rpc_timeout (handle, seconds )

Description:
rpc_timeout will change the amount of time before all subsequent rpc_call()s will timeout.
Input:
INTEGER handle Server handle.
INTEGER seconds Timeout in seconds.
Output:
LOGICAL <Return Value> FALSE- timeout setting failed
TRUE- timeout successful.
Error Conditions:
None.
Remarks:
None.
Example:
Please see rpc_timeout (p. 1762) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_bool_array (handle, value, count)

Description:
rpc_put_bool_array will put the number of booleans as indicated by count from the array value
into the output stream.
Input:
INTEGER status Pointer to client/server communications structure.
LOGICAL value(5) Array of booleans to put to the type data stream.
INTEGER count Number of booleans to send
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc Failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_bool_array (p. 1746) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_int_array (handle, value, count )

Description:
rpc_put_int_array will put the number of integers as indicated by count from the array value
into the output stream.
Input:
INTEGER status Pointer to client/server communications structure.
INTEGER value(5) Array of integers to put to the data stream.
INTEGER count Number of integers to send.
Main Index
466
Function Descriptions

Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc Failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_int_array (p. 1752) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_real_array ()

Description:
rpc_put_real_array will put the number of reals as indicated by count from the array value into
the output stream
Input:
INTEGER handle Pointer to client/server communications structure.
REAL value(count) Array of reals to put to the data stream.
INTEGER count Number of reals to send.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_real_array (p. 1757) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_boolean (handle, value )

Description:
rpc_put_boolean will put a single boolean into the output stream.
Input:
INTEGER handle Pointer to client/server communications structure.
LOGICAL value Boolean value to put to the data stream.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_boolean (p. 1748) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 467
Utilities

rpc_put_command (handle, value )

Description:
rpc_put_command will put a command value into the output stream.
Input:
INTEGER handle Pointer to client/server communications structure.
INTEGER value Command value to put to the data stream.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_command (p. 1750) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_integer (handle, value )

Description:
rpc_put_integer will put an integer value into the output stream.
Input:
INTEGER handle Pointer to client/server communications structure.
INTEGER value Integer value to put to the data stream.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_integer (p. 1753) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_real (handle, value )

Description:
rpc_put_real will put a real value into the output stream.
Input:
INTEGER handle Handle to server.
INTEGER value Real value.
Output:
INTEGER <Return Value> Success (0)
Error Conditions:
47000001-> Malloc failure (FATAL)
Main Index
468
Function Descriptions

Remarks:
None.
Example:
Please see rpc_put_real (p. 1755) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_status (handle, value )

Description:
rpc_put_status will put a status value into the output stream.
Input:
INTEGER handle Pointer to client/server communications structure.
INTEGER value Status code to put to the data stream.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_status (p. 1759) in the MSC.Acumen, Volume 2: Code Examples.

rpc_put_string (handle, value )

Description:
rpc_put_string will put a string value into the output stream.
Input:
INTEGER handle Pointer to client/server communications structure.
STRING value[] String value to put to the data stream.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
Remarks:
None.
Example:
Please see rpc_put_string (p. 1760) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 469
Utilities

rpc_clear_output (handle )

Description:
rpc_clear_output will reset the output data stream. Any unsent data will be lost.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
None
Error Conditions:
None.
Remarks:
None.
Example:
Please see rpc_clear_output (p. 1723) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_bool_array (handle, value, [count])

Description:
rpc_get_bool_array will copy a boolean array from the input stream. The number of elements
copied will be the lesser of the number in the input stream or the array size. Additionally, the
number of elements in the input stream will be placed in count (unless omitted).
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
LOGICAL value(count) Array of booleans.
INTEGER count Num of booleans in input stream (Optional).
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_bool_array (p. 1725) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_int_array (handle, value [,count] )

Description:
rpc_get_int_array will copy an integer array from the input stream. The number of elements
copied will be the lesser of the number in the input stream or the array size. Additionally, the
number of elements in the input stream will be placed in count (unless omitted).

Main Index
470
Function Descriptions

Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER value Array of integers.
INTEGER count Number of integers in input stream (Optional).
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_int_array (p. 1730) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_real_array (handle, value [,count] )

Description:
rpc_get_real_array will copy a real array from the input stream. The number of elements copied
will be the lesser of the number in the input stream or the array size. Additionally, the number
of elements in the input stream will be placed in count (unless omitted).
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
REAL value() Array of reals.
INTEGER count Number of reals in input stream (Optional).
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_real_array (p. 1736) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_boolean (handle, value)

Description:
rpc_get_boolean will get a single boolean from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
Main Index
CHAPTER 17 471
Utilities

LOGICAL value Boolean value.


INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_boolean (p. 1727) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_command (handle, value )

Description:
rpc_get_command will get a command from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER value Command value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_command (p. 1729) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_integer (handle, value )

Description:
rpc_get_integer will get a integer from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER value Integer value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch

Main Index
472
Function Descriptions

Remarks:
None.
Example:
Please see rpc_get_integer (p. 1732) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_real (handle, value )

Description:
rpc_get_real will get a real value from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
REAL value Real value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_real (p. 1734) in the MSC.Acumen, Volume 2: Code Examples.

rpc_get_status (handle, value )

Description:
rpc_get_status will get a status from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER value Status value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_status (p. 1737) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 473
Utilities

rpc_get_string (handle, value )

Description:
rpc_get_string will get a string from the input stream.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
STRING value[] String value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_get_string (p. 1739) in the MSC.Acumen, Volume 2: Code Examples.

rpc_inquire_count (handle, count )

Description:
rpc_inquire_count will determine how many item remain in the input stream. Each different
data type (integer, status, real array, etc.) counts as one.
Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER count Number of items remaining in the input stream.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_inquire_count (p. 1742) in the MSC.Acumen, Volume 2: Code Examples.

rpc_inquire_item (handle, type[,count] )

Description:
rpc_inquire_item will return the type of the current input stream item and optionally, its size or
count(see the available data types listed at the beginning of thissection). The count will be 1 for
all simple datatypes. A string will have a size equal to the number of bytes required to
represent it plus 1. Arrays will have a count equal to the number of elements in the array.

Main Index
474
Function Descriptions

Input:
INTEGER handle Pointer to client/server communications structure.
Output:
INTEGER type Type of data in current list item.
INTEGER count Number of items in current list item.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
47000001-> Malloc failure (FATAL)
47000006-> warning, end of input
47000005-> warning, type mismatch
Remarks:
None.
Example:
Please see rpc_put_bool_array (p. 1746) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
CHAPTER 17 475
Utilities

17.4 Security

sec_is_product_in_matrix ( product )

Description:
To ascertain if the given product is within the product matrix.
Input:
STRING product[] Name of product to query.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Example:
None.

sec_is_product_licensed (product )

Description:
Determines whether a given product has a current license.
Input:
STRING product[] Registered product name.
Output:
INTEGER <Return Value> Returns 0 if product is licensed.
Error Conditions:
None.
Remarks:
None.
Example:
None.

sec_license_type (product, version )

Description:
To return the license type for a previously allocated license.
Input:
STRING product[] Name of product to request or ““ for last allocated license.
STRING version[] Version of product to request or ““ for last allocated license.

Main Index
476
Function Descriptions

Output:
INTEGER <Return Value> 0: license for this product/version is not currently allocated.
Else:
NETLS_ANY
NETLS_NODELOCKED
NETLS_CONCURRENT
NETLS_COMPOUND
NETLS_USEONCE
NETLS_USAGE.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
CHAPTER 17 477
Utilities

17.5 Strings

string_newline_count (chars, nl )

Description:
Count lines in string.
Input:
STRING chars[] String to count number of lines from.
Output:
INTEGER nl Number of new lines.
Error Conditions:
None.
Remarks:
None.
Example:
Please see string_newline_count (p. 1763) in the MSC.Acumen, Volume 2: Code Examples.

string_newline_position (chars, pos )

Description:
This function will return the position of any new line characters in a string.
Input:
STRING chars[] This value specifies the string which will have its new line
characters counted.
Output:
INTEGER pos( ) This value returns the positions of any new line characters in
the string. This array should be allocated with at least the same
number of offsets as there are characters in the input string
chars. This array should be initialized to zero before this
function is called.
Error Conditions:
None.
Remarks:
None.
Example:
Please see string_newline_position (p. 1764) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
478
Function Descriptions

ga_entities_string_format (entitytype, dblist, range, number, entitylist )

Description:
Converts an integer list of a given entity type to a character string.
Input:
INTEGER entitytype The Type Code from dbtypes.h.
INTEGER dblist ( ) List of database labels.
INTEGER range (3) Range of member labels to return (1,2) and max size of
conversion string (3).
INTEGER number Number of entity labels in database list.
Output:
STRING entitylist[] Formatted integer-to-character converted labelist.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
7000127-> Variable is not a virtual string.
8107002-> Last command aborted.
Remarks:
This is a utility routine called from GaGroupEntitiesGet() GaGroupVisEntitiesGet(), and
GaGroupHidEntitiesGet() to convert an integer array returned from the database to a character
string to be displayed in a listbox in the Group Members form. The “insequence” flag is to tell if
the numbers being looked at are sequential e.g. 2,3,4,5. The return form is of the type “Grid 1:4
7 11 13:20 25”. This is now also called from PCL (uil_entity_class_get).
Example:
Please see ga_entities_string_format (p. 1707) in the MSC.Acumen, Volume 2: Code Examples.

ga_entity_get_by_type (entity_type, orphan, label_count, entity_labels )

Description:
This function will return all of the labels defined for entities of a specific type.
Input:
INTEGER entity_type This value specifies a type code. The type codes are listed in
the dbtypes.h include file.
LOGICAL orphan This value specifies, when set to TRUE, that the count of all
labels, including the orphan labels, will be returned. When
this value is set to FALSE, the count of non-orphaned labels
will be returned.
INTEGER label_count This value specifies the number of offsets defined for the
output value entity_labels.
Output:
INTEGER label_count This value returns the number of labels specified by the
input values entity_type and orphan.
INTEGER entity_labels This value returns the list of entity labels specified by the
(label_count ) input values entity_type and orphan.
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.
Main Index
CHAPTER 17 479
Utilities

Error Conditions:
13000134-> The specified entity type was not found.
Example:
Please see ga_entity_get_by_type (p. 1708) in the MSC.Acumen, Volume 2: Code Examples.

uil_list_union_expr (operator, in_str1, in_str2, out_str)

Description:
This function updates two input strings returning a combined string.
Input:
STRING operator[ ] Operation flag.
“A” for adding two strings.
“R” for subtracting one string from another.
“C” for removing repeated strings.
STRING in_str1[ ] This string contains an expression to be modified by
in_str2.
STRING in_str2[ ] This string contains an expression to use to operate on
in_str1
Output:
STRING out_str[ ] This value returns the created ID list (string).
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 Memory Error
2 List Processor Fetcher
error
3 List Processor Error
Example:
Please see uil_list_union_expr (p. 1766) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
480
Function Descriptions

17.6 Performance

timer_on ()

Description:
Starts the timer.
Input:
None.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Example:
Please see timer_on (p. 1766) in the MSC.Acumen, Volume 2: Code Examples.

timer_off ()

Description:
Stops timer and reports time to xterm since last call to timer_on().
Input:
None.
Output:
INTEGER <Return Value> Accumulated CPU time elapsed for all calls to timer_on() and
timer_off() during the session.
Error Conditions:
None.
Remarks:
None.
Example:
Please see timer_off (p. 1765) in the MSC.Acumen, Volume 2: Code Examples.

Main Index
MSC.Acumen, Volume 1: Function Descriptions

CHAPTER
Obsolete, Modified, and Broken
18 Functions

■ General
■ Functions for Chapter 1
■ Model (Chapter 2)
■ Files (Chapter 3)
■ Graphics (Chapter 4)
■ User Interface (Chapter 5)

■ Group (Chapter 6)
■ Geometry (Chapter 7)
■ Finite Element Model (Chapter 8)
■ Load Cases (Chapter 9)
■ Element Properties (Chapter 10)
■ Loads and Boundary Conditions (Chapter 11)
■ Materials (Chapter 12)
■ Analysis (Chapter 13)
■ Fields (Chapter 14)
■ Results (Chapter 15)
■ Preferences (Chapter 16)
■ Utilities (Chapter 17)

Main Index
482
Function Descriptions

18.1 General
This chapter of the MSC.Acumen document contains a listing of all the calls that have been
found to contain some sort of error in Chapters 1 through 17 of the documentation that could
affect the use of the call. The routine name is given along with the page number it is located on,
a description of what issues were found, a resolution to the issue, and the original function
information. Where applicable, the new function information is also given. All spelling, spacing,
and grammar errors have been fixed and in those instances where the issues are only with the
documentation of the call, a change has been made in the new release of the MSC.Acumen
document.

Main Index
CHAPTER 18 483
Obsolete, Modified, and Broken Functions

18.2 Functions for Chapter 1

utl_get_terse_version Issue: When a <Return Value> is used with this call, MSC.Patran outputs
the error message “Invalid assignment conversion, Extra information.”
Type: Modified
Resolution: Removed the <Return Value> variable from the documented
description.

Original Description Information:


utl_get_terse_version (terse_version)
Description:
Get terse (short) version string.
Input:
None
Output:
STRING terse_version[] Version string.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


utl_get_terse_version (terse_version)
Description:
Get terse (short) version string.
Input:
None.
Output:
STRING terse_version[] Version string.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
484
Function Descriptions

18.3 Model (Chapter 2)

db_delete_client_label Issue: The call no longer exists.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Delete client data from the database.
Input:
INTEGER label User defined label of the data to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_reset_client_info Issue: The call is no longer used.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
This function will set the max_client_entity_id and max_client_entity_label entities in the
control_info database relation to the highest value label and ID values currently used plus one.
Input:
INTEGER label User defined label of the data to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication if the
reason.
Error Conditions:
None.
Notes:
The db_create_client_data (p. 10) PCL function makes use of the max_client_entity_id and
max_client_entity_label entities to store maximum entity ID and label values in use plus one.
Remarks:
None.
Examples:
#
# Purpose : This file gives an example of a call to the
# function db_reset_client_info()
#
# A table is provided in the database which
Main Index
CHAPTER 18 485
Obsolete, Modified, and Broken Functions

# is reserved for the use by user.


# The db_create_client_data() function writes the
# information to this table.The function
# db_reset_client_info() resets the max_client_
# entity_id and max_client_entity_label columns.
#
# To run this session file,first start
# a session of MSC.Patran,open a database or
# start a new database,then run this session
# file by “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The db_reset_client_info has the following arguments:
# db_reset_client_info
# ( )
#
# -------------------------------------------------------------------
# Variable Declaration
#
INTEGER i_client_type,i_client_label
INTEGER i_client_labels(1)
INTEGER i_id, i_client_type, @
i_num_logicals, i_num_integers, i_num_reals, @
i_num_strings, i_max_string_length
LOGICAL l_logical_data(1)= [TRUE]
INTEGER i_integer_data(1)=[1]
REAL r_real_data(1)=[202.54]
STRING s_string_data[25](1)=[“Geometric”]
INTEGER i_return_value

# -------------------------------------------------------------------

# Create a client defined entity in the database.


#
# i_client_label=101
# i_client_type=1001
# i_num_logicals=1
# i_num_integers=1
# i_num_reals=1
# i_num_strings=1
# i_max_string_length= 25
#

i_client_label = 101
i_client_type = 1001
i_num_logicals = 1
i_num_integers = 1
i_num_reals = 1
i_num_strings = 1
i_max_string_length = 25

i_return_value = @
db_create_client_data @
( i_id, @
i_client_label, @
i_client_type, @
i_num_logicals, @
i_num_integers, @
i_num_reals, @
Main Index
486
Function Descriptions

i_num_strings, @
i_max_string_length, @
l_logical_data, @
i_integer_data, @
r_real_data, @
s_string_data )

# check for the return value.


dump i_return_value
dump i_id

i_return_value = @
db_reset_client_info @
( )
dump i_return_value
# -------------------------------------------------------------------

Main Index
CHAPTER 18 487
Obsolete, Modified, and Broken Functions

18.4 Files (Chapter 3)

get_current_dir Issue: The documentation implies that the user needs to supply the value of the
variable DIRNAME for this call, but in reality the value of DIRNAME is supposed
Type: Modified to be returned.
Resolution: Changed the variable DIRNAME to be an output argument.

Original Description Information:


get_current_dir (dirname )
Description:
Return the current directory.
Input:
STRING dirname[] Possible file directory.
Output:
INTEGER <Return Value> Was directory found.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


get_current_dir (dirname )
Description:
Return the current directory.
Input:
None.
Output:
STRING dirname[] Possible file directory.
INTEGER <Return Value> Was directory found.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
488
Function Descriptions

utl_is_locked_file Issue: The function is working properly; however, the documentation stated that
the <Return Value> was of type logical when it should have been of type integer.
Type: Modified
Resolution: Changed the <Return Value> from type logical to type integer.

Original Description Information:


utl_is_locked_file (filename)
Description:
To determine if the indicated file is currently locked.
Input:
STRING filename[] Name of the file to check for lock.
Output:
LOGICAL <Return Value> TRUE if file is locked, else FALSE.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


utl_is_locked_file (filename)
Description:
To determine if the indicated file is currently locked.
Input:
STRING filename[] Name of the file to check for lock.
Output:
INTEGER <Return Value> 0 if file is locked, else 1.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 489
Obsolete, Modified, and Broken Functions

sf_write_disable Issue: The routine does not work. The call does not disable the write command.

Type: Broken Resolution: No resolution has been found for this issue.

Original Description Information:


sf_write_disable (alogical)
Description:
To control whether the next “$pcl_func(blah, blah)”. Depending upon value of ‘flag’.
Input:
LOGICAL alogical TRUE -- don’t record next “$pcl_func()”.
FALSE - record next “$pcl_func()”.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

ui_form_to_frame Issue: This call generates a “.mif” file as described but the file is not an accurate
representation of the form.
Type: Broken
Resolution: No resolution has been found for this issue.

Original Description Information:


ui_form_to_frame ( classname, scale )
Description:
Given the string classname as the name of a class which has a form currently displayed, this
function will create a framemaker file classname.mif file which contains the form at a scale
factor of scale.
Input:
STRING classname Name of the PCL class containing the form to be used.
REAL scale Scale factor for translation. Optional and defaults to 1.0.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
490
Function Descriptions

ugi_export_iges_v1 Issue: The offsets used with the output arguments patran_summary and
iges_summary were changed.
Type: Modified
Resolution: Changed the values for patran_summary and iges_summary in
the documentation.

Original Description Information:


ugi_export_iges_v1 (filnam, start_section, nlpos, nlknt, product_id, author,
author_org, model_units, entity_toggle_values,
all_groups, ngroups, group_ids, patran_summary,
iges_summary )
Description:
Export MSC.Patran geometry to the IGES standard.
Input:
STRING filnam[] IGES file name to create.
STRING start_section[] IGES file start section prolog lines.
INTEGER nlpos ( ) Array of nlknt values. Each entry is the # of characters for
that line of the “IGES file start section prolog” plus the
pervious lines.
INTEGER nlknt Number of lines in the “IGES file start section prolog”.
STRING product_id[] Product Id for receiving system.
STRING author[] Author.
STRING author_org[] Author’s Organization.
STRING model_units[] IGES file model units.
LOGICAL entity_toggle_values Flags to specify which MSC.Patran entity types to export.
(35) Only the first 7 flags are used.
LOGICAL all_groups TRUE if all groups are to be exported.
INTEGER ngroups Number of groups to export.
INTEGER group_ids ( ) Group ids to export.
Output:
INTEGER patran_summary (7) Number of MSC.Patran entities processed.
INTEGER iges_summary (20) Number of IGES entities created.
INTEGER <Return Value> 0 if Function was successful.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 491
Obsolete, Modified, and Broken Functions

New Description Information:


ugi_export_iges_v1 (filnam, start_section, nlpos, nlknt, product_id,
author, author_org, model_units,
entity_toggle_values, all_groups, ngroups,
group_ids, patran_summary, iges_summary )
Description:
Export MSC.Patran geometry to the IGES standard.
Input:
STRING filnam[] IGES file name to create.
STRING start_section[] IGES file start section prolog lines.
INTEGER nlpos ( ) Array of nlknt values. Each entry is the # of
characters for that line of the “IGES file start
section prolog” plus the pervious lines.
INTEGER nlknt Number of lines in the “IGES file start section
prolog”.
STRING product_id[] Product Id for receiving system.
STRING author[] Author.
STRING author_org[] Author’s Organization.
STRING model_units[] IGES file model units.
LOGICAL entity_toggle_values Flags to specify which MSC.Patran entity types to
(35) export. Only the first 7 flags are used.
LOGICAL all_groups TRUE if all groups are to be exported.
INTEGER ngroups Number of groups to export.
INTEGER group_ids ( ) Group ids to export.
Output:
INTEGER patran_summary (8) Number of MSC.Patran entities processed.
INTEGER iges_summary (21) Number of IGES entities created.
INTEGER <Return Value> 0 if Function was successful.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
492
Function Descriptions

18.5 Graphics (Chapter 4)

ga_elem_scalar_delete Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Deletes an element scalar table.
Input:
INTEGER id Id of element scalar table.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000137 The specified element scalar table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
13000213 A database lookup failed to locate the target index key.
Examples:
# Purpose : This file provides an example of a call to the
# function ga_elem_scalar_delete()
#
# This function is used to delete an element
# scalar table.
#
# Before running this session file run spool.ses
# to create spool.db. Follow the instructions in
# spool.ses and create spool.op2 and spool.jbr.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function ga_elem_scalar_delete()
# has the following arguments:
#
# ga_elem_scalar_delete
# ( id )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_title[32],s_group_name[32]
INTEGER i_ncases, iv_lcids(VIRTUAL),iv_nsub(VIRTUAL),ia_resids(5)
INTEGER i_dtype,i_resloc,i_nbr_elems,iv_elem_ids(VIRTUAL)
INTEGER iv_nbr_values(VIRTUAL),ia_minloc(6),ia_maxloc(6)
INTEGER i_max_vals
INTEGER i_id,i_old_id
INTEGER i_index,i_return_value
REAL rv_scalars(VIRTUAL)
#---------------------------------------------------------------------
# Open the database “spool.db” and read the deformation results
sf_play(“spool_res.ses”)

# Get the current scalar element table associated with the


# group “fem_model”
Main Index
CHAPTER 18 493
Obsolete, Modified, and Broken Functions

s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_get @
( s_group_name, @
i_old_id )
dump i_return_value

# Get the number of Load cases and their IDs


i_return_value = @
res_utl_get_loadcases(i_ncases,iv_lcids,iv_nsub)
dump i_return_value
dump i_ncases,iv_lcids,iv_nsub

# Extract the deformation results from the database


# Load case ID = iv_lcids(1)
# Sub case ID = 1
# Primary Result ID = 2 (Corresponds to deformation )
# Secondary Result ID = 1
# Layer ID = 1
# elem_list = “Element 1:#” (All elements )
# location = “C” (Centroid )
# derivation = “MAG” (Magnitude: Vector to Scalar)
# c_id = ““
ia_resids(1) = iv_lcids(1)
ia_resids(2) = 1
ia_resids(3) = 2
ia_resids(4) = 1
ia_resids(5) = 1
i_return_value = @
res_utl_extract_elem_results(ia_resids,”Element 1:#”,”MAG”,”C”, @
““,i_dtype,i_resloc,i_nbr_elems,iv_elem_ids,iv_nbr_values, @
rv_scalars, ia_minloc,ia_maxloc)

dump i_return_value

# Create a scalar table


s_title = “A Scalar Table”
i_max_vals = 1 /* Only at the Centroid */

i_return_value = @
ga_elem_scalar_create @
( s_title, @
i_nbr_elems, @
iv_elem_ids, @
iv_nbr_values, @
i_max_vals, @
rv_scalars, @
i_id )

dump i_return_value, i_id

# Session file paused. Press “Resume” to continue..


sf_pause()

# Set the current scalar element table associated with the


# group “fem_model”
s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_set @
( s_group_name, @
i_id )
Main Index
494
Function Descriptions

dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Remove the association between the group “fem_model” and


# the new scalar table
s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_set @
( s_group_name, @
i_old_id)
dump i_return_value

# Delete the element table


i_return_value = @
ga_elem_scalar_delete @
( i_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_lcids)
sys_free_array(iv_nsub)
sys_free_array(iv_elem_ids)
sys_free_array(iv_nbr_values)
sys_free_array(rv_scalars)

# Close the database “spool.db”


uil_file_close.go()
#---------------------------------------------------------------------

ga_elem_scalar_get Issue: The function no longer exists in MSC.Patran.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Returns the scalar values in the scalar table.
Input:
INTEGER id Id of element scalar table.
INTEGER nbr_elems Number of elements.
INTEGER max_val Max number of scalars in any element.
Output:
STRING title[] Title of table.
INTEGER elem_ids ( ) Array of element ids.
INTEGER nbr_values ( ) Number of scalar values in each element.
REAL scalars (nbr_elems, Scalar values for all elements.
max_value)
INTEGER <Return Value> See error conditions.
Error Conditions:
11000137 The specified element scalar table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.

Main Index
CHAPTER 18 495
Obsolete, Modified, and Broken Functions

Example:
#
# Purpose : This file provides an example of a call to the
# function ga_elem_scalar_get()
#
# This function is used to get the scalar values
# in an element scalar table.
#
# Before running this session file run spool.ses
# to create spool.db. Follow the instructions in
# spool.ses and create spool.op2 and spool.jbr.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function ga_elem_scalar_get()
# has the following arguments:
#
# ga_elem_scalar_get
# ( id,
# nbr_elems,
# max_vals,
# title,
# elem_ids,
# nbr_values,
# scalars )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_title[32],s_group_name[32]
INTEGER i_ncases, iv_lcids(VIRTUAL),iv_nsub(VIRTUAL),ia_resids(5)
INTEGER i_dtype,i_resloc,i_nbr_elems,iv_elem_ids(VIRTUAL)
INTEGER iv_nbr_values(VIRTUAL),ia_minloc(12),ia_maxloc(12)
INTEGER i_max_vals
INTEGER i_id
INTEGER i_index,i_return_value
REAL rv_scalars(VIRTUAL)
#---------------------------------------------------------------------
# Open the database “spool.db” and read the deformation results
sf_play(“spool_res.ses”)

# Get the number of Load cases and their IDs


i_return_value = @
res_utl_get_loadcases(i_ncases,iv_lcids,iv_nsub)
dump i_return_value
dump i_ncases,iv_lcids,iv_nsub

# Extract the deformation results from the database


# Load case ID = iv_lcids(1)
# Sub case ID = 1
# Primary Result ID = 2 (Corresponds to deformation )
# Secondary Result ID = 1
# Layer ID = 1
# elem_list = “Element 1:#” (All elements )
# location = “C” (Centroid )
# derivation = “MAG” (Magnitude: Vector to Scalar)
# c_id = ““
ia_resids(1) = iv_lcids(1)
ia_resids(2) = 1
ia_resids(3) = 2
ia_resids(4) = 1
ia_resids(5) = 1
i_return_value = @
res_utl_extract_elem_results(ia_resids,”Element 1:#”,”MAG”,”C”, @
Main Index
496
Function Descriptions

““,i_dtype,i_resloc,i_nbr_elems,iv_elem_ids,iv_nbr_values, @
rv_scalars, ia_minloc,ia_maxloc)

dump i_return_value

# Create a scalar table


s_title = “A Scalar Table”
i_max_vals = 1 /* Only at the Centroid */

i_return_value = @
ga_elem_scalar_create @
( s_title, @
i_nbr_elems, @
iv_elem_ids, @
iv_nbr_values, @
i_max_vals, @
rv_scalars, @
i_id )
dump i_return_value, i_id

# Set the current scalar element table associated with the


# group “fem_model”
s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_set @
( s_group_name, @
i_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_elem_ids)
sys_free_array(iv_nbr_values)
sys_free_array(rv_scalars)

# Get the number of elements and max number of scalars in


# any element in the scalar table
i_return_value = @
ga_elem_scalar_number_get @
( i_id, @
i_nbr_elems, @
i_max_vals )
dump i_return_value,i_nbr_elems,i_max_vals

sys_allocate_array(iv_elem_ids,1,i_nbr_elems)
sys_allocate_array(iv_nbr_values,1,i_nbr_elems)
sys_allocate_array(rv_scalars,1,i_nbr_elems,1,i_max_vals)

# Get the values in the scalar table


s_title = ““
i_return_value = @
ga_elem_scalar_get @
( i_id, @
i_nbr_elems, @
i_max_vals, @
s_title, @
iv_elem_ids, @
iv_nbr_values, @
rv_scalars )
dump i_return_value
dump s_title,iv_elem_ids,iv_nbr_values,rv_scalars

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_lcids)
Main Index
CHAPTER 18 497
Obsolete, Modified, and Broken Functions

sys_free_array(iv_nsub)
sys_free_array(iv_elem_ids)
sys_free_array(iv_nbr_values)
sys_free_array(rv_scalars)

# Close the database “spool.db”


uil_file_close.go()
#---------------------------------------------------------------------

ga_elem_scalar_minmax_get Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Finds the min and max values in a scalar table.
Input:
INTEGER id Id of element scalar table.
Output:
REAL min Minimum value.
REAL max Maximum value.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000137 The specified element scalar table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
#
# Purpose : This file provides an example of a call to the
# function ga_elem_scalar_minmax_get()
#
# This function is used to get minimum and
# maximum values in an element scalar table.
#
# Before running this session file run spool.ses
# to create spool.db. Follow the instructions in
# spool.ses and create spool.op2 and spool.jbr.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function ga_elem_scalar_minmax_get()
# has the following arguments:
#
# ga_elem_scalar_minmax_get
# ( id,
# min,
# max )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_title[32],s_group_name[32]
INTEGER i_ncases, iv_lcids(VIRTUAL),iv_nsub(VIRTUAL),ia_resids(5)
INTEGER i_dtype,i_resloc,i_nbr_elems,iv_elem_ids(VIRTUAL)
INTEGER iv_nbr_values(VIRTUAL),ia_minloc(6),ia_maxloc(6)
INTEGER i_max_vals
Main Index
498
Function Descriptions

INTEGER i_id
INTEGER i_index,i_return_value
REAL rv_scalars(VIRTUAL),r_min,r_max
#---------------------------------------------------------------------
# Open the database “spool.db” and read the deformation results
sf_play(“spool_res.ses”)

# Get the number of Load cases and their IDs


i_return_value = @
res_utl_get_loadcases(i_ncases,iv_lcids,iv_nsub)
dump i_return_value
dump i_ncases,iv_lcids,iv_nsub

# Extract the deformation results from the database


# Load case ID = iv_lcids(1)
# Sub case ID = 1
# Primary Result ID = 2 (Corresponds to deformation )
# Secondary Result ID = 1
# Layer ID = 1
# elem_list = “Element 1:#” (All elements )
# location = “C” (Centroid )
# derivation = “MAG” (Magnitude: Vector to Scalar)
# c_id = ““
ia_resids(1) = iv_lcids(1)
ia_resids(2) = 1
ia_resids(3) = 2
ia_resids(4) = 1
ia_resids(5) = 1
i_return_value = @
res_utl_extract_elem_results(ia_resids,”Element 1:#”,”MAG”,”C”, @
““,i_dtype,i_resloc,i_nbr_elems,iv_elem_ids,iv_nbr_values, @
rv_scalars, ia_minloc,ia_maxloc)

dump i_return_value

# Create a scalar table


s_title = “A Scalar Table”
i_max_vals = 1 /* Only at the Centroid */

i_return_value = @
ga_elem_scalar_create @
( s_title, @
i_nbr_elems, @
iv_elem_ids, @
iv_nbr_values, @
i_max_vals, @
rv_scalars, @
i_id )
dump i_return_value, i_id

# Set the current scalar element table associated with the


# group “fem_model”
s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_set @
( s_group_name, @
i_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()
Main Index
CHAPTER 18 499
Obsolete, Modified, and Broken Functions

# Get the minimum and maximum values in the scalar table


i_return_value = @
ga_elem_scalar_minmax_get @
( i_id, @
r_min, @
r_max )
dump i_return_value,r_min,r_max

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_lcids)
sys_free_array(iv_nsub)
sys_free_array(iv_elem_ids)
sys_free_array(iv_nbr_values)
sys_free_array(rv_scalars)

# Close the database “spool.db”


uil_file_close.go()
#---------------------------------------------------------------------

ga_elem_scalar_number_get Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Returns the number of elements in scalar table along with the maximum number of scalar
values in any one of the elements.
Input:
INTEGER id Id of element scalar table.
Output:
INTEGER nbr_elems Number of elements to place in table.
INTEGER max_val Maximum number of scalar values in any element.
INTEGER <Return Value> See error conditions.
Error Conditions:
11000137 The specified element scalar table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.
Example:
#
# Purpose : This file provides an example of a call to the
# function ga_elem_scalar_number_get()
#
# This function is used to get the number of
# elements in the element scalar table along
# with the maximum number of scalar values
# in any one of the elements.
#
# Before running this session file run spool.ses
# to create spool.db. Follow the instructions in
# spool.ses and create spool.op2 and spool.jbr.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
Main Index
500
Function Descriptions

# menus on the menu bar.


#
# The function ga_elem_scalar_number_get()
# has the following arguments:
#
# ga_elem_scalar_number_get
# ( id,
# nbr_elems,
# max_val )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_title[32],s_group_name[32]
INTEGER i_ncases, iv_lcids(VIRTUAL),iv_nsub(VIRTUAL),ia_resids(5)
INTEGER i_dtype,i_resloc,i_nbr_elems,iv_elem_ids(VIRTUAL)
INTEGER iv_nbr_values(VIRTUAL),ia_minloc(6),ia_maxloc(6)
INTEGER i_max_vals
INTEGER i_id
INTEGER i_index,i_return_value
REAL rv_scalars(VIRTUAL)
#---------------------------------------------------------------------
# Open the database “spool.db” and read the deformation results
sf_play(“spool_res.ses”)

# Get the number of Load cases and their IDs


i_return_value = @
res_utl_get_loadcases(i_ncases,iv_lcids,iv_nsub)
dump i_return_value
dump i_ncases,iv_lcids,iv_nsub

# Extract the deformation results from the database


# Load case ID = iv_lcids(1)
# Sub case ID = 1
# Primary Result ID = 2 (Corresponds to deformation )
# Secondary Result ID = 1
# Layer ID = 1
# elem_list = “Element 1:#” (All elements )
# location = “C” (Centroid )
# derivation = “MAG” (Magnitude: Vector to Scalar)
# c_id = ““
ia_resids(1) = iv_lcids(1)
ia_resids(2) = 1
ia_resids(3) = 2
ia_resids(4) = 1
ia_resids(5) = 1
i_return_value = @
res_utl_extract_elem_results(ia_resids,”Element 1:#”,”MAG”,”C”, @
““,i_dtype,i_resloc,i_nbr_elems,iv_elem_ids,iv_nbr_values, @
rv_scalars, ia_minloc,ia_maxloc)

dump i_return_value

# Create a scalar table


s_title = “A Scalar Table”
i_max_vals = 1 /* Only at the Centroid */

i_return_value = @
ga_elem_scalar_create @
( s_title, @
i_nbr_elems, @
iv_elem_ids, @
Main Index
CHAPTER 18 501
Obsolete, Modified, and Broken Functions

iv_nbr_values, @
i_max_vals, @
rv_scalars, @
i_id )
dump i_return_value, i_id

# Set the current scalar element table associated with the


# group “fem_model”
s_group_name = “fem_model”
i_return_value = @
ga_group_elem_scalar_set @
( s_group_name, @
i_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Get the number of elements and max number of scalars in


# the scalar table
i_return_value = @
ga_elem_scalar_number_get @
( i_id, @
i_nbr_elems, @
i_max_vals )
dump i_return_value,i_nbr_elems,i_max_vals

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_lcids)
sys_free_array(iv_nsub)
sys_free_array(iv_elem_ids)
sys_free_array(iv_nbr_values)
sys_free_array(rv_scalars)

# Close the database “spool.db”


uil_file_close.go()
#---------------------------------------------------------------------

ga_vector_delete Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Deletes a vector table.
Input:
INTEGER id Id of vector table.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
11000143 The specified vector result table was not found.
11000098 A fatal error has occurred in the database. Database is corrupted.

Main Index
502
Function Descriptions

Example:
#
# Purpose : This file provides an example of a call to the
# function ga_vector_delete()
#
# This function is used to delete a vector table.
# In this file the deformation results are read
# from the database and a table is created and
# then deleted.
#
# Before running this session file run spool.ses
# to create spool.db. Follow the instructions in
# spool.ses and create spool.op2 and spool.jbr.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function ga_vector_delete()
# has the following arguments:
#
# ga_vector_delete
# ( id )
#---------------------------------------------------------------------
# Variable Declarations
STRING s_title[32]
INTEGER i_ncases, i_nbr_nodes, i_index
INTEGER iv_lcids(VIRTUAL),iv_nsub(VIRTUAL), iv_node_ids(VIRTUAL)
REAL rv_deform(VIRTUAL)
INTEGER i_dtype,ia_minloc(6),ia_maxloc(6), ia_resids(5)
INTEGER i_comp_vect_flag,i_sym_flag,i_nvectors
INTEGER iv_vect_ent_types(VIRTUAL), iv_vect_ent_ids(VIRTUAL)
REAL rv_vect_locs(VIRTUAL)
INTEGER iv_vect_types(VIRTUAL), iv_anchor_styles(VIRTUAL)
INTEGER iv_vect_colors(VIRTUAL), iv_sub_ids(VIRTUAL)
INTEGER i_id,i_old_id, i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db” and read the results
sf_play(“spool_res.ses”)

# Get the current table associated with the group “fem_model”


i_return_value = @
ga_group_result_vector_get @
( “fem_model”, @
i_old_id )
dump i_return_value,i_old_id

# Get the number of Load cases and their IDs


i_return_value = @
res_utl_get_loadcases(i_ncases,iv_lcids,iv_nsub)
dump i_return_value
dump i_ncases,iv_lcids,iv_nsub

# Extract the stress results from the database


# Load case ID = iv_lcids(1)
# Sub case ID = 1
# Primary Result ID = 2 ( Corresponds to deformation )
# Secondary Result ID = 1
# Layer ID = 1
# node_list = “Node 1:#” (All nodes )
Main Index
CHAPTER 18 503
Obsolete, Modified, and Broken Functions

# derivation = ““
# coord_id = ““
ia_resids(1) = iv_lcids(1)
ia_resids(2) = 1
ia_resids(3) = 3
ia_resids(4) = 1
ia_resids(5) = 2
i_return_value = @
res_utl_extract_nodal_results(ia_resids,” Node 1:#”,””,””, @
i_dtype,i_nbr_nodes,iv_node_ids,rv_deform,ia_minloc,ia_maxloc)

dump i_return_value

# Create a vector table


s_title = “Vector Table”
i_comp_vect_flag = 0
i_sym_flag = 0
i_nvectors = i_nbr_nodes

sys_allocate_array(iv_vect_ent_types,1,i_nvectors)
sys_allocate_array(iv_vect_ent_ids,1,i_nvectors)
sys_allocate_array(rv_vect_locs,1,i_nvectors,1,3)
sys_allocate_array(iv_vect_types,1,i_nvectors)
sys_allocate_array(iv_anchor_styles,1,i_nvectors)
sys_allocate_array(iv_vect_colors,1,i_nvectors)
sys_allocate_array(iv_sub_ids,1,i_nvectors)

FOR(i_index = 1 TO i_nvectors)
iv_vect_ent_types(i_index) = 123 /* from dbtypes.h */
iv_vect_ent_ids(i_index) = iv_node_ids(i_index)
iv_vect_types(i_index) = 1
iv_anchor_styles(i_index) = 1
iv_vect_colors(i_index) = 0
iv_sub_ids(i_index) = 0
END FOR

i_return_value = @
ga_vector_create @
( s_title, @
i_comp_vect_flag, @
i_sym_flag, @
i_nvectors, @
iv_vect_ent_types, @
iv_vect_ent_ids, @
rv_vect_locs, @
rv_deform, @
iv_vect_types, @
iv_anchor_styles, @
iv_vect_colors, @
iv_sub_ids, @
i_id )
dump i_return_value, i_id

# Session file paused. Press “Resume” to continue..


sf_pause()

# Associate the vector table with the group “fem_model”


i_return_value = @
ga_group_result_vector_set @
( “fem_model”, @
i_id )
Main Index
504
Function Descriptions

dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Remove the association between the vector table and


# the group “fem_model” before deleting the table
i_return_value = @
ga_group_result_vector_set @
( “fem_model”, @
i_old_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

i_return_value = @
ga_vector_delete @
( i_id )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

sys_free_array(iv_vect_ent_types)
sys_free_array(iv_vect_ent_ids)
sys_free_array(rv_vect_locs)
sys_free_array(iv_vect_types)
sys_free_array(iv_anchor_styles)
sys_free_array(iv_vect_colors)
sys_free_array(iv_sub_ids)
sys_free_array(iv_lcids)
sys_free_array(iv_nsub)
sys_free_array(iv_node_ids)
sys_free_array(rv_deform)

# Close the database “spool.db”


uil_file_close.go()
#---------------------------------------------------------------------

gm_animate_end Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Reset the graphics manager to output graphics to the graphics device.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Comments
Must be preceded by call to GmAnimateStart.
Error Conditions:
15000049 Already in animation mode.
Examples:
gm_animate_end()
Main Index
CHAPTER 18 505
Obsolete, Modified, and Broken Functions

gm_animate_loadcase_parms Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Make results loadcase data available to the graphics manager.
Input:
INTEGER res_type Loadcase results derived from analysis type:
1 - Static, 2 - Modal, 3 - Transient.
STRING lc_label[] Loadcase independent variable label.
REAL lc_value Loadcase independent variable value (e.g. time).
Output:
None.
Comments
Must be preceded by call to GmAnimateStart.
Error Conditions:
15000049 Already in animation mode.
Example:
real rcparmvals();
int rctypes();
string rcvarnames[];
/* create vector table */

if ( rcparmvals(rc) == 0.0 )
rcparmval += 1.0
else
rcparmval = rcparmvals(rc)
gm_animate_loadcase_parms( rctypes[rc], rcvarnames[rc], rcparmval )

gm_animate_start Issue: The function represents code that does nothing.

Type: Obsolete Resolution: This call was removed from the documentation.

Description:
Set up the graphics manager to output animation files with the given sequence name.
Input:
STRING an_name[] Animation sequence name.
LOGICAL new_seq New Sequence flag: if TRUE, any animation files with the
given name will be overwritten if they already exist; if
FALSE, only animation result files will be written.
Output:
INTEGER <Return Value> See error conditions.
Comments
Must be followed by call to GmAnimateEnd.
Error Conditions:
15000049 Already in animation mode.

Main Index
506
Function Descriptions

Example:
CLASSWIDE STRING basename[256]
CLASSWIDE LOGICAL new_seq_flag
> gm_animate_start( basename, new_seq_flag )

gm_database_close Issue: The function is no longer used.

Type: Obsolete Resolution: This function has been replaced by


uil_file_close.go.

Description:
Clear the current database from the graphics manager.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Comments
Will set GM error level.
Error Conditions:
15000025 An error occurred during an operation on the graphics manager display list.
Examples:
#
# Purpose : This file provides an example of a call to the
# function gm_database_close()
#
# This function is used to clear the current
# database from the graphics manager.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_database_close() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_dbname[128]
LOGICAL l_dbexists
INTEGER i_return_value
#---------------------------------------------------------------------
# Create a new databse and close it
uil_file_new.go(““,”new.db”)
$? YES 36000002

uil_file_close.go()

# Open the database “spool.db”


uil_file_open.go(“spool.db”)

# Get the name of the current database posted to the


# graphics manager
Main Index
CHAPTER 18 507
Obsolete, Modified, and Broken Functions

s_dbname = ““
i_return_value = @
gm_database_current @
( s_dbname )
dump i_return_value, s_dbname

# Session file paused. Press “Resume” to continue..


sf_pause()

# Load the database “new.db” into the graphics manager


s_dbname = “new.db”
i_return_value = @
gm_database_open @
( s_dbname )
dump i_return_value

# Get the name of the current database posted to


# the graphics manager
s_dbname = ““
i_return_value = @
gm_database_current @
( s_dbname )
dump i_return_value, s_dbname

# Session file paused. Press “Resume” to continue..


sf_pause()

# Clear the database from the graphics manager


i_return_value = @
gm_database_close()
dump i_return_value

#---------------------------------------------------------------------

gm_database_open Issue: The function is no longer used.

Type: Obsolete Resolution: This function has been replaced by


uil_file_open.open_db and uil_file_open.go

Description:
Load the given database into the graphics manager.
Input:
STRING dbname[] Database name.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000027 The database name is invalid.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_database_open()
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
Main Index
508
Function Descriptions

# MSC.Patran, and running this session file


# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_database_open()
# has the following arguments.
#
# gm_database_open
# ( dbname )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_dbname[128],s_db_oldname[128]
LOGICAL l_dbexists
INTEGER i_return_value
#---------------------------------------------------------------------
# Create a new databse
uil_file_new.go(““,”new.db”)
$? YES 36000002

uil_file_close.go()

# Open the database “spool.db”


uil_file_open.go(“spool.db”)

# Get the name of the current database


s_dbname = ““
i_return_value = @
gm_database_current @
( s_dbname )
dump i_return_value, s_dbname

# Session file paused. Press “Resume” to continue..


sf_pause()

# Load the database “new.db” into the graphics manager


# Loading a new database will not alter
s_dbname = “new.db”
i_return_value = @
gm_database_open @
( s_dbname )
dump i_return_value

# Get the name of the database


db_name_get(s_dbname)
dump s_dbname

# Get the name of the current database posted to


# the graphics manager
s_dbname = ““
i_return_value = @
gm_database_current @
( s_dbname )
dump i_return_value, s_dbname

# Session file paused. Press “Resume” to continue..


sf_pause()

# Clear the database from the graphics manager


i_return_value = @
gm_database_close()
Main Index
CHAPTER 18 509
Obsolete, Modified, and Broken Functions

dump i_return_value

#---------------------------------------------------------------------

gm_pick Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
To pick objects from a viewport.
Input:
INTEGER id Viewport ID.
STRING mod[] Mode of picking (“APPEND,” “ERASE,” “NEW”).
STRING type[] Pick type ( “CLOSEST,” “RECTANGLE,” “POLYGON,”
“CYCLE” ).
INTEGER enclose Enclosed flag.
REAL pts ( ,3) Pick points (not used for cycle pick).
INTEGER npts Number of points (not needed for closest, and rectangle).
Output:
INTEGER <Return Value> See error conditions.
Comments:
For geometry, the pick-list contains labels not ids. Since this routine primarily works with pick
lists all references to the entities is by label.
Error Conditions:
15000028 The viewport must be posted to carry out this operation.
Example:
INTEGER viewport_id, enclosed, npoints
REAL pts(100,3)
gm_pick_adjust_hilight()
gm_pick( viewport_id, “APPEND”, “CLOSEST”, enclosed, pts, npoints )

gm_pick_abort Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Abort the current sub-select operation and go back to the first item on the pick stack.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000038 No sub-selection has been set up. Operation cannot be completed
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_abort()
#
Main Index
510
Function Descriptions

# This function aborts the current sub-select


# operation and goes back to first item on the
# pick-stack.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a selectdatabox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar
#
# The function gm_pick_abort() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
STRING s_type[32]
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

# Set the filter type to curves


s_type = “CURVE”
gm_pick_filter( s_type )

# Pick the whole model using rectangle pick


# It can be seen that only curves are picked

# Session file paused. Press “Resume” to continue..


sf_pause()

# Abort sub-select operation


i_return_value = @
gm_pick_abort()

dump i_return_value
Main Index
CHAPTER 18 511
Obsolete, Modified, and Broken Functions

# Pick the whole model using rectangle pick


# It can be seen that all the types of entities can be selected
select_focus.exit()
ui_form_hide(“hilight”)
#---------------------------------------------------------------------

gm_pick_add Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
To bring up a series of select menus. After data has been correctly entered into the select
menus, the script_func will be called. The argument to the script function will be string data
returned from the select menus.
Input:
INTEGER nsels Number of select menus to call.
STRING types[] Select menu types (prefixed with *).
STRING prompts[] An array of prompts for each select menu.
STRING func[] Script routine to call when completed.
Output:
INTEGER <Return Value> See error conditions.
Comments:
This function will build a pick structure and store it on the pick stack.
Error Conditions:
15000036 The maximum number of subselects per pick has been exceeded.
15000037 An incorrect sub-select type was specified.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_add()
#
# This function calls a script function after
# the correct entry of data in select data box.
# It will pass the content of select data box
# to the script function.
#
# The script function is made available in file
# gm_pick_add.pcl. The file is directly input
# during execution of session file
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_pick_add()
# has the following arguments:
#
# gm_pick_add
# ( nsels,
Main Index
512
Function Descriptions

# types,
# prompts,
# func )
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_nsels
STRING saa_types[16](1)
STRING saa_prompts[16](1)
STRING s_func[32]
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Compilation of PCL file containing the script function “pick_add”


!! INPUT gm_pick_add.pcl

# No of selects
# i_nsels = 1
i_nsels = 1

# Select menu type


# saa_types(1) = “*SURFACE”
saa_types(1) = “*SURFACE”

# Prompts for select menu


# saa_prompts(1) = “*Select”
saa_prompts(1) = “*Select”

# Script function to be called


# s_func = “pick_add”
s_func = “pick_add”

i_return_value = @
gm_pick_add @
( i_nsels, @
saa_types, @
saa_prompts, @
s_func )

dump i_return_value

# Now select the whole model

# Session file paused. Press “Resume” to continue..


sf_pause()

#---------------------------------------------------------------------

Main Index
CHAPTER 18 513
Obsolete, Modified, and Broken Functions

gm_pick_add_widget Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
To bring up a select menu. After data has been correctly entered into the select menu, the
specified widget will be set.
Input:
STRING type[] Select menu type (prefixed with *).
STRING prompt[] Prompt for select menu.
WIDGET dbox Widget to set.
Output:
INTEGER <Return Value> See error conditions.
Comments:
This function will build a pick structure and store it on the pick stack.
Error Conditions:
15000037 An incorrect sub-select type was specified.
15000025 An error occurred during an operation on the graphics manager display list.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_add_widget()
#
# This function sends the selections made to the
# widget, whose id is taken as a parameter.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a selectdatabox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
#
# The function gm_pick_add_widget()
# has the following arguments:
#
Main Index
514
Function Descriptions

# gm_pick_add_widget
# ( type,
# prompt,
# widget_id )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_type[32]
STRING s_prompt[32]
WIDGET w_widget_id
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

# Invoke form “hilight”


ui_exec_function(“hilight”,”display”)

# Hide the form


ui_form_hide(“hilight”)

# Get the widget id


hilight.get_select_id(w_widget_id)

# Set Select menu type to “surface”


s_type = “*SURFACE”
s_prompt = “Select”

# Associate picking and selectdatabox of form “hilight”


i_return_value = @
gm_pick_add_widget @
( s_type, @
s_prompt, @
w_widget_id )

dump i_return_value

# Select a part of the model


ui_form_display(“hilight”)

# Session file Paused. Press “RESUME” to continue..


sf_pause()

# Hide the form


select_focus.exit()
ui_form_hide(“hilight”)

#---------------------------------------------------------------------

Main Index
CHAPTER 18 515
Obsolete, Modified, and Broken Functions

gm_pick_adjust_hilight Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Adjust what is highlighted to match contents of widget.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000035 A new pick list could not be created.
Example:
#
# Purpose : This file provides an example of two calls to
# the function gm_pick_adjust_hilight()
#
# This function is used to highlight the
# entities to match the contents of a select
# databox.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a select databox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_pick_adjust_hilight() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
WIDGET w_widget_id
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Post only “default_group”


Main Index
516
Function Descriptions

uil_viewport_post_groups.posted_groups(“default_viewport”,1, @
[“default_group”] )

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

# Get the selectdatabox widget id


hilight.get_select_id(w_widget_id)
dump w_widget_id

# Set the contents of select databox of form “HILIGHT”


ui_wid_set(w_widget_id,”VALUE”,”surface 1:6”)

# Highlight the entities in the select databox


i_return_value = gm_pick_adjust_hilight()
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Clear the selections made


gm_hilight_clear()

# Session file paused. Press “Resume” to continue..


sf_pause()

ui_wid_set(w_widget_id,”VALUE”,”Surface 1 3 5”)

i_return_value = gm_pick_adjust_hilight()
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Hide the form “hilight”


select_focus.exit()
ui_form_hide(“hilight”)
#---------------------------------------------------------------------

gm_pick_clear Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Remove all items off of pick stack.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000038 No sub-selection has been set up. Operation cannot be completed.

Main Index
CHAPTER 18 517
Obsolete, Modified, and Broken Functions

Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_clear()
#
# This function removes all the items off the pick
# stack.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a selectdatabox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar
#
# The function gm_pick_clear() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

# Pick the whole object using rectangle pick

# Session file paused. Press “Resume” to continue..


sf_pause()

i_return_value = gm_pick_clear()
dump i_return_value

# It can be observed that NO object can be picked


# as the picklist is cleared.

# Session file paused. Press “Resume” to continue..


Main Index
518
Function Descriptions

sf_pause()

# Hide the form “hilight”


select_focus.exit()
ui_form_hide(“hilight”)

#---------------------------------------------------------------------

gm_pick_filter Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
To establish a filter which will be used during picking.
Input:
STRING type[] Filter types:
“SP”
“POINTONSURFACE”
“EDGEONSURFACE”
“VERTEXONSURFACE”
“GRID”
“PTONCURVE”
“PTONSURFACE”
“LINE”
“PATCH”
“HPAT”
“POINT”
“CURVE”
“SURFACE”
“SOLID”
“VERTEX”
“EDGE”
“FACE”
“POINT_VERTEX”
“CURVE_EDGE”
“SURFACE_FACE”
SOLIDFACE_FREE”
“FREE_FACE_SOLIDS”
“ELFACE_QUAD_TRI”
“ELEDGE_BEAM”
“NODE”
“ELEMENT”
“MPC”
“ELEDGE”
“ELFACE”
“POINTELEM”
“BEAMELEM”
“TRIELEM”
“QUADELEM”
“TETELEM”
““WEDGEELEM”

Main Index
CHAPTER 18 519
Obsolete, Modified, and Broken Functions

“HEXELEM”
“ELFACE_FREE”
“ELEDGE_FREE”
“FREE_FACE_ELEMS”
“FREE_EDGE_ELEMS”
“FRAME”
“CID”
“CID1”
“CID2”
“CID3”
“ASM”
“GEOMETRY”
“MESH”
“FEM”
“ELEM3D”
“ELEM2D”
“GEO_SHELL”
“FEM_SHELL_BNDRY”
“GEO_BEAM”
“GEO_SOLID_BNDRY”
“GEO_SOLID”
“FEM_AND_GEO_0D”
“FEM_AND_GEO_1D”
“FEM_AND_GEO_2D”
“FEM_AND_GEO_3D”
“ALL_SWEEP”
“MESH_SWEEP”
“ELEM_SWEEP”
“ELEM2_SWEEP”
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000025 An error occurred during an operation on the graphics manager display list.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_filter()
#
# This function establishes a filter for picking
# entities.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a select databox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
Main Index
520
Function Descriptions

#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
#
# The function gm_pick_filter()
# has the following arguments:
#
# gm_pick_filter
# ( type )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_type[32]
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Post only “default_group”


uil_viewport_post_groups.posted_groups(“default_viewport”,1, @
[“default_group”] )

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

# Set the filter type to “curve”


s_type = “CURVE”

i_return_value = @
gm_pick_filter @
( s_type )
dump i_return_value

# Pick the whole object using rectangle pick


# It can be seen that only curves can be picked

# Session file paused. Press “Resume” to continue..


sf_pause()

# Hide the form “hilight”


select_focus.exit()
ui_form_hide(“hilight”)
#---------------------------------------------------------------------

Main Index
CHAPTER 18 521
Obsolete, Modified, and Broken Functions

gm_pick_notify Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Applies passed in string to current sub-select. Depending on how many sub-selects are in the
current pick structure, this routine will cause processing to go on to the next sub-select or
return all strings in pick structure back to the calling pick structure.
Input:
STRING string[] Value returned from command window or screen select.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000038 No sub-selection has been set up. Operation cannot be completed.
15000025 An error occurred during an operation on the graphics manager display list.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_notify()
#
# This function applies passed in string to
# current sub-select.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a select databox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_pick_notify()
# has the following arguments:
#
# gm_pick_notify
# ( string )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_string[128]
Main Index
522
Function Descriptions

INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Post only “default_group”


uil_viewport_post_groups.posted_groups(“default_viewport”,1, @
[“default_group”] )

# Compile hilight.pob to get hilight.plb


!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

s_string = “surface 1:6”

i_return_value = @
gm_pick_notify @
( s_string )

dump i_return_value

# Highlight the entities in the select databox


gm_pick_adjust_hilight()

# Session file paused. Press “Resume” to continue..


sf_pause()

# Clear the selection


gm_hilight_clear()

# Session file paused. Press “Resume” to continue..


sf_pause()

s_string = “surface 1:3”


i_return_value = @
gm_pick_notify @
( s_string )

dump i_return_value

gm_pick_adjust_hilight()

# Session file paused. Press “Resume” to continue..


sf_pause()

# Hide the form “hilight”


select_focus.exit()
ui_form_hide(“hilight”)

#---------------------------------------------------------------------

Main Index
CHAPTER 18 523
Obsolete, Modified, and Broken Functions

gm_pick_reject Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Abort the current sub-select operation and go back to the previous pick structure on the pick
stack.
Input:
None.
Output:
INTEGER <Return Value> See error conditions.
Error Conditions:
15000038 No sub-selection has been set up. Operation cannot be completed.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_pick_reject()
#
# This funtion aborts the current sub-select
# operation and goes back to previous pick
# structure on the pick-stack.
#
# The hilight.pcl file is used to create
# a single width quarter height sized form
# containing a select frame, a selectdatabox and
# a button.
#
# The hilight.pob file used below can be created
# from hilight.pcl by using the C preprocessor
# to expand the symbols defined in the included
# files. See the “Part 9: PCL and Customization”
# manual for more information.
#
# A command similar to the following can be used
# to generate the hilight.pob file:
#
# cpp -I$P3_HOME/customisation hilight.pcl hilight.pob
#
# Before running this session file run spool.ses
# to create spool.db.
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar
#
# The function gm_pick_reject() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
STRING s_type[32]
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Compile hilight.pob to get hilight.plb


Main Index
524
Function Descriptions

!!COMPILE hilight.pob

# Add hilight.plb to library


!!LIBRARY ADD hilight.plb

ui_exec_function(“hilight”,”display”)

# Set the filter type to “curve”


s_type = “CURVE”

gm_pick_filter( s_type )

# Pick the whole object using rectangle pick


# It can be seen that only curves are picked

# Session file paused. Press “Resume” to continue..


sf_pause()

# Set the filter type to “surface”


s_type = “SURFACE”
gm_pick_filter( s_type )

# Pick the whole object using rectangle pick


# It can be seen that only surfaces are picked

# Session file paused. Press “Resume” to continue..


sf_pause()

i_return_value = gm_pick_reject()
dump i_return_value

# Pick the whole object using rectangle pick

# Session file paused. Press “Resume” to continue..


sf_pause()

# Hide the form “hilight”


select_focus.exit()
ui_form_hide(“hilight”)
#---------------------------------------------------------------------

gm_pick_reset_level_counter Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Reset current_level_number.
Input:
None.
Output:
INTEGER id Location for returned value.
INTEGER <Return Value> Returns the success or failure of the routine.
Comments:
Resetting assigns the value to -1 since the first DbiPickPush() call increments.
Example:
gm_pick_reset_level_counter()
Main Index
CHAPTER 18 525
Obsolete, Modified, and Broken Functions

gm_uiwindow_create Issue: The function represents code that does nothing.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Create a graphics (with type of UIMS) window given a UIMS widget
Input:
STRING name[] Name of window
WIDGET wid_id UIMS widget ID.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

gm_uiwindow_delete Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Delete a UIMS graphics window.
Input:
STRING name[] Name of window.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

gm_viewport_auto_off Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Turn OFF auto extend/fit.
Input:
None.
Output:
INTEGER <Return Value> 0 if successful.
Main Index
526
Function Descriptions

Examples:
#
# Purpose : This file provides an example of a call to the
# function gm_viewport_auto_off()
#
# This function is used to turn OFF the auto
# extend or fit of viewport.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_viewport_auto_off() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Turn OFF auto extend or fit.


i_return_value = gm_viewport_auto_off()
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Change the graphics window dimensions


ga_viewport_size_set(“default_viewport”,9.0,4.0,1)
ga_viewport_location_set(“default_viewport”,0.0,3.0,1)

# Session file paused. Press “Resume” to continue..


sf_pause()

# Change the graphics window dimensions


ga_viewport_size_set(“default_viewport”,7.0,3.0,1)
ga_viewport_location_set(“default_viewport”,0.0,2.0,1)
#---------------------------------------------------------------------

gm_viewport_auto_on Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Turn ON auto extend/fit.
Input:
None.
Output:
INTEGER <Return Value> 0 if successful.

Main Index
CHAPTER 18 527
Obsolete, Modified, and Broken Functions

Examples:
#
# Purpose : This file provides an example of a call to the
# function gm_viewport_auto_on()
#
# This function is used to turn ON auto
# extent or fit.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_viewport_auto_on() has no arguments.
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Turn ON auto extend or fit.


i_return_value = gm_viewport_auto_on()
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Change the graphics window dimensions


ga_viewport_size_set(“default_viewport”,9.0,4.0,1)
ga_viewport_location_set(“default_viewport”,0.0,3.0,1)

# Session file paused. Press “Resume” to continue..


sf_pause()

# Change the graphics window dimensions


ga_viewport_size_set(“default_viewport”,7.0,3.0,1)
ga_viewport_location_set(“default_viewport”,0.0,2.0,1)
#---------------------------------------------------------------------

Main Index
528
Function Descriptions

gm_viewport_plot Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Generate a hardcopy file from a viewport.
Input:
STRING vp_name[] Viewport name.
INTEGER new_file Whether plot should go in a new patran.hrd file or an
existing one.
REAL width_inch Drawable horizontal area in inches.
REAL height_inch Drawable vertical area in inches.
INTEGER pixels_inch Number of pixels/inch used.
STRING hc_file_name[] Expanded patran.hrd file name.
INTEGER format 0=old
1=new binary
2=new text
10=old
11=new binary
12=new text (with fit view)
Output:
INTEGER <Return Value> GM error status.
Example:
#
# Purpose : This file provides an example of a call to the
# function gm_viewport_plot()
#
# This functionis used to generate a hardcopy
# file from a viewport.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_viewport_plot()
# has the following arguments:
#
# gm_viewport_plot
# ( name,
# new_file,
# width,
# height,
# ppi,
# file_name,
# format )
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_id
INTEGER i_ulx,i_uly,i_brx,i_bry,i_ppi
INTEGER i_wtype,i_leftofs,i_rightofs,i_topofs,i_botofs
Main Index
CHAPTER 18 529
Obsolete, Modified, and Broken Functions

LOGICAL l_pos_is_frame
REAL r_width, r_height
STRING s_name[32]
INTEGER i_new_file
REAL r_width
REAL r_height
INTEGER i_ppi
STRING s_file_name[128]
INTEGER i_format
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Get screen Info


uid_get_screen_info(i_ulx,i_uly,i_brx,i_bry,i_ppi)
dump i_ppi

# Get border sizes


i_wtype = 1 /* graphics */
uid_get_border_sizes(i_wtype,l_pos_is_frame, @
i_leftofs,i_rightofs,i_topofs,i_botofs )

# Get the ID of the current viewport


i_return_value = @
db_get_current_viewport_id @
( i_id )
dump i_return_value, i_id

# Get the name of the current viewport


i_return_value = @
gm_viewport_id_to_name @
( i_id, @
s_name )
dump i_return_value, s_name

# Get the width and height of the current viewport


i_return_value = @
ga_viewport_size_get @
( s_name, @
r_width, @
r_height )
dump i_return_value, r_width, r_height

# Generate a hardcopy of the current viewport


i_new_file = 1
r_width = r_width - 1.0*(i_leftofs + i_rightofs)/i_ppi
r_height = r_height - 1.0*(i_topofs + i_botofs )/i_ppi
s_file_name = “./spool.hrd”
i_format = 2 /* New text */
i_return_value = @
gm_viewport_plot @
( s_name, @
i_new_file, @
r_width, @
r_height, @
i_ppi, @
s_file_name, @
i_format )
dump i_return_value
#---------------------------------------------------------------------

Main Index
530
Function Descriptions

gm_window_id_get Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Get the Window ID of a graphics window.
Input:
STRING name[] Name of window.
Output:
INTEGER win_id Window ID.
INTEGER <Return Value> See error conditions.
Error Conditions:
15000002 The window name is invalid.
Examples:
#
# Purpose : This file provides an example of a call to the
# function gm_window_id_get()
#
# This function is used to get the window ID
# of a graphics window.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_window_id_get()
# has the following arguments:
#
# gm_window_id_get
# ( name,
# win_id )
#
#---------------------------------------------------------------------
# Variable Declarations
STRING s_name[128]
INTEGER i_win_id, i_vp_id
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Get the ID of the current viewport


i_return_value = @
db_get_current_viewport_id @
( i_vp_id )
dump i_return_value, i_vp_id

# Get the name of the current viewport


i_return_value = @
gm_viewport_id_to_name @
( i_vp_id, @
s_name )
Main Index
CHAPTER 18 531
Obsolete, Modified, and Broken Functions

dump i_return_value, s_name

# Get the window ID of current viewport


i_return_value = @
gm_window_id_get @
( s_name, @
i_win_id )
dump i_return_value, i_win_id

#---------------------------------------------------------------------

gm_xy_plot Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Generate a hardcopy file from an XY window.
Input:
STRING name[] XY Window name.
INTEGER new_file Whether plot should go in a new patran.hrd file or an
existing one.
REAL width_inch Drawable horizontal area in inches.
REAL height_inch Drawable vertical area in inches.
INTEGER pixels_inch Number of pixels/inch used.
STRING hc_file_name[] Expanded patran.hrd file name.
INTEGER format 0=old, 1=new binary, 2=new text
Output:
INTEGER <Return Value> GM error status.
Examples:
#
# Purpose : This file provides an example of a call to the
# function gm_xy_plot()
#
# This function is used to create a hardcopy
# from the XY window.
#
# Before running this session file run spool.ses
# to create spool.db
#
# This file can be run by starting a session of
# MSC.Patran, and running this session file
# through the “File”,”Session”,”Play” pulldown
# menus on the menu bar.
#
# The function gm_xy_plot()
# has the following arguments:
#
# gm_xy_plot
# ( name,
# new_file,
# width,
# height,
# ppi,
# file_name
Main Index
532
Function Descriptions

# format )
#
#---------------------------------------------------------------------
# Variable Declarations
INTEGER i_ulx,i_uly,i_brx,i_bry,i_ppi,i_border
LOGICAL l_pos_is_frame
STRING s_name[32]
INTEGER i_new_file
REAL r_xloc,r_yloc,r_width, r_height
INTEGER i_ppi
STRING s_file_name[128]
INTEGER i_format
INTEGER i_border
INTEGER i_return_value
#---------------------------------------------------------------------
# Open the database “spool.db”
uil_file_open.go(“spool.db”)

# Get screen Info


uid_get_screen_info(i_ulx,i_uly,i_brx,i_bry,i_ppi)
dump i_ppi

# Create a new XY window


s_name = “New XY Window”
r_xloc = 0.0
r_yloc = 3.0
r_width = 5.0
r_height = 4.0
i_return_value = @
xy_window_create @
( s_name, @
r_xloc, @
r_yloc, @
r_width, @
r_height )
dump i_return_value

# Post the window and make it current


i_return_value = @
xy_window_post @
( s_name )
dump i_return_value

i_return_value = @
xy_window_current_set @
( s_name )
dump i_return_value

# Get the window sizes


i_return_value = @
xy_window_size_get @
( s_name, @
r_width, @
r_height )
dump i_return_value,r_width, r_height

# Get the border size


i_return_value = @
xy_window_border_thickness_get @
( s_name, @
i_border )
Main Index
CHAPTER 18 533
Obsolete, Modified, and Broken Functions

dump i_return_value, i_border

# Generate a hard copy of the current XY window


# (r_width and r_height are compensated for border size)
i_new_file = 1
r_width = r_width - (2.0 * i_border)/i_ppi
r_height = r_height- (2.0 * i_border)/i_ppi
s_file_name = “./xywindow.hrd”
i_format = 2 /* New Text */
i_return_value = @
gm_xy_plot @
( s_name, @
i_new_file, @
r_width, @
r_height, @
i_ppi, @
s_file_name, @
i_format )
dump i_return_value

# Session file paused. Press “Resume” to continue..


sf_pause()

# Delete the XY window


i_return_value = @
xy_window_delete @
( s_name )
dump i_return_value

#---------------------------------------------------------------------

Main Index
534
Function Descriptions

18.6 User Interface (Chapter 5)

msg_format_string Issue: The INTS, REALS, and CHARS input variables have a
specified type of VARIABLE, which is not a valid PCL data type.
Type: Modified
Resolution: Changed the data type descriptions so that the variable
INTS is of type INTEGER, the variable REALS is of type REAL, and
the variable CHARS is of type STRING

Original Description Information:


msg_format_string (msgcode, ints, reals, chars, string )
Description:
PCL interface to Message Utility for getting message into string(s).
Input:
INTEGER msgcode Message code to look up.
VARIABLE ints Integer array for formatting (address).
VARIABLE reals Real array for formatting (address).
VARIABLE chars Character array start for formatting (address).
Output:
STRING string String containing the resulting message.
INTEGER <Return Return status of operation.
Value>
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


msg_format_string (msgcode, ints, reals, chars, string )
Description:
PCL interface to Message Utility for getting message into string(s).
Input:
INTEGER msgcode Message code to look up.
INTEGER ints() Integer array for formatting (address).
REAL reals() Real array for formatting (address).
STRING chars[] Character array start for formatting (address).
Output:
STRING string[] String containing the resulting message.
INTEGER <Return Return status of operation.
Value>
Error Conditions:
None.
Remarks:
None.
Main Index
CHAPTER 18 535
Obsolete, Modified, and Broken Functions

Examples:
None.

msg_to_file Issue: 1) Function causes core dumps. 2) The INTS, REALS, and
CHARS input variables have a specified type of VARIABLE, which
Type: Modified is not a valid PCL data type.
Resolution: Changed the data type descriptions so that the variable
INTS is of type INTEGER, the variable REALS is of type REAL, and
the variable CHARS is of type STRING

Original Description Information:


msg_to_file (msgcode, msgtype, appcode, ints, reals, chars, lenchr,
maxout, unit )
Description:
Output a message to a PCL fio unit.
Input:
INTEGER msgcode Message code to look up.
INTEGER msgtype Message type.
INTEGER appcode Application code for calling application.
VARIABLE ints Integer array for formatting.
VARIABLE reals Real array for formatting.
VARIABLE chars Character array (Fortran style) for formatting.
INTEGER lenchr Length of each element in the input arrays.
INTEGER maxout Maximum output size in string.
INTEGER unit Channel from TEXT_OPEN call.
Output:
INTEGER <Return Number of characters left.
Value>
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


msg_to_file (msgcode, msgtype, appcode, ints, reals, chars, lenchr,
maxout, unit )
Description:
Output a message to a PCL fio unit.
Input:
INTEGER msgcode Message code to look up.
INTEGER msgtype Message type.
INTEGER appcode Application code for calling application.
INTEGER ints() Integer array for formatting.
Main Index
536
Function Descriptions

REAL reals() Real array for formatting.


STRING chars[] Character array (Fortran style) for formatting.
INTEGER lenchr Length of each element in the input arrays.
INTEGER maxout Maximum output size in string.
INTEGER unit Channel from TEXT_OPEN call.
Output:
INTEGER <Return Number of characters left.
Value>
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 537
Obsolete, Modified, and Broken Functions

lp_eval_cleanup Issue: Function is listed in two different manuals (97 and


208 PCL).
Type: Broken
Resolution: No Resolution has been found for this issue.

Original Description Information:


lp_eval_cleanup (handle )
Description:
Free memory allocated for parsing of a Picklist.
Input:
INTEGER handle Handle returned from lp_eval.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

lp_keyword_text Issue: 1) Function is listed in two different manuals (98 and


217 PCL).
Type: Broken 2) The routine does not work for many of the available options.
Resolution: No Resolution has been found for this issue.

Original Description Information:


lp_keyword_text (keyword, family, text )
Description:
A layered call to LpKEYWORD_OUT. Useful for calling by FORTRAN and PCL.
Input:
INTEGER keyword Identifies the entity. From lpkeywords.i.
INTEGER family Identifies the group of entities keyword calls. From
lpkeywords.i
Output:
STRING text[] String alias for keyword t
INTEGER <Return Value> See error conditions.
Error Conditions:
14000200->LpKEYWORD_TEXT:Bad arguments specified.
Remarks:
None.
Examples:
None.

Main Index
538
Function Descriptions

ui_flush Issue: The function represents code that should not be


documented.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Flush the output buffer.
Input:
None.
Output:
None.
Examples:
CLASSWIDE INTEGER button_pressed
FUNCTION driver
ui_flush() /* force modal form to be displayed before waiting */
em_wait()
RETURN( button_pressed )
END FUNCTION /* driver */

ui_flush_events Issue: The function represents code that should not be


documented.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Check the input system of the device for any unprocessed events. This should allow any
window manager time to process events and other activities it is responsible for.
Input:
None.
Output:
None.
Comments:
This routine was written for X-windows, but can be easily modified to work with any other
windowing system or terminal.
Example:
FUNCTION initlz( message )
STRING message[]
STATIC LOGICAL init = TRUE
IF( init ) THEN
uil_pcntcomplete.init()
init = FALSE
END IF
ui_wid_set( counter, “VALUE”, 0. )
uil_pcntcomplete.display( message )
ui_flush_events()
END FUNCTION /* initlz */

Main Index
CHAPTER 18 539
Obsolete, Modified, and Broken Functions

ui_sys_return Issue: This function when run will shut down MSC.Patran. Also
an Inadequate function description is given.
Type: Broken
Resolution: No resolution has been found for this issue.

Original Description Information:


ui_sys_return ()
Description:
Return out of the event loop.
Input:
None.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

ui_text_select Issue: Seems to cause core dumps.

Type: Broken Resolution: No resolution has been found for this issue.

Original Description Information:


ui_text_select ( textwid, left, right, vstr )
Description:
Return selected text and it’s left and right positions in the string in which it resides.
Input:
WIDGET textwid Pointer to the widget.
Output:
INTEGER left Left position.
INTEGER right Right position.
STRING vstr[] Selected Text.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
540
Function Descriptions

ui_window_create Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Create a window widget.
Input:
STRING name[] Name of the widget.
REAL x X location of widget
REAL y Y location of widget
STRING posit[] Code indicating how the window is positioned.
REAL width Width of widget.
REAL height Height of widget.
STRING label[] Label to appear in namestripe.
STRING icon[] Name of icon.
Output:
WIDGET <Return Value> Pointer to the new widget.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

ui_helpmenu_create Issue: 1) Makes use of a widget created through the use of two
undocumented PCL functions, ui_c_menubar and
Type: Obsolete ui_c_mainwindow. 2) No apparent way to delete results from the
display screen.
Resolution: Removed the call from the documentation.

Description:
Create a help menu widget.
Input:
WIDGET parent Pointer to the parent widget.
STRING name[] Name of the widget.
STRING label[] Label displayed in menubar.
Output:
WIDGET <Return Value> Pointer to the new widget.
Error Conditions:
None.
Remarks:
None.

Main Index
CHAPTER 18 541
Obsolete, Modified, and Broken Functions

Example:
CLASSWIDE WIDGET menu_id
WIDGET bar_id

/* Create a pulldown menu */

menu_id = ui_helpmenu_create( bar_id, “menu”, “Help” )


ui_wid_set( menu_id, “MNEMONIC”, “H” )
uil_primary_help.enable_entire_menu( FALSE )
End of file.

ui_abortwidget_create Issue: This PCL function does not exist as part of the MSC.Patran
executable.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Create an abort widget.
Input:
WIDGET parent Pointer to the parent widget.
REAL x X location of widget.
REAL y Y location of widget.
STRING icon[] Name of the file containing the icon data.
STRING icon2[] Name of the file containing the icon2 data.
Output:
INTEGER <Return Value> Pointer to the new widget.
Error Conditions:
None.
Remarks:
None.
Example:
#include “appforms.p”

CLASSWIDE WIDGET win_id, abort_button


REAL x_loc, y_loc, main_menu_margin
/* Add the abort button. */
x_loc -= main_menu_margin + 2 * MAIN_MENU_ICON_WID

abort_button = ui_abortwidget_create( @
win_id, x_loc, y_loc, @
“abort.up”, “abort.down” )

Main Index
542
Function Descriptions

ui_wid_restore_widget Issue: 1) Missing the ui_wid_restore_widget call in the original


MSC.Acumen documentation. 2) This function always returns
Type: Broken FALSE.
Resolution: 1) Added this call to the documentation. 2) No
resolution has been found for this issue.

Original Description Information:


ui_wid_restore_widget ( wid )
Description:
Restore the values for this widget and all child widgets.
Input:
WIDGET wid Widget ID.
Output:
LOGICAL <Return Value> TRUE if no error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

ui_wid_save_widget Issue: This function always returns FALSE.

Type: Broken Resolution: No resolution has been found for this issue.

Original Description Information:


ui_wid_save_widget ( wid )
Description:
Save the values for this widget and all child widgets.
Input:
WIDGET wid Widget ID.
Output:
LOGICAL <Return Value> TRUE if no error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 543
Obsolete, Modified, and Broken Functions

uil_primary_file.enable_entire_menu Issue:

Type: Obsolete Resolution:

Original Description Information:


uil_primary_file.enable_entire_menu( flag )
Description:
Allows the “File” option menu on the main form to be enabled or disabled.
Input:
LOGICAL flag True- enables File. False- disables File.
Output:
none

uil_primary_file.enable_item Issue:

Type: Obsolete Resolution:

Original Description Information:


uil_primary_file.enable_item ( label, flag )
Description:
Allows the items in the “File” pull-down menu to be enabled or disabled.
Input:
STRING label[] Exact title found in the “File” pull down menu.
LOGICAL flag True-enables item. False-disables item.
Output:
none

uil_primary_pref.enable_item Issue:

Type: Obsolete Resolution:

Original Description Information:


uil_primary_pref.enable_item ( label, flag )
Description:
Enables or disables an item in the preferences menu.
Input:
STRING label[] STRING label of the item.
LOGICAL flag True- enables File. False- disables File.
Output:
none

Main Index
544
Function Descriptions

uil_utils_listbox.select_list Issue: Inappropriate function description.

Type: Modified Resolution: Updated the function listing in the body of the
document.

Original Description Information:


uil_utils_listbox.select_list (lbox_id, labellist, listcnt)
Description:
Clear all highlighted names in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of names in listbox to highlight.
INTEGER listcnt Number of items in labellist.
Output:
LOGICAL <Return Value> TRUE if no error.
Error Conditions:
None.
Remarks:
None.
Example:
None.

New Description Information:


uil_utils_listbox.select_list (list_box_id, label_list, list_count)
Description:
This function will select or highlight a list of names in a listbox.
Input:
WIDGET list_box_id This value specifies the identifier of the listbox.
STRING label_list[31](list_count)
This value specifies the list of labels in the listbox that will
be highlighted. These labels are defined when the listbox is
created and are typically a maximum of 31 characters long.
INTEGER list_count This value specifies the number of labels specified by the
input value label_list.
Output:
LOGICAL <Return Value> This function will return a value of TRUE if an error has
not occurred and a value of FALSE if an error has
occurred.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
CHAPTER 18 545
Obsolete, Modified, and Broken Functions

uil_utils_listbox.create_list Issue: When a <Return Value> is used with this call, MSC.Patran
outputs the error message “invalid assignment convention, Extra
Type: Modified information.”
Resolution: Removed the <Return Value> variable from the
documented description.

Original Description Information:


uil_utils_listbox.create_list ( lbox_id, labellist, listcnt )
Description:
Create a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of names in listbox to create.
INTEGER listcnt Number of items in labellist.
Output:
LOGICAL <Return Value> TRUE if no error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


uil_utils_listbox.create_list ( lbox_id, labellist, listcnt )
Description:
Create a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of names in listbox to highlight.
INTEGER listcnt Number of items in labellist.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
546
Function Descriptions

uil_utils_listbox.append_list Issue: When a <Return Value> is used with this call, MSC.Patran
outputs the error message “invalid assignment convention, Extra
Type: Modified information.”
Resolution: Removed the <Return Value> variable from the
documented description.

Original Description Information:


uil_utils_listbox.append_list ( lbox_id, labellist, listcnt )
Description:
Append a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of name items to append.
INTEGER listcnt Number of items in labellist.
Output:
LOGICAL <Return Value> TRUE if no error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


uil_utils_listbox.append_list ( lbox_id, labellist, listcnt )
Description:
Append a list of items in the listbox from the given names.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING labellist[]() List of name items to append.
INTEGER listcnt Number of items in labellist.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 547
Obsolete, Modified, and Broken Functions

uil_utils_listbox.select_one Issue: Function no longer is part of the executable. It has been


replaced by the uil_utils_listbox.select function.
Type: Obsolete
Resolution: Removed the call from the documentation.

Original Description Information:


uil_utils_listbox.select ( lbox_id, labellist, listcnt )
Description:
Highlight only “name” in the listbox.
Input:
WIDGET lbox_id ID of listbox to modify.
STRING name[] Name in listbox to highlight.
Output:
None.
Error Conditions:
None.
Remarks:
Any other items that may have been highlighted are unhighlighted and only the given name is
highlighted.
Examples:
None.

uil_utils_listbox.select Issue: None.

Type: New Resolution: None.

Main Index
548
Function Descriptions

18.7 Group (Chapter 6)

db_count_entities_in_group Issue: The documentation implies that the user needs to supply
the value of the variable COUNT for this call, but in reality the
Type: Modified value of COUNT is supposed to be returned.
Resolution: Changed the variable COUNT to be an output
argument.

Original Description Information:


db_count_entities_in_group ( name, type, count )
Description:
Counts all entities in the specified group name.
Input:
STRING name[] Pointer to a string containing the name of the group.
INTEGER type The type of entity to be counted.
INTEGER count Location to receive the resulting entity count.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_count_entities_in_group ( name, type, count )
Description:
Counts all entities in the specified group name.
Input:
STRING name[] Pointer to a string containing the name of the group.
INTEGER type The type of entity to be counted.
Output:
INTEGER count Location to receive the resulting entity count.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Examples:
None.

Main Index
CHAPTER 18 549
Obsolete, Modified, and Broken Functions

ga_group_ngroups_get Issue: None.

Type: New Resolution: None.

db_get_orphan_mpcs Issue: Missing the db_get_orphan_mpcs call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Descriptio6n Information:


db_get_orphan_mpcs ( count, entity_id )
Description:
Gets the entities not in a group.
Input:
INTEGER count The number of entities not in a group.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

count_orphan_elements Issue: The documentation implies that the user needs to supply
the value of the variable COUNT for this call, but in reality the
Type: Modified value of COUNT is supposed to be returned.
Resolution: Changed the variable COUNT to be an output
argument.

Original Description Information:


count_orphan_elements ( count )
Description:
This function will count all of the elements that do not belong to any group. It will build a list of
these elements in the process and this list will be saved for a subsequent call to
“DbGetOrphanElems”.
Input:
INTEGER count The address of where to store the resultant count value.
Output:
INTEGER count The number of elements not associated with any group.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Main Index
550
Function Descriptions

Examples:
None.

New Description Information:


count_orphan_elements ( count )
Description:
This function will count all of the elements that do not belong to any group. It will build a list of
these elements in the process and this list will be saved for a subsequent call to
“DbGetOrphanElems”.
Input:
None.
Output:
INTEGER count The number of elements not associated with any group.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_add_mpc_to_group Issue: When running this call, MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#3”.
Type: Modified
Resolution: Changed the variable VISIBLE from type integer to
type logical.

Original Description Information:


db_add_mpc_to_group ( mpc_id, gid, visible )
Description:
Add an mpc to a group.
Input:
INTEGER mpc_id The mpc_id.
INTEGER gid The group ID.
INTEGER visible TRUE(1) if the mpcs are to be considered visible.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_add_mpc_to_group ( mpc_id, gid, visible )
Main Index
CHAPTER 18 551
Obsolete, Modified, and Broken Functions

Description:
Add an mpc to a group.
Input:
INTEGER mpc_id The mpc_id.
INTEGER gid The group ID.
LOGICAL visible TRUE if the mpcs are to be considered visible.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_orphan_curves Issue: Missing the db_get_orphan_curves call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Description Information:


db_get_orphan_curves ( count, entity_id )
Description:
Returns the curve entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_orphan_points Issue: Missing the db_get_orphan_points call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Description Information:


db_get_orphan_points ( count, entity_id )
Description:
Returns the point entities not in a group.
Main Index
552
Function Descriptions

Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_orphan_solids Issue: Missing the db_get_orphan_solids call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Description Information:


db_get_orphan_solids ( count, entity_id )
Description:
Returns the solid entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_orphan_surfaces Issue: Missing the db_get_orphan_surfaces call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Description Information:


db_get_orphan_surfaces ( count, entity_id )
Description:
Returns the solid entities not in a group.
Input:
INTEGER count Max number of entities returned.
Output:
INTEGER entity_id() Array of orphan entity ids.
Main Index
CHAPTER 18 553
Obsolete, Modified, and Broken Functions

INTEGER <Return Value> Returns the success or failure of the routine.


Error Conditions:
None.
Remarks:
None.
Example:
None.

ga_group_selectable_set Issue: When running this call, MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#2”.
Type: Modified
Resolution: Changed the variable FLAG from type logical to
type integer.

Original Description Information:


ga_group_selectable_set (name, flag )
Description:
Modifies the current setting of the group selectable flag.
Input:
STRING name[] Group name.
LOGICAL flag TRUE/FALSE if selectable or not.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Example:
None.

New Description Information:


ga_group_selectable_set (name, flag )
Description:
Modifies the current setting of the group selectable flag.
Input:
STRING name[] Group name.
INTEGER flag 0 or 1 if selectable or not.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
554
Function Descriptions

sgm_db_get_iges_in_group Issue: Output values were modified.

Type: Modified Resolution: Modified function description to include new output


values.

Original Description Information:


sgm_db_get_iges_in_group (groupid, typecode, entityids, count )
Description:
Get all the IGES entity types in a group.
Input:
INTEGER groupId The ID of the group.
INTEGER typecode The Type Code from geometry_types.i.
Output:
INTEGER entityids() The Entity IDs.
INTEGER <Return Value> SUCCESS or an error code.
Error Conditions:
.38000617 ERROR Retrieving geometric entity definition of type PDA %A% from the
database.
Examples:
#define MSG_SGM_IGES_EXPORT_DB_ERROR_IGES_ENTITY 38000618
#define MSG_FATAL 4

LOGICAL all_groups
INTEGER iges_line, lineid(VIRTUAL), istat, num110, min_cycle, blob
INTEGER nww2, nww1, nwords

nwords = num110
sys_allocate_array( lineid, 1, nwords)
/*
* Get all IGES line IDs from the database in the group
*/
istat = sgm_db_get_iges_in_group( groups(ng), iges_line,
ival(lineid))
IF ( istat != 0 ) THEN
IF ( nww2 > 0 ) mem_release ( blob )
IF ( nww1 > 0 ) mem_release ( lineid )
msg_to_form ( MSG_SGM_IGES_EXPORT_DB_ERROR_IGES_ENTITY,
MSG_FATAL, @
appcode(istat), 0, 1.0,
“Line”)
IF ( ! all_groups) app_pcntcomplete_close ( min_cycle, num110)

New Description Information:


sgm_db_get_iges_in_group (groupid, typecode, entityids, count )
Description:
This function will get all the IGES entity types in a group.
Input:
INTEGER groupid This value specifies the ID of the group.
INTEGER typecode This value specifies the type code of the group. See the remarks
below.

Main Index
CHAPTER 18 555
Obsolete, Modified, and Broken Functions

Output:
INTEGER entityids() This value returns the entity ID values. This array must be
allocated with enough offsets to list all of the entity ID values
assigned to the group. Use a call to the PCL function
sgm_db_count_iges_in_group() to get a count of the number of
offsets required.
INTEGER id_count This value returns the number of ID values of the specified
type returned by the value entityids.
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:
.38000617 ERROR Retrieving geometric entity definition of type PDA %A% from the
database.
Examples:
None.

Main Index
556
Function Descriptions

18.8 Geometry (Chapter 7)

asm_db_get_next_grid_label Issue: When running this call, MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#1”.
Type: Modified
Resolution: Changed the variable DOMESSAGE from type
integer to type logical.

Original Description Information:


asm_db_get_next_grid_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest grid label from the database.
Input:
INTEGER domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest grid label.
STRING stringlabel[] The next highest grid label.
INTEGER status Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


asm_db_get_next_grid_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest grid label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest grid label.
STRING stringlabel[] The next highest grid label.
INTEGER <Return Value> Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 557
Obsolete, Modified, and Broken Functions

asm_db_get_next_line_label Issue: When running this call, MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#1”.
Type: Modified
Resolution: Changed the variable DOMESSAGE from type
integer to type logical.

Original Description Information:


asm_db_get_next_line_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest line label from the database.
Input:
INTEGER domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest curve label.
STRING stringlabel[] The next highest curve label.
INTEGER status Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


asm_db_get_next_line_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest line label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error occurs.
Output:

INTEGER integerlabel The next highest curve label.


STRING stringlabel[] The next highest curve label.
INTEGER <Return Value> Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
558
Function Descriptions

asm_db_get_next_patch_lab Issue: When running this call MSC.Patran outputs the error
el message “Invalid datatype to built-in function. Arg#1”. When
this issue is corrected MSC.Patran outputs the error message
Type: Modified “Wrong number of arguments for built-in function”. In addition
to these two issues this call is missing its <Return Value>
variable.
Resolution: Changed the variable DOMESSAGE from type
integer to type logical. Removed the variable STATUS from the
routine since it only has 3 arguments and not 4. Also added the
<Return Value> variable to the list of output arguments.

Original Description Information:


asm_db_get_next_patch_label (domessage, integerlabel, stringlabel, status )
Description:
Get the next highest patch label from the database.
Input:
INTEGER domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest curve label.
STRING stringlabel[] The next highest curve label.
INTEGER status Success or an error code.
Error Conditions:
None.
Remarks:
None.
Example:
None.

New Description Information:


asm_db_get_next_patch_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest patch label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest surface label.
STRING stringlabel[] The next highest surface label.
INTEGER <Return Value> Success or an error code.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
CHAPTER 18 559
Obsolete, Modified, and Broken Functions

sgm_show_surface_normals Issue: This PCL function is listed as having four arguments when
it really has seven arguments.
Type: Modified
Resolution: Added the three input arguments to the document
description for this call

Original Description Information:


sgm_show_surface_normals (surflist, scaled, numsurf, segid )
Description:
Routine that calculates and shows the surface normals.
Input:
STRING surflist[] The list of surfaces.
LOGICAL scaled TRUE if user wants to scale the normals to a percentage of the
surface area, FALSE otherwise.
INTEGER numsurf The number of surfaces (or segments).
INTEGER segid The ID of the segment.
Output:
INTEGER <Return Value> 0 if successful, else returns error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


sgm_show_surface_normals (surflist, scaled, numsurf, segid, regflag, vecdens, veclen )
Description:
Routine that calculates and shows the surface normals.
Input:
STRING surflist[] The list of surfaces.
LOGICAL scaled TRUE if user wants to scale the normals to a percentage of the
surface area, FALSE otherwise.
INTEGER numsurf The number of surfaces (or segments).
INTEGER segid The ID of the segment.
INTEGER regflag 0 to show vectors on interior and boundary and 1 to show
vectors on boundary only.
INTEGER vecdens The number of vectors in the u, v directions.
REAL veclen The length of the vectors if non scaled.
Output:
INTEGER <Return Value> 0 if successful, else returns error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.
Main Index
560
Function Descriptions

asm_db_get_next_hpat_label Issue: When running this call MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#1”.
Type: Modified
Resolution: Changed the variable DOMESSAGE from type
integer to type logical.

Original Description Information:


asm_db_get_next_hpat_label (domessage, integerlabel, stringlabel )
Description:
Get the next unused hpat label from the database.
Input:
INTEGER domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest solid label.
STRING stringlabel[] The next highest solid label.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


asm_db_get_next_hpat_label (domessage, integerlabel, stringlabel )
Description:
Get the next unused hpat label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest solid label.
STRING stringlabel[] The next highest solid label.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 561
Obsolete, Modified, and Broken Functions

sgm_db_get_solid Issue: The documentation implies that the user needs to supply
the value of the variable BLOB for this call since it is an
Type: Modified input/output argument, but in reality the value of BLOB is only
supposed to be returned value.
Resolution: Changed the variable BLOB to be only an output
argument.

Original Description Information:


sgm_db_get_solid (solidid, blobsize, blob, status )
Description:
Get the geometric definition of a solid from the database.
Input:
INTEGER solidid ID of the solid.
INTEGER blobsize The size of the blob in words.
REAL blob() Array to be filled in with Geometric description of a solid as a
blob.
Output:
REAL blob()
INTEGER status 0: no error.
-1: database error.
-2: insufficient array length for the blob.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


sgm_db_get_solid (solidid, blobsize, blob, status )
Description:
Get the geometric definition of a solid from the database.
Input:
INTEGER solidid ID of the solid.
INTEGER blobsize The size of the blob in words.
Output:
REAL blob() Array to be filled in with Geometric description of a solid as a
blob.
INTEGER status 0: no error.
-1: database error.
-2: insufficient array length for the blob.
Error Conditions:
None.
Remarks:
None.
Examples:
None.
Main Index
562
Function Descriptions

sgm_verify_solid_brep Issue: The routine was missing its argument list.

Type: Modified Resolution: Added the two input arguments and the <Return
Value> argument to the document description for this call.

Original Description Information:


sgm_verify_solid_brep ()
Description:
Maintain the widgets for the SGM -> VERIFY -> SOLID BREP command.
Input:
None.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


sgm_verify_solid_brep (surface_list, verify_tol )
Description:
Maintain the widgets for the SGM -> VERIFY -> SOLID BREP command.
Input:
STRING surface_list[] The list of surfaces to use.
REAL verify_tol The verify tolerance to use.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

app_db_get_ref_cid Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Add the <Return Value> variable to the list of output
arguments.

Original Description Information:


app_db_get_ref_cid (domesg, cord_frame )
Description:
Get the default reference coordinate frame from the database.

Main Index
CHAPTER 18 563
Obsolete, Modified, and Broken Functions

Input:
LOGICAL domesg Error message flag: If TRUE, this routine will allow the
app_db_err_msg routine to issue a message if an error is
encountered.
Output:
STRING cord_frame[] The default reference coordinate frame.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


app_db_get_ref_cid (domesg, cord_frame )
Description:
Get the default reference coordinate frame from the database.
Input:
LOGICAL domesg Error message flag: If TRUE, this routine will allow the
app_db_err_msg routine to issue a message if an error is
encountered.
Output:
STRING cord_frame[] The default reference coordinate frame.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

asm_db_get_next_cord_label Issue: When running this call, MSC.Patran outputs the error
message “Invalid datatype to built-in function. Arg#1”. In
Type: Modified addition to this issue, the call is missing its <Return Value>
variable.
Resolution: Changed the variable DOMESSAGE from type
integer to type logical. Also added the <Return Value> variable
to the list of output arguments.

Original Description Information:


asm_db_get_next_cord_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest coord label from the database.
Input:
INTEGER domessage Tells the routine to issue an error message if an error occurs.

Main Index
564
Function Descriptions

Output:
INTEGER integerlabel The next highest coord label.
STRING stringlabel[] The next highest coord label.
INTEGER status Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


asm_db_get_next_cord_label (domessage, integerlabel, stringlabel )
Description:
Get the next highest coord label from the database.
Input:
LOGICAL domessage Tells the routine to issue an error message if an error occurs.
Output:
INTEGER integerlabel The next highest coord label.
STRING stringlabel[] The next highest coord label.
INTEGER <Return Value> Success or an error code.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_all_coord_frame_ids Issue: This function can incorrectly return a value of 13000007,


“An unspecified database error occurred”.
Type: Broken
Resolution: No resolution has been found for this issue.

Original Description Information:


db_get_all_coord_frame_ids ()
Description:
This function will set a cursor to the start of a list of all coordinate frames.
Input:
none
Output:
none
Remarks:
This function must be called before the db_get_next_coord_frame_ids() function can be called.

Main Index
CHAPTER 18 565
Obsolete, Modified, and Broken Functions

Example:
INTEGER status
INTEGER id

db_get_all_coord_frame_ids ( )

WHILE ( status == 0 )
status = db_get_next_coord_frame_ids ( id )
END WHILE

db_get_current_coord Issue: The documentation implies that the user needs to supply
the value of the variable COORD_LABEL for this call, but in
Type: Modified reality the value of COORD_LABEL is supposed to be returned.
Resolution: Changed the variable COORD_LABEL to be an
output argument.

Original Description Information:


db_get_current_coord (coord_label )
Description:
Retrieves the current coordinate frame from the database.
Input:
INTEGER coord_label Location for returned value.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_current_coord (coord_label )
Description:
Retrieves the current coordinate frame from the database.
Input:
None.
Output:
INTEGER coord_label Location for returned value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
566
Function Descriptions

db_get_surfaces_for_edge Issue: When a <Return Value> is used with this call, MSC.Patran
outputs the error message “Invalid assignment conversion, Extra
Type: Modified information”.
Resolution: Removed the <Return Value> variable from the
documented description.

Original Description Information:


db_get_surfaces_for_edge (edgid, count, srfid )
Description:
Finds the ids of all surfaces associated with a specified edge in the database.
Input:
INTEGER edgid ID of the edge to which the surfaces are associated.
INTEGER count The number of surfaces that the calling routine expects to
receive from the database. This count should be the same as the
number of surfaces to which the edge is associated as it should
have been fetched from the database prior to making this call.
Output:
INTEGER srfid() IDs of the various surfaces associated with the specified edge.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Example:
None.
New Description Information:
db_get_surfaces_for_edge (edgid, count, srfid )
Description:
Finds the ids of all surfaces associated with a specified edge in the database.
Input:
INTEGER edgid ID of the edge to which the surfaces are associated.
INTEGER count The number of surfaces that the calling routine expects to
receive from the database. This count should be the same as the
number of surfaces to which the edge is associated as it should
have been fetched from the database prior to making this call.
Output:
INTEGER srfid() IDs of the various surfaces associated with the specified edge.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
CHAPTER 18 567
Obsolete, Modified, and Broken Functions

db_get_solids_for_surface Issue: When a <Return Value> is used with this call, MSC.Patran
outputs the error message “Invalid assignment conversion, Extra
Type: Modified information”.
Resolution: Removed the <Return Value> variable from the
documented description.

Original Description Information:


db_get_solids_for_surface (srfid, count, solid )
Description:
Finds the ids of all solids associated with a specified surface in the database.
Input:
INTEGER srfid ID of the surface to which the solids are associated.
INTEGER count The number of solids that the calling routine expects to receive
from the database. This count should be the same as the
number of solids to which the surface is associated as it should
have been fetched from the database prior to making this call.
Output:
INTEGER solid() IDs of the various solids associated with the specified surface.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Example:
None.
New Description Information:
db_get_solids_for_surface (srfid, count, solid )
Description:
Finds the ids of all solids associated with a specified surface in the database.
Input:
INTEGER srfid ID of the surface to which the solids are associated.
INTEGER count The number of solids that the calling routine expects to receive
from the database. This count should be the same as the
number of solids to which the surface is associated as it should
have been fetched from the database prior to making this call.
Output:
INTEGER solid() IDs of the various solids associated with the specified surface.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
568
Function Descriptions

18.9 Finite Element Model (Chapter 8)

db_get_elems_by_lbc Issue: Call does not work. No elements are retrieved from the
database that were associated with the specified LBC.
Type: Broken
Resolution: No resolution has been found for this issue.

Original Description Information:


db_get_elems_by_lbc ( lbc_id, max_elem, numelem, eid )
Description:
Gets all elements associated with an specified LBC.
Input:
INTEGER lbc_id ID of the LBC to which the requested elements are
associated.
INTEGER max_elem Maximum number of element ids for which storage has been
allocated by the calling routine.
Output:
INTEGER numelem Number of elements found associated to the specified LBC.
INTEGER eid() IDs of the elements associated to the specified LBC.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_node Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Added the <Return Value> variable to the output
argument list.

Original Description Information:


db_get_node (id, xyz )
Description:
Given a node ID, this function will look up the specified node and return the coordinates of that
node to the caller.
Input:
INTEGER id The node ID to be looked up.
Output:
REAL xyz(3) An array of 3 floating point values which are the coordinates of
the specified node.
Error Conditions:
None.
Remarks:
None.
Main Index
CHAPTER 18 569
Obsolete, Modified, and Broken Functions

Examples:
None.

New Description Information:


db_get_node (id, xyz )
Description:
Given a node ID, this function will look up the specified node and return the coordinates of that
node to the caller.
Input:
INTEGER id The node ID to be looked up.
Output:
REAL xyz(3) An array of 3 floating point values which are the coordinates of
the specified node.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

fem_get_node_ids Issue: Call only partially works. Outputs the list of nodes for the
variable IDNODE but not for the variable IDNOEXIST.
Type: Broken MSC.Patran outputs an error message if the input list contains
any non-existent nodes.
Resolution: No resolution has been found for this issue.

Original Description Information:


fem_get_node_ids (entity_list, nnode, idnodem notfound, idnoexist )
Description:
Extract the array of existing node IDs from NODE_LST.
Input:
STRING entity_list[] List of selected nodes.
INTEGER nnode Number of nodes in NODE_LST.
Output:
INTEGER nnode Number of existing node IDs.
INTEGER idnode()symbol Pointer to unique node IDs.
INTEGER notfound Number of nodes that were not found.
INTEGER idnoexist()symbol Pointer to sorted list of nonexistent IDs.
INTEGER <Return Value> 0 Function was successful.
-1 Abort.
-2 No existing nodes in list.
Error Conditions:
None.
Remarks:
None.
Main Index
570
Function Descriptions

Examples:
None.

fem_seed_display_dir_arrows Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Added the <Return Value> variable to the output
argument list.

Original Description Information:


fem_seed_display_dir_arrows (arrow_segments )
Description:
Display direction arrows on all visible curves.
Input:
INTEGER arrow_segments Graphics manager segment ID for arrows.
Output:
None.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


fem_seed_display_dir_arrows (arrow_segments )
Description:
Display direction arrows on all visible curves.
Input:
INTEGER arrow_segments Graphics manager segment ID for arrows.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 571
Obsolete, Modified, and Broken Functions

18.10 Load Cases (Chapter 9)

db_delete_load_case Issue: When running this call, MSC.Patran outputs the error
message “Wrong number of arguments for built-in function.
Type: Modified Extra information [1,2]”.
Resolution: Call originally had 2 arguments the variable
PARAM_SET_ID and the variable NAME. Removed the variable
PARAM_SET_ID since it was not needed.

Original Description Information:


db_delete_load_case (param_set_id, name )
Description:
Deletes a load case entry from the database.
Input:
INTEGER param_set_id ID of the param_set whose entries are entries to be deleted.
STRING name[] Name of the loadcase to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_delete_load_case ( name )
Description:
Deletes a load case entry from the database.
Input:
STRING name[] Name of the loadcase to be deleted.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
572
Function Descriptions

18.11 Element Properties (Chapter 10)

db_get_next_lam_opt_code_names Issue: None.

Type: New Resolution: None.

db_del_geo_assoc_to_region Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Unassociates a specified geometric entity from a specified physical property in the database.
Input:
INTEGER gid The internal ID for the geometric entity to unassociate with
the physical property.
INTEGER gtype The type of geometric entity from which the physical
property is being unassociated
INTEGER gsid The internal sub_id for the geometric entity to unassociate
from the physical property.
INTEGER rid The internal ID of the physical property region being
unassociated from the specified geometric entity.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
13000002 Unrecoverable database error.
13000004 Duplicate entry exists in table.
13000007 An unspecified database error occurred.
External Dependencies and Side Effects:
Deletes one record associating a physical property region from a geometric entity in the
database.
Examples:
See example for db_associate_geo_to_region (p. 269).

Main Index
CHAPTER 18 573
Obsolete, Modified, and Broken Functions

18.12 Loads and Boundary Conditions (Chapter 11)

lbc_create Issue: The list of input and output arguments for this call have
been changed.
Type: Modified
Resolution: Changed list of input and output arguments in the
documentation to correspond to those in the actual code.

Original Description Information:


lbc_create (name, lbc_info, ar_id, sdbx_datatype, aplist1, aplist2,
fem_flag, num_scl, data_id, lbc_sf, rsdat, scpos, scdyn,
num_vec, null_flag, rvdat, null_var, vpos, vdyn, scmkr, scolor,
vmkr, vcolor, nvslin, lbc_id )
Description:
Create the Loads and Boundary Condition Set (unevaluated, i.e., for positionally dependent
quantities field references are store not actual values).
Input:
STRING name[] Load/BC Set Name - user specified.
INTEGER lbc_info (8) LBC info - type, cat, eldim, cid, dynflg, numar, anchor.
INTEGER ar_id (2) Appl Region db ID.
STRING sdbx_datatype[] Select databox datatype.
STRING aplist1[] Application Region 1 list.
STRING aplist2[] Application Region 2 list.
INTEGER fem_flag FEM Flag = FA_TRUE if FEM entities.
INTEGER num_scl Number of scalars.
INTEGER data_id (10) Variable Data db ID.
REAL lbc_sf LBC Set Scale Factor.
REAL rsdat (10) Real Scalar data.
INTEGER scpos (10) Pos Dep Scalar Data Field IDs.
INTEGER scdyn (10) Dyn Dep Scalar Data Field IDs.
INTEGER num_vec Number of vectors.
INTEGER null_flag Null vector flag = 1, if null allowed.
REAL rvdat (10,3) Real Vector data.
INTEGER null_var (10,3) Flag indicating whether this vector comp is null NULLV = -1 if
null, 0 if not null.
INTEGER vpos (10,3) Pos Dep Vector Data Field IDs.
INTEGER vdyn (10,3) Dyn Dep Vector Data Field IDs.
INTEGER scmkr (10) Scalar marker types.
INTEGER scolor (10) Scalar colors (0-15).
INTEGER vmkr (10) Vector types.
INTEGER vcolor (10) Vector colors.
INTEGER nvslin Number of geometric visual lines.
Output:
INTEGER lbc_id Load/BC set ID.
INTEGER <Return Value> ISee error returned.

Main Index
574
Function Descriptions

Error Conditions:
None.
Remarks:
None.
Examples:
None.

NewDescription Information:
lbc_create (name, type_id, cat_id, dyn_flag, num_ar, ar_id, aplist1,
aplist2, fem_flag, targ_elem, lbc_sf, cid_id, no_data_flag,
num_dat, var_id, sv, null_flag, null_var, datatype, ivalue,
rvalue, fldid, dyn_fldid, node_id )
Description:
Create the Loads and Boundary Condition Set (unevaluated, i.e., for positionally dependent
quantities field references are store not actual values).
Input:
STRING name[] Load/BC Set Name - user specified.
INTEGER type_id Load/BC Type - disp, force, etc.
INTEGER cat_id Category - Nodal, Elem Uni, Elem Var.
INTEGER dyn_flag Dynamic Flag = FA_TRUE if dynamic.
INTEGER num_ar Number of Application Regions.
INTEGER ar_id (2) Appl Region db ID.
STRING aplist1[] Application Region 1 list.
STRING aplist2[] Application Region 2 list.
INTEGER fem_flag (5) FEM Flag = FA_TRUE if FEM entities.
FEM Flag (4) = app_reg_couple.
FEM Flag (5) = app_reg_order.
INTEGER targ_elem (3) Target Element Dimension.
REAL lbc_sf LBC Set Scale Factor.
INTEGER cid_id Coordinate System ID.
INTEGER no_data_flag Equals FA_TRUE if no data case is valid.
INTEGER num_dat Number of input data variables.
INTEGER var_id (20) Input Variable Data ID.
INTEGER sv (20) Indicates whether data is scalar or vector.
INTEGER null_flag (20) Null vector flag = 1, if null allowed.
INTEGER null_var (20,3) Flag indicating whether this vector comp is null NULLV = -1 if
null, 0 if not null.
INTEGER datatype (20) Indicates datatype, e.g. integer, real, field (see dbcodes.h;
DbInt).
INTEGER ivalue (20) Integer value.
REAL rvalue (20,3) Real value.
INTEGER fldid (20,3) Field ID.
INTEGER dyn_fldid (20,3) Dynamic Field ID.
INTEGER node_id (20) Node ID.
Output:
INTEGER <Return Value> ISee error returned.

Main Index
CHAPTER 18 575
Obsolete, Modified, and Broken Functions

Error Conditions:
None.
Remarks:
None.
Examples:
None.

lbc_get_sdbx_datatype Issue: The call is missing an input argument.

Type: Modified Resolution: Add the variable LBC_ID to the documentation for
this call as the first input argument in the list.

Original Description Information:


lbc_get_sdbx_datatype ( obj_str, meth_str, targ_str, geo_group, sdbx_type, sdbx_label )
Description:
Given LBC object, method, target element type, and geometry group return the select databox
datatype and label.
Input:
STRING obj_str[] Load/BC object, e.g., Displacement.
STRING meth_str[] Load/BC Category - Nodal, Element Uniform, Element
Variable.
STRING targ_str[] Target Element Type - Beam, Shell, Solid, PTEAM.
STRING geo_group[] Geometry Group - Geometry or FEM.
Output:
STRING sdbx_type[] Select databox type.
STRING sdbx_label[] Select databox label.
INTEGER <Return Value> IReturns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


lbc_get_sdbx_datatype (lbc_id, obj_str, meth_str, targ_str, geo_group, sdbx_type,
sdbx_label )
Description:
Given LBC object, method, target element type, and geometry group return the select databox
datatype and label.
Input:
INTEGER lbc_id Load/BC ID.
STRING obj_str[] Load/BC object, e.g., Displacement.
STRING meth_str[] Load/BC Category - Nodal, Element Uniform, Element
Variable.
STRING targ_str[] Target Element Type - Beam, Shell, Solid, PTEAM.
STRING geo_group[] Geometry Group - Geometry or FEM.
Main Index
576
Function Descriptions

Output:
STRING sdbx_type[] Select databox type.
STRING sdbx_label[] Select databox label.
INTEGER <Return Value> IReturns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

lbc_lp_parse_sca Issue: The call is missing an input argument.

Type: Modified Resolution: Add the variable DATATYPE to the documentation


for this call as the second input argument in the list.
Original Description Information:
lbc_lp_parse_sca (dval, fid, nulflg, rval )
Description:
Parse the data contained in the string DVAL. Verify that it is valid data (it is a real scalar or a
scalar field).
Input:
STRING dval[] The string containing the property.
Output:
INTEGER fid Field ID.
INTEGER nulflg Flag Indicating if data is NULL.
REAL rval Value of DVAL.
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


lbc_lp_parse_sca (dval, datatype, fid, nulflg, rval )
Description:
Parse the data contained in the string DVAL. Verify that it is valid data (it is a real scalar or a
scalar field).
Input:
STRING dval[] The string containing the property.
INTEGER datatype Valid data type (app_lbc_defn_ids.i) (i.e., integer, real, node).
Output:
INTEGER fid Field ID.
INTEGER nulflg Flag Indicating if data is NULL.

Main Index
CHAPTER 18 577
Obsolete, Modified, and Broken Functions

REAL rval Value of DVAL.


INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

lbc_show_plot_marker Issue: The call no longer exists. It was replaced with the
lbc_plot_markers call.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Show the marker/vector plots for the given lbcs on the selected groups.
Input:
INTEGER num_lbcs Number of lbcs which should be displayed.
INTEGER lbc_ids ( ) LBC ids.
INTEGER num_grps Number of groups to which graphics vector tables will be
assigned.
INTEGER grp_ids ( ) Group ids.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

lbc_plot_markers Issue: None.

Type: New Resolution: None.

lbc_show_plot_scalar Issue: The call is missing an input argument.

Type: Modified Resolution: Add the variable TYPE_ID to the documentation for
this call as the second input argument in the list.

Original Description Information:


lbc_show_plot_scalar (type_name, dynamic_val, var_name, component, num_lbcs,
lbc_ids, num_grps, grp_ids )
Description:
Main application routine for the Loads/BCs Show Plot Scalar option. A scalar graphics table is
loaded with the specified load/BC and is assigned to the specified groups.
Main Index
578
Function Descriptions

Input:
STRING type_name[] The Load/BC type name.
REAL dynamic_val The value of the dynamic field to evaluate.
STRING var_name[] The name of the variable to be loaded into the scalar table.
STRING component[] The component of the variable to be loaded into the scalar
table.
INTEGER num_lbcs The number of lbcs to contour.
INTEGER lbc_ids (num_lbcs) The IDs of the lbcs to contour.
INTEGER num_grps The number of groups to assign the scalar table to.
INTEGER grp_ids (num_lbcs) The IDs of the groups to assign the scalar table to.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


lbc_show_plot_scalar (type_name, type_id, dynamic_val, var_name, component,
num_lbcs, lbc_ids, num_grps, grp_ids )
Description:
Main application routine for the Loads/BCs Show Plot Scalar option. A scalar graphics table is
loaded with the specified load/BC and is assigned to the specified groups.
Input:
STRING type_name[] The Load/BC type name.
INTEGER type_id The Load/BC type ID.
REAL dynamic_val The value of the dynamic field to evaluate.
STRING var_name[] The name of the variable to be loaded into the scalar table.
STRING component[] The component of the variable to be loaded into the scalar
table.
INTEGER num_lbcs The number of lbcs to contour.
INTEGER lbc_ids (num_lbcs) The IDs of the lbcs to contour.
INTEGER num_grps The number of groups to assign the scalar table to.
INTEGER grp_ids (num_lbcs) The IDs of the groups to assign the scalar table to.
Output:
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 579
Obsolete, Modified, and Broken Functions

loadsbcs_get_appl_region_list Issue: The list of input and output arguments for this call have
been changed.
Type: Modified
Resolution: Changed list of input and output arguments in the
documentation to correspond to those in the actual code.

Original Description Information:


loadsbcs_get_appl_region_list (id, num_ar, ent_count, ar_ids, geo_str, app_list, app_list2 )
Description:
Gets the application region entities - types, ids, and sub ids (if applicable) from the database.
Input:
INTEGER id Load/BC ID.
INTEGER num_ar Number of application regions.
INTEGER ent_count ( ) Number of entities in appl region.
Output:
STRING geo_str Geometry group = Geometry or FEM.
STRING app_list[VIRTUAL] Application list.
STRING app_list2[VIRTUAL] Application list 2.
INTEGER ar_ids ( ) IDs of the app regions.
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Example:
None.
New Description Information:
loadsbcs_get_appl_region_list (id, region_id, ent_count, geo_str, app_list )
Description:
Gets the application region entities - types, ids, and sub ids (if applicable) from the database.
Input:
INTEGER id Load/BC ID.
INTEGER region_id App Region ID.
INTEGER ent_count Number of entities in appl region.
Output:
STRING geo_str[] Geometry group = Geometry or FEM.
STRING app_list[VIRTUAL] Application list.
INTEGER <Return Value> See error returned.
Error Conditions:
None.
Remarks:
None.
Example:
None.

Main Index
580
Function Descriptions

db_count_lbc_in_group Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Counts all lbcs in the specified group.
Input:
INTEGER id The ID of the group for which the count is requested.
Output:
INTEGER count The number of lbcs in the group.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_all_lbcs Issue: The call no longer exists. It was replaced with the
db_get_all_lbcs_new call.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Gets the LBC from the database.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_all_lbcs_new Issue: None.

Type: New Resolution: None.

Main Index
CHAPTER 18 581
Obsolete, Modified, and Broken Functions

db_get_next_lbc Issue: The call no longer exists. It was replaced with the
db_get_next_lbcs_new call.
Type: Obsolete
Resolution: Removed the call from the documentation.

Description:
Gets next LBC from the database.
Input:
None.
Output:
INTEGER id The unique internal ID of the LBC type created in the
database.
STRING name[] The name of the LBC type being created in the database.
INTEGER type The type ID of the LBC (from the lbc_type table).
INTEGER cat The category of the LBC (nodal, element uniform or element
variable).
INTEGER ted The target element dimensionality for this LBC.
INTEGER cid The cid of the alternate coordinate frame that was used to
define this LBC (if any).
INTEGER dflag A flag indicating whether this is a dynamic or static LBC.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_next_lbcs_new Issue: None.

Type: New Resolution: None.

db_get_all_lbcs_in_group Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Gets all LBC entries in a specified group from the database in one array.
Input:
INTEGER grpid The group IDs to which the LBCs are to belong.
INTEGER count The storage that the calling routine has allocated for IDs.
Output:
INTEGER id() Array to contain the LBC IDs.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.

Main Index
582
Function Descriptions

Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_all_lbc_var_defns Issue: The call is missing an input argument.

Type: Modified Resolution: Add the variable ID to the documentation for this
call as the first input argument in the list.

Original Description Information:


db_get_all_lbc_var_defns ()
Description:
Gets LBC variable for an LBC type definition from the database.
Input:
None.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_all_lbc_var_defns ( id )
Description:
Gets LBC variable for an LBC type definition from the database.
Input:
INTEGER id LBC ID.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 583
Obsolete, Modified, and Broken Functions

db_get_lbc_type_defn Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Added the <Return Value> variable to the output
argument list.

Original Description Information:


db_get_lbc_type_defn (name, id, class, form, gbc, cid, g_sym, sv, nv, nbr_ac, an_code,
defcol, cbid, anstyl )
Description:
Gets all LBC type definitions from the database, in get all, get next method.
Input:
STRING name[] The name of the LBC type in the database.
Output:
INTEGER id The unique internal ID of the LBC type in the database.
INTEGER class The class of the LBC type (Structural, Thermal, Other).
INTEGER form The form of the LBC (Body or Boundary).
INTEGER gbc Flag indicating whether this is a global boundary condition
INTEGER cid Flag indicating whether the LBC can be defined in an alternate
coord frame
INTEGER g_sym The graphics symbol used to display this LBC.
INTEGER sv Flag indicating whether this LBC is scalar or vector.
INTEGER nv Flag indicating whether (for vector LBCs) one (or more) of the
components can be null.
INTEGER nbr_ac The number of analysis codes supplied.
INTEGER an_code ( ) List of valid analysis code IDs for this LBC.
INTEGER defcol Default color of associated graphics.
INTEGER cbid Color box ID of associated graphics.
INTEGER anstyl Anchor style of associated graphics.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_lbc_type_defn (name, id, class, form, gbc, cid, g_sym, sv, nv, nbr_ac, an_code,
defcol, cbid, anstyl )
Description:
Gets all LBC type definitions from the database, in get all, get next method.
Input:
STRING name[] The name of the LBC type in the database.
Output:
INTEGER id The unique internal ID of the LBC type in the database.
INTEGER class The class of the LBC type. (Structural, Thermal, Other)
INTEGER form The form of the LBC. (Body or Boundary)
INTEGER gbc Flag indicating whether this is a global boundary condition
Main Index
584
Function Descriptions

INTEGER cid Flag indicating whether the LBC can be defined in an alternate
coord frame
INTEGER g_sym The graphics symbol used to display this LBC.
INTEGER sv Flag indicating whether this LBC is a scalar or vector.
INTEGER nv Flag indicating whether (for vector lbcs) one (or more) of the
components can be null.
INTEGER nbr_ac The number of analysis codes supplied.
INTEGER an_code ( ) List of valid analysis code ids for this LBC.
INTEGER defcol Default color of associated graphics.
INTEGER cbid Color box ID of associated graphics.
INTEGER anstyl Anchor style of associated graphics.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_lbc_var_defn Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Added the <Return Value> variable to the output
argument list.

Original Description Information:


db_get_lbc_var_defn (lbc_type_id, lbc_category, eldim, label, id )
Description:
Gets the LBC variable defn from the database.
Input:
INTEGER lbc_type_id The ID of the LBC type in the database.
INTEGER lbc_category The ID of the LBC type in the database.
INTEGER eldim The dimensionality of the LBC type in the database.
STRING label[] The label of the variable in the database.
Output:
INTEGER id() The unique internal ID of the LBC type variable in the
database.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_lbc_var_defn (lbc_type_id, lbc_category, eldim, label, id )
Description:
Gets the LBC variable defn from the database.
Main Index
CHAPTER 18 585
Obsolete, Modified, and Broken Functions

Input:
INTEGER lbc_type_id The ID of the LBC type in the database.
INTEGER lbc_category The ID of the LBC type in the database.
INTEGER eldim The dimensionality of the LBC type in the database.
STRING label[] The label of the variable in the database.
Output:
INTEGER id() The unique internal ID of the LBC type variable in the
database.
INTEGER <Return Value> Integer indicating success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
586
Function Descriptions

18.13 Materials (Chapter 12)

mat_2d_ani_to_2d_ort Issue: Call does not work. Unable to calculate the 2D orthotropic
engineering constants from a 2D anisotropic material.
Type: Broken
Resolution: No resolution has been found for this issue.

Original Description Information:


mat_2d_ani_to_2d_ort (s11, s12, s22, div_tol, e11, e22, v12)
Description:
Given the 2d, orthotropic elements of the reduced ( plane stress or 2d ) stiffness matrix,
calculates the 2d engineering constants. The in plane shear modulus is not included since there
is a one to one relationship between it and Stiff33 ( in ( 11, 22, 12 ) matrix form ). Jones
“Mechanics of Composite Materials” ( 1975 ) page 38.
Input:
REAL s11 The 11 element of the plane stress stiffness matrix.
REAL s12 The 12 element of the plane stress stiffness matrix.
Synonymous to s21.
REAL s22 The 22 element of the plane stress stiffness matrix.
REAL div_tol The division tolerance.
Output:
REAL e11 The elastic modulus in the 11 direction.
REAL e22 The elastic modulus in the 22 direction.
REAL v12 The in plane poisson ratio. Not generally equal to v21.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 587
Obsolete, Modified, and Broken Functions

18.14 Analysis (Chapter 13)

analysis_get.pset_for_job Issue: Function description is incorrect.

Type: Modified Resolution: Modified function and variable descriptions. Also


deleted Remarks and Example.

Original Description Information:


analysis_get.pset_for_job (analysis_code, anal_stp_name, anal_stp_id )
Description:
Get analysis step ID for analysis step name and analysis code.
Input:
STRING analysis_code[31] The name of the analysis code.
STRING anal_stp_name[80] The name of the analysis step.
Output:
INTEGER anal_stp_id The analysis step parameter set ID.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the
reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


analysis_get.pset_for_job (analysis_code, anal_job_name, anal_job_id )
Description:
This function will get the analysis job id for a specific job and analysis code.
Input:
STRING analysis_code[31] This value specifies the name of the analysis code.
STRING anal_job_name[] This value specifies the name of the job.
Output:
INTEGER anal_job_id This value returns the identifier associated with the
specified analysis code and job name.
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.

Main Index
588
Function Descriptions

db_get_anal_type_name Issue: The documentation implies that the user needs to supply
the value of the variable NAME for this call, but in reality the
Type: Modified value of NAME is supposed to be returned.
Resolution: Changed the variable NAME to be an output
argument.

Original Description Information:


db_get_anal_type_name (id, name )
Description:
Retrieves the analysis type name associated with the specified analysis type ID.
Input:
INTEGER id Integer containing the ID of the analysis type.
STRING name[31] Pointer to a string where the name of the analysis type is to be
placed.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_anal_type_name (id, name )
Description:
Retrieves the analysis type name associated with the specified analysis type ID.
Input:
INTEGER id Integer containing the ID of the analysis type.
Output:
STRING name[31] Pointer to a string where the name of the analysis type is to be
placed.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 589
Obsolete, Modified, and Broken Functions

db_get_anal_type_id Issue: The documentation implies that the user needs to supply
the value of the variable ID for this call, but in reality the value of
Type: Modified ID is supposed to be returned.
Resolution: Changed the variable ID to be an output argument.

Original Description Information:


db_get_anal_type_id (name, id, )
Description:
Retrieves the analysis type ID associated with the specified analysis type name.
Input:
STRING name[31] Pointer to a string containing the name of the analysis type.
INTEGER id Location to receive the resulting value.
Output:
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_anal_type_id (name, id, )
Description:
Retrieves the analysis type ID associated with the specified analysis type name.
Input:
STRING name[31] Pointer to a string containing the name of the analysis type.
Output:
INTEGER id Location to receive the resulting value.
INTEGER <Return Value> Returns the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
590
Function Descriptions

db_get_pset_matrix_entry Issue: The documentation implies that the user need not supply
the value of the variable MATRIX for this call, but in reality the
Type: Modified value of MATRIX is supposed to be an input argument.
Resolution: Changed the variable MATRIX to be an input
argument.

Original Description Information:


db_get_pset_matrix_entry (param_set_id, param_name, matrix )
Description:
Retrieves the analysis type ID associated with the specified analysis type name.
Input:
INTEGER param_set_id Internal unique ID of the matrix values to be retrieved from
the database.
STRING param_name[80] Name of the param set being retrieved from the database.
Output:
REAL matrix() The information previously contained in the blob, but
returned to the calling routine in a float array.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_get_pset_matrix_entry (param_set_id, param_name, matrix )
Description:
Retrieves the analysis type ID associated with the specified analysis type name.
Input:
INTEGER param_set_id Internal unique ID of the matrix values to be retrieved from
the database.
STRING param_name[80] Name of the param set being retrieved from the database.
REAL matrix() The information previously contained in the blob, but
returned to the calling routine in a float array.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 591
Obsolete, Modified, and Broken Functions

18.15 Fields (Chapter 14)

db_modify_field Issue: The documentation implies that the variable ID will return
a value as well as supply one for this call, but in reality the value
Type: Modified of ID is only supposed to be an input argument.
Resolution: Change the variable ID to be an input argument.

Original Description Information:


db_modify_field (id, name, object, type, etype, eid, extra_opt, cid_type, cid,
defn_type, nvar, ivar1, ivar2, ivar3, fn1_size, fn2_size,
fn3_size, fn1, fn2, fn3, lin_def, nxvals, nyvals, nzvals, xvals,
yvals, zvals, vals)
Description:
Modifies a field in the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
STRING name[] The name of the field to be modified.
INTEGER object 0 = spatial; 1 = material; 2 = time
INTEGER type 0 = scalar; 1 = vector
INTEGER etype The entity type.
INTEGER eid The elem_edge to be associated with the field.
INTEGER extra_opt The node_pos to be associated with the field.
INTEGER cid_type The field values for this table field. The input type.
INTEGER cid The ID of the coordinate frame used to define this field.
INTEGER defn_type 0 = Function; 1 = Table; 2 = Fem;
INTEGER nvar The number of functions used to define this field.
INTEGER ivar1 Values 1-4
INTEGER ivar2 Values 1-4
INTEGER ivar3 Values 1-4
INTEGER fn1_size The size of the first function used to define this field.
INTEGER fn2_size The size of the second function used to define this field.
INTEGER fn3_size The size of the third function used to define this field.
STRING fn1[fn1_size] The first function that defines this field.
STRING fn2[fn2_size] The second function that defines this field.
STRING fn3[fn3_size] The third function that defines this field.
LOGICAL lin_def Flag indicating whether this was a linear definition.
INTEGER nxvals The number of x values for this field.
INTEGER nyvals The number of y values for this field.
INTEGER nzvals The number of z values for this field.
REAL xvals(nxvals) The x values for this field.
REAL yvals(nyvals) The y values for this field.
REAL zvals(nzvals) The z values for this field.
REAL vals(nxvals, nyvals, nzvals)
The field values for this table field.

Main Index
592
Function Descriptions

Output:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_modify_field (id, name, object, type, etype, eid, extra_opt, cid_type, cid,
defn_type, nvar, ivar1, ivar2, ivar3, fn1_size, fn2_size,
fn3_size, fn1, fn2, fn3, lin_def, nxvals, nyvals, nzvals, xvals,
yvals, zvals, vals)
Description:
Modifies a field in the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
STRING name[] The name of the field to be modified.
INTEGER object 0 = spatial; 1 = material; 2 = time
INTEGER type 0 = scalar; 1 = vector
INTEGER etype The entity type.
INTEGER eid The elem_edge to be associated with the field.
INTEGER extra_opt The node_pos to be associated with the field.
INTEGER cid_type The field values for this table field. The input type.
INTEGER cid The ID of the coordinate frame used to define this field.
INTEGER defn_type 0 = Function; 1 = Table; 2 = Fem;
INTEGER nvar The number of functions used to define this field.
INTEGER ivar1 Values 1-4
INTEGER ivar2 Values 1-4
INTEGER ivar3 Values 1-4
INTEGER fn1_size The size of the first function used to define this field.
INTEGER fn2_size The size of the second function used to define this field.
INTEGER fn3_size The size of the third function used to define this field.
STRING fn1[fn1_size] The first function that defines this field.
STRING fn2[fn2_size] The second function that defines this field.
STRING fn3[fn3_size] The third function that defines this field.
LOGICAL lin_def Flag indicating whether this was a linear definition.
INTEGER nlin_defxvals The number of x values for this field.
INTEGER nyvals The number of y values for this field.
INTEGER nzvals The number of z values for this field.
REAL xvals(nxvals) The x values for this field.
REAL yvals(nyvals) The y values for this field.
REAL zvals(nzvals) The z values for this field.
Main Index
CHAPTER 18 593
Obsolete, Modified, and Broken Functions

REAL vals(nxvals, nyvals, nzvals)


The field values for this table field.
Output:
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_create_field_res Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
Converts a field lbc in the database.
Input:
INTEGER type 0 = scalar; 1 = vector; 2 = tensor;
INTEGER etype The entity type.
INTEGER nvals The number of field values to be created.
INTEGER eid(nvals) The entity ids to be associated with the field.
INTEGER elem_face(nvals) The elem_face to be associated with the field.
INTEGER elem_edge(nvals) The elem_edge to be associated with the field.
INTEGER node_pos(nvals) The node_pos to be associated with the field.
REAL vals(nvals, type) The field values for this table field. The input
type.determines the size of the vals array;
0 = 1;
1 = 3;
2 = 6;
The values determine how many positions should be loaded
from the input arrays and correspond to scalar, vector, or
tensor.
Output:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
594
Function Descriptions

db_get_field_dfem Issue: Missing the db_get_field_dfem call in the original


MSC.Acumen documentation.
Type: Modified
Resolution: Added this call to the documentation.

New Description Information:


db_get_field_dfem (id, nvals, method, eid, elem_face, elem_edge, node_pos,
nodeid, vals )
Description:
Gets an lbc field from the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER nvals The number of values that the output arrays are present in the
table.
Output:
INTEGER nvals The number of values that the output arrays are present in the
table.
INTEGER method(nvals) The method used. 1 = vector 2 = nodeID
INTEGER eid(nvals) The entity id.
INTEGER elem_face(nvals) The elem face id.
INTEGER elem_edge(nvals) The elem edge id.
INTEGER node_pos(nvals) The node position.
INTEGER nodeid(nvals) The node ID if using method = 2
REAL vals(nvals, type) The scalar, vector, or tensor values of the field. If method = 1
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 595
Obsolete, Modified, and Broken Functions

field_create_field_lbc Issue: The documentation implies that the variable ID is only an


input argument, but in reality the variable ID is an input/output
Type: Modified argument. Also the variable VALTS in the argument list should
really be VALS which is an input argument and not an output
argument.
Resolution: Change the variable ID to be an input/output
argument. In the calling sequence change the variable VALTS to
VALS and remove the variable VALTS from the output argument
list.

Original Description Information:


field_create_field_lbc (id, name, type, ent_type, nvals, eid, elem_face,
elem_edge, node_pos, valts )
Description:
Create an LBC type field.
Input:
INTEGER id Field ID (ID nonzero, otherwise use next available field ID).
STRING name[31] Field name.
INTEGER type =1 scalar data, =3 vector data.
INTEGER ent_type Category - 123=Nodal or 124=Element.
INTEGER nvals Number of points defining the field.
INTEGER eid(nvals) Ids of the elements/nodes.
INTEGER elem_face(nvals) Id of the element faces.
INTEGER elem_edge(nvals) Id of the element edges.
INTEGER node_pos(nvals) Id of nodal position (for elem variable).
REAL vals(nvals, type) Values of the field
Output:
REAL valts(nvals) Values of the field
INTEGER <Return Value> 0 success, otherwise an error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


field_create_field_lbc (id, name, type, ent_type, nvals, eid, elem_face,
elem_edge, node_pos, vals )
Description:
Create an LBC type field.
Input:
INTEGER id Field ID (ID nonzero, otherwise use next available field ID).
STRING name[31] Field name.
INTEGER type =1 scalar data, =3 vector data.
INTEGER ent_type Category - 123=Nodal or 124=Element.
INTEGER nvals Number of points defining the field.
Main Index
596
Function Descriptions

INTEGER eid(nvals) Ids of the elements/nodes.


INTEGER elem_face(nvals) Id of the element faces.
INTEGER elem_edge(nvals) Id of the element edges.
INTEGER node_pos(nvals) Id of nodal position (for elem variable).
REAL vals(nvals, type) Values of the field
Output:
INTEGER id Field ID returned
INTEGER <Return Value> 0 success, otherwise an error.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

db_get_field_lbc Issue: The documentation implies that the variable NVALS is


only an input argument, but in reality it is an input/output
Type: Modified argument
Resolution: Changed the variable NVALS to be an input/output
argument.

Original Description Information:


db_get_field_lbc (d, nvals, eid, elem_face, elem_edge, node_pos, vals )
Description:
Gets an LBC field from the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER nvals The number of values that the output arrays are dimensioned
to handle.
Output:
INTEGER eid(nvals) The entity ID.
INTEGER elem_face(nvals) The elem face ID.
INTEGER elem_edge(nvals) The elem edge ID.
INTEGER node_pos(nvals) The node position.
REAL vals(nvals, type) The scalar, vector, or tensor values of the field.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 597
Obsolete, Modified, and Broken Functions

New Description Information:


db_get_field_lbc (d, nvals, eid, elem_face, elem_edge, node_pos, vals )
Description:
Gets an LBC field from the database.
Input:
INTEGER id The unique internal ID identifying the field in the database.
INTEGER nvals The number of values that the output arrays are dimensioned
to handle.
Output:
INTEGER nvals The number of values that the output arrays are dimensioned
to handle.
INTEGER eid(nvals) The entity ID.
INTEGER elem_face(nvals) The elem face ID.
INTEGER elem_edge(nvals) The elem edge ID.
INTEGER node_pos(nvals) The node position.
REAL vals(nvals, type) The scalar, vector, or tensor values of the field.
INTEGER <Return Value> Integer indicating success or failure of the routine. If the
routine failed, this value contains an indication of the reason.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
598
Function Descriptions

18.16 Results (Chapter 15)

db_count_result_types_for_elem Issue: This call is missing its <Return Value> variable.

Type: Modified Resolution: Added the <Return Value> variable to the


output argument list.

Original Description Information:


db_count_result_types_for_elem (id, elementId, resultTypeCount )
Description:
Given an elementId, count all the unique result types used by it.
Input:
INTEGER elementid The element ID.
Output:
INTEGER resultTypeCount Count of all the unique result types used by the given element
ID.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


db_count_result_types_for_elem (id, elementId, resultTypeCount )
Description:
Given an elementId, count all the unique result types used by it.
Input:
INTEGER elementid The element ID.
Output:
INTEGER resultTypeCount Count of all the unique result types used by the given element
ID.
INTEGER <Return Value> Integer indicating the success or failure of the routine.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
CHAPTER 18 599
Obsolete, Modified, and Broken Functions

18.17 Preferences (Chapter 16)

pref_env_get_string Issue: MSC.Patran outputs the error message “Wrong number


of arguments for built-in function”.
Type: Modified
Resolution: Remove the variable MAXLEN from the routine
since it only has 2 arguments and not 3.

Original Description Information:


pref_env_get_string (prefname, maxlen, value)
Description:
Retrieve the value of a string preference.
Input:
STRING prefname[] Name of preference to load.
INTEGER maxlen Max length of return string w/o null.
Output:
STRING value[] Result preference string.
INTEGER <Return Value> 0; no error, else see error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

New Description Information:


pref_env_get_string (prefname, value)
Description:
Retrieve the value of a string preference.
Input:
STRING prefname[] Name of preference to load.
Output:
STRING value[] Result preference string.
INTEGER <Return Value> 0; no error, else see error returned.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

Main Index
600
Function Descriptions

18.18 Utilities (Chapter 17)

rpc_clear_timeout Issue: The call no longer exists.

Type: Obsolete Resolution: Removed the call from the documentation.

Description:
rpc_clear_timeout will change the amount of time before all subsequent rpc_call()s will
timeout.
Input:
INTEGER handle Server handle.
INTEGER seconds Timeout in seconds.
Output:
LOGICAL <Return Value> FALSE - timeout setting failed.
TRUE - timeout successful.
Error Conditions:
None.
Remarks:
None.
Examples:
None.

util_round Issue: The call no longer exists.

Type: Obsolete Resolution: This function has been replaced by the function
util_rounder (p. 460) which has a return value used to indicate
errors.
Description:
Round off RVAL to NSIGD significant digits.
Input:
REAL rval The value to be rounded.
INTEGER nsigd Number of significant digits NSIGD must be positive to get a
meaningful answer.
Output:
REAL <Return Value> Rounded value of RVAL.
Error Conditions:
None.
Remarks:
None.
Example:
FUNCTION UTIL_ROUNDER( RVAL, NSIGD, ROUT )
/*
Round off RVAL to NSIGD significant digits in ROUT.

Input:
Main Index
CHAPTER 18 601
Obsolete, Modified, and Broken Functions

RVAL Real The value to be rounded.


NSIGD Integer Number of significant digits
NSIGD must be positive to get a meaningful
answer. If it is not, a warning will be issued
that NSIGD will be assumed to be one.

Output:
ROUT Real Rounded value of RVAL
UTIL_ROUNDER Integer Return status ( =0 if no error )
*/
REAL RVAL, ROUT
INTEGER NSIGD
/*
Initialize
*/
IF( NSIGD <= 0 ) THEN
UTIL_ROUNDER = 1
ELSE
UTIL_ROUNDER = 0
END IF
ROUT = UTIL_ROUND( RVAL, NSIGD )

RETURN
END

Main Index
602
Function Descriptions

Main Index
1

I N D E X
MSC.Acumen Toolkit
Function Descriptions

I N D E X
MSC.Acumen
Toolkit This Index of Functions includes all app_count_list 836
Function
Descriptions
functions in the entire MSC.Patran system: app_count_list 837
PCL and Customization; the PCL Reference app_count_list ACU 536
Manual; and MSC.Acumen in alphabetical app_count_list ACU 94
order. app_count_token_list PCL 218
app_db_err_msg 839
app_db_err_msg ACU 90
A app_db_get_ref_cid 996
app_db_get_ref_cid ACU 189
<analysis_type> PCL 324
app_db_get_ref_cid ACU 562
analysis_get.pset_for_job 1486
app_get_handle PCL 218
analysis_get.pset_for_job ACU 360
app_ids_to_vstring 840
analysis_get.pset_for_job ACU 587
app_ids_to_vstring ACU 94
analysis_import 1487
app_int_array_to_vstring 842
analysis_import ACU 360
app_int_array_to_vstring ACU 95
analysis_main.button_class_closed PCL 328
app_lp_err_msg PCL 220
analysis_main.disable_jobname_and_descriptio
app_next_id PCL 219
n PCL 323
app_next_label PCL 219
analysis_main.dont_commit_on_apply PCL 322
appcode 843
analysis_main.dont_update_on_apply PCL 323
appcode ACU 90
analysis_main.get_analysis_menu_items
arbitrary_read_file REF 1290
PCL 331
arbitrary_read_file REF 713
analysis_main.get_code_and_type PCL 332
arbitrary_section_create REF 1290
analysis_main.get_current_job_info PCL 332
arbitrary_section_create REF 714
analysis_main.get_file_suffixes PCL 332
arbitrary_section_display REF 1290
analysis_main.get_job_name_and_desc
arbitrary_section_display REF 715
PCL 331
arbitrary_section_modify REF 1290
analysis_main.get_panel_info PCL 333
arbitrary_section_modify REF 716
analysis_main.job_name_lbox 1491
arbitrary_section_report REF 1290
analysis_main.job_name_lbox ACU 361
arbitrary_section_report REF 716
analysis_main.load_job_name_dbox PCL 323
arbitrary_select_surface REF 1290
analysis_main.refresh_jobname_listbox
arbitrary_select_surface REF 717
PCL 323
array_copy_real 1702
analysis_main.set_display_flags PCL 322
array_copy_real ACU 452
analysis_main.set_jobname_blank PCL 323
array_del_zero_int 1703
analysis_main.set_jobname_current PCL 323
array_del_zero_int ACU 452
analysis_main.user_function 1492
array_fill_int 1703 Index
analysis_main.user_function ACU 361
array_fill_int ACU 452
analysis_submit 1494
array_fill_zero_int 1704
analysis_submit ACU 362
array_fill_zero_int ACU 453
analysis_submit_2 1498
array_fill_zero_real 1705
analysis_submit_2 ACU 363
array_fill_zero_real ACU 453
app_count_id_list PCL 217
array_real_fill_null 1706
Main Index
2 INDEX

array_real_fill_null ACU 453 asm_const_grid_extract_v1 2143


array_sort_and_del_dupl_int 1706 asm_const_grid_extract_v1 REF 213
array_sort_and_del_dupl_int ACU 454 asm_const_grid_interp_curve 2145
asm_const_coord_3point 2117 asm_const_grid_interp_curve REF 214
asm_const_coord_3point REF 193 asm_const_grid_interp_curve_v1 2146
asm_const_coord_axis 2118 asm_const_grid_interp_curve_v1 REF 215
asm_const_coord_axis REF 194 asm_const_grid_interp_point 2148
asm_const_coord_euler 2119 asm_const_grid_interp_point REF 216
asm_const_coord_euler REF 195 asm_const_grid_intersect 2149
asm_const_coord_normal 2121 asm_const_grid_intersect REF 217
asm_const_coord_normal REF 196 asm_const_grid_offset 2150
asm_const_curve_2d_arc2point 2123 asm_const_grid_offset REF 218
asm_const_curve_2d_arc2point REF 197 asm_const_grid_pierce 2151
asm_const_curve_2d_arc2point_v2 997 asm_const_grid_pierce REF 219
asm_const_curve_2d_arc2point_v2 ACU 155 asm_const_grid_project_v1 REF 220
asm_const_curve_2d_arc3point 2124 asm_const_grid_xyz 2153
asm_const_curve_2d_arc3point REF 198 asm_const_grid_xyz REF 1187
asm_const_curve_2d_arc3point_v1 998 asm_const_grid_xyz REF 221
asm_const_curve_2d_arc3point_v1 ACU 157 asm_const_hpat_2surface 2154
asm_const_curve_2d_circle 2125 asm_const_hpat_2surface REF 222
asm_const_curve_2d_circle REF 199 asm_const_hpat_3surface 2156
asm_const_curve_2d_circle_v1 999 asm_const_hpat_3surface REF 223
asm_const_curve_2d_circle_v1 ACU 157 asm_const_hpat_4surface 2158
asm_const_curve_arc3point 2126 asm_const_hpat_4surface REF 224
asm_const_curve_arc3point REF 200 asm_const_hpat_face 2160
asm_const_curve_bspline 2127 asm_const_hpat_face REF 225
asm_const_curve_bspline REF 201 asm_const_hpat_vertex 2162
asm_const_curve_extract 2129 asm_const_hpat_vertex REF 226
asm_const_curve_extract REF 202 asm_const_hpat_xyz 2163
asm_const_curve_extract_edge 2130 asm_const_hpat_xyz REF 227
asm_const_curve_extract_edge REF 203 asm_const_line_2point 2165
asm_const_curve_intersect 2131 asm_const_line_2point REF 228
asm_const_curve_intersect REF 204 asm_const_line_3point 2166
asm_const_curve_involute 2132 asm_const_line_3point REF 229
asm_const_curve_involute REF 205 asm_const_line_4point 2167
asm_const_curve_loft 2134 asm_const_line_4point REF 230
asm_const_curve_loft REF 1186 asm_const_line_arc3point 2169
asm_const_curve_loft REF 206 asm_const_line_arc3point REF 231
asm_const_curve_manifold_2point 2135 asm_const_line_conic 2170
asm_const_curve_manifold_2point REF 207 asm_const_line_conic REF 232
asm_const_curve_manifold_npoint 2137 asm_const_line_extract 2171
asm_const_curve_manifold_npoint REF 208 asm_const_line_extract REF 233
asm_const_curve_project 2138 asm_const_line_fillet 2172
asm_const_curve_project REF 209 asm_const_line_fillet REF 1188
asm_const_curve_project_v1 1000 asm_const_line_fillet REF 234
Index asm_const_curve_project_v1 ACU 158 asm_const_line_fit 2174
asm_const_curve_revolve 2140 asm_const_line_fit REF 235
asm_const_curve_revolve REF 210 asm_const_line_intersect 2175
asm_const_grid_arccenter 2141 asm_const_line_intersect REF 236
asm_const_grid_arccenter REF 211 asm_const_line_normal 2177
asm_const_grid_extract 2142 asm_const_line_normal REF 237
asm_const_grid_extract REF 212 asm_const_line_project 2178
Main Index
INDEX 3

asm_const_line_project REF 238 asm_const_solid_normal 2210


asm_const_line_project_v1 2180 asm_const_solid_normal REF 261
asm_const_line_project_v1 REF 240 asm_const_solid_nsurface 2217
asm_const_line_pwl 2182 asm_const_solid_nsurface REF 1194
asm_const_line_pwl REF 241 asm_const_solid_nsurface REF 266
asm_const_line_spline 2183 asm_const_solid_revolve 2211
asm_const_line_spline REF 242 asm_const_solid_revolve REF 262
asm_const_line_tancurve 2184 asm_const_surface_2curve 2218
asm_const_line_tancurve REF 243 asm_const_surface_2curve REF 267
asm_const_line_tanpoint 2185 asm_const_surface_3curve 2220
asm_const_line_tanpoint REF 244 asm_const_surface_3curve REF 268
asm_const_line_xyz 2187 asm_const_surface_3edge 2225
asm_const_line_xyz REF 245 asm_const_surface_3edge REF 272
asm_const_patch_2curve 2188 asm_const_surface_4curve 2222
asm_const_patch_2curve REF 246 asm_const_surface_4curve REF 270
asm_const_patch_2curve_v1 2189 asm_const_surface_4edge 2227
asm_const_patch_2curve_v1 REF 247 asm_const_surface_4edge REF 273
asm_const_patch_3curve 2191 asm_const_surface_extract 2228
asm_const_patch_3curve REF 248 asm_const_surface_extract REF 274
asm_const_patch_4curve 2193 asm_const_surface_extract_face 2230
asm_const_patch_4curve REF 249 asm_const_surface_extract_face REF 275
asm_const_patch_edge 2195 asm_const_surface_extrude 2231
asm_const_patch_edge REF 250 asm_const_surface_extrude REF 276
asm_const_patch_extract 2196 asm_const_surface_glide 2233
asm_const_patch_extract REF 251 asm_const_surface_glide REF 1195
asm_const_patch_fillet 2198 asm_const_surface_glide REF 277
asm_const_patch_fillet REF 1189 asm_const_surface_ncurve 2224
asm_const_patch_fillet REF 252 asm_const_surface_ncurve REF 271
asm_const_patch_match 2199 asm_const_surface_normal 2235
asm_const_patch_match REF 1190 asm_const_surface_normal REF 278
asm_const_patch_match REF 254 asm_const_surface_revolve 2236
asm_const_patch_vertex 2201 asm_const_surface_revolve REF 279
asm_const_patch_vertex REF 255 asm_const_surface_vertex 2238
asm_const_patch_xyz 2202 asm_const_surface_vertex REF 280
asm_const_patch_xyz REF 256 asm_db_count_asm_in_group 908
asm_const_solid_2surface 2212 asm_db_count_asm_in_group ACU 124
asm_const_solid_2surface REF 263 asm_db_create_grid 1002
asm_const_solid_3surface 2214 asm_db_create_grid ACU 149
asm_const_solid_3surface REF 1191 asm_db_get_curve_geo 1003
asm_const_solid_3surface REF 264 asm_db_get_curve_geo ACU 155
asm_const_solid_4surface 2215 asm_db_get_grids_in_group 909
asm_const_solid_4surface REF 1192 asm_db_get_grids_in_group ACU 125
asm_const_solid_4surface REF 265 asm_db_get_hpats_in_group 910
asm_const_solid_5face 2203 asm_db_get_hpats_in_group ACU 125
asm_const_solid_5face REF 257 asm_db_get_lines_in_group 911
asm_const_solid_6face 2205 asm_db_get_lines_in_group ACU 126 Index
asm_const_solid_6face REF 258 asm_db_get_next_cord_label 1004
asm_const_solid_extrude 2207 asm_db_get_next_cord_label ACU 193
asm_const_solid_extrude REF 259 asm_db_get_next_cord_label ACU 563
asm_const_solid_glide 2208 asm_db_get_next_grid_label 1005
asm_const_solid_glide REF 1193 asm_db_get_next_grid_label ACU 152
asm_const_solid_glide REF 260 asm_db_get_next_grid_label ACU 556
Main Index
4 INDEX

asm_db_get_next_hpat_label 1007 asm_edit_patch_break REF 467


asm_db_get_next_hpat_label ACU 183 asm_edit_solid_blend 2427
asm_db_get_next_hpat_label ACU 560 asm_edit_solid_blend REF 455
asm_db_get_next_line_label 1008 asm_edit_surface_blend 2429
asm_db_get_next_line_label ACU 155 asm_edit_surface_blend REF 457
asm_db_get_next_line_label ACU 557 asm_sweep_hpat_arc 2369
asm_db_get_next_patch_label 1008 asm_sweep_hpat_arc REF 393
asm_db_get_next_patch_label ACU 170 asm_sweep_hpat_extrude 2371
asm_db_get_next_patch_label ACU 558 asm_sweep_hpat_extrude REF 1198
asm_db_get_patches_in_group 913 asm_sweep_hpat_extrude REF 394
asm_db_get_patches_in_group ACU 126 asm_sweep_hpat_glide 2373
asm_delete_coord 2477 asm_sweep_hpat_glide REF 1200
asm_delete_coord REF 501 asm_sweep_hpat_glide REF 396
asm_delete_curve 2478 asm_sweep_hpat_normal 2375
asm_delete_curve REF 502 asm_sweep_hpat_normal REF 397
asm_delete_grid 2479 asm_sweep_line_arc 2377
asm_delete_grid REF 503 asm_sweep_line_arc REF 399
asm_delete_hpat 2480 asm_sweep_line_involute 2378
asm_delete_hpat REF 504 asm_sweep_line_involute REF 400
asm_delete_line 2481 asm_sweep_patch_arc 2380
asm_delete_line REF 505 asm_sweep_patch_arc REF 402
asm_delete_patch 2482 asm_sweep_patch_extrude 2382
asm_delete_patch REF 506 asm_sweep_patch_extrude REF 403
asm_delete_plane 2483 asm_sweep_patch_glide 2383
asm_delete_plane REF 507 asm_sweep_patch_glide REF 1201
asm_delete_point 2484 asm_sweep_patch_glide REF 404
asm_delete_point REF 508 asm_sweep_patch_normal 2385
asm_delete_solid 2485 asm_sweep_patch_normal REF 405
asm_delete_solid REF 509 asm_transform_cord_rotate 2387
asm_delete_surface 2486 asm_transform_cord_rotate REF 407
asm_delete_surface REF 510 asm_transform_cord_translate 2388
asm_delete_vector 2487 asm_transform_cord_translate REF 1202
asm_delete_vector REF 511 asm_transform_cord_translate REF 409
asm_edit_curve_blend 2424 asm_transform_curve_vsum 2389
asm_edit_curve_blend REF 452 asm_transform_curve_vsum REF 411
asm_edit_curve_merge 2425 asm_transform_grid_mcord 2391
asm_edit_curve_merge REF 454 asm_transform_grid_mcord REF 412
asm_edit_hpat_blend 2431 asm_transform_grid_mirror 2392
asm_edit_hpat_blend REF 459 asm_transform_grid_mirror REF 413
asm_edit_hpat_break 2433 asm_transform_grid_mscale 2393
asm_edit_hpat_break REF 1196 asm_transform_grid_mscale REF 415
asm_edit_hpat_break REF 461 asm_transform_grid_mscale2 REF 1202
asm_edit_hpat_reverse 2435 asm_transform_grid_mscale2 REF 418
asm_edit_hpat_reverse REF 463 asm_transform_grid_pivot 2395
asm_edit_line_blend 2436 asm_transform_grid_pivot REF 420
Index asm_edit_line_blend REF 464 asm_transform_grid_position 2396
asm_edit_line_merge 2438 asm_transform_grid_position REF 421
asm_edit_line_merge REF 465 asm_transform_grid_rotate 2398
asm_edit_patch_blend 2439 asm_transform_grid_rotate REF 423
asm_edit_patch_blend REF 466 asm_transform_grid_scale 2399
asm_edit_patch_break 2441 asm_transform_grid_scale REF 425
asm_edit_patch_break REF 1197 asm_transform_grid_translate 2401
Main Index
INDEX 5

asm_transform_grid_translate REF 427 blcomputeprincaxespoints ACU 249


asm_transform_grid_vsum 2402 blgetalpha 1224
asm_transform_grid_vsum REF 429 blgetalpha ACU 250
asm_transform_line_mirror 2404 blgetbuttonicon 1225
asm_transform_line_mirror REF 430 blgetbuttonicon ACU 250
asm_transform_patch_mirror 2405 blgetcenters 1226
asm_transform_patch_mirror REF 432 blgetcenters ACU 250
asm_transform_solid_vsum 2419 blgetcentersarby REF 1291
asm_transform_solid_vsum REF 446 blgetcentersarby REF 725
asm_transform_surface_vsum 2420 blgetdimfieldid 1227
asm_transform_surface_vsum REF 448 blgetdimfieldid ACU 251
asm_u_coord_global_to_local 1009 blgetdimvalue 1228
asm_u_coord_global_to_local 843 blgetdimvalue ACU 251
asm_u_coord_global_to_local ACU 147 blgetlabelicon 1230
asm_u_coord_global_to_local ACU 95 blgetlabelicon ACU 251
asm_u_coord_local_to_global 1010 blgetlabels 1231
asm_u_coord_local_to_global ACU 189 blgetlabels ACU 252
asm_u_lp_get_entity_label 844 blgetnumdimension 1231
asm_u_lp_get_entity_label ACU 96 blgetnumdimension ACU 252
asm_u_lp_get_point 845 blgetnumplotpoints 1232
asm_u_lp_get_point ACU 96 blgetnumplotpoints ACU 252
asm_u_lp_get_vector 846 blgetnumplotpointsbyid 1233
asm_u_lp_get_vector ACU 96 blgetnumplotpointsbyid ACU 253
blgetnumtypeinfo 1235
blgetnumtypeinfo ACU 253
B blgetperim 1235
blgetperim ACU 253
bar_elem_color 3279
blgetperimarby REF 1291
bar_elem_color REF 1121
blgetperimarby REF 725
bar_elem_label 3280
blgetplotpoints 1236
bar_elem_label REF 1122
blgetplotpoints ACU 254
beam_section_create 2736
blgetplotpointsbyid 1238
beam_section_create REF 718
blgetplotpointsbyid ACU 254
beam_section_delete 2737
blgetplotpointsbyid2 1240
beam_section_delete REF 719
blgetplotpointsbyid2 ACU 255
beam_section_display 2738
blgetprop 1243
beam_section_display REF 720
blgetprop ACU 256
beam_section_modify 2740
blgetproparbyCheck REF 1291
beam_section_modify REF 722
blgetproparbyCheck REF 726
beam_section_report 2741
blgetproplabels 1244
beam_section_report REF 723
blgetproplabels ACU 257
bl_create_std_beam_section 1218
blgettypeinfo 1245
bl_create_std_beam_section ACU 248
blgettypeinfo ACU 257
bl_get_arb_beam_section_data REF 1290
blmodifybeamdimension 1246
bl_get_arb_beam_section_data REF 724
blmodifybeamdimension ACU 257
bl_get_arb_num_points_loops REF 1290
block_close PCL 64 Index
bl_get_arb_num_points_loops REF 724
block_get_name PCL 65
bl_get_std_beam_section_data 1219
block_open PCL 64
bl_get_std_beam_section_data ACU 248
block_read PCL 65
bl_modify_std_beam_section 1221
block_write PCL 65
bl_modify_std_beam_section ACU 249
body_color 3281
blcomputeprincaxespoints 1223
body_color REF 1123
Main Index
6 INDEX

body_label 3283 db_add_v_nod_res_by_type PCL 602


body_label REF 1123 db_assign_last_jobname 1502
db_assign_last_jobname ACU 378
db_associate_element_to_region PCL 494
C db_associate_geo_to_region 1247
db_associate_geo_to_region ACU 269
clip_plane_ar_calc 654
db_bulk_get_lbc_ds 1304
clip_plane_ar_calc ACU 87
db_bulk_get_lbc_ds ACU 294
clip_plane_zoom_calc 655
db_bulk_get_lbc_dv 1306
clip_plane_zoom_calc ACU 88
db_bulk_get_lbc_dv ACU 294
Contour REF 1011
db_bulk_get_lbc_ss 1308
count_orphan_elements 914
db_bulk_get_lbc_ss ACU 295
count_orphan_elements ACU 120
db_bulk_get_lbc_sv 1309
count_orphan_elements ACU 549
db_bulk_get_lbc_sv ACU 296
count_orphan_nodes 915
db_bulk_get_possible_cond_opts1 1370
count_orphan_nodes ACU 120
db_bulk_get_possible_cond_opts1 ACU 314
Cursor REF 1017
db_bulk_get_possible_cond_opts2 1371
curve_arc_to_parm 1011
db_bulk_get_possible_cond_opts2 ACU 314
curve_arc_to_parm ACU 159
db_bulk_get_possible_dof_sets 1372
curve_color 3285
db_bulk_get_possible_dof_sets ACU 315
curve_color REF 1124
db_bulk_get_possible_dof_sets1 1249
curve_label 3286
db_bulk_get_possible_dof_sets1 ACU 277
curve_label REF 1125
db_bulk_get_possible_dof_sets2 1250
curve_parm_to_arc 1012
db_bulk_get_possible_dof_sets2 ACU 275
curve_parm_to_arc ACU 160
db_bulk_get_possible_form_opts1 1251
db_bulk_get_possible_form_opts1 ACU 279
D db_bulk_get_possible_form_opts2 1252
db_bulk_get_possible_form_opts2 ACU 277
db_activate_load_case 1210 db_bulk_get_possible_geo_opts1 1253
db_activate_load_case ACU 242 db_bulk_get_possible_geo_opts1 ACU 278
db_add_general_field_func PCL 426 db_bulk_get_possible_lam_opts1 1254
db_add_lbc_c_and_t_for_ac PCL 407 db_bulk_get_possible_lam_opts1 ACU 278
db_add_lbc_defn_for_ac PCL 408 db_bulk_get_possible_lam_opts2 1255
db_add_lbc_to_load_case PCL 577 db_bulk_get_possible_lam_opts2 ACU 276
db_add_lbc_type_for_ac PCL 406 db_bulk_get_possible_matl_dirs 1256
db_add_mpc_to_group 917 db_bulk_get_possible_matl_dirs ACU 280
db_add_mpc_to_group ACU 121 db_bulk_get_possible_matl_lins 1258
db_add_mpc_to_group ACU 550 db_bulk_get_possible_matl_lins ACU 281
db_add_mpc_to_group PCL 590 db_bulk_get_selected_etops_mat 1259
db_add_pref 1672 db_bulk_get_selected_etops_mat ACU 279
db_add_pref ACU 434 db_check_coord_frame_exist 1014
db_add_s_elem_res_by_pos PCL 607 db_check_coord_frame_exist ACU 190
db_add_s_elem_res_by_type PCL 606 db_close_database PCL 450
db_add_s_nod_res_by_pos PCL 601 db_commit PCL 451
db_add_s_nod_res_by_type PCL 601 db_commit_raw PCL 451
Index db_add_t_elem_res_by_pos PCL 611 db_count_all_job_name_ids 1503
db_add_t_elem_res_by_type PCL 610 db_count_all_job_name_ids ACU 380
db_add_t_nod_res_by_pos PCL 605 db_count_anal_codes 1504
db_add_t_nod_res_by_type PCL 604 db_count_anal_codes ACU 368
db_add_v_elem_res_by_pos PCL 609 db_count_anal_types 1504
db_add_v_elem_res_by_type PCL 608 db_count_anal_types ACU 371
db_add_v_nod_res_by_pos PCL 603 db_count_analysis_steps 1505
Main Index
INDEX 7

db_count_analysis_steps ACU 386 db_count_load_cases ACU 243


db_count_appl_geo_region 1311 db_count_load_cases_with_lbc 1314
db_count_appl_geo_region ACU 296 db_count_load_cases_with_lbc ACU 298
db_count_client_labels_by_type 610 db_count_loads_for_element 1316
db_count_client_labels_by_type ACU 11 db_count_loads_for_element ACU 298
db_count_coordinate_frame 1015 db_count_materials 1373
db_count_coordinate_frame ACU 190 db_count_materials ACU 324
db_count_curve 1015 db_count_mpcs PCL 578
db_count_curve ACU 160 db_count_mpcs_in_group PCL 578
db_count_curves_for_point 1016 db_count_mpcs_in_group PCL 579
db_count_curves_for_point ACU 195 db_count_mpcs_using_node 1137
db_count_elem_topology_codes 1134 db_count_mpcs_using_node ACU 234
db_count_elem_topology_codes ACU 208 db_count_nodes PCL 445
db_count_elem_type 1261 db_count_nodes PCL 456
db_count_elem_type ACU 259 db_count_nodes_for_geometry 1138
db_count_elem_w_topology 1134 db_count_nodes_for_geometry ACU 209
db_count_elem_w_topology ACU 208 db_count_nodes_in_group PCL 456
db_count_elements_in_region PCL 492 db_count_nodes_in_mpc 1139
db_count_elements_in_region_exp 1262 db_count_nodes_in_mpc ACU 235
db_count_elements_in_region_exp ACU 271 db_count_options 1375
db_count_elems PCL 468 db_count_options ACU 321
db_count_elems_for_geo 1135 db_count_orphan_curves 921
db_count_elems_for_geo ACU 207 db_count_orphan_curves 922
db_count_elems_in_group PCL 468 db_count_orphan_curves ACU 122
db_count_elems_using_node 1136 db_count_orphan_mpcs 924
db_count_elems_using_node ACU 234 db_count_orphan_mpcs ACU 119
db_count_entities_in_group 918 db_count_orphan_points 925
db_count_entities_in_group ACU 116 db_count_orphan_points ACU 122
db_count_entities_in_group ACU 548 db_count_orphan_solids 926
db_count_etop_for_a_code 1263 db_count_orphan_solids ACU 123
db_count_etop_for_a_code ACU 259 db_count_orphan_surfaces 927
db_count_general_field 612 db_count_orphan_surfaces ACU 124
db_count_general_field ACU 11 db_count_param_set_entries 1508
db_count_general_field_func PCL 426 db_count_param_set_entries ACU 389
db_count_geo_in_region 1264 db_count_point 1017
db_count_geo_in_region ACU 270 db_count_point ACU 149
db_count_groups_for_entity 919 db_count_props PCL 480
db_count_groups_for_entity ACU 116 db_count_region_ids PCL 478
db_count_groups_using_mpc 920 db_count_result_types_for_elem 1624
db_count_groups_using_mpc ACU 118 db_count_result_types_for_elem ACU 416
db_count_job_name_list_entry 1506 db_count_result_types_for_elem ACU 598
db_count_job_name_list_entry ACU 377 db_count_solid 1018
db_count_job_names_for_a_code 1507 db_count_solid ACU 181
db_count_job_names_for_a_code ACU 374 db_count_solids_for_surface 1019
db_count_lbc 1312 db_count_solids_for_surface ACU 200
db_count_lbc ACU 297 db_count_steps_for_a_job 1509 Index
db_count_lbc_appl_region_entity 1313 db_count_steps_for_a_job ACU 386
db_count_lbc_appl_region_entity ACU 297 db_count_surface 1020
db_count_lbc_by_load_case PCL 529 db_count_surface ACU 170
db_count_lbc_in_group ACU 580 db_count_surfaces_for_edge 1020
db_count_lbc_types 1314 db_count_surfaces_for_edge ACU 198
db_count_lbc_types ACU 298 db_count_unref_nodes 1140
Main Index
8 INDEX

db_count_unref_nodes ACU 229 db_create_lbc_sv PCL 562


db_count_valid_dofs_f_mpc_type 1141 db_create_lbc_type_defn PCL 403
db_count_valid_dofs_f_mpc_type ACU 217 db_create_load_case PCL 534
db_count_valid_mpc_types 1141 db_create_material PCL 520
db_count_valid_mpc_types ACU 218 db_create_matl_category PCL 385
db_cr_const_models_specified PCL 522 db_create_matl_const_model PCL 522
db_create_allowable_matl_prop PCL 399 db_create_matl_dir PCL 355
db_create_allowable_phys_prop PCL 373 db_create_matl_lin PCL 355
db_create_analysis_code PCL 343 db_create_matl_prop_alias PCL 398
db_create_analysis_elements 1265 db_create_matl_prop_defn PCL 393
db_create_analysis_elements ACU 273 db_create_matl_prop_value PCL 521
db_create_analysis_step 1510 db_create_mpc_nodal PCL 588
db_create_analysis_step ACU 383 db_create_mpc_term PCL 589
db_create_analysis_type PCL 343 db_create_mpc_type_def PCL 435
db_create_anl_elm_summary 1267 db_create_mtl_allowable_magics 1376
db_create_anl_elm_summary ACU 271 db_create_mtl_allowable_magics ACU 320
db_create_app_region_defn PCL 404 db_create_mtl_allowable_magics PCL 392
db_create_bulk_lbc_app_region_n PCL 566 db_create_mtl_magics PCL 392
db_create_client_data 613 db_create_mtl_magics_defn PCL 389
db_create_client_data ACU 10 db_create_mtl_magics_options PCL 390
db_create_condense_opt PCL 357 db_create_nodal_lbc_var_defn PCL 406
db_create_constitutive_model PCL 387 db_create_node_list PCL 649
db_create_coord PCL 464 db_create_nodes PCL 462
db_create_degree_of_freedom PCL 352 db_create_param_set_entry 1517
db_create_dof_set PCL 353 db_create_param_set_entry ACU 388
db_create_elem_lbc_var_defn PCL 405 db_create_phys_prop_defn PCL 365
db_create_element_list PCL 649 db_create_phys_prop_region PCL 488
db_create_element_type PCL 362 db_create_phys_prop_set_defn 1268
db_create_elems PCL 476 db_create_phys_prop_set_defn ACU 266
db_create_fem_ds PCL 570 db_create_phys_prop_value PCL 490
db_create_fem_dv PCL 571 db_create_pp_set_defn_wnord PCL 375
db_create_fem_ss PCL 567 db_create_pset_matrix_entry 1519
db_create_fem_sv PCL 568 db_create_pset_matrix_entry ACU 392
db_create_field PCL 505 db_create_selected_etype 1269
db_create_field_lbc PCL 509 db_create_selected_etype ACU 258
db_create_field_res ACU 593 db_create_selected_etype_wc PCL 364
db_create_formulation_opt PCL 359 db_create_sub_case PCL 592
db_create_geometric_opt PCL 361 db_create_sub_mpc PCL 588
db_create_job_name 1512 db_create_valid_const_models PCL 388
db_create_job_name ACU 378 db_create_valid_mtl_categories PCL 386
db_create_job_name_for_a_code 1513 db_del_geo_assoc_to_region ACU 572
db_create_job_name_for_a_code ACU 373 db_delete_analysis_elements 1271
db_create_job_name_list 1514 db_delete_analysis_elements ACU 273
db_create_job_name_list ACU 376 db_delete_analysis_step_id 1521
db_create_job_name_list_entry 1515 db_delete_analysis_step_id ACU 387
Index db_create_job_name_list_entry ACU 376 db_delete_anl_elm_summary 1273
db_create_laminate_opt PCL 356 db_delete_anl_elm_summary ACU 272
db_create_lbc_app_region PCL 565 db_delete_client_data 615
db_create_lbc_fem_data PCL 573 db_delete_client_data ACU 16
db_create_lbc_fem_data_2reg PCL 575 db_delete_client_label ACU 484
db_create_lbc_input_data PCL 563 db_delete_field 1596
db_create_lbc_new PCL 560 db_delete_field ACU 409
Main Index
INDEX 9

db_delete_field_res 1597 db_get_all_coord_frame_ids ACU 564


db_delete_field_res ACU 410 db_get_all_dof_set_names 1277
db_delete_job_name 1523 db_get_all_dof_set_names ACU 259
db_delete_job_name ACU 383 db_get_all_elem_defn 1277
db_delete_job_name_list 1524 db_get_all_elem_defn ACU 274
db_delete_job_name_list ACU 378 db_get_all_fem_ds_by_id PCL 555
db_delete_lbc 1317 db_get_all_fem_dv_by_id PCL 556
db_delete_lbc ACU 299 db_get_all_fem_ss_by_id PCL 552
db_delete_lbc_defn 1318 db_get_all_fem_sv_by_id PCL 553
db_delete_lbc_defn ACU 299 db_get_all_field_names 1598
db_delete_load_case 1211 db_get_all_field_names ACU 402
db_delete_load_case ACU 242 db_get_all_field_names PCL 504
db_delete_load_case ACU 571 db_get_all_form_opt_code_names 1279
db_delete_material 1377 db_get_all_form_opt_code_names ACU 260
db_delete_material ACU 326 db_get_all_geo_opt_code_names 1279
db_delete_material_property 1378 db_get_all_geo_opt_code_names ACU 261
db_delete_material_property ACU 332 db_get_all_job_name_ids 1532
db_delete_matl_const_model 1380 db_get_all_job_name_ids ACU 380
db_delete_matl_const_model ACU 318 db_get_all_job_names 1533
db_delete_param_set_entries 1526 db_get_all_job_names ACU 381
db_delete_param_set_entries ACU 391 db_get_all_lam_opt_code_names 1280
db_delete_param_set_entry 1528 db_get_all_lam_opt_code_names 1384
db_delete_param_set_entry ACU 391 db_get_all_lam_opt_code_names ACU 262
db_delete_phys_prop_region 1274 db_get_all_lam_opt_code_names ACU 328
db_delete_phys_prop_region ACU 268 db_get_all_lbc_names 1321
db_drop_res_index PCL 591 db_get_all_lbc_names ACU 302
db_element PCL 650 db_get_all_lbc_names_by_type 1322
db_entity_counts PCL 651 db_get_all_lbc_names_by_type ACU 303
db_find_load_case_id 1212 db_get_all_lbc_type_defns 1323
db_find_load_case_id ACU 243 db_get_all_lbc_type_defns ACU 304
db_get_a_phys_prop_w_nord 1275 db_get_all_lbc_type_names 1325
db_get_a_phys_prop_w_nord ACU 265 db_get_all_lbc_type_names ACU 305
db_get_active_flag PCL 513 db_get_all_lbc_var_defns 1325
db_get_active_load_case PCL 528 db_get_all_lbc_var_defns ACU 306
db_get_all_allow_matl_prop_cnt 1381 db_get_all_lbc_var_defns ACU 582
db_get_all_allow_matl_prop_cnt ACU 329 db_get_all_lbcs ACU 580
db_get_all_allowable_matl_prop 1382 db_get_all_lbcs_in_group ACU 581
db_get_all_allowable_matl_prop ACU 330 db_get_all_lbcs_new 1326
db_get_all_anal_codes 1530 db_get_all_lbcs_new ACU 301
db_get_all_anal_codes ACU 368 db_get_all_lbcs_new ACU 580
db_get_all_anal_types 1531 db_get_all_load_case_names ACU 243
db_get_all_anal_types ACU 371 db_get_all_load_case_names PCL 528
db_get_all_appl_geo_regions 1319 db_get_all_load_cases ACU 244
db_get_all_appl_geo_regions ACU 299 db_get_all_material_names 1385
db_get_all_appl_reg_defns 1320 db_get_all_material_names ACU 325
db_get_all_appl_reg_defns ACU 300 db_get_all_mpc_term PCL 585 Index
db_get_all_client_data 616 db_get_all_node_ids_in_group PCL 457
db_get_all_client_data ACU 11 db_get_all_posted_coord 1023
db_get_all_cond_opt_code_names 1384 db_get_all_posted_coord ACU 192
db_get_all_cond_opt_code_names ACU 327 db_get_all_pp_ids_and_names 1281
db_get_all_coord_frame_ids 1021 db_get_all_pp_ids_and_names ACU 282
db_get_all_coord_frame_ids ACU 190 db_get_all_region_ids PCL 478
Main Index
10 INDEX

db_get_all_sub_mpc PCL 584 db_get_current_viewport_id 657


db_get_all_valid_dof_f_mpc_type 1142 db_get_current_viewport_id ACU 69
db_get_all_valid_dof_f_mpc_type ACU 219 db_get_curve_coo_and_type 1026
db_get_all_valid_mpc_type 1143 db_get_curve_coo_and_type ACU 161
db_get_all_valid_mpc_type ACU 219 db_get_curve_id 1027
db_get_allowable_matl_prop 1387 db_get_curve_id ACU 161
db_get_allowable_matl_prop ACU 329 db_get_curve_label 1028
db_get_allowable_matl_prop_cnt 1388 db_get_curve_label ACU 161
db_get_allowable_matl_prop_cnt ACU 330 db_get_curves_for_point 1028
db_get_allowable_phys_prop 1282 db_get_curves_for_point ACU 195
db_get_allowable_phys_prop ACU 267 db_get_db_version 625
db_get_anal_code_id 1533 db_get_db_version ACU 8
db_get_anal_code_id ACU 367 db_get_default_anal_code 1538
db_get_anal_code_id PCL 345 db_get_default_anal_code ACU 367
db_get_anal_code_name 1534 db_get_default_anal_code PCL 345
db_get_anal_code_name ACU 367 db_get_default_anal_type 1539
db_get_anal_type_id 1535 db_get_default_anal_type ACU 370
db_get_anal_type_id ACU 370 db_get_dep_nodes_in_sub_mpc 1144
db_get_anal_type_id ACU 589 db_get_dep_nodes_in_sub_mpc ACU 220
db_get_anal_type_name 1536 db_get_dof_id 1146
db_get_anal_type_name ACU 370 db_get_dof_id ACU 221
db_get_anal_type_name ACU 588 db_get_dof_name 1146
db_get_analysis_elements 1283 db_get_dof_name ACU 222
db_get_analysis_elements ACU 274 db_get_elem_config_ntl 1147
db_get_analysis_steps 1537 db_get_elem_config_ntl ACU 210
db_get_analysis_steps ACU 384 db_get_elem_dimens 1149
db_get_anl_elm_summary 1284 db_get_elem_dimens ACU 211
db_get_anl_elm_summary ACU 272 db_get_elem_etop PCL 470
db_get_at_for_ac 1538 db_get_elem_for_geo_type_and_id 1149
db_get_at_for_ac ACU 372 db_get_elem_for_geo_type_and_id ACU 212
db_get_client_data 618 db_get_elem_ids PCL 469
db_get_client_data ACU 12 db_get_elem_ids_in_group PCL 469
db_get_client_id_by_label 620 db_get_elem_nodes 1150
db_get_client_id_by_label ACU 13 db_get_elem_nodes ACU 236
db_get_client_label_by_id 621 db_get_elem_scalar_name 1625
db_get_client_label_by_id ACU 15 db_get_elem_scalar_name ACU 417
db_get_client_labels_by_type 623 db_get_elem_shape_for_id 1151
db_get_client_labels_by_type ACU 13 db_get_elem_shape_for_id ACU 212
db_get_comp_hal 1389 db_get_elem_top_def PCL 471
db_get_comp_hal ACU 333 db_get_elem_top_name 1152
db_get_comp_lam_ids_by_id PCL 524 db_get_elem_top_name ACU 213
db_get_comp_sfc 1391 db_get_elem_topology_codes 1153
db_get_comp_sfc ACU 333 db_get_elem_topology_codes ACU 213
db_get_constitutive_model 1394 db_get_elem_topology_data PCL 467
db_get_constitutive_model ACU 316 db_get_elem_topos_for_geom 1153
Index db_get_coord PCL 463 db_get_elem_topos_for_geom ACU 213
db_get_coord_frame_label 1024 db_get_elem_use_all_node PCL 474
db_get_coord_frame_label ACU 194 db_get_elem_verification_parms 1154
db_get_current_coord 1025 db_get_elem_verification_parms ACU 214
db_get_current_coord ACU 194 db_get_elements_in_region PCL 493
db_get_current_coord ACU 565 db_get_elements_in_region_exp 1286
db_get_current_group_id PCL 454 db_get_elements_in_region_exp ACU 264
Main Index
INDEX 11

db_get_elems 1155 db_get_id_given_step_name ACU 386


db_get_elems ACU 209 db_get_indep_nodes_in_sub_mpc 1159
db_get_elems_by_lbc 1156 db_get_indep_nodes_in_sub_mpc ACU 215
db_get_elems_by_lbc ACU 210 db_get_job_info 1545
db_get_elems_by_lbc ACU 568 db_get_job_info ACU 365
db_get_elems_using_nodes 1157 db_get_job_name_given_id 1546
db_get_elems_using_nodes ACU 235 db_get_job_name_given_id ACU 379
db_get_etop_for_a_code 1158 db_get_jobname_list_entries 1547
db_get_etop_for_a_code 1287 db_get_jobname_list_entries ACU 377
db_get_etop_for_a_code ACU 214 db_get_jobnames_for_a_code 1549
db_get_etop_for_a_code ACU 265 db_get_jobnames_for_a_code ACU 374
db_get_field PCL 499 db_get_last_jobname 1550
db_get_field_attrs 1599 db_get_last_jobname ACU 379
db_get_field_attrs ACU 403 db_get_lbc PCL 536
db_get_field_dfem 1600 db_get_lbc_defn PCL 545
db_get_field_dfem ACU 413 db_get_lbc_fem_count PCL 547
db_get_field_dfem ACU 594 db_get_lbc_fem_data PCL 558
db_get_field_function PCL 503 db_get_lbc_id 1328
db_get_field_id 1602 db_get_lbc_id ACU 307
db_get_field_id ACU 403 db_get_lbc_id_for_type PCL 538
db_get_field_id PCL 504 db_get_lbc_name 1329
db_get_field_lbc 1602 db_get_lbc_name ACU 307
db_get_field_lbc ACU 411 db_get_lbc_new PCL 541
db_get_field_lbc ACU 596 db_get_lbc_type_defn 1330
db_get_field_lbc_type 1604 db_get_lbc_type_defn ACU 308
db_get_field_lbc_type ACU 412 db_get_lbc_type_defn ACU 583
db_get_field_name PCL 498 db_get_lbc_type_defn_by_id PCL 543
db_get_field_table PCL 502 db_get_lbc_var_defn 1332
db_get_general_field 625 db_get_lbc_var_defn ACU 309
db_get_general_field ACU 8 db_get_lbc_var_defn ACU 584
db_get_general_field_func PCL 427 db_get_lbc_var_value PCL 539
db_get_general_field_length 627 db_get_lc_id_given_job_seq 1213
db_get_general_field_length ACU 9 db_get_lc_id_given_job_seq ACU 245
db_get_geo_in_region 1288 db_get_load_case PCL 530
db_get_geo_in_region ACU 270 db_get_load_case_id 2813
db_get_geom_type 1030 db_get_load_case_id REF 1299
db_get_geom_type ACU 144 db_get_load_case_id REF 834
db_get_group_id PCL 455 db_get_load_case_title 2812
db_get_group_name 928 db_get_load_case_title REF 1299
db_get_group_name ACU 116 db_get_load_case_title REF 834
db_get_group_name PCL 455 db_get_load_case2 PCL 532
db_get_groups_for_entity 929 db_get_load_cases_with_lbc 1333
db_get_groups_for_entity ACU 117 db_get_load_cases_with_lbc ACU 310
db_get_groups_using_mpc 930 db_get_loads_for_element 1335
db_get_groups_using_mpc ACU 118 db_get_loads_for_element ACU 309
db_get_id_given_job_name 1539 db_get_material PCL 511 Index
db_get_id_given_job_name ACU 381 db_get_material_id_from_name 1395
db_get_id_given_job_name_code 1541 db_get_material_id_from_name ACU 324
db_get_id_given_job_name_code ACU 382 db_get_material_name_from_id 1396
db_get_id_given_load_case_name 1542 db_get_material_name_from_id ACU 324
db_get_id_given_load_case_name ACU 382 db_get_matl_category 1397
db_get_id_given_step_name 1543 db_get_matl_category ACU 318
Main Index
12 INDEX

db_get_matl_const_model PCL 512 db_get_mpc_type_name ACU 222


db_get_matl_const_model_count PCL 512 db_get_mpcs_in_group PCL 580
db_get_matl_prop_alias 1399 db_get_mtl_allowable_magic_cnt 1402
db_get_matl_prop_alias ACU 331 db_get_mtl_allowable_magic_cnt ACU 320
db_get_matl_prop_defn 1400 db_get_mtl_allowable_magics 1403
db_get_matl_prop_defn ACU 331 db_get_mtl_allowable_magics ACU 321
db_get_matl_prop_value PCL 514 db_get_mtl_magics 1404
db_get_matl_prop_value_count PCL 514 db_get_mtl_magics ACU 322
db_get_matl_prop_value2 PCL 515 db_get_mtl_magics_count 1406
db_get_max_coord_label 1031 db_get_mtl_magics_count ACU 322
db_get_max_coord_label ACU 191 db_get_mtl_magics_defn 1407
db_get_max_curve_label 1031 db_get_mtl_magics_defn ACU 323
db_get_max_curve_label ACU 162 db_get_mtl_magics_options 1408
db_get_max_elem_id 1160 db_get_mtl_magics_options ACU 323
db_get_max_elem_id ACU 204 db_get_next_anal_code 1551
db_get_max_field ACU 407 db_get_next_anal_code ACU 369
db_get_max_field_id 1605 db_get_next_anal_type 1552
db_get_max_mpc PCL 587 db_get_next_anal_type ACU 372
db_get_max_node_id 1161 db_get_next_appl_geo_region 1336
db_get_max_node_id ACU 227 db_get_next_appl_geo_region ACU 300
db_get_max_physical_property PCL 489 db_get_next_appl_reg_defn 1337
db_get_max_point_label 1032 db_get_next_appl_reg_defn ACU 301
db_get_max_point_label ACU 150 db_get_next_client_entity_label 630
db_get_max_solid_label 1033 db_get_next_client_entity_label ACU 15
db_get_max_solid_label ACU 181 db_get_next_cond_opt_code_names 1410
db_get_max_surface_label 1034 db_get_next_cond_opt_code_names ACU 327
db_get_max_surface_label ACU 170 db_get_next_coord_frame_ids 1038
db_get_maximum_id PCL 653 db_get_next_coord_frame_ids ACU 191
db_get_mesh_params 1162 db_get_next_dof_set_names 1290
db_get_mesh_params ACU 232 db_get_next_dof_set_names ACU 260
db_get_min_coord_label 1034 db_get_next_elem_defn 1291
db_get_min_coord_label ACU 192 db_get_next_elem_defn ACU 275
db_get_min_curve_label 1035 db_get_next_elem_id 1166
db_get_min_curve_label ACU 162 db_get_next_elem_id ACU 204
db_get_min_elem_id 1163 db_get_next_fem_ds_by_id PCL 555
db_get_min_elem_id ACU 204 db_get_next_fem_dv_by_id PCL 557
db_get_min_node_id 1163 db_get_next_fem_ss_by_id PCL 552
db_get_min_node_id ACU 227 db_get_next_fem_sv_by_id PCL 554
db_get_min_point_label 1036 db_get_next_field_name 1606
db_get_min_point_label ACU 150 db_get_next_field_name ACU 402
db_get_min_solid_label 1037 db_get_next_field_name PCL 504
db_get_min_solid_label ACU 181 db_get_next_form_opt_code_names 1292
db_get_min_surface_label 1037 db_get_next_form_opt_code_names ACU 261
db_get_min_surface_label ACU 171 db_get_next_geo_opt_code_names 1292
db_get_model_file_suffix 629 db_get_next_geo_opt_code_names ACU 262
Index db_get_model_file_suffix ACU 9 db_get_next_id PCL 654
db_get_mpc PCL 580 db_get_next_job_name 1553
db_get_mpc_ids PCL 579 db_get_next_job_name ACU 381
db_get_mpc_type_def PCL 582 db_get_next_lam_opt_code_names 1293
db_get_mpc_type_id 1164 db_get_next_lam_opt_code_names 1410
db_get_mpc_type_id ACU 222 db_get_next_lam_opt_code_names ACU 263
db_get_mpc_type_name 1165 db_get_next_lam_opt_code_names ACU 328
Main Index
INDEX 13

db_get_next_lam_opt_code_names ACU 572 db_get_orphan_curves ACU 551


db_get_next_lbc ACU 581 db_get_orphan_mpcs 932
db_get_next_lbc_name 1338 db_get_orphan_mpcs ACU 119
db_get_next_lbc_name ACU 302 db_get_orphan_mpcs ACU 549
db_get_next_lbc_name_by_type 1339 db_get_orphan_points 933
db_get_next_lbc_name_by_type ACU 303 db_get_orphan_points ACU 123
db_get_next_lbc_type_defn 1340 db_get_orphan_points ACU 551
db_get_next_lbc_type_defn ACU 304 db_get_orphan_solids 934
db_get_next_lbc_type_name 1342 db_get_orphan_solids ACU 123
db_get_next_lbc_type_name ACU 306 db_get_orphan_solids ACU 552
db_get_next_lbc_var_defn 1343 db_get_orphan_surfaces 935
db_get_next_lbc_var_defn ACU 306 db_get_orphan_surfaces ACU 124
db_get_next_lbcs_new 1344 db_get_orphan_surfaces ACU 552
db_get_next_lbcs_new ACU 301 db_get_p3_version 604
db_get_next_lbcs_new ACU 581 db_get_p3_version ACU 3
db_get_next_load_case ACU 244 db_get_param_set_ent_pcl 1554
db_get_next_load_case_name PCL 529 db_get_param_set_ent_pcl ACU 390
db_get_next_material_name 1411 db_get_param_set_entries 1555
db_get_next_material_name ACU 325 db_get_param_set_entries ACU 390
db_get_next_mpc_id 1166 db_get_param_set_entry 1557
db_get_next_mpc_id ACU 216 db_get_param_set_entry ACU 389
db_get_next_mpc_term PCL 585 db_get_phys_prop_set_defn 1295
db_get_next_node_id 1167 db_get_phys_prop_set_defn ACU 266
db_get_next_node_id ACU 227 db_get_point_association_count 1041
db_get_next_posted_coord 1039 db_get_point_association_count ACU 150
db_get_next_posted_coord ACU 193 db_get_point_coo_and_type 1042
db_get_next_pp_ids_and_names 1294 db_get_point_coo_and_type ACU 151
db_get_next_pp_ids_and_names ACU 282 db_get_point_id 1043
db_get_next_sub_mpc PCL 584 db_get_point_id ACU 151
db_get_next_valid_mpc_type 1168 db_get_point_label 1043
db_get_next_valid_mpc_type ACU 220 db_get_point_label ACU 151
db_get_nodal_association 1169 db_get_pref 1673
db_get_nodal_association ACU 225 db_get_pref ACU 434
db_get_node 1170 db_get_primary_res_id 2817
db_get_node ACU 225 db_get_primary_res_id REF 1300
db_get_node ACU 568 db_get_primary_res_id REF 836
db_get_node_ass_elem PCL 459 db_get_primary_res_label 2816
db_get_node_ass_geo PCL 460 db_get_primary_res_label REF 1300
db_get_node_ass_mpc PCL 461 db_get_primary_res_label REF 836
db_get_node_ids PCL 457 db_get_prop_value PCL 481
db_get_nodes PCL 458 db_get_props_by_region PCL 480
db_get_nodes_by_lbc 1170 db_get_pset_matrix_entry 1559
db_get_nodes_by_lbc ACU 226 db_get_pset_matrix_entry ACU 392
db_get_nodes_for_elems PCL 475 db_get_pset_matrix_entry ACU 590
db_get_nodes_for_geometry 1171 db_get_pset_matrix_size 1561
db_get_nodes_for_geometry ACU 226 db_get_pset_matrix_size ACU 393 Index
db_get_nodes_in_mpc 1172 db_get_region_definition PCL 479
db_get_nodes_in_mpc ACU 236 db_get_region_for_elements PCL 492
db_get_nxt_valid_dof_f_mpc_type 1173 db_get_region_for_geometry 1296
db_get_nxt_valid_dof_f_mpc_type ACU 219 db_get_region_for_geometry ACU 263
db_get_orphan_curves 931 db_get_region_ids_and_names 1297
db_get_orphan_curves ACU 122 db_get_region_ids_and_names ACU 264
Main Index
14 INDEX

db_get_results_file_suffix 1627 db_get_valid_mtl_category_cnt 1416


db_get_results_file_suffix ACU 416 db_get_valid_mtl_category_cnt ACU 319
db_get_secondary_res_id 2819 db_grid PCL 654
db_get_secondary_res_id REF 837 db_hyperpatch PCL 654
db_get_secondary_res_label 2818 db_import_database PCL 656
db_get_secondary_res_label REF 837 db_import_database_V2 PCL 657
db_get_selected_prop_set 1298 db_import_database_V3 PCL 658
db_get_selected_prop_set ACU 268 db_is_open PCL 452
db_get_solid_coo_and_type 1044 db_line PCL 660
db_get_solid_coo_and_type ACU 182 db_mo_const_models_specified 1417
db_get_solid_id 1045 db_mo_const_models_specified ACU 317
db_get_solid_id ACU 182 db_modify_field 1608
db_get_solid_label 1046 db_modify_field ACU 408
db_get_solid_label ACU 182 db_modify_field ACU 591
db_get_solids_for_surface 1047 db_modify_field_name PCL 510
db_get_solids_for_surface ACU 200 db_modify_lbc_name PCL 577
db_get_solids_for_surface ACU 567 db_modify_load_case 1349
db_get_step_info 1562 db_modify_load_case ACU 312
db_get_step_info ACU 385 db_modify_material 1419
db_get_steps_for_a_job 1564 db_modify_material ACU 326
db_get_steps_for_a_job ACU 384 db_modify_material_name PCL 527
db_get_sub_case_id 2815 db_modify_matl_prop_value 1421
db_get_sub_case_id REF 1301 db_modify_matl_prop_value ACU 332
db_get_sub_case_id REF 835 db_modify_phys_prop_region_name PCL 491
db_get_sub_case_title 2814 db_mpc PCL 660
db_get_sub_case_title REF 1301 db_mpc_exist PCL 587
db_get_sub_case_title REF 835 db_name_get PCL 452
db_get_surface_coo_and_type 1048 db_node PCL 661
db_get_surface_coo_and_type ACU 171 db_open_database PCL 450
db_get_surface_id 1049 db_patch PCL 661
db_get_surface_id ACU 171 db_post_coord PCL 465
db_get_surface_label 1050 db_post_results_load PCL 611
db_get_surface_label ACU 172 db_reset_client_info ACU 484
db_get_surfaces_for_edge 1051 db_set_at_for_ac 1565
db_get_surfaces_for_edge ACU 198 db_set_at_for_ac ACU 373
db_get_surfaces_for_edge ACU 566 db_set_comp_lam 1299
db_get_unreferenced_node_ids 1175 db_set_comp_lam ACU 283
db_get_unreferenced_node_ids ACU 230 db_set_comp_lam_by_id PCL 525
db_get_valid_cat_by_type 1345 db_set_default_anal_code 1566
db_get_valid_cat_by_type ACU 310 db_set_default_anal_code ACU 366
db_get_valid_const_models 1413 db_set_default_anal_type 1567
db_get_valid_const_models ACU 317 db_set_default_anal_type ACU 369
db_get_valid_const_models_count 1414 db_set_elem_verification_parms PCL 438
db_get_valid_const_models_count ACU 316 db_set_model_file_suffix 1568
db_get_valid_eldim_by_type_cat 1346 db_set_model_file_suffix ACU 365
Index db_get_valid_eldim_by_type_cat ACU 311 db_set_pref 1569
db_get_valid_lbc_var_ids 1348 db_set_pref ACU 364
db_get_valid_lbc_var_ids ACU 311 db_set_results_file_suffix 1570
db_get_valid_mpc_ids_in_group 1175 db_set_results_file_suffix ACU 366
db_get_valid_mpc_ids_in_group ACU 223 db_start_transaction_raw PCL 452
db_get_valid_mtl_categories 1415 db_undo PCL 451
db_get_valid_mtl_categories ACU 319 db_update_analysis_step 1571
Main Index
INDEX 15

db_update_analysis_step ACU 387 em_proceed_quick PCL 118


db_update_elem_ids 1176 em_synchronize PCL 118
db_update_elem_ids ACU 207 end_vrml_animation 657
db_update_elem_types 1178 end_vrml_animation ACU 79
db_update_elem_types ACU 208 engin_cons_to_elastic_matrix 1422
db_update_jobname_for_a_code 1573 engin_cons_to_elastic_matrix ACU 335
db_update_jobname_for_a_code ACU 375 ep_get_app_reg_str PCL 483
db_update_mesh_params REF 1226 ep_word_val_at_el_cen PCL 484
db_update_mesh_params REF 523 ep_word_val_at_el_cen_by_reg PCL 486
db_validate_mpc 1179
db_validate_mpc ACU 218
db_verify_nodes_exist 1180
db_verify_nodes_exist ACU 229
F
fem_create_elems REF 1227
dbi_query_database PCL 662
fem_create_elems_1 2492
DbNameGet PCL 453
fem_create_elems_1 REF 517
dbt_assoc_global_variables PCL 594
fem_create_freemesh_surface REF 1228
dbt_create_elem_positions PCL 597
fem_create_mesh_2curve REF 1229
dbt_create_global_variables PCL 593
fem_create_mesh_2curve_1 2498
dbt_create_layers PCL 600
fem_create_mesh_2curve_1 REF 524
dbt_create_res_types PCL 595
fem_create_mesh_curv_1 2500
dbt_create_res_types PCL 596
fem_create_mesh_curv_1 REF 1230
dbt_create_sect_pos PCL 599
fem_create_mesh_curv_1 REF 526
Deformation REF 1014
fem_create_mesh_sol REF 1231
del_2n_edge_for_all_elm REF 1226
fem_create_mesh_sol_3 1181
del_2n_edge_for_all_elm REF 645
fem_create_mesh_sol_3 2502
display_deformations 3287
fem_create_mesh_sol_3 ACU 231
display_deformations REF 1125
fem_create_mesh_sol_3 REF 527
display_deformations REF 1371
fem_create_mesh_surf REF 1232
display_fa_vectors 3288
fem_create_mesh_surf_2 REF 1233
display_fa_vectors REF 1126
fem_create_mesh_surf_3 2504
display_fa_vectors REF 1371
fem_create_mesh_surf_3 REF 529
display_result_vectors 3289
fem_create_mpc_cyclic_symmetry REF 519
display_result_vectors REF 1126
fem_create_mpc_nodal 2494
display_result_vectors REF 1372
fem_create_mpc_nodal REF 1234
fem_create_mpc_nodal REF 520
E fem_create_mpc_nodal2 REF 1235
fem_create_mpc_nodal2 REF 521
Element REF 1016 fem_create_mpc_sliding_surface 2496
elementprops_compress REF 708 fem_create_mpc_sliding_surface REF 522
elementprops_create 2726 fem_create_nodes REF 1236
elementprops_create REF 706 fem_create_nodes_1 2491
elementprops_def_create.make_elem_summary fem_create_nodes_1 REF 516
PCL 365 fem_create_surface_mesh_control 2506
elementprops_delete 2729 fem_create_surface_mesh_control REF 1236
elementprops_delete REF 709 fem_create_surface_mesh_control REF 531
Index
elementprops_modify 2731 fem_delete_elem_and_node 2691
elementprops_modify REF 710 fem_delete_elem_and_node REF 674
elementprops_show 2734 fem_delete_element 2693
elementprops_show REF 1294 fem_delete_element REF 675
elementprops_show REF 712 fem_delete_free_node 2695
em_proceed_normal PCL 118 fem_delete_free_node REF 676
Main Index
16 INDEX

fem_delete_mesh_from_curve 2697 fem_get_mpc_assoc_nodes 1185


fem_delete_mesh_from_curve REF 677 fem_get_mpc_assoc_nodes ACU 216
fem_delete_mesh_from_solid 2700 fem_get_mpc_ids 1186
fem_delete_mesh_from_solid REF 679 fem_get_mpc_ids ACU 217
fem_delete_mesh_from_surface 2698 fem_get_node_assoc_groups 1187
fem_delete_mesh_from_surface REF 678 fem_get_node_assoc_groups ACU 228
fem_delete_mesh_seeds_from_edge REF 1237 fem_get_node_ids 1188
fem_disassoc_geo 2562 fem_get_node_ids ACU 228
fem_disassoc_geo REF 1237 fem_get_node_ids ACU 569
fem_disassoc_geo REF 576 fem_get_patran25_etop PCL 466
fem_disassoc_ids 2563 fem_mod_bar_split 2682
fem_disassoc_ids REF 1237 fem_mod_bar_split REF 1240
fem_disassoc_ids REF 576 fem_mod_bar_split REF 656
fem_equiv_all_group 2565 fem_mod_elem_reverse 2669
fem_equiv_all_group REF 577 fem_mod_elem_reverse REF 1241
fem_equiv_all_group2 2567 fem_mod_elem_reverse REF 646
fem_equiv_all_group2 REF 578 fem_mod_elem_separate 2671
fem_equiv_all_group3 2569 fem_mod_elem_separate REF 1242
fem_equiv_all_group3 REF 580 fem_mod_elem_separate REF 647
fem_equiv_list 2571 fem_mod_quad_split 2686
fem_equiv_list REF 581 fem_mod_quad_split REF 1244
fem_equiv_list_display.plot 2577 fem_mod_quad_split REF 659
fem_equiv_list_display.plot REF 584 fem_mod_quad_split_nm 2673
fem_equiv_list2 2573 fem_mod_quad_split_nm REF 1246
fem_equiv_list2 REF 582 fem_mod_quad_split_nm REF 648
fem_equiv_list3 2575 fem_mod_tria_split 2684
fem_equiv_list3 REF 583 fem_mod_tria_split REF 1248
fem_equiv_preview 2579 fem_mod_tria_split REF 657
fem_equiv_preview REF 1238 fem_modify_elems 2679
fem_equiv_preview REF 585 fem_modify_elems REF 1249
fem_geom_edge_length 2703 fem_modify_elems REF 652
fem_geom_edge_length REF 681 fem_modify_mpc_nodal 2681
fem_geom_edge_length2 2704 fem_modify_mpc_nodal REF 1251
fem_geom_edge_length2 REF 1238 fem_modify_mpc_nodal REF 654
fem_geom_edge_length2 REF 682 fem_modify_mpc_nodal2 REF 1252
fem_geom_elem_location 2709 fem_modify_mpc_nodal2 REF 655
fem_geom_elem_location REF 685 fem_modify_nodes 2675
fem_geom_elem_volume 2707 fem_modify_nodes REF 1253
fem_geom_elem_volume REF 684 fem_modify_nodes REF 650
fem_geom_face_area 2706 fem_modify_nodes_offset 2677
fem_geom_face_area REF 683 fem_modify_nodes_offset REF 651
fem_geom_match_closest 2702 fem_optimize 2582
fem_geom_match_closest REF 680 fem_optimize REF 1255
fem_get_elem_assoc_groups 1182 fem_optimize REF 587
fem_get_elem_assoc_groups ACU 205 fem_prj_nod_cplane 2512
Index fem_get_elem_ids 1183 fem_prj_nod_cplane REF 534
fem_get_elem_ids ACU 205 fem_prj_nod_curve_norm 2511
fem_get_mesh_edge_def_data 2710 fem_prj_nod_curve_norm REF 534
fem_get_mesh_edge_def_data REF 1239 fem_prj_nod_surf_norm 2508
fem_get_mesh_edge_def_data REF 686 fem_prj_nod_surf_norm REF 532
fem_get_mpc_assoc_groups 1184 fem_prj_nod_surf_vect 2509
fem_get_mpc_assoc_groups ACU 223 fem_prj_nod_surf_vect REF 533
Main Index
INDEX 17

fem_renum_elem REF 1256 fem_translate_nodes_1 2529


fem_renum_elem_1 2559 fem_translate_nodes_1 REF 547
fem_renum_elem_1 REF 574 fem_u_count_id_list PCL 221
fem_renum_node REF 1257 fem_u_extract_node_ids PCL 222
fem_renum_node_1 2560 fem_u_get_free_edges 1190
fem_renum_node_1 REF 575 fem_u_get_free_edges ACU 206
fem_seed_display_dir_arrows 1189 fem_u_get_free_faces 1192
fem_seed_display_dir_arrows ACU 231 fem_u_get_free_faces ACU 206
fem_seed_display_dir_arrows ACU 570 fem_u_get_id_list PCL 224
fem_sweep_arc REF 1258 fem_u_get_subid_list PCL 226
fem_sweep_arc_1 2533 fem_verify_display 2584
fem_sweep_arc_1 REF 550 fem_verify_display REF 589
fem_sweep_cylinder_radial REF 1260 fem_verify_display.plot 2588
fem_sweep_cylinder_radial_1 2535 fem_verify_display.plot REF 591
fem_sweep_cylinder_radial_1 REF 552 fem_verify_draw_normal_vectors 2590
fem_sweep_extrude REF 1262 fem_verify_draw_normal_vectors REF 592
fem_sweep_extrude_1 2538 fem_verify_el_ids 2591
fem_sweep_extrude_1 REF 554 fem_verify_el_ids REF 593
fem_sweep_glide REF 1264 fem_verify_elem_conect 2593
fem_sweep_glide_1 2540 fem_verify_elem_conect REF 594
fem_sweep_glide_1 REF 556 fem_verify_elem_jacobratio 2594
fem_sweep_glide_guide REF 1266 fem_verify_elem_jacobratio REF 595
fem_sweep_glide_guide_1 2543 fem_verify_elem_jacobzero 2596
fem_sweep_glide_guide_1 REF 559 fem_verify_elem_jacobzero REF 596
fem_sweep_loft REF 1269 fem_verify_element_duplicates 2598
fem_sweep_loft_1 2546 fem_verify_element_duplicates REF 597
fem_sweep_loft_1 REF 562 fem_verify_element_normals 2600
fem_sweep_normal REF 1271 fem_verify_element_normals REF 598
fem_sweep_normal_1 2549 fem_verify_get_graphset 2602
fem_sweep_normal_1 REF 564 fem_verify_get_graphset REF 1285
fem_sweep_sphere_angle REF 1273 fem_verify_get_graphset REF 599
fem_sweep_sphere_angle_1 2551 fem_verify_hex_all 2604
fem_sweep_sphere_angle_1 REF 566 fem_verify_hex_all REF 600
fem_sweep_sphere_radial REF 1275 fem_verify_hex_aspect 2606
fem_sweep_sphere_radial_1 2554 fem_verify_hex_aspect REF 602
fem_sweep_sphere_radial_1 REF 568 fem_verify_hex_edangle 2608
fem_sweep_vector_field REF 1277 fem_verify_hex_edangle REF 603
fem_sweep_vector_field_1 2556 fem_verify_hex_fskew 2610
fem_sweep_vector_field_1 REF 570 fem_verify_hex_fskew REF 604
fem_transform_elems_mirror REF 1279 fem_verify_hex_ftaper 2612
fem_transform_elems_mirror_1 2524 fem_verify_hex_ftaper REF 605
fem_transform_elems_mirror_1 REF 543 fem_verify_hex_fwarp 2614
fem_transform_elems_rotate REF 1280 fem_verify_hex_fwarp REF 606
fem_transform_elems_rotate_1 2526 fem_verify_hex_twist 2616
fem_transform_elems_rotate_1 REF 544 fem_verify_hex_twist REF 607
fem_transform_nodes_rotate REF 1281 fem_verify_ids_display 2586 Index
fem_transform_nodes_rotate_1 2528 fem_verify_ids_display REF 1285
fem_transform_nodes_rotate_1 REF 546 fem_verify_ids_display REF 590
fem_translate_elems REF 1282 fem_verify_midnode_normoff 2618
fem_translate_elems_1 2531 fem_verify_midnode_normoff REF 608
fem_translate_elems_1 REF 548 fem_verify_midnode_tanoff 2620
fem_translate_nodes REF 1284 fem_verify_midnode_tanoff REF 609
Main Index
18 INDEX

fem_verify_node_ids 2622 fields_create_fem REF 758


fem_verify_node_ids REF 610 fields_create_general 2763
fem_verify_quad_all 2624 fields_create_general REF 755
fem_verify_quad_all REF 611 fields_create_general_term 1613
fem_verify_quad_aspect 2626 fields_create_general_term 2764
fem_verify_quad_aspect REF 613 fields_create_general_term ACU 404
fem_verify_quad_skew 2628 fields_create_general_term REF 757
fem_verify_quad_skew REF 615 fields_create_lbc 2767
fem_verify_quad_taper 2630 fields_create_lbc REF 760
fem_verify_quad_taper REF 617 fields_delete 2769
fem_verify_quad_warp 2632 fields_delete REF 761
fem_verify_quad_warp REF 619 fields_genrl_inp_data.form_up PCL 429
fem_verify_reset_graphics 2634 fields_genrl_inp_data.get_data PCL 431
fem_verify_reset_graphics REF 621 fields_genrl_inp_data.pass_ind_var_ids
fem_verify_tet_all 2636 PCL 430
fem_verify_tet_all REF 622 fields_genrl_inp_data.write_term_data PCL 430
fem_verify_tet_aspect 2638 fields_modify 2770
fem_verify_tet_aspect REF 624 fields_modify REF 762
fem_verify_tet_collapse 2640 fields_modify_fem 2774
fem_verify_tet_collapse REF 625 fields_modify_fem REF 767
fem_verify_tet_edangle 2642 fields_modify_lbc 2772
fem_verify_tet_edangle REF 626 fields_modify_lbc REF 765
fem_verify_tet_fskew 2644 fields_show 2776
fem_verify_tet_fskew REF 627 fields_show REF 769
fem_verify_tria_all 2646 fields_show_lbc 2777
fem_verify_tria_all REF 628 fields_show_lbc REF 771
fem_verify_tria_aspect 2648 file_add_path PCL 66
fem_verify_tria_aspect REF 629 file_append_version PCL 67
fem_verify_tria_skew 2650 file_build_fname PCL 67
fem_verify_tria_skew REF 630 file_copy PCL 75
fem_verify_wedge_all 2652 file_create_directory PCL 68
fem_verify_wedge_all REF 631 file_delete PCL 68
fem_verify_wedge_aspect 2654 file_delete_path PCL 68
fem_verify_wedge_aspect REF 633 file_executable PCL 69
fem_verify_wedge_edangle 2656 file_exists PCL 69
fem_verify_wedge_edangle REF 635 file_exists_local PCL 69
fem_verify_wedge_fskew 2658 file_exists_version PCL 70
fem_verify_wedge_fskew REF 637 file_expand_home PCL 70
fem_verify_wedge_ftaper 2660 file_get_bfname PCL 70
fem_verify_wedge_ftaper REF 639 file_get_dfname PCL 71
fem_verify_wedge_fwarp 2662 file_get_efname PCL 71
fem_verify_wedge_fwarp REF 641 file_get_filespec PCL 71
fem_verify_wedge_twist 2664 file_get_next_path PCL 72
fem_verify_wedge_twist REF 643 file_get_p3_home PCL 72
field_create_field_lbc 1611 file_init_path PCL 72
Index field_create_field_lbc ACU 410 file_is_directory 634
field_create_field_lbc ACU 595 file_is_directory ACU 18
field_fem_const_eval 1614 file_list_end PCL 73
field_fem_const_eval ACU 412 file_list_next PCL 73
fields_create 2761 file_list_start PCL 74
fields_create REF 752 file_query_remote PCL 75
fields_create_fem 2766 file_readable PCL 74
Main Index
INDEX 19

file_unique_name PCL 75 ga_clip_plane_direction_set 664


file_writeable PCL 74 ga_clip_plane_direction_set ACU 82
fio_close PCL 123 ga_clip_plane_icon_get 665
fio_delete PCL 123 ga_clip_plane_icon_get ACU 83
fio_opena PCL 123 ga_clip_plane_icon_set 666
fio_openr PCL 122 ga_clip_plane_icon_set ACU 83
fio_openw PCL 122 ga_clip_plane_location_get 667
fio_read PCL 125 ga_clip_plane_location_get ACU 83
fio_rewind PCL 123 ga_clip_plane_location_set 668
fio_save_vars PCL 126 ga_clip_plane_location_set ACU 84
fio_write PCL 125 ga_clip_plane_movement_get 669
fio_writec PCL 125 ga_clip_plane_movement_get ACU 84
fio_writef PCL 126 ga_clip_plane_movement_set 671
flat_plate_body_create REF 1381 ga_clip_plane_movement_set ACU 85
flat_plate_body_modify REF 1381 ga_clip_plane_nclip_planes_get 672
flat_plate_cntrl_dev_create REF 1381 ga_clip_plane_nclip_planes_get ACU 85
flat_plate_cntrl_dev_modify REF 1381 ga_clip_plane_nposted_get 673
flat_plate_surf_create REF 1381 ga_clip_plane_nposted_get ACU 85
flat_plate_surf_modify REF 1381 ga_clip_plane_post 674
fld_cre_fem_res_sca 1616 ga_clip_plane_post ACU 86
fld_cre_fem_res_sca ACU 409 ga_clip_plane_posted_get 675
fld_cre_fem_res_vec 1617 ga_clip_plane_posted_get ACU 86
fld_cre_fem_res_vec ACU 409 ga_clip_plane_unpost 677
fld_evl_get_maxnod_for_group 1618 ga_clip_plane_unpost ACU 86
fld_evl_get_maxnod_for_group ACU 407 ga_clip_plane_up_set 678
flds_beam_spline_create REF 1382 ga_clip_plane_up_set ACU 87
flds_delete_element REF 1380 ga_display_autosubdivconst_get 1884
flds_mod_mng_sup_grp_del REF 1381 ga_display_autosubdivconst_set 1886
flds_mod_mng_sup_grp_mod REF 1381 ga_display_autosubdivide_get 1887
flds_mod_mng_sup_grp_rbld REF 1381 ga_display_autosubdivide_set 1889
flds_store_gen_options REF 1380 ga_display_backfacing_get 1890
flds_store_gen_options REF 1382 ga_display_backfacing_set 1892
flds_store_mod_options REF 1380 ga_display_bumpmap_get 1893
flds_store_mod_options REF 1380 ga_display_bumpmap_set 1895
flds_store_mod_options REF 1380 ga_display_contour_lblspcng_get 1897
flds_store_mod_options REF 1380 ga_display_contour_lblspcng_set 1898
flds_store_mod_options REF 1380 ga_display_create 1899
flds_store_mod_options REF 1380 ga_display_deform_scale_get 1901
flds_store_mod_options REF 1382 ga_display_deform_scale_set 1902
Fringe REF 1010 ga_display_deform_scalintrp_get 1904
ga_display_deform_scalintrp_set 1905
ga_display_delete 1906
G ga_display_diffuse_get 1908
ga_display_diffuse_set 1909
ga_clip_plane_clip_planes_get 660
ga_display_displays_get 1911
ga_clip_plane_clip_planes_get ACU 81
ga_display_edgecolor_get 1912 Index
ga_clip_plane_create 661
ga_display_edgecolor_set 1913
ga_clip_plane_create ACU 81
ga_display_exist_get 1915
ga_clip_plane_delete 662
ga_display_freefem_get 1916
ga_clip_plane_delete ACU 81
ga_display_freefem_set 1918
ga_clip_plane_direction_get 663
ga_display_gloss_get 1920
ga_clip_plane_direction_get ACU 82
ga_display_gloss_set 1921
Main Index
20 INDEX

ga_display_gravitation_get 1923 ga_display_vector_falabel_get 1996


ga_display_gravitation_set 1924 ga_display_vector_falabel_set 1997
ga_display_hilight_get 1925 ga_display_vector_length_get 1999
ga_display_hilight_set 1926 ga_display_vector_length_set 2000
ga_display_labelcolor_get 1928 ga_display_vector_reslabel_get 2002
ga_display_labelcolor_set 1929 ga_display_vector_reslabel_set 2003
ga_display_lines_get 1931 ga_display_vector_scale_get 2004
ga_display_lines_set 1932 ga_display_vector_scale_set 2006
ga_display_linestyle_get 1933 ga_display_vector1_color_get 2007
ga_display_linestyle_set 1935 ga_display_vector1_color_set 2009
ga_display_linewidth_get 1936 ga_display_vector2_color_get 2010
ga_display_linewidth_set 1938 ga_display_vector2_color_set 2012
ga_display_ndisplays_get 1939 ga_display_vector3_color_get 2013
ga_display_nlspc_get 1940 ga_display_vector3_color_set 2015
ga_display_nlspc_set 1941 ga_elem_scalar_create 679
ga_display_nspe_get 1942 ga_elem_scalar_create ACU 32
ga_display_nspe_set 1944 ga_elem_scalar_delete ACU 492
ga_display_offsets_get 1946 ga_elem_scalar_get ACU 494
ga_display_offsets_set 1948 ga_elem_scalar_minmax_get ACU 497
ga_display_parametric_get 1950 ga_elem_scalar_number_get ACU 499
ga_display_parametric_set 1951 ga_elem_scalar_single_create 681
ga_display_rename 1953 ga_elem_scalar_single_create ACU 32
ga_display_result_label_get 1954 ga_entities_string_format 1707
ga_display_result_label_set 1955 ga_entities_string_format ACU 478
ga_display_result_lblformat_get 1957 ga_entity_get_by_type 1708
ga_display_result_lblformat_set 1958 ga_entity_get_by_type ACU 478
ga_display_showedges_get 1960 ga_error 682
ga_display_showedges_set 1961 ga_error ACU 30
ga_display_shrfem_get 1963 ga_group_clear 1743
ga_display_shrfem_set 1964 ga_group_clear REF 84
ga_display_silhouette_get 1966 ga_group_color_get 936
ga_display_silhouette_set 1967 ga_group_color_get ACU 129
ga_display_specular_get 1969 ga_group_color_set 937
ga_display_specular_set 1970 ga_group_color_set ACU 130
ga_display_subdivision_get 1972 ga_group_create 1744
ga_display_subdivision_set 1974 ga_group_create REF 84
ga_display_texture_get 1975 ga_group_current_get 938
ga_display_texture_set 1977 ga_group_current_get ACU 130
ga_display_transparency_get 1978 ga_group_current_set 1745
ga_display_transparency_set 1979 ga_group_current_set REF 85
ga_display_undeform_color_get 1980 ga_group_deform_get 939
ga_display_undeform_color_set 1982 ga_group_deform_get ACU 130
ga_display_undeform_get 1983 ga_group_deform_set 940
ga_display_undeform_set 1985 ga_group_deform_set ACU 131
ga_display_undeform_style_get 1986 ga_group_delete 1746
Index ga_display_undeform_style_set 1987 ga_group_delete REF 85
ga_display_vector_color_get 1988 ga_group_display_get 941
ga_display_vector_color_set 1990 ga_group_display_get ACU 131
ga_display_vector_colorstyl_get 1991 ga_group_display_set 1747
ga_display_vector_colorstyl_set 1992 ga_group_display_set REF 86
ga_display_vector_facolor_get 1994 ga_group_elem_scalar_get 943
ga_display_vector_facolor_set 1995 ga_group_elem_scalar_get ACU 132
Main Index
INDEX 21

ga_group_elem_scalar_set 944 ga_group_transform_mirror 1754


ga_group_elem_scalar_set ACU 132 ga_group_transform_mirror REF 92
ga_group_entities_get 946 ga_group_transform_mirror2 1756
ga_group_entities_get ACU 132 ga_group_transform_mirror2 REF 94
ga_group_entity_add 1748 ga_group_transform_pivot 1758
ga_group_entity_add REF 87 ga_group_transform_pivot REF 97
ga_group_entity_remove 1749 ga_group_transform_pivot2 1760
ga_group_entity_remove REF 88 ga_group_transform_pivot2 REF 99
ga_group_exist_get 947 ga_group_transform_position 1762
ga_group_exist_get ACU 133 ga_group_transform_position REF 102
ga_group_groups_get 948 ga_group_transform_position2 1764
ga_group_groups_get ACU 133 ga_group_transform_position2 REF 104
ga_group_label_get 949 ga_group_transform_rotate 1766
ga_group_label_get ACU 135 ga_group_transform_rotate REF 106
ga_group_label_set 950 ga_group_transform_rotate2 1768
ga_group_label_set ACU 135 ga_group_transform_rotate2 REF 108
ga_group_load_vector_get 951 ga_group_transform_scale 1770
ga_group_load_vector_get ACU 135 ga_group_transform_scale REF 110
ga_group_load_vector_set 953 ga_group_transform_scale2 1772
ga_group_load_vector_set 954 ga_group_transform_scale2 REF 112
ga_group_load_vector_set 956 ga_group_transform_translate 1774
ga_group_load_vector_set ACU 136 ga_group_transform_translate REF 114
ga_group_members_delete 1751 ga_group_transform_translate2 1776
ga_group_members_delete REF 89 ga_group_transform_translate2 REF 116
ga_group_nentities_get 958 ga_group_vector_load_get 977
ga_group_nentities_get ACU 136 ga_group_vector_load_get ACU 140
ga_group_ngroups_get ACU 137 ga_group_vector_load_set 978
ga_group_ngroups_get ACU 549 ga_group_vector_load_set ACU 141
ga_group_node_deform_set 959 ga_group_vector_result_get 979
ga_group_node_deform_set 960 ga_group_vector_result_get 980
ga_group_node_deform_set ACU 137 ga_group_vector_result_get ACU 141
ga_group_precision_get 962 ga_group_vector_result_set 982
ga_group_precision_get ACU 138 ga_group_vector_result_set 983
ga_group_precision_set 1752 ga_group_vector_result_set ACU 142
ga_group_precision_set REF 90 ga_groups_load_vector_set 984
ga_group_rename 1753 ga_groups_load_vector_set 986
ga_group_rename REF 91 ga_groups_load_vector_set ACU 129
ga_group_result_vector_get 963 ga_light_attenuation_get 683
ga_group_result_vector_get 965 ga_light_attenuation_get ACU 36
ga_group_result_vector_get ACU 138 ga_light_attenuation_set 684
ga_group_result_vector_set 967 ga_light_attenuation_set ACU 36
ga_group_result_vector_set 969 ga_light_color_get 685
ga_group_result_vector_set ACU 138 ga_light_color_get ACU 36
ga_group_selectable_get 971 ga_light_color_set 686
ga_group_selectable_get ACU 139 ga_light_color_set ACU 37
ga_group_selectable_set 973 ga_light_create 687 Index
ga_group_selectable_set ACU 139 ga_light_create ACU 37
ga_group_selectable_set ACU 553 ga_light_delete 688
ga_group_style_get 974 ga_light_delete ACU 38
ga_group_style_get ACU 140 ga_light_direction_get 689
ga_group_style_set 975 ga_light_direction_get ACU 38
ga_group_style_set ACU 140 ga_light_direction_set 691
Main Index
22 INDEX

ga_light_direction_set ACU 38 ga_lookup_rename 718


ga_light_icon_get 692 ga_lookup_rename ACU 49
ga_light_icon_get ACU 39 ga_lookup_tables_get 719
ga_light_icon_set 693 ga_lookup_tables_get ACU 49
ga_light_icon_set ACU 39 ga_node_deform_create 720
ga_light_intensity_get 694 ga_node_deform_create ACU 51
ga_light_intensity_get ACU 40 ga_range_contour_get 721
ga_light_intensity_set 695 ga_range_contour_get ACU 52
ga_light_intensity_set ACU 40 ga_range_contour_set 722
ga_light_lights_get 696 ga_range_contour_set ACU 52
ga_light_lights_get ACU 40 ga_range_create 724
ga_light_location_get 697 ga_range_create 813
ga_light_location_get ACU 41 ga_range_create ACU 52
ga_light_location_set 698 ga_range_delete 726
ga_light_location_set ACU 41 ga_range_delete 814
ga_light_movement_get 699 ga_range_delete ACU 53
ga_light_movement_get ACU 42 ga_range_exist_get 728
ga_light_movement_set 700 ga_range_exist_get ACU 53
ga_light_movement_set ACU 42 ga_range_nranges_get 729
ga_light_nlights_get 702 ga_range_nranges_get ACU 54
ga_light_nlights_get ACU 42 ga_range_nvalues_get 729
ga_light_nposted_get 702 ga_range_nvalues_get ACU 54
ga_light_nposted_get ACU 43 ga_range_ranges_get 730
ga_light_post 703 ga_range_ranges_get ACU 54
ga_light_post ACU 43 ga_range_rename 731
ga_light_posted_get 704 ga_range_rename ACU 55
ga_light_posted_get ACU 43 ga_range_startend_set 733
ga_light_type_get 705 ga_range_startend_set ACU 55
ga_light_type_get ACU 44 ga_range_threshold_set 735
ga_light_type_set 706 ga_range_threshold_set ACU 55
ga_light_type_set ACU 44 ga_range_values_get 737
ga_light_unpost 707 ga_range_values_get ACU 56
ga_light_unpost ACU 45 ga_range_values_set 738
ga_lookup_colors_get 709 ga_range_values_set ACU 56
ga_lookup_colors_get ACU 46 ga_spectrum_colors_get 740
ga_lookup_colors_set 710 ga_spectrum_colors_get ACU 58
ga_lookup_colors_set ACU 46 ga_spectrum_colors_set 741
ga_lookup_create 712 ga_spectrum_colors_set 816
ga_lookup_create 809 ga_spectrum_colors_set ACU 58
ga_lookup_create ACU 47 ga_spectrum_continuous_get 743
ga_lookup_current_get 713 ga_spectrum_continuous_get ACU 59
ga_lookup_current_get ACU 47 ga_spectrum_continuous_set 744
ga_lookup_current_set 714 ga_spectrum_continuous_set 818
ga_lookup_current_set 810 ga_spectrum_continuous_set ACU 59
ga_lookup_current_set ACU 47 ga_spectrum_create 745
Index ga_lookup_delete 715 ga_spectrum_create 819
ga_lookup_delete 811 ga_spectrum_create ACU 59
ga_lookup_delete ACU 48 ga_spectrum_current_get 747
ga_lookup_ncolors_get 716 ga_spectrum_current_get ACU 60
ga_lookup_ncolors_get ACU 48 ga_spectrum_current_set 747
ga_lookup_ntables_get 717 ga_spectrum_current_set 820
ga_lookup_ntables_get ACU 49 ga_spectrum_current_set ACU 60
Main Index
INDEX 23

ga_spectrum_delete 749 ga_view_aa_get REF 149


ga_spectrum_delete 822 ga_view_aa_set 1833
ga_spectrum_delete ACU 61 ga_view_aa_set REF 150
ga_spectrum_interpolation_get 750 ga_view_ar_set 1834
ga_spectrum_interpolation_get ACU 61 ga_view_ar_set REF 151
ga_spectrum_interpolation_set 751 ga_view_back_get 1836
ga_spectrum_interpolation_set 823 ga_view_back_get REF 152
ga_spectrum_interpolation_set ACU 61 ga_view_back_set 1837
ga_spectrum_ncolors_get 753 ga_view_back_set REF 153
ga_spectrum_ncolors_get ACU 62 ga_view_capping_get 1838
ga_spectrum_nspectrums_get 753 ga_view_capping_get REF 154
ga_spectrum_nspectrums_get ACU 62 ga_view_capping_set 1840
ga_spectrum_rename 754 ga_view_capping_set REF 155
ga_spectrum_rename ACU 63 ga_view_center_get 1841
ga_spectrum_spectrums_get 755 ga_view_center_get REF 156
ga_spectrum_spectrums_get ACU 63 ga_view_center_set 1843
ga_title_color_get 756 ga_view_center_set REF 157
ga_title_color_get ACU 64 ga_view_clipping_get 1844
ga_title_color_set 757 ga_view_clipping_get REF 158
ga_title_color_set ACU 64 ga_view_clipping_set 1845
ga_title_create 759 ga_view_clipping_set REF 159
ga_title_create 825 ga_view_corners_set 1847
ga_title_create ACU 64 ga_view_corners_set REF 160
ga_title_delete 760 ga_view_create 1848
ga_title_delete 826 ga_view_create REF 161
ga_title_delete ACU 65 ga_view_delete 1849
ga_title_font_size_get 761 ga_view_delete REF 162
ga_title_font_size_get ACU 65 ga_view_dist_get 1850
ga_title_font_size_set 762 ga_view_dist_get REF 163
ga_title_font_size_set ACU 66 ga_view_dist_set 1852
ga_title_list_get 763 ga_view_dist_set REF 164
ga_title_list_get ACU 66 ga_view_exist_get 1853
ga_title_loc_get 764 ga_view_exist_get REF 165
ga_title_loc_get ACU 66 ga_view_fov_get 1854
ga_title_loc_set 765 ga_view_fov_get REF 166
ga_title_loc_set ACU 67 ga_view_fov_set 1855
ga_title_nposted_get 766 ga_view_fov_set REF 167
ga_title_nposted_get ACU 67 ga_view_from_get 1856
ga_title_num_get 767 ga_view_from_get REF 168
ga_title_num_get ACU 68 ga_view_from_set 1857
ga_title_posted_get 768 ga_view_from_set REF 169
ga_title_posted_get ACU 68 ga_view_front_get 1858
ga_title_rename 769 ga_view_front_get REF 170
ga_title_rename ACU 68 ga_view_front_set 1860
ga_vector_create 770 ga_view_front_set REF 171
ga_vector_create ACU 33 ga_view_model_scale_get 1861 Index
ga_vector_delete ACU 501 ga_view_model_scale_get REF 172
ga_vector_get 772 ga_view_model_scale_set 1862
ga_vector_get ACU 34 ga_view_model_scale_set REF 173
ga_vector_number_get 775 ga_view_normal_get 777
ga_vector_number_get ACU 35 ga_view_normal_get ACU 69
ga_view_aa_get 1832 ga_view_nviews_get 1863
Main Index
24 INDEX

ga_view_nviews_get REF 174 ga_viewport_exist_get 1792


ga_view_perspective_get 1864 ga_viewport_exist_get REF 126
ga_view_perspective_get REF 175 ga_viewport_group_post 1793
ga_view_perspective_set 1866 ga_viewport_group_post REF 126
ga_view_perspective_set REF 176 ga_viewport_group_post_all 1794
ga_view_plane_set 1867 ga_viewport_group_post_all REF 127
ga_view_plane_set REF 177 ga_viewport_group_unpost 1795
ga_view_rename 1868 ga_viewport_group_unpost REF 128
ga_view_rename REF 178 ga_viewport_group_unpost_all 1796
ga_view_sa_get 1869 ga_viewport_group_unpost_all REF 129
ga_view_sa_get REF 179 ga_viewport_groups_get 1797
ga_view_sa_set 1871 ga_viewport_groups_get REF 129
ga_view_sa_set REF 180 ga_viewport_light_post 1798
ga_view_screen_scale_get 1872 ga_viewport_light_post REF 130
ga_view_screen_scale_get REF 181 ga_viewport_light_unpost 1800
ga_view_screen_scale_set 1873 ga_viewport_light_unpost REF 131
ga_view_screen_scale_set REF 182 ga_viewport_lights_get 1801
ga_view_sr_set 1875 ga_viewport_lights_get REF 131
ga_view_sr_set REF 183 ga_viewport_location_get 1803
ga_view_to_get 1877 ga_viewport_location_get REF 132
ga_view_to_get REF 184 ga_viewport_location_set 1804
ga_view_to_set 1878 ga_viewport_location_set REF 133
ga_view_to_set REF 185 ga_viewport_nannos_get REF 1166
ga_view_up_get 1879 ga_viewport_ngroups_get 1805
ga_view_up_get REF 186 ga_viewport_ngroups_get REF 134
ga_view_up_set 1880 ga_viewport_nlights_get 1806
ga_view_up_set REF 187 ga_viewport_nlights_get REF 135
ga_view_views_get 1881 ga_viewport_nposted_get 1808
ga_view_views_get REF 188 ga_viewport_nposted_get REF 135
ga_view_zoom_get 1882 ga_viewport_nviewports_get 1809
ga_view_zoom_get REF 189 ga_viewport_nviewports_get REF 136
ga_view_zoom_set 1883 ga_viewport_origin_get 1810
ga_view_zoom_set REF 190 ga_viewport_origin_get REF 136
ga_viewport_anno_post REF 1163 ga_viewport_origin_set 1812
ga_viewport_anno_unpost REF 1164 ga_viewport_origin_set REF 137
ga_viewport_annos_get REF 1165 ga_viewport_post 1813
ga_viewport_axis_get 1780 ga_viewport_post REF 138
ga_viewport_axis_get REF 119 ga_viewport_posted_get 1814
ga_viewport_axis_set 1782 ga_viewport_posted_get REF 138
ga_viewport_axis_set REF 120 ga_viewport_range_get 1816
ga_viewport_background_get 1784 ga_viewport_range_get REF 139
ga_viewport_background_get REF 121 ga_viewport_range_set 1817
ga_viewport_background_set 1785 ga_viewport_range_set REF 140
ga_viewport_background_set REF 122 ga_viewport_rename 1818
ga_viewport_create 1786 ga_viewport_rename REF 140
Index ga_viewport_create REF 123 ga_viewport_size_get 1819
ga_viewport_current_get 1788 ga_viewport_size_get REF 141
ga_viewport_current_get REF 124 ga_viewport_size_set 1820
ga_viewport_current_set 1789 ga_viewport_size_set REF 142
ga_viewport_current_set REF 124 ga_viewport_spectrum_get 1821
ga_viewport_delete 1790 ga_viewport_spectrum_get REF 143
ga_viewport_delete REF 125 ga_viewport_spectrum_set 1823
Main Index
INDEX 25

ga_viewport_spectrum_set REF 143 gm_graphics_off 783


ga_viewport_title_post 1824 gm_graphics_off ACU 71
ga_viewport_title_post REF 144 gm_graphics_on 783
ga_viewport_title_unpost 1825 gm_graphics_on ACU 72
ga_viewport_title_unpost REF 145 gm_hilight_clear 784
ga_viewport_unpost 1826 gm_hilight_clear ACU 72
ga_viewport_unpost REF 145 gm_hilight_entity 785
ga_viewport_view_get 1827 gm_hilight_entity ACU 72
ga_viewport_view_get REF 146 gm_hilight_string 786
ga_viewport_view_name 1828 gm_hilight_string ACU 73
ga_viewport_view_name REF 147 gm_hilight_widget 787
ga_viewport_view_reset REF 1167 gm_hilight_widget ACU 73
ga_viewport_view_set 1829 gm_lookup_write 788
ga_viewport_view_set REF 147 gm_lookup_write ACU 73
ga_viewport_viewports_get 1831 gm_mpeg_pause_recording 789
ga_viewport_viewports_get REF 148 gm_mpeg_pause_recording ACU 74
get_current_dir 634 gm_mpeg_resume_recording 791
get_current_dir ACU 18 gm_mpeg_resume_recording ACU 74
get_current_dir ACU 487 gm_mpeg_start_recording 793
get_field_values 1619 gm_mpeg_start_recording ACU 74
get_field_values ACU 406 gm_mpeg_stop_recording 795
get_field_values_25 PCL 496 gm_mpeg_stop_recording ACU 75
get_field_values_no_trans 1620 gm_pick ACU 509
get_field_values_no_trans ACU 406 gm_pick_abort ACU 509
get_orphan_elements 988 gm_pick_add ACU 511
get_orphan_elements ACU 120 gm_pick_add_widget ACU 513
get_orphan_nodes 989 gm_pick_adjust_hilight ACU 515
get_orphan_nodes ACU 121 gm_pick_clear ACU 516
get_qab_from_engin_cons 1423 gm_pick_filter ACU 518
get_qab_from_engin_cons ACU 336 gm_pick_notify ACU 521
gm_animate_end ACU 504 gm_pick_reject ACU 523
gm_animate_loadcase_parms ACU 505 gm_pick_reset_level_counter ACU 524
gm_animate_start ACU 505 gm_segment_create PCL 128
gm_conv_device_to_subject 778 gm_segment_delete PCL 128
gm_conv_device_to_subject ACU 70 gm_segment_flush PCL 129
gm_convert_name 779 gm_uiwindow_create ACU 525
gm_convert_name ACU 69 gm_uiwindow_delete ACU 525
gm_database_close ACU 506 gm_viewport_auto_off ACU 525
gm_database_current 780 gm_viewport_auto_on ACU 526
gm_database_current ACU 70 gm_viewport_center_get PCL 132
gm_database_open ACU 507 gm_viewport_hardware_mode_get 797
gm_draw_arrow PCL 131 gm_viewport_hardware_mode_get ACU 75
gm_draw_entity 780 gm_viewport_hardware_mode_set 797
gm_draw_entity ACU 70 gm_viewport_hardware_mode_set ACU 75
gm_draw_line PCL 129 gm_viewport_id_to_name 798
gm_draw_marker PCL 130 gm_viewport_id_to_name ACU 76 Index
gm_draw_result_arrow PCL 130 gm_viewport_limits_get 799
gm_draw_text PCL 129 gm_viewport_limits_get ACU 76
gm_fit_view 781 gm_viewport_ncolors_get 800
gm_fit_view ACU 71 gm_viewport_ncolors_get ACU 76
gm_fullcolor_mode 782 gm_viewport_plot ACU 528
gm_fullcolor_mode ACU 71 gm_viewport_refresh PCL 131
Main Index
26 INDEX

gm_viewport_refresh_off 800 insight.finish 2954


gm_viewport_refresh_off ACU 77 insight.finish REF 939
gm_viewport_refresh_on 801 insight.fit 2955
gm_viewport_refresh_on ACU 77 insight.fit REF 941
gm_viewport_refresh_status 802 insight.globals_set 2956
gm_viewport_refresh_status ACU 77 insight.globals_set 3336
gm_viewport_subject_get PCL 132 insight.globals_set REF 1158
gm_viewport_view_corners 802 insight.globals_set REF 943
gm_viewport_view_corners ACU 78 insight.hardcopy 2957
gm_viewport_world_limits_get PCL 132 insight.hardcopy REF 946
gm_viewports_refresh PCL 131 insight.initialize 2959
gm_visibility_all 804 insight.initialize REF 947
gm_visibility_all ACU 78 insight.ins_range_set 2960
gm_visibility_widget 804 insight.ins_range_set REF 950
gm_visibility_widget ACU 78 insight.iso_control_set REF 1302
gm_window_id_get ACU 530 insight.iso_value_set REF 1302
gm_write_image 805 insight.isos_control_set 2962
gm_write_image ACU 79 insight.isos_control_set REF 953
gm_write_vrml 807 insight.isos_value_set 2963
gm_write_vrml ACU 80 insight.isos_value_set REF 954
gm_xy_plot ACU 531 insight.modal_animation 2964
insight.modal_animation REF 957
insight.post_all_coords 2965
H insight.post_all_coords REF 961
insight.post_coord 2967
hex_elem_color 3291
insight.post_coord REF 961
hex_elem_color REF 1127
insight.post_groups 2968
hex_elem_label 3292
insight.post_groups REF 962
hex_elem_label REF 1128
insight.posting_create 2970
insight.posting_create REF 965
I insight.posting_delete 2971
insight.posting_delete REF 966
improve_mesh_2 REF 1285 insight.posting_post 2973
improve_mesh_2 REF 661 insight.posting_post REF 967
insight.animate_images 2939 insight.rake_create 2974
insight.animate_images REF 922 insight.rake_create REF 969
insight.animation_clear 2940 insight.rake_delete 2976
insight.animation_clear REF 925 insight.rake_delete REF 970
insight.animation_cycle 2942 insight.rake_rename 2977
insight.animation_cycle REF 927 insight.rake_rename REF 971
insight.animation_mode 2944 insight.report 2978
insight.animation_mode REF 928 insight.report REF 972
insight.animation_rrender 2946 insight.report_file 2980
insight.animation_rrender REF 931 insight.report_file REF 973
insight.animation_setup 2948 insight.spectrum_set 2981
Index insight.animation_setup REF 932 insight.spectrum_set REF 974
insight.animation_speed 2950 insight.title_post 2982
insight.animation_speed REF 935 insight.title_post REF 976
insight.animation_step 2951 insight.tool_create 2999
insight.animation_step REF 935 insight.tool_create REF 988
insight.create_image 2953 insight.tool_delete 3001
insight.create_image REF 936 insight.tool_delete REF 992
Main Index
INDEX 27

insight.tool_modify 3002 jobfile.eval_list 1630


insight.tool_modify REF 995 jobfile.eval_list ACU 418
insight.tool_post 3004 jobfile.open 1578
insight.tool_post REF 999 jobfile.open ACU 394
insight.tool_rename 3005 jobfile.set_job_status 1579
insight.tool_rename REF 1002 jobfile.set_job_status ACU 395
insight.tools_post 3007 jobfile.write_array_as_list 1631
insight.tools_post REF 1005 jobfile.write_array_as_list ACU 419
insight.transform_rotx 2983 jobfile.write_element_list 1632
insight.transform_rotx REF 976 jobfile.write_element_list ACU 419
insight.transform_roty 2985 jobfile.write_integer_list 1633
insight.transform_roty REF 977 jobfile.write_integer_list ACU 420
insight.transform_rotz 2986 jobfile.write_node_list 1635
insight.transform_rotz REF 977 jobfile.write_node_list ACU 420
insight.transform_scale 1705 jobfile.write_real_list 1636
insight.transform_scale 2987 jobfile.write_real_list ACU 420
insight.transform_scale REF 15 jobfile.write_spl 1583
insight.transform_scale REF 978 jobfile.write_spl ACU 397
insight.transform_scale_xy 2988 jobfile.write_stream 1637
insight.transform_scale_xy REF 1303 jobfile.write_stream ACU 421
insight.transform_scale_xy REF 978 jobfile.write_string 1638
insight.transform_x 2990 jobfile.write_string ACU 421
insight.transform_x REF 979 jobfile.writec 1580
insight.transform_y 2991 jobfile.writec ACU 395
insight.transform_y REF 979 jobfile.writei 1581
insight.unpost_coord 2992 jobfile.writei ACU 396
insight.unpost_coord REF 980 jobfile.writer 1582
insight.view_angles_set 2993 jobfile.writer 1639
insight.view_angles_set REF 981 jobfile.writer ACU 396
insight.viewport_set 2995 jobfile.writer ACU 422
insight.viewport_set REF 983 jobfile.writeS1 1640
insight.vp_range_set 2997 jobfile.writeS1 ACU 422
insight.vp_range_set REF 986 jobfile.writeS2 1641
io_write PCL 109 jobfile.writeS2 ACU 422
io_write_line PCL 112 jobfile.writeS3 1642
io_writec PCL 113 jobfile.writeS3 ACU 423
io_writef PCL 113 jobfile.writeS4 1643
is_batch 604 jobfile.writeS4 ACU 423
is_batch ACU 3 jobfile.writeSS 1644
Isosurface REF 1008 jobfile.writeSS ACU 423
jou_file_write 635
jou_file_write ACU 25
J
jobfile.close 1575
jobfile.close ACU 393 L
Index
jobfile.create_jobname 1628 lbc_create 1351
jobfile.create_jobname ACU 417 lbc_create ACU 286
jobfile.create_matrix 1576 lbc_create ACU 573
jobfile.create_matrix ACU 394 lbc_defn_create.lbc_defn PCL 409
jobfile.create_param 1628 lbc_defn_create.lbc_var_defn PCL 412
jobfile.create_param ACU 418 lbc_defn_create.valid_targets PCL 415
Main Index
28 INDEX

lbc_delete 1354 list_create_ent_att_mat_value REF 1168


lbc_delete ACU 287 list_create_ent_att_vp_vis 2051
lbc_eval_fem_by_lc 1356 list_create_ent_att_vp_vis REF 1168
lbc_eval_fem_by_lc ACU 287 list_create_fem_con_fem 2053
lbc_eval_fem_lbc 1356 list_create_fem_con_fem REF 1168
lbc_eval_fem_lbc ACU 287 list_create_node_ass_elem 2055
lbc_get_one_app_reg_str PCL 548 list_create_node_ass_geo 2057
lbc_get_sdbx_datatype 1357 list_create_node_ass_group 2059
lbc_get_sdbx_datatype ACU 288 list_create_node_att_fringe 2061
lbc_get_sdbx_datatype ACU 575 list_create_node_att_value 2063
lbc_gm 1358 list_create_point_ass_geo 2065
lbc_gm ACU 288 list_create_point_ass_group 2066
lbc_graphics_defn 1359 list_create_surface_ass_geo 2068
lbc_graphics_defn ACU 289 list_create_surface_ass_group 2069
lbc_lp_parse_sca 1360 list_create_target_list 2071
lbc_lp_parse_sca ACU 289 list_filter_by_elem_dim 2072
lbc_lp_parse_sca ACU 576 list_filter_by_elem_dim REF 1168
lbc_lp_parse_vec 1361 list_filter_by_ent_shape 2074
lbc_lp_parse_vec ACU 290 list_filter_by_ent_shape REF 1169
lbc_plot_markers 1362 list_filter_by_ep_type 2077
lbc_plot_markers ACU 291 list_filter_by_ep_type REF 1169
lbc_plot_markers ACU 577 list_filter_by_ep_value 2079
lbc_show_plot_marker ACU 577 list_filter_by_ep_value REF 1169
lbc_show_plot_scalar 1364 list_filter_by_fem_type 2081
lbc_show_plot_scalar ACU 291 list_filter_by_fem_type REF 1169
lbc_show_plot_scalar ACU 577 list_filter_by_lbc_type 2083
list_create_boolean_list 2017 list_filter_by_lbc_type REF 1169
list_create_curve_ass_geo 2019 list_filter_by_lbc_value 2085
list_create_curve_ass_group 2020 list_filter_by_lbc_value REF 1169
list_create_elem_ass_geo 2022 list_filter_by_mat_name 2087
list_create_elem_ass_group 2024 list_filter_by_mat_name REF 1169
list_create_elem_ass_node 2026 list_filter_by_mat_type 2089
list_create_elem_att_fringe 2028 list_filter_by_mat_type REF 1169
list_create_elem_att_mat 2030 list_filter_by_mat_value 2091
list_create_elem_att_prop 2032 list_filter_by_mat_value REF 1169
list_create_ent_ass_group 2034 list_filter_by_presence 2094
list_create_ent_ass_group REF 1167 list_filter_by_presence REF 1170
list_create_ent_ass_vp 2036 list_get_node_ass_el_edge 1194
list_create_ent_ass_vp REF 1167 list_get_node_ass_el_edge ACU 237
list_create_ent_att_ep_name 2037 list_get_node_ass_el_face 1195
list_create_ent_att_ep_name REF 1167 list_get_node_ass_el_face ACU 237
list_create_ent_att_ep_type 2039 list_get_node_ass_elem 1196
list_create_ent_att_ep_type REF 1168 list_get_node_ass_elem ACU 237
list_create_ent_att_lbc_name 2041 list_get_node_ass_geo 1197
list_create_ent_att_lbc_name REF 1168 list_get_node_ass_geo ACU 238
Index list_create_ent_att_lbc_type 2043 list_get_node_ass_group 1199
list_create_ent_att_lbc_type REF 1168 list_get_node_ass_group ACU 238
list_create_ent_att_mat_name 2045 list_get_node_ass_mpc 1200
list_create_ent_att_mat_name REF 1168 list_get_node_ass_mpc ACU 238
list_create_ent_att_mat_type 2047 list_get_node_att_fringe 1202
list_create_ent_att_mat_type REF 1168 list_get_node_att_fringe ACU 239
list_create_ent_att_mat_value 2049 list_get_node_att_value 1204
Main Index
INDEX 29

list_get_node_att_value ACU 239 lp_keyword_text ACU 98


list_intersect 2095 lp_keyword_text PCL 214
list_intersect REF 1170 lp_picklist_string_creator_v PCL 216
list_rem_duplicate 2096 lp_print_list PCL 211
list_rem_duplicate REF 1170 lp_print_sublist PCL 211
list_save_group 2097 lp_sublist_attribute_get_float PCL 206
loadcase_create 2755 lp_sublist_attribute_get_floata PCL 210
loadcase_create REF 748 lp_sublist_attribute_get_int PCL 205
loadcase_create2 1365 lp_sublist_attribute_get_inta PCL 209
loadcase_create2 ACU 292 lp_sublist_attribute_get_string PCL 207
loadcase_delete 2756 lp_sublist_count PCL 203
loadcase_delete REF 749 lp_sublist_fetch PCL 213
loadcase_modify 2758 lp_sublist_next PCL 204
loadcase_modify REF 750 lp_sublist_reset PCL 212
loadcase_show 2760 lp_sublist_type PCL 202
loadcase_show REF 751
loadsbcs_create 2715
loadsbcs_create REF 692
loadsbcs_create2 REF 1291
M
Marker REF 1013
loadsbcs_create2 REF 694
mass_prop.gen_report 2112
loadsbcs_create3 REF 1291
mass_prop_create 2109
loadsbcs_create3 REF 696
mat_2d_ani_to_2d_ort 1424
loadsbcs_delete 2717
mat_2d_ani_to_2d_ort ACU 335
loadsbcs_delete REF 1296
mat_2d_ani_to_2d_ort ACU 586
loadsbcs_delete REF 698
mat_3d_ani_to_3d_ort 1425
loadsbcs_eval_all PCL 536
mat_3d_ani_to_3d_ort ACU 334
loadsbcs_get_appl_region_list 1367
mat_create_lam 2746
loadsbcs_get_appl_region_list ACU 292
mat_create_lam REF 737
loadsbcs_get_appl_region_list ACU 579
mat_create_lam2 REF 1296
loadsbcs_lp_coord 1368
mat_create_lam2 REF 739
loadsbcs_lp_coord ACU 293
mat_create_mix 2748
loadsbcs_modify 2719
mat_create_mix REF 741
loadsbcs_modify REF 1292
mat_hal_create 2750
loadsbcs_modify REF 699
mat_hal_create REF 743
loadsbcs_modify2 REF 1293
mat_hal_load_defn_show 1426
loadsbcs_modify2 REF 701
mat_hal_load_defn_show ACU 338
loadsbcs_plot_contours 2721
mat_lam_create REF 1297
loadsbcs_plot_contours REF 1293
mat_lam_load_defn_show 1428
loadsbcs_plot_contours REF 703
mat_lam_load_defn_show ACU 339
loadsbcs_plot_markers 2723
mat_load_show 1430
loadsbcs_plot_markers REF 704
mat_load_show ACU 337
loadsbcs_show 2724
mat_mix_create REF 1298
loadsbcs_show REF 705
mat_mix_load_defn_show 1432
lp_eval PCL 201
mat_mix_load_defn_show ACU 339
lp_eval_cleanup 848
mat_sfc_create 2753
lp_eval_cleanup ACU 537 Index
mat_sfc_create REF 745
lp_eval_cleanup ACU 97
mat_sfc_load_defn_show 1434
lp_eval_cleanup PCL 205
mat_sfc_load_defn_show ACU 340
lp_geometry_text 849
material.create 2743
lp_geometry_text ACU 97
material.create REF 728
lp_keyword_text 850
material.namedelete 1436
lp_keyword_text ACU 537
Main Index
30 INDEX

material.namedelete ACU 341 mpc_label REF 1130


materials_compress REF 747 msc_delete_old_files 1584
math_get_no_data_null 1710 msc_delete_old_files ACU 397
math_get_no_data_null ACU 455 mscnastran_analyze_tp.get_version_number
math_is_no_data_null 1710 1586
math_is_no_data_null ACU 455 mscnastran_analyze_tp.get_version_number
math_mat_add 1711 ACU 398
math_mat_add ACU 456 mscnastran_anlyze_sub_create.available_callba
math_mat_invert 1712 ck 1585
math_mat_invert ACU 456 mscnastran_anlyze_sub_create.available_callba
math_mat_mult 1713 ck ACU 398
math_mat_mult ACU 456 mscnastran_job.associate_subcases 1587
math_mat_transp_in_place 1714 mscnastran_job.associate_subcases ACU 398
math_mat_transp_in_place ACU 457 mscnastran_subcase.create 1589
math_vec_len 1714 mscnastran_subcase.create ACU 399
math_vec_len ACU 457 mscnastran_subcase.create_char_param 1590
math_vec_norm 1715 mscnastran_subcase.create_char_param
math_vec_norm ACU 457 ACU 399
mesh_seed_create 2513 mscnastran_update.job 1591
mesh_seed_create REF 1285 mscnastran_update.job ACU 400
mesh_seed_create REF 536 msg_format_string 851
mesh_seed_create_curv_based 2514 msg_format_string ACU 534
mesh_seed_create_curv_based REF 537 msg_format_string ACU 90
mesh_seed_create_tabular 2516 msg_get_application 853
mesh_seed_create_tabular REF 1285 msg_get_application ACU 91
mesh_seed_create_tabular REF 538 msg_get_string PCL 116
mesh_seed_create_tabular_points 2517 msg_string_more 854
mesh_seed_create_tabular_points REF 1286 msg_string_more ACU 91
mesh_seed_create_tabular_points REF 540 msg_to_file 855
mesh_seed_create_tabular2 REF 1286 msg_to_file ACU 535
mesh_seed_create_tabular2 REF 539 msg_to_file ACU 91
mesh_seed_display_mgr.init 2518 msg_to_form PCL 117
mesh_seed_display_mgr.init REF 540 msg_to_string 856
mesh_seed_display_mgr.plot 2519 msg_to_string ACU 92
mesh_seed_display_mgr.plot REF 541 msg_to_text PCL 117
mesh_seed_display_mgr.refresh 2522 mth_abs PCL 48
mesh_seed_display_mgr.refresh REF 542 mth_acosd PCL 43
mesh_seed_display_mgr_erase 2521 mth_acosr PCL 45
mesh_seed_display_mgr_erase REF 541 mth_array_search PCL 52
modify_mesh_seed 2688 mth_asind PCL 42
modify_mesh_seed REF 1286 mth_asinr PCL 45
modify_mesh_seed REF 668 mth_atan2d PCL 44
modify_mesh_seed_tabular 2689 mth_atan2r PCL 46
modify_mesh_seed_tabular REF 1286 mth_atand PCL 44
modify_mesh_seed_tabular REF 669 mth_atanr PCL 46
Index move_mesh 1205 mth_cosd PCL 43
move_mesh ACU 232 mth_cosr PCL 45
move_mesh_1 1207 mth_exp PCL 48
move_mesh_1 ACU 233 mth_ln PCL 47
mpc_color 3294 mth_log PCL 47
mpc_color REF 1129 mth_max PCL 49
mpc_label 3295 mth_min PCL 49
Main Index
INDEX 31

mth_mod PCL 50 p3_express_import 1709


mth_nint PCL 49 p3_express_import REF 22
mth_round PCL 50 p3_express_import_exit 1711
mth_sign PCL 48 p3_express_import_exit REF 24
mth_sind PCL 42 p3_express_import_preview 1710
mth_sinr PCL 44 p3_express_import_preview REF 23
mth_sort PCL 51 p3_express_options_file 1713
mth_sort_column PCL 51 p3_express_options_file REF 25
mth_sort_row PCL 52 p3_ps_get_xmt 639
mth_sqrt PCL 47 p3_ps_get_xmt ACU 18
mth_tand PCL 43 p3_ps_open_ug REF 28
mth_tanr PCL 46 p3_ps_open_ug_v2 REF 31
mth_vec_add 1716 p3_ps_preload_part REF 33
mth_vec_add ACU 458 p3_ug_get_attr_list REF 34
mth_vec_cross_prod 1717 p3_ug_get_part_occ_list REF 36
mth_vec_cross_prod ACU 458 p3_ug_xmt_import REF 35
mth_vec_dot_prod 1717 p3cm.close_2 1439
mth_vec_dot_prod ACU 458 p3cm.close_2 ACU 342
mth_vec_length 1718 p3cm.create_book_layup2 1440
mth_vec_length ACU 459 p3cm.create_book_layup2 ACU 342
mth_vec_scale 1719 P3cm.create_laminates_layup_2 1443
mth_vec_scale ACU 459 P3cm.create_laminates_layup_2 ACU 343
my_spawn PCL 542 p3cm.create_layup_add_2 1446
p3cm.create_layup_add_2 ACU 344
p3cm.create_material_add 1448
N p3cm.create_material_add ACU 345
p3cm.create_ply_add_2 1450
n21_cons_to_sym_6x6_matrix 1438
p3cm.create_ply_add_2 ACU 346
n21_cons_to_sym_6x6_matrix ACU 336
p3cm.create_results_failure 1452
neutold_import_neutral 1706
p3cm.create_results_failure ACU 347
neutold_import_neutral REF 1171
p3cm.create_results_mid_sort 1454
neutold_import_neutral REF 16
p3cm.create_results_mid_sort ACU 347
neutral_export REF 1172
p3cm.create_results_sort 1455
neutral_export2 1708
p3cm.create_results_sort ACU 348
neutral_export2 635
p3cm.delete_laminates 1457
neutral_export2 ACU 26
p3cm.delete_laminates ACU 348
neutral_export2 REF 18
p3cm.delete_material_name 1458
nf_write 636
p3cm.delete_material_name ACU 349
nf_write ACU 26
p3cm.delete_ply_name 1460
nf_write2 638
p3cm.delete_ply_name ACU 349
nf_write2 ACU 27
p3cm.delete_propsets 1461
node_color 3296
p3cm.delete_propsets ACU 349
node_color REF 1131
p3cm.import_model_file_2 1463
node_label 3297
p3cm.import_model_file_2 ACU 350
node_label REF 1132
p3cm.import_plies_file_2 1464
notemessage.text 858
p3cm.import_plies_file_2 ACU 350 Index
notemessage.text ACU 93
p3cm.modify_material 1466
p3cm.modify_material ACU 351
P p3cm.modify_ply 1467
p3cm.modify_ply ACU 351
p3_cad_get_entity_name REF 20 p3cm.new 1470
p3_cad_get_entity_strings REF 21 p3cm.new ACU 352
Main Index
32 INDEX

p3cm.open 1472 pref_entity_dp_set ACU 438


p3cm.open ACU 353 pref_entity_set 1681
p3cm.save_as_2 1473 pref_entity_set ACU 448
p3cm.save_as_2 ACU 354 pref_env_get_integer 1683
p3cm.set_export_options_2 1475 pref_env_get_integer 3269
p3cm.set_export_options_2 ACU 354 pref_env_get_integer ACU 438
p3cm.set_graphics_options_2 1476 pref_env_get_integer REF 1113
p3cm.set_graphics_options_2 ACU 355 pref_env_get_integer REF 1372
p3cm.set_offsets 1471 pref_env_get_logical 1684
p3cm.set_offsets ACU 353 pref_env_get_logical 3270
p3cm.set_tolerance 1478 pref_env_get_logical ACU 439
p3cm.set_tolerance ACU 355 pref_env_get_logical REF 1114
p3cm.show_laminate 1479 pref_env_get_logical REF 1372
p3cm.show_laminate ACU 356 pref_env_get_real 1685
p3cm.show_layup_exploded 1482 pref_env_get_real 3271
p3cm.show_layup_exploded ACU 357 pref_env_get_real ACU 439
p3cm.show_ply 1483 pref_env_get_real REF 1115
p3cm.show_ply ACU 357 pref_env_get_real REF 1372
pcntcomplete_close PCL 265 pref_env_get_string 1686
pcntcomplete_init PCL 265 pref_env_get_string 3272
pcntcomplete_update PCL 266 pref_env_get_string ACU 440
pfk_get_feat_with_params REF 37 pref_env_get_string ACU 599
pfk_get_features REF 36 pref_env_get_string REF 1116
pfk_get_num_feat REF 37 pref_env_get_string REF 1372
pfk_get_num_feat_with_params REF 38 pref_env_set_integer 3274
pfk_get_versioned_file_name REF 38 pref_env_set_integer REF 1117
pfk_highlight_feat_name REF 38 pref_env_set_logical 3275
pfk_is_part_imported REF 39 pref_env_set_logical REF 1118
pfk_modify_feature_part_name REF 39 pref_env_set_real 3276
pfk_reimport REF 40 pref_env_set_real REF 1119
pfk_suppress_feat REF 40 pref_env_set_string 3277
pfk_unsuppress_feat REF 40 pref_env_set_string REF 1120
pfk_update REF 41 pref_envl_set_logical REF 1373
point_color 3299 pref_fa_get 1686
point_color REF 1134 pref_fa_get ACU 440
point_elem_color 3298 pref_fa_set 1688
point_elem_color REF 1133 pref_fa_set ACU 441
point_elem_label 3300 pref_fem_get 3334
point_elem_label REF 1135 pref_fem_get REF 1156
point_label 3301 pref_fem_get REF 1373
point_label REF 1135 pref_fem_set 3335
pref_anal_get 1675 pref_fem_set REF 1157
pref_anal_get ACU 436 pref_geo_cid_int_string 1689
pref_anal_set 1676 pref_geo_cid_int_string ACU 443
pref_anal_set ACU 436 pref_geo_cid_string_int 1690
Index pref_confirm_get 1677 pref_geo_cid_string_int ACU 443
pref_confirm_get ACU 437 pref_geo_get 1691
pref_display_method_get 1678 pref_geo_get 3260
pref_display_method_get ACU 437 pref_geo_get ACU 444
pref_entity_dp_get 1679 pref_geo_get REF 1109
pref_entity_dp_get ACU 437 pref_geo_get REF 1373
pref_entity_dp_set 1680 pref_geo_get_v1 3259
Main Index
INDEX 33

pref_geo_get_v1 REF 1109 record_begin_write PCL 79


pref_geo_set 3262 record_close PCL 77
pref_geo_set REF 1110 record_end_rw PCL 80
pref_geo_set_v1 3263 record_get_header PCL 84
pref_geo_set_v1 REF 1111 record_get_name PCL 77
pref_geometry_get_v1 3331 record_get_position PCL 83
pref_geometry_get_v1 REF 1154 record_open_new PCL 76
pref_geometry_get_v1 REF 1373 record_open_old PCL 77
pref_geometry_set_v1 3332 record_read_chars PCL 82
pref_geometry_set_v1 REF 1155 record_read_halfints PCL 82
pref_geometry_set_v1 REF 1374 record_read_int4bits PCL 82
pref_get_anal_attributes 1692 record_read_int8bits PCL 82
pref_get_anal_attributes ACU 444 record_read_intbits PCL 83
pref_get_anal_code_count 1692 record_read_ints PCL 82
pref_get_anal_code_count ACU 445 record_read_logicals PCL 83
pref_get_anal_type_count 1693 record_read_pointers PCL 83
pref_get_anal_type_count ACU 445 record_read_reals PCL 82
pref_get_next_anal_code 1694 record_read_rechead PCL 80
pref_get_next_anal_code ACU 446 record_set_position PCL 84
pref_get_next_anal_type 1695 record_update PCL 84
pref_get_next_anal_type ACU 446 record_write_chars PCL 81
pref_global_get 1696 record_write_halfints PCL 81
pref_global_get 3265 record_write_int4bits PCL 81
pref_global_get ACU 446 record_write_int8bits PCL 81
pref_global_get REF 1112 record_write_intbits PCL 81
pref_global_get REF 1374 record_write_ints PCL 81
pref_global_set 3267 record_write_logicals PCL 81
pref_global_set REF 1112 record_write_pointers PCL 82
pref_graphics_get 1696 record_write_reals PCL 81
pref_graphics_get ACU 447 record_write_rechead PCL 80
pref_graphics_marker_data_get 1698 record_writerec_chars PCL 78
pref_graphics_marker_data_get ACU 448 record_writerec_intchr PCL 78
pref_graphics_set 3302 record_writerec_ints PCL 78
pref_graphics_set REF 1136 record_writerec_reals PCL 79
pref_graphics_set REF 1375 refine_mesh_1 REF 670
pref_report_get 3327 rem_flat_tet REF 1287
pref_report_get REF 1152 renderstyle 3308
pref_report_set 3329 renderstyle REF 1138
pref_report_set REF 1153 renderstyle REF 1378
pref_report_set REF 1377 res_create_deform_plot_rec2 REF 1304
ps_get_string_attribute REF 41 res_create_deform_plot_rec3 REF 1307
quad_elem_color 3305 res_create_fringe_plot_rec3 REF 1312
quad_elem_color REF 1137 res_create_result_filter REF 1316
quad_elem_label 3307 res_create_tensor_plot_rec REF 1317
quad_elem_label REF 1138 res_create_vector_plot_rec REF 1320
res_data_bulk_get_loadcases 2859 Index
res_data_bulk_get_loadcases REF 866
R res_data_complex_form 2842
res_data_complex_form REF 856
rdm_result_minmax_get 1645
res_data_csys_dump 2847
rdm_result_minmax_get ACU 424
res_data_csys_dump REF 859
record_begin_read PCL 79
res_data_dbres_list 2822
Main Index
34 INDEX

res_data_dbres_list REF 844 res_data_scalar_to_vector 2839


res_data_defined 2845 res_data_scalar_to_vector REF 854
res_data_defined REF 857 res_data_title REF 842
res_data_delete 2861 res_db_cgetlayerposids 1647
res_data_delete REF 868 res_db_cgetlayerposids ACU 424
res_data_dump 2846 res_db_cgetrescases 1648
res_data_dump REF 858 res_db_cgetrescases ACU 425
res_data_function 2837 res_deinit_deform_plot REF 1322
res_data_function REF 853 res_deinit_deformed_plot REF 1322
res_data_get_dbresult 2851 res_deinit_fringe_plot REF 1323
res_data_get_dbresult REF 862 res_deinit_tensor_plot REF 1323
res_data_get_layerpos_id 2858 res_deinit_vector_plot REF 1324
res_data_get_layerpos_id REF 865 res_display_anim_active 2918
res_data_get_layerpos_name 2857 res_display_anim_active REF 908
res_data_get_layerpos_name REF 865 res_display_anim_bounds 2908
res_data_get_ntitles 2820 res_display_anim_bounds REF 905
res_data_get_ntitles REF 843 res_display_anim_clear 2917
res_data_get_restype_ids 2860 res_display_anim_clear REF 908
res_data_get_restype_ids REF 866 res_display_anim_frame 2915
res_data_get_result_ids 2856 res_display_anim_frame REF 907
res_data_get_result_ids REF 864 res_display_anim_image_create 2904
res_data_get_result_names 2855 res_display_anim_image_create REF 904
res_data_get_result_names REF 864 res_display_anim_method 2909
res_data_get_source_type 2850 res_display_anim_method REF 906
res_data_get_source_type REF 861 res_display_anim_run 2911
res_data_get_subcase_id 2854 res_display_anim_run REF 906
res_data_get_subcase_id REF 863 res_display_anim_setup_2d 2901
res_data_get_subcase_name 2853 res_display_anim_setup_2d REF 903
res_data_get_subcase_name REF 863 res_display_anim_setup_3d 2902
res_data_get_titles 2821 res_display_anim_setup_3d REF 904
res_data_get_titles REF 843 res_display_anim_setup_image 2906
res_data_list_interp_factor 2835 res_display_anim_setup_image REF 905
res_data_list_interp_factor REF 852 res_display_anim_step 2913
res_data_list_interp_gv 2833 res_display_anim_step REF 907
res_data_list_interp_gv REF 851 res_display_animation_status REF 909
res_data_list_max 2829 res_display_cleanup 2920
res_data_list_max REF 847 res_display_cleanup REF 909
res_data_list_min 2831 res_display_count_tools 2935
res_data_list_min REF 849 res_display_count_tools REF 918
res_data_list_sum 2827 res_display_deformation_create 2885
res_data_list_sum REF 846 res_display_deformation_create REF 889
res_data_load_dbresult REF 840 res_display_deformation_modify 2887
res_data_next 2844 res_display_deformation_modify REF 890
res_data_next REF 857 res_display_deformation_post REF 893
res_data_pattern_dump 2848 res_display_fringe_create 2865
Index res_data_pattern_dump REF 860 res_display_fringe_create REF 873
res_data_register_list 2825 res_display_fringe_modify 2867
res_data_register_list REF 845 res_display_fringe_modify REF 875
res_data_save 2862 res_display_fringe_post 2889
res_data_save REF 869 res_display_fringe_post REF 891
res_data_scalar_to_tensor 2840 res_display_get_color_id 2927
res_data_scalar_to_tensor REF 855 res_display_get_color_id REF 913
Main Index
INDEX 35

res_display_get_color_str 2928 res_display_vector_modify REF 878


res_display_get_color_str REF 914 res_display_vector_post 2890
res_display_get_graph 2933 res_display_vector_post REF 892
res_display_get_graph REF 917 res_get_builtin_funcs REF 1328
res_display_get_nposted_tools 2923 res_init_deform_plot REF 1329
res_display_get_nposted_tools REF 911 res_init_fringe_plot REF 1329
res_display_get_ntools 2922 res_init_tensor_plot REF 1330
res_display_get_ntools REF 910 res_init_vector_plot REF 1330
res_display_get_posted_tools 2925 res_make_deform_plot REF 1332
res_display_get_posted_tools REF 912 res_make_deformed_plot REF 1331
res_display_get_tool 2931 res_make_fringe_plot REF 1334
res_display_get_tool REF 916 res_make_tensor_plot REF 1336
res_display_get_tool_data 2937 res_make_vector_plot REF 1337
res_display_get_tool_data REF 919 res_modify_absmax_envelope REF 1338
res_display_get_tool_size 2929 res_modify_absmin_envelope REF 1339
res_display_get_tool_size REF 915 res_modify_margins_envelope REF 1341
res_display_graph_create 2881 res_modify_max_envelope REF 1342
res_display_graph_create REF 886 res_modify_min_envelope REF 1344
res_display_graph_modify 2883 res_modify_normalize REF 1345
res_display_graph_modify REF 888 res_modify_print_elems REF 1351
res_display_graph_post 2895 res_modify_safety_margins REF 1346
res_display_graph_post REF 895 res_modify_signedmax_envelop REF 1347
res_display_report_create 2877 res_modify_signedmax_envelope REF 1348
res_display_report_create REF 882 res_modify_signedmin_envelope REF 1349
res_display_report_modify 2879 res_report_deinit REF 1352
res_display_report_modify REF 885 res_report_init REF 1353
res_display_report_write 2893 res_report_write REF 1356
res_display_report_write REF 894 res_utl_calc_results 2808
res_display_set_graph_data REF 1324 res_utl_calc_results REF 830
res_display_set_graph_data REF 921 res_utl_clear_result 2785
res_display_set_tool_data REF 1326 res_utl_clear_result REF 780
res_display_set_tool_data REF 920 res_utl_create_elem_result 1650
res_display_tensor_create 2873 res_utl_create_elem_result 2798
res_display_tensor_create REF 879 res_utl_create_elem_result ACU 425
res_display_tensor_modify 2875 res_utl_create_elem_result REF 1357
res_display_tensor_modify REF 881 res_utl_create_elem_result REF 820
res_display_tensor_post 2892 res_utl_create_nodal_result 2792
res_display_tensor_post REF 893 res_utl_create_nodal_result REF 1360
res_display_tool_anim_get REF 902 res_utl_create_nodal_result REF 800
res_display_tool_anim_gv REF 900 res_utl_cross_results 2810
res_display_tool_anim_index REF 899 res_utl_cross_results REF 832
res_display_tool_anim_off REF 901 res_utl_dot_results 2809
res_display_tool_anim_scale REF 898 res_utl_dot_results REF 831
res_display_tool_delete 2899 res_utl_extract_elem_history 2796
res_display_tool_delete REF 897 res_utl_extract_elem_history REF 811
res_display_tool_exist 2898 res_utl_extract_elem_history2 1653 Index
res_display_tool_exist REF 896 res_utl_extract_elem_history2 ACU 426
res_display_tool_unpost 2896 res_utl_extract_elem_history2 REF 1361
res_display_tool_unpost REF 896 res_utl_extract_elem_history2 REF 815
res_display_vector_create 2869 res_utl_extract_elem_pos_ids 2781
res_display_vector_create REF 876 res_utl_extract_elem_pos_ids REF 775
res_display_vector_modify 2871 res_utl_extract_elem_results 2794
Main Index
36 INDEX

res_utl_extract_elem_results REF 802 rpc_clear_output 1723


res_utl_extract_elem_results2 1656 rpc_clear_output ACU 469
res_utl_extract_elem_results2 ACU 427 rpc_clear_timeout ACU 600
res_utl_extract_elem_results2 REF 1361 rpc_get_bool_array 1725
res_utl_extract_elem_results2 REF 806 rpc_get_bool_array ACU 469
res_utl_extract_nodal_history 2790 rpc_get_boolean 1727
res_utl_extract_nodal_history REF 791 rpc_get_boolean ACU 470
res_utl_extract_nodal_history2 1658 rpc_get_command 1729
res_utl_extract_nodal_history2 ACU 429 rpc_get_command ACU 471
res_utl_extract_nodal_history2 REF 1361 rpc_get_int_array 1730
res_utl_extract_nodal_history2 REF 795 rpc_get_int_array ACU 469
res_utl_extract_nodal_results 2789 rpc_get_integer 1732
res_utl_extract_nodal_results REF 784 rpc_get_integer ACU 471
res_utl_extract_nodal_results2 1661 rpc_get_real 1734
res_utl_extract_nodal_results2 ACU 430 rpc_get_real ACU 472
res_utl_extract_nodal_results2 REF 1361 rpc_get_real_array 1736
res_utl_extract_nodal_results2 REF 787 rpc_get_real_array ACU 470
res_utl_extract_path_results 2800 rpc_get_status 1737
res_utl_extract_path_results REF 822 rpc_get_status ACU 472
res_utl_get_elem_pos_loc 2782 rpc_get_string 1739
res_utl_get_elem_pos_loc REF 777 rpc_get_string ACU 473
res_utl_get_global_var_for_lc 2806 rpc_init_client 1741
res_utl_get_global_var_for_lc REF 828 rpc_init_client ACU 464
res_utl_get_global_vars 2805 rpc_inquire_count 1742
res_utl_get_global_vars REF 828 rpc_inquire_count ACU 473
res_utl_get_loadcases 2801 rpc_inquire_item 1744
res_utl_get_loadcases REF 825 rpc_inquire_item ACU 473
res_utl_get_result_entities 2786 rpc_put_bool_array 1746
res_utl_get_result_entities REF 781 rpc_put_bool_array ACU 465
res_utl_get_result_ids 2803 rpc_put_boolean 1748
res_utl_get_result_ids REF 826 rpc_put_boolean ACU 466
res_utl_get_result_info 2783 rpc_put_command 1750
res_utl_get_result_info REF 779 rpc_put_command ACU 467
res_utl_get_result_layers 2804 rpc_put_int_array 1752
res_utl_get_result_layers REF 827 rpc_put_int_array ACU 465
res_utl_get_result_type 2787 rpc_put_integer 1753
res_utl_get_result_type REF 782 rpc_put_integer ACU 467
res_utl_get_results_cids 2788 rpc_put_real 1755
res_utl_get_results_cids REF 1362 rpc_put_real ACU 467
res_utl_get_results_cids REF 783 rpc_put_real_array 1757
res_utl_get_subcases 2802 rpc_put_real_array ACU 466
res_utl_get_subcases REF 825 rpc_put_status 1759
res_utl_get_subcases_by_gv 2807 rpc_put_status ACU 468
res_utl_get_subcases_by_gv REF 829 rpc_put_string 1760
res_utl_transform_nodal_results 1664 rpc_put_string ACU 468
Index res_utl_transform_nodal_results ACU 431 rpc_timeout 1762
res_utl_transform_results 2811 rpc_timeout ACU 465
res_utl_transform_results REF 833
rpc_add_server 1720
rpc_add_server ACU 463
rpc_call 1721
S
sec_is_product_in_matrix ACU 475
rpc_call ACU 464
Main Index
INDEX 37

sec_is_product_licensed ACU 475 sgm_const_curve_2d_arc3point_v2 REF 282


sec_license_type ACU 475 sgm_const_curve_2d_arcangles 2291
select_focus.exit 1716 sgm_const_curve_2d_arcangles REF 324
select_focus.exit REF 42 sgm_const_curve_2d_arcangles_v1 2292
set_current_dir 640 sgm_const_curve_2d_arcangles_v1 REF 325
set_current_dir ACU 19 sgm_const_curve_2d_circle 2295
sf_commit PCL 120 sgm_const_curve_2d_circle REF 327
sf_force_write PCL 121 sgm_const_curve_2d_circle_v1 2296
sf_pause PCL 120 sgm_const_curve_2d_circle_v1 REF 328
sf_play PCL 119 sgm_const_curve_2d_normal 2297
sf_play_default PCL 119 sgm_const_curve_2d_normal REF 1203
sf_record_default PCL 119 sgm_const_curve_2d_normal REF 330
sf_rotation PCL 121 sgm_const_curve_2d_normal_v1 2298
sf_verbose PCL 120 sgm_const_curve_2d_normal_v1 REF 1204
sf_write PCL 121 sgm_const_curve_2d_normal_v1 REF 331
sf_write_disable 641 sgm_const_curve_arc3point 2242
sf_write_disable ACU 25 sgm_const_curve_arc3point REF 283
sf_write_disable ACU 489 sgm_const_curve_bspline 2243
sf_write_disable PCL 121 sgm_const_curve_bspline REF 284
sgm_associate_curve_curve 2361 sgm_const_curve_extract 2244
sgm_associate_curve_curve REF 386 sgm_const_curve_extract REF 285
sgm_associate_curve_surface 2362 sgm_const_curve_extract_edge 2245
sgm_associate_curve_surface REF 387 sgm_const_curve_extract_edge REF 286
sgm_associate_element_curve_v1 REF 380 sgm_const_curve_fillet REF 1206
sgm_associate_element_point_v1 REF 381 sgm_const_curve_fillet REF 287
sgm_associate_element_solid_v1 REF 382 sgm_const_curve_intersect 2300
sgm_associate_element_surf_v1 REF 383 sgm_const_curve_intersect REF 333
sgm_associate_nodes_curve 1052 sgm_const_curve_involute REF 1206
sgm_associate_nodes_curve ACU 163 sgm_const_curve_involute REF 288
sgm_associate_point_curve 2358 sgm_const_curve_loft 2246
sgm_associate_point_curve REF 384 sgm_const_curve_loft REF 1206
sgm_associate_point_surface 2359 sgm_const_curve_loft REF 289
sgm_associate_point_surface REF 385 sgm_const_curve_manifold_2point 2301
sgm_cad_access_v1 1717 sgm_const_curve_manifold_2point REF 334
sgm_cad_access_v1 REF 1174 sgm_const_curve_manifold_npoint 2303
sgm_cad_access_v1 REF 43 sgm_const_curve_manifold_npoint REF 335
sgm_catia_access 1719 sgm_const_curve_project 2304
sgm_catia_access REF 47 sgm_const_curve_project REF 336
sgm_catia_access_v1 1721 sgm_const_curve_project_v1 1053
sgm_catia_access_v1 REF 50 sgm_const_curve_project_v1 ACU 163
sgm_catia_import REF 53 sgm_const_curve_revolve 2247
sgm_const_curve_2d_arc2point 2287 sgm_const_curve_revolve REF 290
sgm_const_curve_2d_arc2point REF 319 sgm_const_grid_project REF 1206
sgm_const_curve_2d_arc2point_v1 2288 sgm_const_plane_3point 2306
sgm_const_curve_2d_arc2point_v1 REF 320 sgm_const_plane_3point REF 338
sgm_const_curve_2d_arc2point_v2 2290 sgm_const_plane_curve 2307 Index
sgm_const_curve_2d_arc2point_v2 REF 322 sgm_const_plane_curve REF 1208
sgm_const_curve_2d_arc3point 2294 sgm_const_plane_curve REF 339
sgm_const_curve_2d_arc3point REF 326 sgm_const_plane_interpolate 2312
sgm_const_curve_2d_arc3point_v1 2240 sgm_const_plane_interpolate REF 343
sgm_const_curve_2d_arc3point_v1 REF 281 sgm_const_plane_leastsq 2308
sgm_const_curve_2d_arc3point_v2 2241 sgm_const_plane_leastsq REF 340
Main Index
38 INDEX

sgm_const_plane_point_vector REF 1209 sgm_const_surface_4curve_v1 2345


sgm_const_plane_point_vector REF 341 sgm_const_surface_4curve_v1 REF 372
sgm_const_plane_tangent 2310 sgm_const_surface_4edge 2252
sgm_const_plane_tangent REF 342 sgm_const_surface_4edge REF 294
sgm_const_plane_vector_interpolate REF 1210 sgm_const_surface_4edge_man 2253
sgm_const_plane_vector_normal 2313 sgm_const_surface_4edge_man REF 295
sgm_const_plane_vector_normal REF 344 sgm_const_surface_edge 2350
sgm_const_plane_vector_offset REF 1210 sgm_const_surface_edge REF 375
sgm_const_solid_2surface 2315 sgm_const_surface_extract 2348
sgm_const_solid_2surface REF 345 sgm_const_surface_extract REF 374
sgm_const_solid_2surface_v1 2316 sgm_const_surface_extract_face 2255
sgm_const_solid_2surface_v1 REF 346 sgm_const_surface_extract_face REF 296
sgm_const_solid_3surface_v1 2317 sgm_const_surface_extrude 2256
sgm_const_solid_3surface_v1 REF 347 sgm_const_surface_extrude REF 297
sgm_const_solid_3surface_v2 2319 sgm_const_surface_ncurve_v1 2347
sgm_const_solid_3surface_v2 REF 348 sgm_const_surface_ncurve_v1 REF 373
sgm_const_solid_4surface_v1 2320 sgm_const_surface_revolve 2258
sgm_const_solid_4surface_v1 REF 349 sgm_const_surface_revolve REF 1215
sgm_const_solid_4surface_v2 2322 sgm_const_surface_revolve REF 298
sgm_const_solid_4surface_v2 REF 350 sgm_const_surface_vertex 2266
sgm_const_solid_5face 2324 sgm_const_surface_vertex REF 304
sgm_const_solid_5face REF 351 sgm_const_vector_2point 2259
sgm_const_solid_6face 2326 sgm_const_vector_2point REF 299
sgm_const_solid_6face REF 353 sgm_const_vector_intersect 2260
sgm_const_solid_brep REF 1211 sgm_const_vector_intersect REF 300
sgm_const_solid_decompose 2329 sgm_const_vector_magnitude 2262
sgm_const_solid_decompose REF 357 sgm_const_vector_magnitude REF 301
sgm_const_solid_extrude 2331 sgm_const_vector_normal 2263
sgm_const_solid_extrude REF 359 sgm_const_vector_normal REF 302
sgm_const_solid_glide 2332 sgm_const_vector_product 2265
sgm_const_solid_glide REF 1212 sgm_const_vector_product REF 303
sgm_const_solid_glide REF 361 sgm_construct_solid_brep 1055
sgm_const_solid_normal 2334 sgm_construct_solid_brep ACU 183
sgm_const_solid_normal REF 363 sgm_construct_solid_volume 1056
sgm_const_solid_nsurface_v1 2335 sgm_construct_solid_volume ACU 183
sgm_const_solid_nsurface_v1 REF 365 sgm_create_curve_boundary 2268
sgm_const_solid_nsurface_v2 2336 sgm_create_curve_boundary REF 1216
sgm_const_solid_nsurface_v2 REF 366 sgm_create_curve_boundary REF 305
sgm_const_solid_revolve 2338 sgm_create_curve_bspline 2269
sgm_const_solid_revolve REF 1213 sgm_create_curve_bspline REF 306
sgm_const_solid_revolve REF 367 sgm_create_curve_chain 2271
sgm_const_solid_volume REF 1213 sgm_create_curve_chain REF 307
sgm_const_surface_2curve 2339 sgm_create_curve_chain_v1 2272
sgm_const_surface_2curve REF 368 sgm_create_curve_chain_v1 REF 1217
sgm_const_surface_2curve_man 2341 sgm_create_curve_chain_v1 REF 308
Index sgm_const_surface_2curve_man REF 369 sgm_create_curve_loft 2274
sgm_const_surface_3curve_v1 2343 sgm_create_curve_loft REF 309
sgm_const_surface_3curve_v1 REF 371 sgm_create_curve_on_surface 1058
sgm_const_surface_3edge 2249 sgm_create_curve_on_surface ACU 164
sgm_const_surface_3edge REF 291 sgm_create_surface_composite 2275
sgm_const_surface_3edge_man 2250 sgm_create_surface_composite REF 310
sgm_const_surface_3edge_man REF 292 sgm_create_surface_composite_c 1060
Main Index
INDEX 39

sgm_create_surface_composite_c ACU 172 sgm_db_get_solid 1087


sgm_create_surface_comptrim_v1 1062 sgm_db_get_solid ACU 184
sgm_create_surface_comptrim_v1 ACU 173 sgm_db_get_solid ACU 561
sgm_create_surface_decompose 2278 sgm_db_get_surface 1088
sgm_create_surface_decompose REF 312 sgm_db_get_surface ACU 175
sgm_create_surface_from_elems1 1064 sgm_db_modify_entity_label 1089
sgm_create_surface_from_elems1 ACU 174 sgm_db_modify_entity_label ACU 146
sgm_create_surface_ruled 2280 sgm_disassemble_chain 2352
sgm_create_surface_ruled REF 313 sgm_disassemble_chain REF 377
sgm_create_surface_trimmed 2282 sgm_disassemble_solid 2356
sgm_create_surface_trimmed REF 314 sgm_disassemble_solid REF 1218
sgm_create_surface_trimmed_v1 2284 sgm_disassemble_solid REF 379
sgm_create_surface_trimmed_v1 REF 316 sgm_disassemble_tsurf 2353
sgm_curve_convert_s_to_u 1066 sgm_disassemble_tsurf REF 378
sgm_curve_convert_s_to_u ACU 165 sgm_disassociate_curve 2365
sgm_curve_convert_u_to_s 1068 sgm_disassociate_curve REF 389
sgm_curve_convert_u_to_s ACU 165 sgm_disassociate_point 2364
sgm_curve_evaluate 1070 sgm_disassociate_point REF 388
sgm_curve_evaluate ACU 166 sgm_disassociate_surface 2367
sgm_db_count_iges_in_group 990 sgm_disassociate_surface REF 390
sgm_db_count_iges_in_group ACU 127 sgm_edit_brep_break_plane 2442
sgm_db_get_blob_size 1072 sgm_edit_brep_break_plane REF 469
sgm_db_get_blob_size ACU 144 sgm_edit_brep_break_plane_v1 1091
sgm_db_get_company_of_origin 1073 sgm_edit_brep_break_plane_v1 ACU 185
sgm_db_get_company_of_origin ACU 145 sgm_edit_brep_break_surface 2444
sgm_db_get_curve 1074 sgm_edit_brep_break_surface REF 470
sgm_db_get_curve ACU 167 sgm_edit_brep_break_surface_v1 1092
sgm_db_get_curve ACU 167 sgm_edit_brep_break_surface_v1 ACU 185
sgm_db_get_edge_vertex_ids 1075 sgm_edit_curve_break_parametric 2445
sgm_db_get_edge_vertex_ids ACU 195 sgm_edit_curve_break_parametric REF 471
sgm_db_get_gen_body_face_ids 1076 sgm_edit_curve_break_plane 2446
sgm_db_get_gen_body_face_ids ACU 200 sgm_edit_curve_break_plane REF 472
sgm_db_get_gen_body_vertex_ids 1078 sgm_edit_curve_break_point 2448
sgm_db_get_gen_body_vertex_ids ACU 201 sgm_edit_curve_break_point REF 473
sgm_db_get_gen_face_edge_ids 1079 sgm_edit_curve_disassemble 2449
sgm_db_get_gen_face_edge_ids ACU 198 sgm_edit_curve_disassemble REF 474
sgm_db_get_gen_face_vertex_ids 1080 sgm_edit_curve_extend_1curve 2450
sgm_db_get_gen_face_vertex_ids ACU 199 sgm_edit_curve_extend_1curve REF 475
sgm_db_get_iges_in_group 991 sgm_edit_curve_extend_2curve 2452
sgm_db_get_iges_in_group 992 sgm_edit_curve_extend_2curve REF 476
sgm_db_get_iges_in_group ACU 127 sgm_edit_curve_extend_circle 2453
sgm_db_get_iges_in_group ACU 554 sgm_edit_curve_extend_circle REF 1218
sgm_db_get_num_edges_face 1081 sgm_edit_curve_extend_circle REF 477
sgm_db_get_num_edges_face ACU 199 sgm_edit_curve_extend_points 2454
sgm_db_get_num_faces_body 1082 sgm_edit_curve_extend_points REF 478
sgm_db_get_num_faces_body ACU 201 sgm_edit_curve_merge 2455 Index
sgm_db_get_num_loops_face 1083 sgm_edit_curve_merge REF 479
sgm_db_get_num_loops_face ACU 175 sgm_edit_curve_refit 2457
sgm_db_get_num_vertices_body 1085 sgm_edit_curve_refit REF 480
sgm_db_get_num_vertices_body ACU 184 sgm_edit_curve_reverse 2458
sgm_db_get_point 1086 sgm_edit_curve_reverse REF 481
sgm_db_get_point ACU 152 sgm_edit_curve_trim_parametric 2459
Main Index
40 INDEX

sgm_edit_curve_trim_parametric REF 482 sgm_get_solid_volume ACU 187


sgm_edit_curve_trim_point 2460 sgm_get_surface_area 1110
sgm_edit_curve_trim_point REF 483 sgm_get_surface_area ACU 177
sgm_edit_point_equivalence 1093 sgm_incongruent_geom_display 1111
sgm_edit_point_equivalence ACU 152 sgm_incongruent_geom_display ACU 146
sgm_edit_solid_break 1094 sgm_incongruent_geom_exist 1112
sgm_edit_solid_break ACU 186 sgm_incongruent_geom_exist ACU 146
sgm_edit_solid_break_v1 2461 sgm_incongruent_geom_seg_exit 1112
sgm_edit_solid_break_v1 REF 1220 sgm_incongruent_geom_seg_exit ACU 147
sgm_edit_solid_break_v1 REF 484 sgm_intersect_curves 1727
sgm_edit_solid_break_v2 REF 1221 sgm_intersect_curves REF 1178
sgm_edit_solid_break_v2 REF 486 sgm_intersect_curves REF 60
sgm_edit_solid_disassemble 2464 sgm_nearest_point_on_curve 1114
sgm_edit_solid_disassemble REF 1221 sgm_nearest_point_on_curve ACU 196
sgm_edit_solid_disassemble REF 488 sgm_nearest_point_on_curve_aea 1115
sgm_edit_solid_refit_v1 1096 sgm_nearest_point_on_curve_aea ACU 196
sgm_edit_solid_refit_v1 ACU 186 sgm_nearest_point_on_surface 1729
sgm_edit_solid_reverse 1097 sgm_nearest_point_on_surface REF 1179
sgm_edit_solid_reverse ACU 187 sgm_nearest_point_on_surface REF 61
sgm_edit_surface_add_hole REF 489 sgm_node_on_curve 1117
sgm_edit_surface_add_vertex REF 490 sgm_node_on_curve ACU 168
sgm_edit_surface_break 2465 sgm_node_on_point 1118
sgm_edit_surface_break REF 491 sgm_node_on_point ACU 154
sgm_edit_surface_break_plane 2470 sgm_node_on_surface 1120
sgm_edit_surface_break_plane REF 1222 sgm_node_on_surface ACU 177
sgm_edit_surface_break_plane REF 495 sgm_ptc_access_v2 1730
sgm_edit_surface_break_v1 2468 sgm_ptc_access_v2 REF 62
sgm_edit_surface_break_v1 REF 1223 sgm_ptc_access_v4 REF 64
sgm_edit_surface_break_v1 REF 493 sgm_renumber REF 391
sgm_edit_surface_disassemble 2471 sgm_show_angle_between_curves 1121
sgm_edit_surface_disassemble REF 496 sgm_show_angle_between_curves ACU 169
sgm_edit_surface_edge_match 1098 sgm_show_surface_normals 1123
sgm_edit_surface_edge_match ACU 176 sgm_show_surface_normals ACU 178
sgm_edit_surface_refit 2474 sgm_show_surface_normals ACU 559
sgm_edit_surface_refit REF 497 sgm_solid_evaluate 1124
sgm_edit_surface_remove_hole REF 498 sgm_solid_evaluate ACU 187
sgm_edit_surface_remove_vertex REF 499 sgm_surface_evaluate 1126
sgm_edit_surface_reverse 2475 sgm_surface_evaluate ACU 179
sgm_edit_surface_reverse REF 500 sgm_sweep_solid_arc 2328
sgm_edit_surface_sew 1102 sgm_sweep_solid_arc REF 355
sgm_edit_surface_sew ACU 176 sgm_transform_mcord 2407
sgm_euclid_access 1723 sgm_transform_mcord REF 434
sgm_euclid_access REF 54 sgm_transform_mirror 2409
sgm_euclid_access_v1 1725 sgm_transform_mirror REF 1224
sgm_euclid_access_v1 REF 57 sgm_transform_mirror REF 436
Index sgm_get_arc_center_radius 1105 sgm_transform_pivot 2411
sgm_get_arc_center_radius ACU 167 sgm_transform_pivot REF 438
sgm_get_close_points 1106 sgm_transform_position 2413
sgm_get_close_points ACU 153 sgm_transform_position REF 440
sgm_get_curve_length 1108 sgm_transform_rotate 2415
sgm_get_curve_length ACU 168 sgm_transform_rotate REF 442
sgm_get_solid_volume 1109 sgm_transform_scale 2417
Main Index
INDEX 41

sgm_transform_scale REF 444 stream_get_header PCL 86


sgm_transform_translate 2422 stream_get_name PCL 86
sgm_transform_translate REF 450 stream_get_position PCL 87
sgm_u_calc_mscale_mat 1127 stream_open PCL 85
sgm_u_calc_mscale_mat ACU 147 stream_read_char PCL 88
sgm_verify_solid_brep 1128 stream_read_int PCL 87
sgm_verify_solid_brep ACU 188 stream_read_real PCL 88
sgm_verify_solid_brep ACU 562 stream_set_header PCL 86
sgm_verify_surface_boundary 2286 stream_set_position PCL 87
sgm_verify_surface_boundary REF 318 stream_skip_char PCL 90
shade_color 3309 stream_skip_int PCL 89
shade_color REF 1139 stream_skip_real PCL 90
solid_color 3311 stream_update PCL 90
solid_color REF 1140 stream_write_char PCL 89
solid_label 3312 stream_write_int PCL 88
solid_label REF 1141 stream_write_real PCL 89
split_2n_edge_for_all_elm REF 1288 Streamline REF 1008
split_2n_edge_for_all_elm REF 671 string_newline_count 1763
split_3n_face_for_all_elm REF 1288 string_newline_count ACU 477
split_3n_face_for_all_elm REF 672 string_newline_count PCL 62
start_vrml_animation 828 string_newline_position 1764
start_vrml_animation ACU 80 string_newline_position ACU 477
str_abbreviation PCL 61 string_newline_position PCL 63
str_assign PCL 55 string_read PCL 94
str_datatype PCL 59 string_write PCL 95
str_equal PCL 57 surface_color 3313
str_find_match PCL 56 surface_color REF 1142
str_find_nomatch PCL 57 surface_label 3314
str_formatc PCL 60 surface_label REF 1143
str_formatf PCL 60 Sweep Function Input Value Tables REF 572
str_from_ascii PCL 62 sys_allocate_array PCL 139
str_from_integer PCL 58 sys_allocate_string PCL 144
str_from_logical PCL 59 sys_array_hbound PCL 145
str_from_real PCL 59 sys_array_lbound PCL 145
str_from_real_signif_digit REF 1289 sys_array_nbound PCL 145
str_from_real_signif_digit REF 673 sys_class_get PCL 146
str_index PCL 56 sys_class_set PCL 146
str_length PCL 53 sys_clock PCL 138
str_maxlength PCL 53 sys_cputime PCL 138
str_pattern PCL 62 sys_date PCL 137
str_strip_lead PCL 54 sys_eval PCL 147
str_strip_trail PCL 55 sys_free_array PCL 143
str_substr PCL 55 sys_free_string PCL 144
str_to_ascii PCL 61 sys_func_where PCL 148
str_to_integer PCL 57 sys_get_env PCL 153
str_to_logical PCL 58 sys_get_errno_msg PCL 153 Index
str_to_lower PCL 54 sys_get_info PCL 153
str_to_real PCL 58 sys_get_user PCL 154
str_to_upper PCL 54 sys_hash_stat PCL 147
str_token PCL 60 sys_input PCL 151
Stream Surface REF 1009 sys_library PCL 152
stream_close PCL 85 sys_move_raw PCL 136
Main Index
42 INDEX

sys_path PCL 152 trim_surface_label REF 1149


sys_poll_option PCL 150
sys_product PCL 136
sys_reallocate_array PCL 139
sys_reallocate_string PCL 144
U
ugi_export_iges REF 74
sys_release PCL 137
ugi_export_iges_v1 642
sys_sf_argopt PCL 148
ugi_export_iges_v1 ACU 22
sys_sf_callopt PCL 148
ugi_export_iges_v1 ACU 490
sys_sf_commit PCL 149
ugi_export_iges_v1 REF 1179
sys_sf_undo PCL 150
ugi_export_iges_v1 REF 75
sys_sf_vwclear PCL 149
ugi_export_iges_v2 REF 1180
sys_sf_write PCL 149
ugi_export_iges_v2 REF 77
sys_stop_input PCL 151
ugi_import_iges 1740
sys_time PCL 137
ugi_import_iges REF 78
sys_trace PCL 150
ugi_import_iges_v3 643
sys_traceback PCL 151
ugi_import_iges_v3 ACU 22
ugi_import_iges_v4 REF 80
T ugi_query_iges REF 1181
ugi_query_iges_v2 REF 82
Tensor REF 1011 ui_abortwidget_create ACU 541
tet_elem_color 3315 ui_add_help 858
tet_elem_color REF 1144 ui_add_help ACU 113
tet_elem_label 3316 ui_answer_message PCL 111
tet_elem_label REF 1145 ui_button_create PCL 231
text_close PCL 96 ui_buttonicon_create PCL 232
text_file_query PCL 100 ui_cascadeitem_create PCL 233
text_flush PCL 96 ui_clear_focus 860
text_get_file_size PCL 99 ui_clear_focus ACU 108
text_get_name PCL 97 ui_colorbar_create PCL 236
text_get_position PCL 98 ui_colormenu_create PCL 234
text_open PCL 96 ui_cursor_set PCL 237
text_read PCL 98 ui_databox_create PCL 238
text_read_string PCL 97 ui_databox_get_current PCL 239
text_set_position PCL 99 ui_exec_command 861
text_truncate PCL 99 ui_exec_command ACU 104
text_write PCL 98 ui_exec_function PCL 239
text_write_string PCL 97 ui_file_create PCL 240
Threshold REF 1015 ui_flush ACU 538
timer_off 1765 ui_flush_events ACU 538
timer_off ACU 480 ui_form_create PCL 243
timer_on 1766 ui_form_delete 861
timer_on ACU 480 ui_form_delete ACU 104
transform_pts 1129 ui_form_delete PCL 244
transform_pts ACU 202 ui_form_display PCL 245
tri_elem_color 3317 ui_form_exists 862
Index
tri_elem_color REF 1146 ui_form_exists ACU 105
tri_elem_label 3318 ui_form_hide PCL 245
tri_elem_label REF 1147 ui_form_is_displayed 864
trim_surface_color 3320 ui_form_is_displayed 865
trim_surface_color REF 1148 ui_form_is_displayed ACU 105
trim_surface_label 3322 ui_form_to_file PCL 246
Main Index
INDEX 43

ui_form_to_frame 645 ui_selectdatabox_create PCL 269


ui_form_to_frame ACU 28 ui_selectframe_create PCL 272
ui_form_to_frame ACU 489 ui_separator_create PCL 273
ui_form_to_frame PCL 247 ui_set_fixedfont PCL 274
ui_frame_create PCL 248 ui_set_focus PCL 275
ui_framemaker 646 ui_slidebar_create PCL 276
ui_framemaker ACU 28 ui_spread_cell_delete PCL 277
ui_framemaker PCL 249 ui_spread_cells_delete PCL 277
ui_get_client 867 ui_spread_create PCL 278
ui_get_client ACU 106 ui_spread_get_cell PCL 280
ui_get_help 867 ui_spread_get_cell_info PCL 280
ui_get_help ACU 113 ui_spread_get_cell_length PCL 281
ui_get_server 869 ui_spread_get_layer_value PCL 281
ui_get_server ACU 107 ui_spread_get_num_vis_rows PCL 281
ui_graph_create 869 ui_spread_get_selected PCL 282
ui_graph_create 870 ui_spread_get_top_row PCL 282
ui_graph_create ACU 106 ui_spread_row_create PCL 283
ui_helpmenu_create ACU 540 ui_spread_row_delete PCL 283
ui_is_initialized 871 ui_spread_set_cell PCL 284
ui_is_initialized ACU 106 ui_spread_set_cell_info PCL 285
ui_item_create PCL 250 ui_spread_set_cells PCL 285
ui_item_delete PCL 251 ui_spread_set_display PCL 286
ui_item_deleteall PCL 252 ui_spread_set_label PCL 286
ui_item_deleteselected PCL 252 ui_spread_set_layer_value PCL 287
ui_item_display PCL 252 ui_spread_set_selected PCL 287
ui_item_hide PCL 253 ui_spread_set_top_row PCL 288
ui_item_idfromlabel PCL 253 ui_spread_set_value_label PCL 288
ui_item_labelfromname PCL 253 ui_switch_create PCL 289
ui_item_namefromlabel PCL 254 ui_sys_command 873
ui_item_relabel PCL 254 ui_sys_command ACU 103
ui_itemicon_create PCL 255 ui_sys_return 874
ui_label_create PCL 256 ui_sys_return ACU 103
ui_labelicon_create PCL 257 ui_sys_return ACU 539
ui_list_select_nitems PCL 261 ui_text_create PCL 291
ui_listbox_create PCL 258 ui_text_select 874
ui_listbox_items_create PCL 259 ui_text_select 875
ui_listbox_items_delete PCL 260 ui_text_select ACU 103
ui_listbox_select_items PCL 260 ui_text_select ACU 539
ui_listbox_unselectall PCL 261 ui_toggle_create PCL 292
ui_menu_create PCL 262 ui_toggleicon_create PCL 293
ui_modalform_create PCL 263 ui_verify_name PCL 293
ui_optionmenu_create PCL 264 ui_wid_delete PCL 294
ui_override_message PCL 112 ui_wid_exists PCL 294
ui_read_integer PCL 110 ui_wid_exit 877
ui_read_logical PCL 110 ui_wid_exit ACU 104
ui_read_real PCL 110 ui_wid_get PCL 295 Index
ui_read_string PCL 111 ui_wid_get_vstring PCL 302
ui_register_help 871 ui_wid_hide_forms 877
ui_register_help ACU 113 ui_wid_hide_forms ACU 104
ui_ring_bell PCL 266 ui_wid_refresh PCL 302
ui_scrollframe_create PCL 267 ui_wid_restore PCL 303
ui_scrollitem_setvisible PCL 268 ui_wid_restore_widget 878
Main Index
44 INDEX

ui_wid_restore_widget ACU 108 uil_list_boolean.create 2104


ui_wid_restore_widget ACU 542 uil_list_union_expr 1766
ui_wid_save PCL 303 uil_list_union_expr ACU 479
ui_wid_save_widget 880 uil_pcntcomplete.close 886
ui_wid_save_widget ACU 108 uil_pcntcomplete.close ACU 102
ui_wid_save_widget ACU 542 uil_pcntcomplete.initlz 886
ui_wid_set PCL 304 uil_pcntcomplete.initlz ACU 102
ui_window_create ACU 540 uil_pref_analysis.set_analysis_pref 3257
ui_write PCL 109 uil_pref_analysis.set_analysis_pref PCL 345
ui_write_line PCL 112 uil_pref_analysis.set_analysis_pref REF 1107
ui_writec PCL 113 uil_primary.get_menubar_id 1738
ui_writef PCL 113 uil_primary.get_menubar_id 887
uid_get_border_sizes 882 uil_primary.get_menubar_id ACU 102
uid_get_border_sizes ACU 100 uil_primary.get_menubar_id REF 73
uid_get_font_heights 883 uil_primary_file.enable_entire_menu ACU 543
uid_get_font_heights ACU 101 uil_primary_file.enable_item ACU 543
uid_get_screen_info 883 uil_primary_pref.enable_item ACU 543
uid_get_screen_info ACU 100 uil_utils_listbox.append_list 888
uid_set_sys_pix 884 uil_utils_listbox.append_list ACU 110
uid_set_sys_pix ACU 101 uil_utils_listbox.append_list ACU 546
uil_app_analysis.change_current_branch 1592 uil_utils_listbox.create_list 889
uil_app_analysis.change_current_branch uil_utils_listbox.create_list ACU 110
ACU 400 uil_utils_listbox.create_list ACU 545
uil_app_analysis.get_real_name 885 uil_utils_listbox.delete_item 890
uil_app_analysis.get_real_name ACU 101 uil_utils_listbox.delete_item ACU 111
uil_app_results.animate_func REF 1185 uil_utils_listbox.delete_item_list 892
uil_db_commit 1731 uil_utils_listbox.delete_item_list ACU 112
uil_db_commit REF 67 uil_utils_listbox.delete_selected 893
uil_db_undo 1732 uil_utils_listbox.delete_selected ACU 112
uil_db_undo REF 68 uil_utils_listbox.get_all 895
uil_entity_group_members_get 993 uil_utils_listbox.get_all ACU 111
uil_entity_group_members_get ACU 117 uil_utils_listbox.get_selected 896
uil_file_close.go 1733 uil_utils_listbox.get_selected ACU 110
uil_file_close.go REF 68 uil_utils_listbox.get_unselected 898
uil_file_new.go 1734 uil_utils_listbox.get_unselected ACU 111
uil_file_new.go REF 69 uil_utils_listbox.select 899
uil_file_open.go 1735 uil_utils_listbox.select ACU 109
uil_file_open.go REF 70 uil_utils_listbox.select ACU 547
uil_file_open.open_db 648 uil_utils_listbox.select_all 901
uil_file_open.open_db ACU 21 uil_utils_listbox.select_all ACU 112
uil_group_members_get 1778 uil_utils_listbox.select_list 902
uil_group_members_get REF 118 uil_utils_listbox.select_list ACU 109
uil_imaging_coordframes.post_cf 1736 uil_utils_listbox.select_list ACU 544
uil_imaging_coordframes.post_cf REF 71 uil_utils_listbox.select_none 903
uil_imaging_coordframes.unpost_cf 1737 uil_utils_listbox.select_none ACU 109
Index uil_imaging_coordframes.unpost_cf REF 72 uil_utils_listbox.select_one ACU 547
uil_list_a.clear 2102 uil_viewport_tiling.tile 1739
uil_list_a.previous 2098 uil_viewport_tiling.tile REF 73
uil_list_a.replace 2105 user_db_close 605
uil_list_b.clear 2103 user_db_close ACU 6
uil_list_b.previous 2100 user_db_new 605
uil_list_b.replace 2107 user_db_new ACU 5
Main Index
INDEX 45

user_db_open 606 verify_boundaries_display_mgr.plot 832


user_db_open ACU 6 verify_boundaries_display_mgr.plot ACU 30
user_message 905 verify_boundaries_display_mgr.plot REF 644
user_message ACU 92 virtual_close PCL 101
user_message PCL 116 virtual_get_position PCL 105
user_quit 607 virtual_open_scratch PCL 101
user_quit ACU 5 virtual_read_char PCL 103
user_start 607 virtual_read_int PCL 103
user_start ACU 5 virtual_read_real PCL 103
util_equal_real 1767 virtual_set_position PCL 105
util_equal_real ACU 459 virtual_skip_char PCL 104
util_real_equal_null 1769 virtual_skip_int PCL 104
util_real_equal_null ACU 460 virtual_skip_real PCL 104
util_round ACU 600 virtual_write_char PCL 102
util_rounder 1769 virtual_write_int PCL 102
util_rounder ACU 460 virtual_write_real PCL 102
utl_display_process_error PCL 157 vki_db_getresid 1666
utl_get_cust_info PCL 154 vki_db_getresid ACU 432
utl_get_host_name PCL 154 volume_color REF 1378
utl_get_product PCL 155 volume_label REF 1379
utl_get_terse_version 608
utl_get_terse_version ACU 3
utl_get_terse_version ACU 483
utl_get_user_name PCL 155
W
wedge_elem_color 3324
utl_get_version PCL 155
wedge_elem_color REF 1150
utl_is_locked_file 649
wedge_elem_label 3325
utl_is_locked_file ACU 19
wedge_elem_label REF 1151
utl_is_locked_file ACU 488
write PCL 109
utl_lock_file 650
write_line PCL 112
utl_lock_file ACU 20
utl_process_error PCL 157
utl_process_kill PCL 158
utl_process_spawn PCL 156 X
utl_process_wait PCL 157 xf_error_continue PCL 106
utl_query_version_level 608 xf_error_end PCL 106
utl_query_version_level ACU 4 xf_error_start PCL 106
utl_unlock_file 651 xf_read_from_user PCL 108
utl_unlock_file ACU 20 xf_read_stdin PCL 109
xf_write_command PCL 107
xf_write_comment PCL 107
V xf_write_print PCL 107
xf_write_query PCL 107
Value REF 1014
xf_write_stderr PCL 108
Vector REF 1012
xf_write_stdout PCL 108
verify_boundaries_display_mgr.erase 2666
xy_axis_assign_method_get 3052
verify_boundaries_display_mgr.erase 831
xy_axis_assign_method_get REF 1038 Index
verify_boundaries_display_mgr.erase ACU 31
xy_axis_assign_method_set 3054
verify_boundaries_display_mgr.erase REF 644
xy_axis_assign_method_set REF 1038
verify_boundaries_display_mgr.initialize 831
xy_axis_color_get 3056
verify_boundaries_display_mgr.initialize
xy_axis_color_get REF 1039
ACU 30
xy_axis_color_set 3058
verify_boundaries_display_mgr.plot 2667
xy_axis_color_set REF 1040
Main Index
46 INDEX

xy_axis_display_labels_get 3060 xy_axis_sig_digits_get REF 1054


xy_axis_display_labels_get REF 1041 xy_axis_sig_digits_set 3104
xy_axis_display_labels_get REF 1363 xy_axis_sig_digits_set REF 1055
xy_axis_display_labels_set 3061 xy_axis_thickness_get 3105
xy_axis_display_labels_set REF 1041 xy_axis_thickness_get REF 1055
xy_axis_display_labels_set REF 1363 xy_axis_thickness_set 3107
xy_axis_display_title_get 3063 xy_axis_thickness_set REF 1056
xy_axis_display_title_get REF 1042 xy_axis_tic_display_get 3108
xy_axis_display_title_get REF 1364 xy_axis_tic_display_get REF 1056
xy_axis_display_title_set 3065 xy_axis_tic_display_set 3110
xy_axis_display_title_set REF 1042 xy_axis_tic_display_set REF 1057
xy_axis_display_title_set REF 1364 xy_axis_tic_get 3112
xy_axis_grid_display_get 3067 xy_axis_tic_get REF 1057
xy_axis_grid_display_get REF 1043 xy_axis_tic_numsec_get 3114
xy_axis_grid_display_set 3068 xy_axis_tic_numsec_get REF 1058
xy_axis_grid_display_set REF 1043 xy_axis_tic_numsec_set 3116
xy_axis_grid_get 3070 xy_axis_tic_numsec_set REF 1059
xy_axis_grid_get REF 1044 xy_axis_tic_set 3118
xy_axis_grid_set 3072 xy_axis_tic_set REF 1059
xy_axis_grid_set REF 1045 xy_axis_title_get 3120
xy_axis_label_color_get 3074 xy_axis_title_get REF 1060
xy_axis_label_color_get REF 1046 xy_axis_title_set 3122
xy_axis_label_color_set 3076 xy_axis_title_set REF 1061
xy_axis_label_color_set REF 1047 xy_curve_color_get 3124
xy_axis_label_format_get 3078 xy_curve_color_get REF 1062
xy_axis_label_format_get REF 1048 xy_curve_color_set 3126
xy_axis_label_format_set 3080 xy_curve_color_set REF 1062
xy_axis_label_format_set REF 1048 xy_curve_create 3011
xy_axis_label_type_get 3082 xy_curve_create REF 1021
xy_axis_label_type_get REF 1049 xy_curve_current_get 3013
xy_axis_label_type_set 3084 xy_curve_current_get REF 1022
xy_axis_label_type_set REF 1049 xy_curve_current_set 3015
xy_axis_labels_get 3086 xy_curve_current_set REF 1022
xy_axis_labels_get REF 1050 xy_curve_data_file_get 3017
xy_axis_labels_get_count 3088 xy_curve_data_file_get REF 1023
xy_axis_labels_get_count REF 1050 xy_curve_data_get 3018
xy_axis_labels_get_count REF 1365 xy_curve_data_get REF 1024
xy_axis_labels_set 3089 xy_curve_data_get REF 1365
xy_axis_labels_set REF 1051 xy_curve_data_set 3020
xy_axis_linestyle_get 3091 xy_curve_data_set REF 1025
xy_axis_linestyle_get REF 1051 xy_curve_delete 3251
xy_axis_linestyle_set 3093 xy_curve_delete REF 1104
xy_axis_linestyle_set REF 1052 xy_curve_display_symbol_get 3128
xy_axis_location_get 3094 xy_curve_display_symbol_get REF 1063
xy_axis_location_get REF 1052 xy_curve_display_symbol_get REF 1366
Index xy_axis_location_set 3096 xy_curve_display_symbol_set 3130
xy_axis_location_set REF 1053 xy_curve_display_symbol_set REF 1063
xy_axis_nvalues_get 3098 xy_curve_display_symbol_set REF 1366
xy_axis_nvalues_get REF 1053 xy_curve_endpt_get 3132
xy_axis_nvalues_set 3100 xy_curve_endpt_get REF 1064
xy_axis_nvalues_set REF 1054 xy_curve_endpt_set 3134
xy_axis_sig_digits_get 3102 xy_curve_endpt_set REF 1064
Main Index
INDEX 47

xy_curve_freq_get 3136 xy_curve_text_get REF 1075


xy_curve_freq_get REF 1065 xy_curve_text_set 3176
xy_curve_freq_set 3138 xy_curve_text_set REF 1076
xy_curve_freq_set REF 1065 xy_curve_thickness_get 3178
xy_curve_func_get 3140 xy_curve_thickness_get REF 1077
xy_curve_func_get REF 1066 xy_curve_thickness_set 3180
xy_curve_func_set 3142 xy_curve_thickness_set REF 1077
xy_curve_func_set REF 1066 xy_curve_xdelta_get 3182
xy_curve_linestyle_get 3144 xy_curve_xdelta_get REF 1078
xy_curve_linestyle_get REF 1067 xy_curve_xdelta_set 3184
xy_curve_linestyle_set 3146 xy_curve_xdelta_set REF 1078
xy_curve_linestyle_set REF 1067 xy_curve_xinit_get 3186
xy_curve_list_get 3021 xy_curve_xinit_get REF 1079
xy_curve_list_get REF 1025 xy_curve_xinit_set 3188
xy_curve_nlppc_get 3148 xy_curve_xinit_set REF 1079
xy_curve_nlppc_get REF 1068 xy_curve_xscale_get 3190
xy_curve_nlppc_set 3150 xy_curve_xscale_get REF 1080
xy_curve_nlppc_set REF 1068 xy_curve_xscale_set 3192
xy_curve_nlppc_set REF 1367 xy_curve_xscale_set REF 1080
xy_curve_nposted_get 3041 xy_curve_yscale_get 3194
xy_curve_nposted_get REF 1033 xy_curve_yscale_get REF 1081
xy_curve_num_get 3023 xy_curve_yscale_set 3196
xy_curve_num_get REF 1026 xy_curve_yscale_set REF 1081
xy_curve_num_pc_get 3152 xy_legend_attrib_get 3198
xy_curve_num_pc_get REF 1069 xy_legend_attrib_get REF 1082
xy_curve_num_pc_set 3154 xy_legend_attrib_set 3200
xy_curve_num_pc_set REF 1069 xy_legend_attrib_set REF 1083
xy_curve_num_points_get 1130 xy_legend_border_get 3202
xy_curve_num_points_get ACU 197 xy_legend_border_get REF 1084
xy_curve_posted_get 3042 xy_legend_border_set 3204
xy_curve_posted_get REF 1033 xy_legend_border_set REF 1085
xy_curve_rename 3156 xy_legend_display_border_get 3206
xy_curve_rename REF 1070 xy_legend_display_border_get REF 1086
xy_curve_results_set_wnd 1668 xy_legend_display_border_get REF 1367
xy_curve_results_set_wnd ACU 432 xy_legend_display_border_set 3208
xy_curve_startpt_get 3158 xy_legend_display_border_set REF 1086
xy_curve_startpt_get REF 1070 xy_legend_display_border_set REF 1368
xy_curve_startpt_set 3160 xy_legend_display_get 3209
xy_curve_startpt_set REF 1071 xy_legend_display_get REF 1087
xy_curve_symbol_color_get 3162 xy_legend_display_set 3211
xy_curve_symbol_color_get REF 1071 xy_legend_display_set REF 1087
xy_curve_symbol_color_set 3164 xy_legend_display_set REF 1369
xy_curve_symbol_color_set REF 1072 xy_legend_display_title_get 3213
xy_curve_symbol_get 3166 xy_legend_display_title_get REF 1088
xy_curve_symbol_get REF 1073 xy_legend_display_title_get REF 1368
xy_curve_symbol_set 3168 xy_legend_display_title_set 3215 Index
xy_curve_symbol_set REF 1074 xy_legend_display_title_set REF 1088
xy_curve_symbol_size_get 3170 xy_legend_display_title_set REF 1369
xy_curve_symbol_size_get REF 1074 xy_legend_text_get 3217
xy_curve_symbol_size_set 3172 xy_legend_text_get REF 1089
xy_curve_symbol_size_set REF 1075 xy_legend_text_set 3219
xy_curve_text_get 3174 xy_legend_text_set REF 1090
Main Index
48 INDEX

xy_title_create 3024 xy_window_display_border_get REF 1370


xy_title_create REF 1026 xy_window_display_border_set 3247
xy_title_current_set 3221 xy_window_display_border_set REF 1101
xy_title_current_set REF 1091 xy_window_display_border_set REF 1370
xy_title_delete 3252 xy_window_id_get 3248
xy_title_delete REF 1104 xy_window_id_get REF 1102
xy_title_font_get 3223 xy_window_list_get 3033
xy_title_font_get REF 1091 xy_window_list_get REF 1030
xy_title_font_set 3225 xy_window_nposted_get 3034
xy_title_font_set REF 1092 xy_window_nposted_get REF 1030
xy_title_list_get 3026 xy_window_num_get 3036
xy_title_list_get REF 1027 xy_window_num_get REF 1031
xy_title_nposted_get 3044 xy_window_post 3037
xy_title_nposted_get REF 1034 xy_window_post REF 1031
xy_title_num_get 3027 xy_window_posted_get 3038
xy_title_num_get REF 1028 xy_window_posted_get REF 1032
xy_title_posted_get 3045 xy_window_rename 3250
xy_title_posted_get REF 1034 xy_window_rename REF 1103
xy_title_rename 3227 xy_window_title_post 3049
xy_title_rename REF 1092 xy_window_title_post REF 1036
xy_title_text_get 3229 xy_window_title_unpost 3050
xy_title_text_get REF 1093 xy_window_title_unpost REF 1037
xy_title_text_set 3231 xy_window_unpost 3039
xy_title_text_set REF 1094 xy_window_unpost REF 1032
xy_window_background_color_get 3233
xy_window_background_color_get REF 1095
xy_window_background_color_set 3235
xy_window_background_color_set REF 1096
xy_window_border_color_get 3236
xy_window_border_color_get REF 1097
xy_window_border_color_set 3238
xy_window_border_color_set REF 1098
xy_window_border_linestyle_get 3239
xy_window_border_linestyle_get REF 1099
xy_window_border_linestyle_set 3241
xy_window_border_linestyle_set REF 1099
xy_window_border_thickness_get 3242
xy_window_border_thickness_get REF 1100
xy_window_border_thickness_set 3244
xy_window_border_thickness_set REF 1100
xy_window_create 3029
xy_window_create REF 1028
xy_window_current_get 3030
xy_window_current_get REF 1029
xy_window_current_set 3032
Index xy_window_current_set REF 1029
xy_window_curve_post 3046
xy_window_curve_post REF 1035
xy_window_curve_unpost 3047
xy_window_curve_unpost REF 1036
xy_window_display_border_get 3245
xy_window_display_border_get REF 1101
Main Index

You might also like