() |
## Purpose : This file provides an example of a call to the# function material.create()## This function creates a material in the# database.## In this example a new database is opened and# a material (Aluminium) is created using this# function. The number of materials present in# the database is obtained, before and after the# calling of this function for verification.## This file can be run by starting a session of# Patran, and running this session file# through the "File","Session","Play" pulldown# menus on the menu bar.## The function material.create()# has the following arguments:## material.create# ( analysis_code_str,# analysis_code_id,# analysis_type_str,# analysis_type_id,# mat_name,# mat_id,# description,# mat_cat,# mat_cat_id,# dir_str,# dir_id,# lin_str,# lin_id,# mat_type_name,# mat_type_id,# cm_name,# cm_id,# opt_str,# opt_names,# opt_ids,# act_str,# act_flag,# action,# mat_exist,# ext_flag_str,# ext_flag,# prop_ids_str,# prop_names,# prop_ids,# string_va_str,# prop_values )##---------------------------------------------------------------------# Variable DeclarationsSTRING s_analysis_code_str[64]INTEGER i_analysis_code_idSTRING s_analysis_type_str[64]INTEGER i_analysis_type_idSTRING s_mat_name[64]INTEGER i_mat_idSTRING s_description[64]STRING s_mat_cat[64]INTEGER i_mat_cat_idSTRING s_dir_str[64]INTEGER i_dir_idSTRING s_lin_str[64]INTEGER i_lin_idSTRING s_mat_type_name[64]INTEGER i_mat_type_idSTRING s_cm_name[64]INTEGER i_cm_idSTRING s_opt_str[64]STRING sa_opt_names[64](5)INTEGER ia_opt_ids(5)STRING s_act_str[64]INTEGER i_act_flagSTRING s_action[64]INTEGER i_mat_existSTRING s_ext_flag_str[64]LOGICAL l_ext_flagSTRING s_prop_ids_str[64]STRING sa_prop_names[64](3)INTEGER ia_prop_ids(4)STRING s_string_va_str[64]STRING sa_prop_values[64](4)INTEGER i_return_valueINTEGER i_count#---------------------------------------------------------------------# Open a new database "new.db"uil_file_new.go("","new.db")$? YES 36000002#---------------------------------------------------------------------# Count the number of materials before creation of materiali_return_value = @ db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------# Create Material "Aluminium"s_analysis_code_str = "Analysis code ID"i_analysis_code_id = 1s_analysis_type_str = "Analysis type ID"i_analysis_type_id = 1s_mat_name = "Aluminium"i_mat_id = 0s_description = ""s_mat_cat = "Isotropic"i_mat_cat_id = 1s_dir_str = "Directionality"i_dir_id = 1s_lin_str = "Linearity"i_lin_id = 1s_mat_type_name = "Homogeneous"i_mat_type_id = 0s_cm_name = "Linear Elastic"i_cm_id = 1s_opt_str = "Model Options & IDs"sa_opt_names(1) = ""sa_opt_names(2) = ""sa_opt_names(3) = ""sa_opt_names(4) = ""sa_opt_names(5) = ""ia_opt_ids = [0,0,0,0,0]s_act_str = "Active Flag"i_act_flag = 1s_action = "Create"i_mat_exist = 10s_ext_flag_str = "External Flag"l_ext_flag = FALSEs_prop_ids_str = "Property IDs"sa_prop_names(1) = "Elastic Modulus"sa_prop_names(2) = "Poisson Ratio"sa_prop_names(3) = "Density"ia_prop_ids = [2, 5, 16, 0]s_string_va_str = "Property Values"sa_prop_values(1) = "10E6"sa_prop_values(2) = "0.31"sa_prop_values(3) = "0.1"sa_prop_values(4) = ""i_return_value = @ material.create @ ( s_analysis_code_str, @ i_analysis_code_id, @ s_analysis_type_str, @ i_analysis_type_id, @ s_mat_name, @ i_mat_id, @ s_description, @ s_mat_cat, @ i_mat_cat_id, @ s_dir_str, @ i_dir_id, @ s_lin_str, @ i_lin_id, @ s_mat_type_name, @ i_mat_type_id, @ s_cm_name, @ i_cm_id, @ s_opt_str, @ sa_opt_names, @ ia_opt_ids, @ s_act_str, @ i_act_flag, @ s_action, @ i_mat_exist, @ s_ext_flag_str, @ l_ext_flag, @ s_prop_ids_str, @ sa_prop_names, @ ia_prop_ids, @ s_string_va_str, @ sa_prop_values )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = @ db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------() |
## Purpose : This file provides an example of a call to the# function mat_create_lam()## This function creates a laminated composite# material in the database given the stacking# sequence.## In this example a new database is opened and# two materials (MAT_1 and MAT_2) are created.# Then this function is called to create a# laminate composite (COMPOSITE_LAMINATE) with# MAT_1 and MAT_2 as ply materials.# The number of materials present in the database# is obtained, before and after the calling of# this function for verification.## This file can be run by starting a session of# Patran, and running this session file# through the "File","Session","Play" pulldown# menus on the menu bar.## The function mat_create_lam()# has the following arguments:## mat_create_lam# ( mat_name,# description,# iconv,# ply_names,# thicks,# orients,# num_names,# offset_string,# action )##---------------------------------------------------------------------# Variable DeclarationsSTRING s_mat_name[32]STRING s_description[32]INTEGER i_iconvSTRING sa_ply_names[32](6)REAL ra_thicks(6)REAL ra_orients(6)INTEGER i_num_namesSTRING s_offset_string[32]STRING s_action[32]INTEGER i_return_valueINTEGER i_count#---------------------------------------------------------------------# Open a new database "new.db"uil_file_new.go("","new.db")$? YES 36000002#---------------------------------------------------------------------# Create Material "MAT_1" & "MAT_2"i_return_value = @ material.create("Analysis code ID", 1, "Analysis type ID",1, @ "MAT_1", 0,"", "Isotropic", 1, "Directionality", 1, @ "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","", "", ""], [0, 0, 0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus", "Poisson Ratio", @ "Density"], [2, 5, 16,0],"Property Values",["10E6","0.31",@ "0.1", ""] )dump i_return_valuei_return_value = @ material.create("Analysis code ID", 1, "Analysis type ID",1, @ "MAT_2", 0,"", "Isotropic", 1, "Directionality", 1, @ "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","", "", ""], [0, 0, 0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus", "Poisson Ratio", @ "Density"], [2, 5, 16,0],"Property Values",["20E6","0.32",@ "0.2", ""] )dump i_return_value#---------------------------------------------------------------------# Count the number of materials before creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------# Create Laminate "COMPOSITE_LAMINATE"s_mat_name = "COMPOSITE_LAMINATE"s_description = ""i_iconv = 1sa_ply_names(1) = "MAT_1"sa_ply_names(2) = "MAT_2"sa_ply_names(3) = "MAT_1"sa_ply_names(4) = "MAT_2"sa_ply_names(5) = "MAT_1"sa_ply_names(6) = "MAT_2"ra_thicks = [0.01, 0.02, 0.01, 0.02,0.01, 0.02]ra_orients = [-60., 0., -60., 0., -60., 0.]i_num_names = 6s_offset_string = ""s_action = "Create"i_return_value = @ mat_create_lam @ ( s_mat_name, @ s_description, @ i_iconv, @ sa_ply_names, @ ra_thicks, @ ra_orients, @ i_num_names, @ s_offset_string, @ s_action )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------() |
## Purpose : This file provides an example of a call to the# function mat_create_mix()## This function creates a Rule-of-mixture# material in the database.## In this example a new database is opened and# two materials (MAT_1 and MAT_2) are created.# Then this function is called to create a# Rule-of-mixture material(COMPOSITE_RULE_OF_MIX)# with MAT_1 and MAT_2 as constituent materials.# The number of materials present in the database# is obtained before and after the calling of# this function for verification.## This file can be run by starting a session of# Patran, and running this session file# through the "File","Session","Play" pulldown# menus on the menu bar.## The function mat_create_mix()# has the following arguments:## mat_create_mix# ( mat_name,# description,# phase_string,# vf_string,# orient_string,# action )##---------------------------------------------------------------------# Variable DeclarationsSTRING s_mat_name[32]STRING s_description[32]STRING s_phase_string[32]STRING s_vf_string[32]STRING s_orient_string[32]STRING s_action[32]INTEGER i_return_valueINTEGER i_count#---------------------------------------------------------------------# Open a new database "new.db"uil_file_new.go("","new.db")$? YES 36000002#---------------------------------------------------------------------# Create Material "MAT_1" & "MAT_2"i_return_value = @ material.create("Analysis code ID", 1, "Analysis type ID",1, @ "MAT_1", 0,"", "Isotropic", 1, "Directionality", 1, @ "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","", "", ""], [0, 0, 0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus", "Poisson Ratio", @ "Density"], [2, 5, 16,0],"Property Values",["10E6","0.31",@ "0.1", ""] )dump i_return_valuei_return_value = @ material.create("Analysis code ID", 1, "Analysis type ID",1, @ "MAT_2", 0,"", "Isotropic", 1, "Directionality", 1, @ "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","", "", ""], [0, 0, 0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus", "Poisson Ratio", @ "Density"], [2, 5, 16,0],"Property Values",["20E6","0.32",@ "0.2", ""] )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------# Create Composite "COMPOSITE_RULE_OF_MIX"s_mat_name = "COMPOSITE_RULE_OF_MIX"s_description = ""s_phase_string = "MAT_1 MAT_2"s_vf_string = "0.5 0.5"s_orient_string = "10.0 20.0 30. 40. 50. 60."s_action = "Create"i_return_value = @ mat_create_mix @ ( s_mat_name, @ s_description, @ s_phase_string, @ s_vf_string, @ s_orient_string, @ s_action )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------() |
## Purpose : This file provides an example of a call to the# function mat_hal_create()## This function creates a Halpin-Tsai material in# the database.## In this example a new database is opened and# two materials (ISO_MAT and ANISO_MAT) are# created. Then this function is called to create# a Halpin-Tsai material (Halpin_Tsai_CFC) with# ANISO_MAT as fiber and ISO_MAT as matrix.# The number of materials present in the database# is obtained, before and after the calling of# this function for verification.## This file can be run by starting a session of# Patran, and running this session file# through the "File","Session","Play" pulldown# menus on the menu bar.## The function mat_hal_create()# has the following arguments:## mat_hal_create# ( mat_name,# description,# iopt,# fvf,# mvf,# theory,# aspect_ratios,# override,# fudge_factors,# fiber_name,# matrix_name,# action )##---------------------------------------------------------------------# Variable DeclarationsSTRING s_mat_name[32]STRING s_description[32]INTEGER i_ioptREAL r_fvfREAL r_mvfINTEGER i_theorySTRING sa_aspect_ratios[32](2)LOGICAL l_overrideSTRING sa_fudge_factors[32](7)STRING s_fiber_name[64]STRING s_matrix_name[64]STRING s_action[64]INTEGER i_return_valueINTEGER i_count#---------------------------------------------------------------------# Open a new database "new.db"uil_file_new.go("","new.db")$? YES 36000002#---------------------------------------------------------------------# Create Material "ISO_MAT" & "ANISO_MAT"i_return_value = @ material.create("Analysis code ID", 1, "Analysis type ID",1, @ "ISO_MAT", 0,"", "Isotropic", 1, "Directionality", 1, @ "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","", "", ""], [0, 0, 0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus", "Poisson Ratio", @ "Density"], [2, 5, 16,0],"Property Values",["10E6","0.31",@ "0.1", ""] )dump i_return_valuei_return_value = @ material.create( "Analysis code ID", 1, "Analysis type ID", @ 1, "ANISO_MAT",0,"", "3d Anisotropic", 3,"Directionality",@ 3, "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs",["","","","",""], [0, 0, 0, 0, 0], @ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Stiffness 11", "Stiffness 12", @ "Stiffness 13","Stiffness 14","Stiffness 15", @ "Stiffness 16", "Stiffness 22", "Stiffness 23", @ "Stiffness 24", "Stiffness 25", "Stiffness 26", @ "Stiffness 33", "Stiffness 34", "Stiffness 35", @ "Stiffness 36", "Stiffness 44", "Stiffness 45", @ "Stiffness 46", "Stiffness 55", "Stiffness 56", @ "Stiffness 66", "Density", "Thermal Expan. Coeff", @ "Thermal Expan. Coeff 22", "Thermal Expan. Coeff 33", @ "Thermal Expan. Coeff 12", "Thermal Expan. Coeff 31", @ "Thermal Expan. Coeff 23", "Reference Temperature"], @ [54, 55, 56, 66, 67, 68, 57, 58, 69, 70, 71, 59, 72, 73, @ 74, 60, 61, 62, 63, 64, 65, 16, 24, 25, 26, 27, 29, 28, 1,@ 0], "Property Values", ["0.11", "0.12", "0.13", "0.14", @ "0.15", "0.16", "0.22", "0.23", "0.24", "0.25", "0.26", @ "0.33", "0.34", "0.35", "0.36", "0.44", "0.45", "0.46", @ "0.55", "0.56", "0.66", "0.1", "0.11", "0.22", "0.33", @ "0.12", "0.31", "0.23", "20.0", ""] )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------s_mat_name = "Halpin_Tsai_CFC"s_description = ""i_iopt = 1r_fvf = 0.5r_mvf = 0.5i_theory = 1l_override = FALSEs_fiber_name = "ANISO_MAT"s_matrix_name = "ISO_MAT"s_action = "Create"i_return_value = @ mat_hal_create @ ( s_mat_name, @ s_description, @ i_iopt, @ r_fvf, @ r_mvf, @ i_theory, @ sa_aspect_ratios, @ l_override, @ sa_fudge_factors, @ s_fiber_name, @ s_matrix_name, @ s_action )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------() |
## Purpose : This file provides an example of a call to the# function mat_sfc_create()## This function creates a Short Fiber Composite# in the database.## In this example a new database is opened and# a material (MAT_2D_ORTHO) is created. Then this# function is called to create a Short Fiber# Composite material (MAT_SFC) with MAT_2D_ORTHO# as the phase material. The number of materials# present in the database is obtained, before and# after the calling of this function for# verification.## This file can be run by starting a session of# Patran, and running this session file# through the "File","Session","Play" pulldown# menus on the menu bar.## The function mat_sfc_create()# has the following arguments:## mat_sfc_create# ( mat_name,# description,# iopt,# mo1,# mo2,# sd1,# sd2,# col,# niter,# uni_mat_name,# action )##---------------------------------------------------------------------# Variable DeclarationsSTRING s_mat_name[32]STRING s_description[32]INTEGER i_ioptREAL r_mo1REAL r_mo2REAL r_sd1REAL r_sd2REAL r_colINTEGER i_niterSTRING s_uni_mat_name[32]STRING s_action[32]INTEGER i_return_valueINTEGER i_count#---------------------------------------------------------------------# Open a new database "new.db"uil_file_new.go("","new.db")$? YES 36000002#---------------------------------------------------------------------# Create Material "MAT_2D_ORTHO"i_return_value = @ material.create( "Analysis code ID", 1, "Analysis type ID", @ 1,"MAT_2D_ORTHO",0,"","2d Orthotropic",5,"Directionality",@ 4, "Linearity", 1, "Homogeneous", 0, "Linear Elastic", 1, @ "Model Options & IDs", ["", "", "", "", ""],[0,0,0, 0, 0],@ "Active Flag", 1, "Create", 10, "External Flag", FALSE, @ "Property IDs", ["Elastic Modulus","Elastic Modulus 22", @ "Poisson Ratio", "Shear Modulus", "Shear Modulus 23", @ "Shear Modulus 31", "Density", "Thermal Expan. Coeff", @ "Thermal Expan. Coeff 22"], [2, 3, 5, 8, 9, 10, 16, 24, @ 25, 0], "Property Values", ["0.11", "0.22", "0.12","0.12",@ "0.23", "0.13", "0.1", "0.11", "0.22", ""] )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------# Creates_mat_name = "MAT_SFC"s_description = ""i_iopt = 1r_mo1 = 0.0r_mo2 = 0.0r_sd1 = 10.r_sd2 = 0.0r_col = 0.0i_niter = 1000s_uni_mat_name = "MAT_2D_ORTHO"s_action = "Create"i_return_value = @ mat_sfc_create @ ( s_mat_name, @ s_description, @ i_iopt, @ r_mo1, @ r_mo2, @ r_sd1, @ r_sd2, @ r_col, @ i_niter, @ s_uni_mat_name, @ s_action )dump i_return_value#---------------------------------------------------------------------# Count the number of materials after creation of materiali_return_value = db_count_materials ( i_count )dump i_return_valuedump i_count#---------------------------------------------------------------------