import sys sys.path.append("C:\\franc3d") import PyF3D f3d = PyF3D.F3DApp() f3d.Submodeler( model_type="ANSYS", orig_file_name='Ansys_Cube.cdb', submodel_file_name='Ansys_Cube_LOCAL.cdb', global_file_name='Ansys_Cube_GLOBAL.cdb', elem_file_name='Ansys_Cube_RETAINED_ELEMS.txt') # file names for the models base_name = "anscub_crk" # list of crack dimensions for penny-shape r_dim = [0.5, 0.75] # list of translations for crack insertion trans = [[3.4,6.5,10.], [3.6,6.3,10.], [3.8,6.1,10.], [6.2,4.5,10.], [6.4,4.3,10.], [6.6,4.1,10.]] # simple identifier for crack model ct = 1 for rd in r_dim: for tr in trans: fname = "%s_%d" % (base_name,ct) ct = ct + 1 f3d.OpenMeshModel( model_type="ANSYS", file_name='Ansys_Cube_LOCAL.cdb', global_name='Ansys_Cube_GLOBAL.cdb') f3d.InsertParamFlaw( flaw_type="CRACK", crack_type="ELLIPSE", flaw_params=[rd,rd], rotation_axes=[1], rotation_mag=[90], translation=[tr[0],tr[1],tr[2]], radius=0.05) f3d.RunAnalysis( model_type="ANSYS", file_name=fname+'.fdb', flags=["TRANSFER_BC"], merge_tol=0.0001, connection_type="MERGE", command='"ANSYS_X.exe" -b -p ansys -i "'+fname+'_full.cdb" -o "'+fname+'_full.out"', global_model='Ansys_Cube_GLOBAL.cdb', merge_surf_labels=["AUTO_CUT_SURF"], global_surf_labels=["GLOBAL_CONNECT_SURF"]) f3d.ComputeSif( do_therm_terms=True) f3d.SetUnits( model_length="UNKNOWN", model_stress="UNKNOWN", temperature="UNKNOWN") f3d.SetGrowthParams( growth_type="QUASI_STATIC", load_step_map=["VERSION: 1","SUB_RANGE: 1","0 0 8","LABELS: 1","1 Load Step 1"], kink_angle_strategy="MTS", quasi_static_n=2, quasi_static_loads=["ONE_STEP: 1 NONE 1 1 0"], median_step=0.1, cycles_step=1000, front_mult=[1]) f3d.GrowCrack( do_therm_terms=True, median_step=0.1, cycles_step=1000, front_mult=[1], temp_radius_type="ABSOLUTE", temp_radius=0.05, discard=[[1,1]], extrapolate=[[3,4]]) f3d.AutoGrowth( model_type="ANSYS", cur_step=1, file_name=fname, do_therm_terms=True, num_steps=3, step_type="SCONST", const_step_size=0.1, maximum_steps=3, temp_radius_type="ABSOLUTE", temp_radius=0.05, discard=[[1,1]], extrapolate=[[3,4]], flags=["NO_WRITE_TEMP","TRANSFER_BC","NO_CFACE_TRACT","NO_CFACE_CNTCT"], merge_tol=0.0001, connection_type="MERGE", command='"ANSYS_X.exe" -b -p ansys -i "'+fname+'_STEP_001_full.cdb" -o "'+fname+'_STEP_001_full.out"', global_model='Ansys_Cube_GLOBAL.cdb', merge_surf_labels=["AUTO_CUT_SURF"], global_surf_labels=["GLOBAL_CONNECT_SURF"]) f3d.CloseModel()