ABAQUS Tutorial Version 7 Fracture Analysis Consultants, Inc www.fracanalysis.com Revised: January 2016 Table of Contents: 1.0 Introduction .......................................................................................................................... 6 2.0 Tutorial 1: Crack Insertion and Growth in a Cube .............................................................. 6 2.1 Step 1: Create the ABAQUS FE Model .......................................................................... 6 2.2 Step 2: Reading ABAQUS FE Model into FRANC3D .................................................. 8 Step 2.1: Importing ABAQUS FE Model ............................................................................... 8 Step 2.2: Select the Retained Items in the FE Model ........................................................... 10 Step 2.3: Displaying the Local FE Model ............................................................................. 13 2.3 Step 3: Importing as a Sub-Model ................................................................................... 14 2.4 Step 4: Insert a Crack ..................................................................................................... 19 Step 4.1: Define a new Crack from FRANC3D Menu ......................................................... 20 Step 4.2: Insert Cracks from Files......................................................................................... 25 2.5 Step 5: Static Crack Analysis ........................................................................................ 28 Step 5.1: Select Static Crack Analysis .................................................................................. 28 Step 5.2: Select FE Solver .................................................................................................... 29 Step 5.3: Select ABAQUS Analysis Options ....................................................................... 29 2.6 Step 6: Compute Stress Intensity Factors ...................................................................... 31 2.7 Step 7: Manual Crack Growth ....................................................................................... 33 Step 7.1: Select Grow Crack ................................................................................................. 33 Step 7.2: Specify Growth Rate.............................................................................................. 34 Step 7.3: Specify Fitting and Extrapolation .......................................................................... 35 Step 7.4: Specify Crack Front Template ............................................................................... 36 2.8 Step 8: Automatic Crack Growth .................................................................................. 38 Step 8.1: Open FRANC3D Restart File ................................................................................ 38 Step 8.2: Select Crack Growth Analysis ............................................................................... 38 Step 8.3: Specify Growth Parameters ................................................................................... 39 Step 8.4: Specify Growth Model Data .................................................................................. 40 Step 8.5: Specify Fitting and Template Parameters .............................................................. 41 Step 8.6: Specify Extension or Cycle Data ........................................................................... 42 2 Step 8.7: Specify Analysis Code ........................................................................................... 43 Step 8.8: Specify Analysis Options ...................................................................................... 44 2.9 Step 9: SIF History ........................................................................................................ 45 Step 9.1: Select SIFs Along a Path ....................................................................................... 46 Step 9.2: Select SIFs For All Fronts ..................................................................................... 47 Step 9.3: Select Fatigue Life Predictions .............................................................................. 48 3.0 Tutorial 2: Multiple Load Cases and Crack Face Tractions .............................................. 53 3.1 Step 1: Reading ABAQUS FE Model into FRANC3D ................................................ 54 Step 1.1: Importing ABAQUS FE Model ............................................................................. 54 Step 1.2: Select the Retained Items in the FE Model ........................................................... 56 Step 1.3: Displaying the FE Model ....................................................................................... 58 3.2 Step 2: Insert Crack From File ...................................................................................... 58 3.3 Step 3: Apply Crack Surface Traction .......................................................................... 62 3.4 Step 4: Static Analysis................................................................................................... 63 Step 4.1: Run ABAQUS static crack analysis ...................................................................... 63 Step 4.2: Compute SIFs ........................................................................................................ 65 Step 4.3: Re-Run ABAQUS static crack analysis with crack face contact .......................... 67 Step 4.4: Compute SIFs with crack face contact .................................................................. 69 3.5 Step 5: Apply Surface Treatment Residual Stress ........................................................ 72 3.6 Step 6: Apply Tractions from Mesh-Based Stress ........................................................ 78 Step 6.1: Create Mesh-Based Stress Field ............................................................................ 78 Step 6.2: Apply Mesh-Based Stress as Crack Face Traction ................................................ 80 Step 6.3: ABAQUS Mesh-Based Stress ............................................................................... 84 4.0 Tutorial 3: Two Cubes Glued Together ............................................................................ 86 4.1 Step 1: Create the ABAQUS FE Model ........................................................................ 86 4.2 Step 2: Import ABAQUS FE Model into FRANC3D ................................................... 88 Step 2.1: Importing ABAQUS FE Model ............................................................................. 88 Step 2.2: Insert a Crack ......................................................................................................... 89 Step 2.3: Static Crack Analysis ............................................................................................. 91 Step 2.4: Compute SIFs ........................................................................................................ 91 Step 2.5: Plot Deformed Shape ............................................................................................. 92 3 Step 2.6: Contact surface mesh not retained ......................................................................... 93 Step 2.7: Specify No Crack Material Region........................................................................ 95 5.0 Tutorial 4: Disk with Rotation and Temperature .............................................................. 96 5.1 Step 1: Create the ABAQUS Disk Model ..................................................................... 96 5.2 Step 2: Run ABAQUS Thermal Analysis ..................................................................... 99 5.3 Step 3: Run ABAQUS Structural Analysis ................................................................. 100 5.4 Step 4: Import Disk into FRANC3D ........................................................................... 101 5.5 Step 5: Insert Initial Crack .......................................................................................... 103 5.6 Step 6: Static Crack Analysis ...................................................................................... 105 5.6 Step 6: Compute SIFs .................................................................................................. 107 5.7 Step 7: Crack Growth .................................................................................................. 109 5.8 Step 8: Automatic Crack Growth ................................................................................ 113 5.9 Step 9: Analysis Results .............................................................................................. 115 6.0 Tutorial 5: Multiple Cracks in a Plate ............................................................................. 118 6.1 Step 1: Create the ABAQUS Plate Model .................................................................. 118 6.2 Step 2: Import Plate Model into FRANC3D ............................................................... 120 6.3 Step 3: Insert Multiple Cracks ..................................................................................... 122 6.4 Step 4: Static Crack Analysis ...................................................................................... 132 6.5 Step 5: Compute SIFs for Multiple Crack Fronts ....................................................... 135 6.6 Step 6: Grow Multiple Cracks ..................................................................................... 136 6.7 Step 7: Grow Crack around a Corner .......................................................................... 139 6.8 Step 8: Grow Crack through a Back Surface .............................................................. 144 7.0 Tutorial 6: Computing Fatigue Life Cycles .................................................................... 148 7.1 Step 1: Perform Crack Growth .................................................................................... 150 7.2 Step 2: Compute Fatigue Crack Growth Cycles ......................................................... 153 7.3 Step 3: Crack Growth and Fatigue Options ................................................................ 156 7.4 Step 3: Sequence Crack Growth ................................................................................. 159 7.5 Step 4: Spectrum Crack Growth ................................................................................. 159 7.6 Step 5: Transient Crack Growth .................................................................................. 159 8.0 8.1 Tutorial 7: Resume Growth with Larger Submodel ....................................................... 160 Step 1: Extract and Save Crack Geometry .................................................................. 160 4 8.2 Step 2: Restart from Saved Crack Geometry .............................................................. 161 8.3 Step 3: Combine SIF Histories .................................................................................... 166 9.0 Tutorial 8: Fretting Fatigue ............................................................................................. 173 9.1 Step 1: Saving ABAQUS Data.................................................................................... 173 9.2 Step 2: Fretting Model Import..................................................................................... 175 9.3 Step 3: Fretting Crack Nucleation ............................................................................... 178 9.3 Step 3: Discrete Crack Nucleation .............................................................................. 182 10.0 Tutorial 9: Multiple Submodel Portions ......................................................................... 190 10.1 Step 1: Import Plate Model into FRANC3D ........................................................... 191 10.2 Step 2: Insert Multiple Cracks ................................................................................. 194 10.3 Step 3: Crack Analysis ............................................................................................ 199 11.0 Tutorial 10: Session Log Playback ................................................................................. 201 12.0 Tutorial 11: Python Interface .......................................................................................... 204 5 1.0 Introduction This manual contains tutorials that introduce the fracture simulation capabilities of FRANC3D Version 7 and ABAQUS Version 6.14 (or later). The FRANC3D software is introduced by first analyzing a simple surface crack in a cube. Subsequent tutorial examples build on this first example and describe additional capabilities and features of the software. It is intended that the user perform the operations as they are presented, but you should feel free to experiment, and you should consult the other reference documentation whenever necessary. Menu and dialog box button selections are indicated by bold text, such as File. Window regions and dialog options, fields and labels will be underlined. Model names and file names will be indicated by italic text. 2.0 Tutorial 1: Crack Insertion and Growth in a Cube We are modeling a surface crack in a cube under far-field tension. It is assumed that the user is familiar with a pre-processor for ABAQUS; we use ABAQUS CAE. Once the model is created, the FRANC3D steps necessary to read the mesh information, insert a crack, rebuild the mesh, perform the ABAQUS analysis, and compute stress intensity factors are all described. 2.1 Step 1: Create the ABAQUS FE Model First, we create a cube model using any pre-processor for ABAQUS. Here we simply outline the necessary steps to create the model and boundary conditions to ensure that we have a complete model that we can use with FRANC3D. 1. Create a 10x10x10 cube geometry; assume units of length are mm. 2. Subdivide the edges for meshing using 10 to 20 subdivisions. 3. Define the element type as quadratic elements; use brick or tetrahedral elements. 6 4. Define the material properties as 10000 for the elastic modulus and 0.3 for the Poisson’s ratio; assume the units for E are MPa. 5. Mesh the volume. 6. Boundary conditions consist of displacement constraints on the bottom surface and uniform traction (a negative pressure) on the top surface of 10 MPa. The bottom surface is constrained in the y-direction, the bottom left edge is also constrained in the xdirection, and the point at the origin is also constrained in the z-direction. Note that you should use unique set and surface names when defining boundary conditions. 7. Save the model as an .inp file (Abaqus_Cube.inp). The resulting model should appear as in Fig 2.1. The symbols for the boundary conditions are displayed attached to the model; the brick mesh is displayed in the lower right corner. Figure 2.1: ABAQUS cube with boundary conditions; meshed with brick elements. 7 Note that ABAQUS CAE tends to use default set and surface names such as SET-1 at both the Part and the Instance levels, Fig 2.1b. FRANC3D currently cannot differentiate between the Part SET-1 and Instance SET-1; the Instance SET-1 is both a node and element set. If boundary conditions are applied in CAE using the Instance SET-1 (right side image), FRANC3D applies the boundary conditions to both Part and Instance SET-1 nodes. The solution is to name the sets and surfaces in CAE with unique names, especially when defining boundary conditions. Figure 2.1b: ABAQUS CAE set-1 at both Part and Instance levels. 2.2 Step 2: Reading ABAQUS FE Model into FRANC3D We start by importing an existing volume element mesh into FRANC3D. We use the model written in the previous step. You can choose to do either Step 2 or Step 3 (Section 2.3); we describe both Steps here, but we use Step 3 for subsequent steps. Step 2.1: Importing ABAQUS FE Model Start with the FRANC3D graphical user interface, Fig 2.2, and select File and Import. In the window shown in Fig 2.3, choose Complete Model. Switch the Mesh File Type radio button in 8 the Select Import Mesh File window, Fig 2.3, to ABAQUS and select the file name for the model, called Abaqus_Cube.inp here, Fig, 2.4. Select Next. Figure 2.2: FRANC3D graphical user interface Figure 2.3 Import type 9 Figure 2.4: Select Input Mesh File dialog box Step 2.2: Select the Retained Items in the FE Model The next panel, Fig. 2.5, allows you to choose the mesh surface facets that are retained from the ABAQUS .inp file. Surfaces with boundary conditions appear in blue as shown in Fig 2.6, and turn red when selected, Fig 2.7. We retain the surfaces with boundary conditions (top and bottom of the cube), as this is a full-model, by choosing Select All. The boundary conditions will be transferred automatically to the new mesh when a crack is inserted. Select Finish. 10 Figure 2.5: Select Retained BC Surfaces wizard panel. 11 Figure 2.6: ABAQUS Model retain BC Surfaces wizard panel. Figure 2.7: ABAQUS Model retain BC Surfaces wizard panel. 12 Surface Mesh Not Retained Note that the surface mesh facets do not have to be retained, and if a crack will be inserted into a surface that has boundary conditions, then the surface mesh must not be retained. In such a case, the boundary condition data is transferred to the remeshed surface. In practice, transfer of boundary condition data is simpler and more precise if the surface mesh can be retained, but sometimes this is not possible and FRANC3D will automatically map the boundary condition data to the new mesh. Step 2.3: Displaying the Local FE Model The model is displayed in the FRANC3D modeling window. You can turn on the surface mesh and manipulate the view. The model should appear as in Figs. 2.8, which shows that the mesh is retained on the top and bottom (not shown) surfaces where the boundary conditions are applied. 13 Figure 2.8: ABAQUS model imported into FRANC3D, showing retained facets on the pressure surface at the top of the cube. 2.3 Step 3: Importing as a Sub-Model If you chose to do Step 2, either skip this step, or close the current model using the File menu. The ABAQUS model can be split into smaller parts before inserting the crack. Go to File and Import, and choose the Import and divide into global and local models radio button shown in Fig 2.9, and choose the Abaqus_Cube.inp model, Fig. 2.10, as before. 14 Fig 2.9 Import options Figure 2.10: Select Input Mesh File selection. This time, instead of the retain BC surfaces window in Fig 2.5, the Define a local Submodel window shown in Fig 2.11 appears. Figures 2.12 and 2.13 show two of the selection tools. Selections are made using the tools; elements to be retained appear red, and the selection is 15 confirmed with the Crop button. The Rubberband Box tool is used as shown in Fig 2.14 to create a smaller portion of the cube that still has an exposed face for crack insertion. Figure 2.11: Define a Local Submodel Window 16 Figure 2.12: Plane Cutting tool Figure 2.13: Element-by-Element selection 17 Figure 2.14: Rubberband Box selection tool Once the elements have been selected and cropped, select Next. The Save the Files window appears, Fig 2.15. Choose the names of the local and global models and their location. Figure 2.15: Local/Global model save window 18 If the local model created has a surface with boundary conditions, then the retain BC surfaces window from Fig 2.5 will appear. Otherwise, the local model will appear in the main window, with meshed surfaces wherever the Local and Global models connect (the cut surfaces). Figure 2.16: Local model with retained mesh facets on cut-surface 2.4 Step 4: Insert a Crack We now insert a half-penny surface crack into the model. The local submodel from the previous section is used as opposed to the full model. In Step 4.1, we describe how to define a new crack, and in Step 4.2, we describe how to insert a flaw from a file. Note that you should do one or the other of these steps; you should not try to re-insert a crack into a cracked model. Step 4.2 is used in subsequent tutorials. 19 Step 4.1: Define a new Crack from FRANC3D Menu From the FRANC3D menu, select Cracks and New Flaw Wizard as seen in Fig 2.17. The first panel of the wizard should appear as in Fig 2.18. The flaw being added is a crack with zero volume. We select the Save to file and add flaw radio button to save the file for future analyses. Select Next. The second panel of the wizard, Fig 2.19, lets you choose the crack shape; the default is the ellipse and is what we want in this case. Select Next. Figure 2.17: New Flaw Wizard menu item selected. 20 Figure 2.18: New Flaw Wizard first panel – choose Crack (zero volume flaw). Figure 2.19: New Flaw Wizard second panel – choose ellipse library shape. 21 The crack is a circle with radius=1, centered on the cube’s front face, and parallel to the xzplane. The third wizard panel lets you set a and b parameters for the ellipse, Fig 2.20. Set a=1 and b=1. Select Next. Figure 2.20: New Flaw Wizard third panel – set ellipse dimensions. The fourth wizard panel lets you set the crack location and orientation, Fig 2.21. We place the crack at the center of the front face at coordinates (5,5,10) and we rotate the crack 90 degrees about the x-axis. Select Next. 22 Figure 2.21: New Flaw Wizard fourth panel – set crack location and orientation. The final panel allows you to set the crack front mesh template parameters, Fig 2.22. We use the defaults. Select Finish. At this point, you will be asked to specify the file name to save the crack information, Fig 2.23; we call it Cube_Crack.crk. Select Accept. Figure 2.22: New Flaw Wizard final panel – set template mesh parameters. 23 Figure 2.23: New Flaw Wizard final panel – set template mesh parameters. The crack is inserted into the model and then remeshing occurs. A Flaw Insertion Status window is displayed during this process, Fig 2.24. There are four stages: geometric intersection of the crack with the model, surface meshing, volume meshing, and smoothing of the mesh to produce better quality elements. The final result should appear as in Fig 2.25. Figure 2.24: Flaw Insertion Status window. 24 Figure 2.25: Remeshed cracked local model. Step 4.2: Insert Cracks from Files Note that you should not do this step if you have already inserted the crack into the model in Step 4.1. If you want to try this step, you must close the model from Step 4.1 and re-import the original uncracked model. From the FRANC3D menu, select Cracks and Flaw From Files, Fig 2.26. The first panel of the wizard should appear as in Fig 2.27. Choose the Cube_Crack.crk file and hit Accept. The flaw being added is a circle with radius=1, centered on the cube’s front face, and parallel to the xzplane. This crack was created using the New Flaw Wizard and the save to file option. 25 Figure 2.26: Flaw From Files option in Crack menu. Figure 2.27: Flaw from file dialog to select .crk file. 26 The next panel of the wizard, Fig 2.18, allows you to adjust the location of the flaw. The orientation cannot be changed. The final panel, Fig 2.29, allows you to set the template mesh. Figure 2.28: Flaw wizard panel to set location. Figure 2.29: Flaw geometry shown in the model with crack template mesh 27 2.5 Step 5: Static Crack Analysis We will now perform the stress analysis using ABAQUS, which will provide the displacement results that are needed to compute stress intensity factors. Step 5.1: Select Static Crack Analysis From the FRANC3D menu, select Analysis and Static Crack Analysis. The first panel of the wizard should appear as in Fig 2.30. We specify the file name for the FRANC3D database first. We called it Abaqus_Cube_Subdivide.fdb here; select Next once you enter a File Name. Note that you cannot use the initial uncracked Abaqus_Cube.inp or Abaqus_Cube_LOCAL.inp file, as a new .inp will be created and saved during the analysis, and the original uncracked .cdb files are reused for each step of crack growth. Figure 2.30: Static Analysis wizard first panel – File Name 28 Step 5.2: Select FE Solver The next panel of the wizard, Fig 2.31, allows you to specify the solver; choose ABAQUS and select Next (not shown in Fig 2.31). Figure 2.31: Static Analysis wizard second panel – choose solver Step 5.3: Select ABAQUS Analysis Options The next panel of the wizard, Fig 2.32, allows you to specify the ABAQUS output and analysis options. The model is a sub-model and needs to be connected with the global model, so the Connect to global model box should automatically be checked if the FRANC3D submodeler tool was used. (If the model being analyzed was a full/complete model, this is the final panel, and FRANC3D writes files and then attempts to execute ABAQUS based on the ABAQUS Executable information, Fig 2.32, when you choose Next.) The next panel, Fig 2.33, allows you to set the local + global model connection. 29 Figure 2.32: Static Analysis wizard third panel – ABAQUS output options The panel in Fig 2.33 shows the options for tying together the local and global models. AUTO_CUT_SURF and GLOBAL_CONNECT_SURF are the sets/surfaces created by the FRANC3D submodeling tool and should be selected automatically. Click Finish to start ABAQUS running (in batch/background mode). You can monitor the FRANC3D CMD window and the ABAQUS .dat file for errors or messages. Choosing Write files but DO NOT run analysis will create all the necessary files if the analysis needs to be run later or on a separate computer. If you need to run analyses on a different computer, you must bring the results file (.dtp) back to the current folder, and then you can use the File – Read Results menu option to import the results into FRANC3D. You must run the writeDtpFile.py script to extract the .dtp file from the .odb file. 30 Figure 2.33: Local/Global model connection 2.6 Step 6: Compute Stress Intensity Factors From the FRANC3D menu, select Cracks and Compute SIFs, Fig 2.34. The Stress Intensity Factor wizard is displayed, Fig 2.35. You should use the M-integral, but you can check that the Displacement Correlation results are similar. There are no thermal or crack face traction/pressure terms. Select Finish and the SIFs Plot window is displayed, Fig 2.36. You can view the three stress intensity factor (SIF) modes and export the data. 31 Figure 2.34: Compute SIF’s selected from the Cracks menu Figure 2.35: Compute SIF options 32 Figure 2.36: Stress Intensity Factor plot 2.7 Step 7: Manual Crack Growth We can manually propagate the crack at this stage; you should at least examine the predicted crack growth to determine suitable parameters for fitting and extrapolation before proceeding with the automated crack growth in Section 2.8. Step 7.1: Select Grow Crack From the FRANC3D menu, select Cracks and Grow Crack. The Crack Growth wizard is displayed, Fig 2.37. In the first panel, we switch to Quasi-Static crack growth. We use quasistatic with a Power Law relationship (between points along the crack front) here as it is the simplest extension model. Review the reference and theory documents for a description of the other crack extension models. We use the Max Tensile Stress theory to determine the kink angle; in this model, crack growth is essentially planar. Select Next. 33 Figure 2.37: Crack Growth wizard – first panel. Step 7.2: Specify Growth Rate In the second panel, Fig 238, the default value of n is 2.0 for the Power Law growth Parameter. The value of 2 provides reasonable values for the relative crack extension along the crack front. The material has an isotropic toughness. We will not consider Mode II and III SIFs. We have only one load case. Select Next. 34 Figure 2.38: Crack Growth wizard – second panel. Step 7.3: Specify Fitting and Extrapolation The next panel shown in Fig 2.39 allows you to specify the crack front point fitting parameters. The default values are okay for this model. The median extension is set to 0.2; this value is set automatically based on the initial template radius. A Fixed Order Polynomial fit with order set to 3 and extrapolation set to 3% at both ends of the crack front is the default; the fitting parameters might need to be adjusted as the crack grows. Select Next. Note that the fitted (blue) curve through the predicted new front points (green) must be extrapolated so that the ends fall outside of the model, but should not be extrapolated too much. The new front must be extended far enough to provide space between the current and new fronts along the entire front for new crack geometry to be defined. 35 Figure 2.39: Crack growth wizard panel for crack front fitting options Step 7.4: Specify Crack Front Template The final panel shown in Fig 2.40 allows you to specify the crack front mesh template parameters. The crack front mesh template shown in Fig 2.40 extends beyond the model surface, which is necessary, corresponding to the polynomial extrapolation. Select Next on this panel when ready to proceed with the crack insertion and remeshing. 36 Note that the crack geometry for the extended crack is inserted into the original uncracked model. Figure 2.40: Crack growth wizard panel for mesh template options The resulting new mesh model can be analyzed as was done for the initial crack (see Step 5 above). Note that you will want to give this model a different name, such as Abaqus_Cube_ step_001, so that you don’t overwrite the initial crack files. Automated crack growth analyses are described in Section 2.8 below. 37 2.8 Step 8: Automatic Crack Growth This section describes the steps for automatic crack growth starting from the initial crack model. We start with an existing FRANC3D model, using the model created in Section 2.4 and 2.5. Step 8.1: Open FRANC3D Restart File Start with the FRANC3D graphical user interface (see Fig 2.2) and select File and Open. Select the file name specified in Section 2.2, called Abaqus_Cube_Subdivide.fdb. Select Accept. The model will be read into FRANC3D (along with the results files that were created when running the static analysis). We will ignore the fact that we already analyzed and propagated the initial crack in the previous step, and proceed with setting up the automatic crack growth analysis. Step 8.2: Select Crack Growth Analysis From the FRANC3D menu, select Analysis and Crack Growth Analysis. The first panel of the wizard should appear as in Fig 2.41; it allows you to choose the method for computing SIFs. We leave all the default values. Select Next to display the second panel. 38 Figure 2.41: Crack Growth Analysis wizard – first panel. Step 8.3: Specify Growth Parameters The second panel of the wizard should appear as in Fig 2.42. We set the growth type to QuasiStatic for simplicity. All other values are left as defaults; select Next. 39 Figure 2.42: Crack Growth Analysis wizard – second panel. Step 8.4: Specify Growth Model Data The third panel of the wizard should appear as in Fig 2.43. The value of n defaults to 2.0 for the quasi-static crack growth; select Finish. 40 Figure 2.43: Crack Growth Analysis wizard – third panel. Step 8.5: Specify Fitting and Template Parameters The fourth panel of the wizard should appear as in Fig 2.44. The default values can be used. Select Next. 41 Figure 2.44: Crack Growth Analysis wizard – fourth panel. Step 8.6: Specify Extension or Cycle Data The fifth panel of the wizard should appear as in Fig 2.45. We are growing the crack for 5 steps using a default Constant Median Crack Growth Increment of 0.2. Select Next. 42 Figure 2.45: Crack Growth Analysis wizard – fifth panel. Step 8.7: Specify Analysis Code The sixth panel of the wizard should appear as in Fig 2.46. We use ABAQUS and the Current crack growth step is 1 as we are starting from the initial crack. (FRANC3D first extends the initial crack, and then names the next set of files as Abaqus_Cube_Subdivide_STEP_001.) Subsequent file names have the step number incremented as the automatic analysis proceeds. Select FINISH (not shown). 43 Figure 2.46: Crack Growth Analysis wizard – sixth panel. Step 8.8: Specify Analysis Options The seventh panel of the wizard should appear as in Fig 2.47. Some of the options are specific to your site; we are using ABAQUS 6.14. The Global model settings should be configured in the same way as for the original analysis. If there is a Global model, the window in Fig 2.48 will appear next, so the two models can be connected. Click Finish when you are ready to start the automatic crack growth. Figure 2.47: Crack Growth Analysis wizard – seventh panel. 44 Figure 2.48: Local + Global connection options FRANC3D saves the fdb and inp files with the name Abaqus_Cube_Subdivide_STEP_001 for the first crack step model, and then ABAQUS starts in the background. If the analyses stop at any stage, they can be restarted from the last crack step. All of the _STEP_# files are retained. The model for any step can be read into FRANC3D to view the stress intensity factors or to restart the analysis with a modified crack growth increment (for example). 2.9 Step 9: SIF History This section describes the steps to examine the stress intensity factor history from the automatic crack growth simulation in Step 8. If you still have FRANC3D open and the crack growth from 45 Step 8 is done, you can proceed with Step 9.1. Otherwise, you can restart FRANC3D and read in the fdb file for the last step, using the File - Open menu option. Step 9.1: Select SIFs Along a Path From the FRANC3D menu, select Cracks and SIFs Along a Path. If the SIFs have not been computed yet, the Compute SIFs dialog (see Fig 2.41) will be displayed. Leave all the defaults as before and select Finish. The Stress Intensity Factors (along a path) dialog should appear, Fig 2.49. The crack fronts are displayed on the left along with a path through the fronts; the SIF history along the path is shown in the graph on the right. You can use the tabs above the graph to plot the Mode II and III SIF history as well as the elastic J-integral and T-stress values along the path. You can define a new path, Fig 2.50, and you can export the data. You might need to export the Mode I SIF history (K vs a) to compute fatigue cycles or life using a different program. Figure 2.49: SIFs Along a Path dialog – KI plot 46 Figure 2.50: SIFs Along a Path dialog – Define Path Step 9.2: Select SIFs For All Fronts From the FRANC3D menu, select Cracks and SIFs For All Fronts. If the SIFs have not been computed yet, the Compute SIFs dialog (see Fig 2.41) will be displayed. Leave all the defaults as before and select Finish. The Stress Intensity Factors (for all fronts) dialog should appear, Fig 2.51. The crack fronts are displayed on the left and the SIFs for all crack fronts are displayed on the right. You can use the tabs above the plot to display Mode II and III SIFs as well as the elastic J-integral and T-stress values. 47 Figure 2.51: SIFs for all Fronts dialog – KI plot Step 9.3: Select Fatigue Life Predictions From the FRANC3D menu, select Fatigue – Fatigue Life Predictions. If the SIFs have not been computed yet, the Compute SIFs dialog (see Fig 2.41) will be displayed. Leave all the defaults as before and select Finish. The Fatigue Life dialog should appear as in Fig 2.52. The crack fronts are displayed on the left and the window on the right side should be blank (assuming that lifing parameters have not been defined previously). You must first Set (or Read) Parameters. Selecting Set Parameters displays the dialog shown in Fig 2.53. We use Fatigue, Constant Amplitude with Given Stress Ratio (R). We switch the FEM model units to MPa√mm and then select New Model for the Crack Growth Rate Model. 48 Figure 2.52: Fatigue Life dialog Figure 2.53: Fatigue Life dialog 49 The new crack growth rate model dialogs are shown in Fig 2.54. In the first dialog, we switch the units to MPa-mm. The units can be different from the FE model units, but in this case, we make them consistent. In the second dialog, we choose Paris as the growth rate model; it is the default. In the third dialog, we leave the default as Temperature Independent. Finally, in the last dialog, we set the Paris model parameters; we use made up values here to match our made up values for cube dimension, material properties and loading. Note that the Paris exponenent ‘n’ is set to 3 whereas we used n=2 for the quasi-static growth. In practice, you can use the fatigue model and material data to compute growth so that it is consistent with the fatigue life computations done here. However, it is not strictly necessary, and it often is better to use a lower exponent to predict increments of growth. Figure 2.54: New Growth Rate model dialogs 50 After entering the crack growth rate model parameters, we choose the value for R and choose which load cases to use for computing Kmax (or Kmin), Fig 2.55. In this case, we use R=0 and there is only one load case. Select Finish. Figure 2.55: Constant amplitude with given R fatigue life parameter dialogs The cycles are computed and can be plotted versus crack step number, Fig 2.56, or versus crack path length. If we choose to plot cycles based on a path, we must select the Define button to create a path, Fig 2.57. The default path is through the crack front midpoints. After defining a path, the cycles versus crack path length plot is displayed, Fig 2.58. 51 Figure 2.56: Fatigue cycles versus crack step number Figure 2.57: Define crack path dialog 52 Figure 2.58: Fatigue cycles versus crack length 3.0 Tutorial 2: Multiple Load Cases and Crack Face Tractions In the first part of Tutorial 2, we describe the process of importing a model with multiple load cases. Once a crack is inserted, an additional load case is applied as a crack face pressure. We describe how to apply a simple constant pressure in the crack in Section 3.5, we describe how to apply a surface treatment residual stress in Section 3.10, and we describe how to apply meshbased surface crack tractions in Section 3.11. We use the same Abaqus _Cube.inp file from Tutorial 1, but with two additional load cases. The first of the extra load cases is a positive (far-field) surface pressure equal in magnitude to the traction in the first load case; this will compress the cube. The second extra load case is a negative (far-field) surface traction with double the magnitude of the first load case. Note that the second load case will cause the cube to compress, and we describe how to apply crack face contact conditions to prevent negative Mode I SIFs in Section 3.8. 53 For ABAQUS, the load cases are defined in the .inp file, separated by “*STEP” commands. 3.1 Step 1: Reading ABAQUS FE Model into FRANC3D Step 1.1: Importing ABAQUS FE Model Start with the FRANC3D graphical user interface, Fig 3.1, and select File and Import. In the window shown in Fig 3.2, choose Complete Model. Switch the Mesh File Type radio button in the Select Import Mesh File window, Fig 3.3, to ABAQUS. Select the file name for the model, called Abaqus_Cube.inp here, Fig, 2.4. Select Next. Figure 3.1: FRANC3D graphical user interface 54 Figure 3.1 Import type Note that we could subdivide the cube as we did in Section 2.3, but for simplicity we just import the full model here. For relatively simple models, the time to remesh the volume is short. However, for most models, we want to subdivide to avoid having to remesh the full model at each step of crack growth. Figure 3.3: Select Input Mesh File dialog box with Extra load files checked 55 Step 1.2: Select the Retained Items in the FE Model The next panel, Fig. 3.4, allows you to choose the mesh surface facets that are retained from the ABAQUS files. Surfaces with boundary conditions appear in blue as shown in Fig 3.5, and turn red when selected, Fig 3.6. We retain the surfaces with boundary conditions (top and bottom of the cube), as this is a full-model, by choosing Select All. The boundary conditions are transferred automatically to the new mesh when the crack is inserted. Select Finish. Note that the boundary conditions for all load cases are applied to the same surfaces in this model. Figure 3.4: Select Retained BC Surfaces wizard panel. 56 Figure 3.5: ABAQUS Model retain BC Surfaces wizard panel. Figure 3.6: ABAQUS Model retain BC Surfaces wizard panel. 57 Step 1.3: Displaying the FE Model The model is displayed in the modeling window. You can turn on the surface mesh and manipulate the view. The model should appear as in Fig 3.7, which shows that the mesh is retained on the top and bottom (not shown) surfaces where the boundary conditions are applied. Figure 3.7: ABAQUS model imported into FRANC3D, showing retained facets on the top. 3.2 Step 2: Insert Crack From File From the FRANC3D menu, select Cracks and Flaw From Files, Fig 3.8. The first panel of the wizard should appear as in Fig 3.9. Choose Cube_Crack.crk and hit Accept. The flaw being added is a circle with radius=1, centered on the cubes front face, and parallel to the xz-plane. This crack was created using the New Flaw Wizard and the save to file option in Section 2.4. 58 Figure 3.8: Flaw From Files option in Crack menu. The next panel of the wizard, Fig 3.10, allows you to adjust the location of the flaw. The orientation cannot be changed. The final panel, Fig 3.12, allows you to set the template mesh. We just leave all the defaults in these panels and select Next and Finish. Fig 3.12 shows the resulting remeshed cracked model. 59 Figure 3.9: Flaw from file dialog to select .crk file. Figure 3.10: Flaw wizard panel to set location. 60 Figure 3.11: Flaw geometry shown in the model with crack template mesh Figure 3.12: Remeshed cracked model 61 3.3 Step 3: Apply Crack Surface Traction From the FRANC3D main menu, select Loads and Crack Face Pressure/Traction, Fig 3.13. Click on Add in the dialog box shown in the top left panel of Fig 3.14. Choose Constant Crack Face Pressure, as show in the top right panel of Fig 3.14; it is the default, and select Next. Set the Pressure value to 1 in the next dialog, Fig 3.14 – bottom left, and select Finish. Note that a positive value of pressure will tend to open the crack. The original dialog now contains one entry, Fig 3.14 – bottom right; click Accept. Figure 3.13: Crack Face Pressure/Traction menu 62 Figure 3.14 Crack face traction dialogs. 3.4 Step 4: Static Analysis Step 4.1: Run ABAQUS static crack analysis From the FRANC3D menu, select Analysis and Static Crack Analysis. The first panel of the wizard should appear as in Fig 3.15. We will specify the file name for the FRANC3D database; we call it Abaqus_Cube_LoadCases.fdb here. Select Next once you enter a File Name. The next panel of the wizard, Fig 3.16, allows you to specify the solver; choose ABAQUS and the click Next. 63 Figure 3.15: Static Analysis wizard first panel – File Name. Figure 3.16: Static Analysis wizard second panel – solver. The next panel of the wizard, Fig 3.17, allows you to specify the ABAQUS analysis and output options. The Apply crack face tractions box is checked automatically. Click Finish when ready to proceed with the ABAQUS analysis. When ABAQUS is done, proceed to the next step. 64 Figure 3.17: Static Analysis wizard third panel – ABAQUS output options. Step 4.2: Compute SIFs We now compute the stress intensity factors for this crack. If you are able to run ABAQUS from FRANC3D, then the model already exists and the results (.dtp) file is read automatically. From the FRANC3D menu, select Cracks and Compute SIFs. When the Compute SIFs dialog is displayed, Fig 3.18, make sure that the Include Applied Crack Traction box is checked; select Finish and the SIFs Plot dialog is displayed, Fig 3.19. The initial plot shows the sum of KI for all load cases. You can view the three stress intensity factor (SIF) modes for the four load cases. Fig 3.20 shows the KI values for the four load cases. Note that load case 2 has a negative KI. This is the compression load case and we did not include crack face contact in the analysis, so the crack faces penetrate each other giving a negative crack opening. In the next step, we turn on crack face contact and redo the analysis. 65 Figure 3.18: Compute SIFs dialog. Figure 3.19: Stress Intensity Factor dialog – sum of Mode I SIFs. 66 Figure 3.20: Stress Intensity Factor dialog – Mode I SIFs for each of the 4 load cases. Step 4.3: Re-Run ABAQUS static crack analysis with crack face contact From the FRANC3D menu, select Analysis and Static Crack Analysis. The first panel of the wizard should appear as seen previously in Fig 3.15. We specify the file name for the FRANC3D database; we call it Abaqus_Cube_LC_CFC.fdb here. Select Next once you enter a File Name. The next panel of the wizard, as seen in Fig 3.16, allows us to specify the solver; choose ABAQUS and then click Next. 67 The next panel of the wizard, Fig 3.21, allows you to specify the ABAQUS analysis and output options. The Apply crack face tractions box should be checked automatically. We need to check the Define crack face contact box, which will enable the Contact button. Click this button and the dialog shown in Fig 3.22 is displayed. In practice, you must make sure that these parameters do not conflict with any ABAQUS data already in the model. We leave all the defaults here except we set the coefficient of friction to be 0.5. Click Accept and then click Finish in the previous panel, Fig 3.21, when ready to proceed with the ABAQUS analysis. Figure 3.21: Static Analysis wizard third panel – ABAQUS output options. 68 Figure 3.22: ABAQUS contact options. Step 4.4: Compute SIFs with crack face contact We now compute the stress intensity factors for this crack. If you are able to run ABAQUS from FRANC3D, then the model already exists and the results (.dtp) file will be read automatically. From the FRANC3D menu, select Cracks and Compute SIFs. When the Compute SIFs dialog is displayed, Fig 3.23, make sure that the Include Applied Crack Traction and the Include Contact Crack Pressure boxes are checked; select Finish and the SIFs Plot dialog is displayed, Fig 3.24. The initial plot shows the sum of KI for all load cases. Fig 3.25 shows the KI values for the second load case. Note that value is closer to 0.0 than previous, although it is still not equal to 0.0. Contact analyses are subject to some numerical error; to verify that the SIF results from the M-integral are correct, we compare to the SIF results using Displacement Correlation. In the Compute SIFs dialog, choose Displacement Correlation, Fig 3.26. The Mode I SIFs for load case 2 are shown in Fig 3.27. The results are comparable to those for M-integral. 69 Figure 3.23: Compute SIFs dialog. Figure 3.24: Stress Intensity Factor dialog – sum of Mode I SIFs. 70 Figure 3.25: Stress Intensity Factor dialog – Mode I SIFs for the second load case using the Mintegral. Figure 3.26: Compute SIFs dialog. 71 Figure 3.27: Stress Intensity Factor dialog – Mode I SIFs for the second load case using Displacement Correlation 3.5 Step 5: Apply Surface Treatment Residual Stress To simulate residual stress due to a surface treatment, such as shot-peening, FRANC3D allows you to define a 1-D stress profile as a function of distance from the surface. We will demonstrate this using the original Abaqus_cube.inp model with one far-field load step. Start with the FRANC3D graphical user interface (see Fig 3.1), and select File and Import. In the window shown in Fig 3.2, choose Complete Model. Switch the Mesh File Type radio button in the Select Import Mesh File window, (see Fig 3.3), to ABAQUS. Select the file name, called Abaqus_Cube.inp here, and then select Next. As before, we choose to retain all the boundary condition surfaces (see Figs 3.4 – 3.6). The model will appear as was shown in Fig 3.7. Insert the same crack from file as before (see Figs 3.8 – 3.12). At this stage, we could do a static analysis to verify that the model is correct and compute the SIFs for the far-field loading only; the Mode I SIF should be the same as that shown in the top left panel of Fig 3.20. We leave this as an exercise for the reader. The next step is to define the surface treatment residual stress. 72 From the FRANC3D main menu, select Loads and Crack Face Pressure/Traction, Fig 3.28. Click on Add in the dialog box shown in the left panel of Fig 3.29. Choose Surface Treatment Residual Stress, as show in the right panel of Fig 3.29, and select Next. The dialog shown in Fig 3.30 is displayed. We use Read From File to import the residual stress distribution from a .txt file. Using the Open File dialog shown in Fig 3.31, we select the file surf_treat_res.txt, and then hit Accept. The distribution is read and displayed in the dialog, Fig 3.32. Select Next on this dialog panel to choose the surface of the model that is treated. The dialog shown in Fig 3.33 appears with all surfaces shown as blue; use the Shift key and the left mouse button to select the front surface of the model. Once selected, the surface is colored red/pink. Select Finish and the original Add Traction dialog is displayed with one entry, Fig 3.34; click Accept. Figure 3.28: Loads – Crack Face Pressure/Traction menu item selected. 73 Figure 3.29: Crack Face Traction wizard panels; surface treatment selected. Figure 3.30: Surface treatment residual stress panel. 74 Figure 3.31: Select file for surface treatment residual stress. Figure 3.32: Surface treatment residual stress panel - residual stress distribution displayed. 75 Figure 3.33: Surface treatment residual stress panel to select the treated surface. Figure 3.34: Crack Face Traction wizard panel - surface treatment added. From the FRANC3D menu, select Analysis and Static Crack Analysis. We specify the file name for the FRANC3D database; we call it Abaqus_Cube_surf_treat.fdb here; select Next once you enter a File Name. The next panel of the wizard allows you to specify the solver; choose ABAQUS and the click Next. The next panel of the wizard allows you to specify the ABAQUS analysis and output options. The Apply crack face tractions box is checked automatically. Click Finish when ready to proceed with the ABAQUS analysis. 76 Once ABAQUS is finished, from the FRANC3D menu, select Cracks and Compute SIFs. When the Compute SIFs dialog is displayed make sure that the Include Applied Crack Traction box is checked; select Finish and the SIFs Plot dialog is displayed, Fig 3.35. The initial plot shows the sum of KI for both load cases. The lower two panels of Fig 3.35 show the KI values for the first and second load cases separately. The first load case is the same as previously computed. The second load case produces a negative SIF indicating that this residual stress tends to keep the crack from opening, which is generally the purpose of surface treatment. Figure 3.35: Mode I SIF plots showing the sum (top) and the individual load case values; surface treatment load case produces a negative SIF (bottom right). 77 3.6 Step 6: Apply Tractions from Mesh-Based Stress Step 6.1: Create Mesh-Based Stress Field This section describes how to apply a crack surface traction using pre-computed stresses from an uncracked model. The uncracked model will typically be the same as the model that we use for crack growth simulations. In this example, we use the Ansys_Cube model along with ANSYS stresses (from the FRANC3D/ANSYS Tutorial); we could use an ABAQUS or NASTRAN model and corresponding stresses. To create the mesh-based stresses, we start with the base cube model and define an arbitrary farfield stress on the top surface of the cube, Fig 3.36. This creates a stress field that varies in the xdirection, Fig 3.37. FRANC3D reads the ANSYS stress listing, Fig 3.38. In ANSYS, we turn off PowerGraphics, change the format for the listing (using the /Format command), create the nodal stress component listing (using the ‘prnsol,s’ command), and save the listing to a file; we call it Ansys_Cube_surf_gradient.str. The stress listing must be in the global Cartesian coordinate system. We also must save the corresponding Ansys_Cube_surf_gradient.cdb file. Quit ANSYS and start FRANC3D. Note that if you use ABAQUS to generate the stresses for this tutorial, you need to write out the .fil file or write an ABAQUS CAE report (.rpt) file that contains the nodal stresses. FRANC3D will import an .inp and either the .fil or .rpt file. Additionally, if you are using ABAQUS CAE, to create the model, you should set NoPartsInputFile=ON to create a “flat” .inp file prior to running the analysis so that the stress listing has node ids that correspond exactly to the .inp file. See Step 6.3 for more details. If you use NASTRAN to create the stress, FRANC3D reads .bdf (or .nas) files along with .pch files with the nodal stress data. 78 Figure 3.36: Arbitrary far-field surface pressure. Figure 3.37: Stress in the y-direction for the arbitrary far-field surface pressure. 79 Figure 3.38: Nodal stress component listing. Step 6.2: Apply Mesh-Based Stress as Crack Face Traction Start with the FRANC3D graphical user interface (see Fig 3.1), and select File and Import. In the window shown in Fig 3.2, choose Complete Model. Switch the Mesh File Type radio button in the Select Import Mesh File window, (see Fig 3.3), to ABAQUS. Select the file name for the model, called Abaqus_Cube.inp here, and then select Next. As before, we choose to retain all the boundary condition surfaces (see Figs 3.4 – 3.6). The model will appear as was shown in Fig 3.7. Insert the same crack from file as before (see Figs 3.8 – 3.12). At this stage, we could do a static analysis to verify that the model is correct and compute the SIFs for the far-field loading only; the Mode I SIF should be the same as that shown in the top left panel of Fig 3.20. We leave this as an exercise for the reader. The next step is to define the mesh-based crack surface traction. 80 From the FRANC3D main menu, select Loads and Crack Face Pressure/Traction, Fig 3.39. Click on Add in the dialog box shown in the left panel of Fig 3.40. Choose Residual Stress Defined on a Mesh, as show in the right panel of Fig 3.40, and select Next. The dialog shown on the left side of Fig 3.41 is displayed. We select the files for the mesh and the stress listing, and then hit Next; the original Add Traction dialog is displayed with one entry, Fig 3.41 – right side; click Accept. Figure 3.39: Loads – Crack Face Pressure/Traction menu item selected. 81 Figure 3.40: Crack Face Traction wizard panels; residual stress defined on a mesh selected. Figure 3.41: Crack Face Traction wizard panels for residual stress defined on a mesh. From the FRANC3D menu, select Analysis and Static Crack Analysis. We specify the file name for the FRANC3D database; we call it Abaqus_Cube_mesh_based.fdb here; select Next once you enter a File Name. The next panel of the wizard allows you to specify the solver; choose ABAQUS and the click Next. The next panel of the wizard allows you to specify the ABAQUS analysis and output options. The Apply crack face tractions box is checked automatically. Click Finish when ready to proceed with the ABAQUS analysis. 82 Once ABAQUS is finished, from the FRANC3D menu, select Cracks and Compute SIFs. When the Compute SIFs dialog is displayed make sure that the Include Applied Crack Traction box is checked; select Finish and the SIFs Plot dialog is displayed, Fig 3.42. The initial plot shows the sum of KI for both load cases. The lower two panels of Fig 3.42 show the KI values for the first and second load cases separately. The first load case is the same as previously computed. The second load case produces a negative SIF with a gradient due to the uncracked model stress. Figure 3.42: Mode I SIF plots showing the sum (top) and the individual load case values; meshbased stress load case produces a negative SIF (bottom right). 83 Step 6.3: ABAQUS Mesh-Based Stress The Abaqus_Cube model is modified so that the traction on the upper surface matches that used in the ANSYS model in Step 6.1. The resulting y-direction stress contours are shown in Fig 3.43; the stresses are basically the same as the ANSYS stresses shown in Fig 3.37. To generate a .fil file from ABAQUS, add the following lines to the .inp file just before the *End Step: ** output displacements and stress to fil results file *File Format, ASCII *Node File, Frequency=1 U *El File, position=averaged at nodes, Frequency=1 S Then submit the ABAQUS job for analysis. Note that if you use ABAQUS CAE, you can add these lines using the ABAQUS CAE menu, under Model and Edit Keywords. An additional change should be made in ABAQUS CAE to flatten the .inp file and .fil files, removing *Part, *Instance and *Assembly data: >>> mdb.models["Abaqus_Cube"].setValues(noPartsInputFile=ON) This eliminates any confusion with node and element numbering. Instead of using the .fil file, you can write the stress data to a .rpt file from ABAQUS CAE. Using the Report menu in CAE, choose Field Output. The dialog in Fig 3.44 is displayed; select Stress components and click OK. This assumes that you requested stress as a field output, which you do before submitting the analysis. We request unique nodal stress values in the report. By default, ABAQUS CAE saves the data to abaqus.rpt, you can change this using the Setup tab or just remember to rename the .rpt; we use Abaqus_Cube_surf_gradient.rpt here (this prefix is used for the .inp and .fil files also). 84 Figure 3.43: ABAQUS stress in y-direction. Figure 3.44: ABAQUS report field output dialog. 85 4.0 Tutorial 3: Two Cubes Glued Together In Tutorial 3, we use two cubes that are tied together to illustrate how to simulate crack growth in models where there is contact or constraint between parts of the model. 4.1 Step 1: Create the ABAQUS FE Model We use the same initial cube geometry and boundary conditions from the first tutorial and add a second adjacent cube, Fig 4.1, with slightly different material properties. The second cube has an elastic modulus of 20,000, which is double that of the first cube; the Poisson ratio is the same. The second cube is also constrained in the y-direction and has a surface traction (negative pressure) of 10 on the upper surface, which is the same as the first cube. We define constraint conditions between the two cubes. The bottom image of Fig 4.1 shows the constraint surface. The first set of analyses use constraint conditions, Fig 4.2. The ABAQUS inp file is exported as doublecube_abaqus_constraint.inp here. 86 Figure 4.1: ABAQUS double cube model with constraint surface between the cubes. 87 Figure 4.2: ABAQUS tie constraint dialog. 4.2 Step 2: Import ABAQUS FE Model into FRANC3D We start by importing the ABAQUS model into FRANC3D, using the cdb file written in the previous step. We start by importing as a full model. Step 2.1: Importing ABAQUS FE Model Start with the FRANC3D graphical user interface, and select File and Import. In the Select Type of Import panel, choose Complete Model and select Next. Switch the Mesh File Type radio 88 button in the Select Import Mesh File window to ABAQUS and select the file name for the model, called doublecube_abaqus_constraint.inp, Fig 4.3. Select Next. Figure 4.3: FRANC3D FE model import. The Select Retained Surfaces dialog is displayed, Fig 4.4. The surfaces with boundary conditions and the contact surface are highlighted in blue. Choose Select All to retain all of these surfaces. Figure 4.4: FRANC3D select retained surfaces. Step 2.2: Insert a Crack We insert a surface penny crack with radius of 1.0 in the second cube, Fig 4.5. Note that this crack is the same as that defined in Tutorial 1, except that it is translated in the x-direction so it 89 falls in the second cube. The template mesh radius is left at the default value of 0.1, which is what was used for Tutorial 1. The resulting remeshed model is shown in Fig 4.6; the contact surface mesh facets between the two cubes are retained. Note that the contact surface mesh does not have to be retained, and if the crack is located such the contact surface must be remeshed, we must not retain it. Here we retain it for simplicity and for demonstration. We show what happens if we do not retain it later in Step 2.6. Figure 4.5: FRANC3D new crack insertion panel showing location and orientation. 90 Figure 4.6: Remeshed cracked model, with contact surface mesh facets retained. Step 2.3: Static Crack Analysis We run a static analysis using ABAQUS. From the FRANC3D Analysis menu, select Static Crack Analysis. Set the file name, we use Abaqus_constraint_cubes_crack.fdb here. Select the ABAQUS solver; all the default settings are used. Note that the .inp file written by FRANC3D includes ABAQUS commands to regenerate the tie constraint between the two cubes. Step 2.4: Compute SIFs The resulting Mode I SIF is shown in Fig 4.7; the curve is not symmetric as it was for Tutorial 1. 91 Figure 4.7: Mode I SIFs for double_cube with contact between cubes. Step 2.5: Plot Deformed Shape We can plot the deformed shape in FRANC3D. From the Advanced menu select View Response. Fig 4.8 shows that the displacement is not uniform; the first cube deforms about twice as much as the second, which is expected as it has a lower elastic modulus. The tie constraint between the two cubes is maintained. 92 Figure 4.8: Deformed shape – 200x magnification. Step 2.6: Contact surface mesh not retained If we choose to not retain the mesh on the constraint surface when importing the FE model into FRANC3D, we have to specifically unselect the contact surfaces, Fig 4.9; note that we unselect both sides of the interface here. Unselect/select is done using the Shift key with the left mouse button. Note that you will have to use the Clipping button to see inside the model. Insert the same crack as in Step 2.2, into the second cube. The resulting surface mesh shown in Fig 4.10 has a remeshed contact surface. The static analysis is done using ABAQUS as in Step 2.3. The resulting Mode I SIFs, Fig 4.11, are the same as computed previously (see Fig 4.7). 93 Figure 4.9: Import FE double_cube model with constraint surface unselected. Figure 4.10: Double_cube model with unretained constraint surface remeshed. 94 Figure 4.11: Mode I SIFs for double_cube with unretained constraint surface mesh. Step 2.7: Specify No Crack Material Region If the crack in the second cube is allowed to propagate, it will reach the interface between the two cubes. Depending on the material interface, the crack might stop or it might cross the interface. If the crack should stop at the interface but continue growing in the original ‘cube’ material region, we can specify that the other ‘cube’ material region is not to be cracked. Using the FRANC3D Advanced menu, select No Crack Regions, Fig 4.12. The dialog shown in Fig 4.13 is displayed. Figure 4.12: Advanced menu – No Crack Regions option. 95 Figure 4.13: No Crack Regions dialog - uncracked model (left) and already cracked model (right). 5.0 Tutorial 4: Disk with Rotation and Temperature In Tutorial 4, we simulate crack growth in a simple disk model that includes temperature variation and rotation. We describe briefly the model and the thermal analysis to produce the temperature variation. Once the temperatures are defined, we run a structural analysis that also includes rotation, and then proceed to describe the crack growth simulation. A goal of this tutorial is to show how temperature variation affects computed SIFs. 5.1 Step 1: Create the ABAQUS Disk Model The first step is to build the ABAQUS FE model and to define the material properties. The model is shown in Fig 5.1. The inner radius is set to 1.0 and the outer radius is set to 10. The disk is set to be one unit wide; the final geometry is shown in the right panel of Fig 5.1. 96 We define both the thermal and structural properties, which will consist of density, specific heat, enthalpy, thermal expansion, conductivity, elastic modulus and Poisson ratio. The material can be temperature dependent; for this analysis we use constant values for all data except for the elastic modulus, Fig 5.2. Density is set to 1.0 and enthalpy is set to 0. Figure 5.1: ABAQUS disk geometry. 97 Figure 5.2: ABAQUS disk material properties. 98 5.2 Step 2: Run ABAQUS Thermal Analysis The first analysis is for heat transfer, so we set the element type (Solid87) and create a volume mesh. The model is meshed with all tetrahedral elements, Fig 5.3. The boundary conditions consist of temperatures on two surfaces; temperature at the inner radius of the disk is set to 1000 and temperature at the outer radius is set to 100, Fig 5.3. The resulting nodal temperatures are shown in Fig 5.4. These nodal temperatures are applied to the model as initial conditions for the mechanical analysis. Figure 5.3: Volume mesh and thermal boundary conditions. 99 Figure 5.4: Resulting nodal temperature contours. 5.3 Step 3: Run ABAQUS Structural Analysis We switch the element type (DC3D10 to C3D10) in the model for the structural analysis. The boundary conditions for the structural analysis consist of rollers on the (symmetry) surfaces at x=0 and y=0. We also fix a point in the z-direction to prevent rigid body motion, and we apply the temperatures from the heat analysis as initial conditions. Finally, we define the rotational velocity (centrif) as 0.2809 about the z-axis. The resulting model with boundary conditions 100 should appear as in the left panel of Fig 5.5. The resulting maximum principal stress contours from the structural analysis are show in the right panel of Fig 5.5. We save the ABAQUS .cae file in case we need to re-analyze the model. We also create an .inp file for use with FRANC3D. Note that we could create global and local model portions in ABAQUS for FRANC3D. However, for this tutorial, we rely on the FRANC3D submodeler tool, so we just archive the full model. Figure 5.5: Boundary conditions for structural analysis – left panel, and resulting maximum principal stress contours – right panel. 5.4 Step 4: Import Disk into FRANC3D Start with the FRANC3D graphical user interface, and select File and Import. In the Select Type of Import panel, choose the Import and divide into global and local models radio button and select Next. Switch the Mesh File Type radio button in the Select Import Mesh File window to ABAQUS and select the file name for the model, called Abaqus_Disk.inp, Fig 5.6. Select Next. 101 Figure 5.6: FRANC3D FE model import. Figure 5.7: FRANC3D FE model import. Figure 5.8: FRANC3D FE model import. 102 5.5 Step 5: Insert Initial Crack We insert an elliptical crack with a radius of 0.1, Fig 5.9. The crack is located at the front of the disk, rotated 45 degrees from the x-axis, Fig 5.10. The crack front template has a radius of 0.01, Fig 5.11. The resulting remeshed crack model is shown in Fig 5.12. Figure 5.9: Elliptical crack dimension dialog. 103 Figure 5.10: Crack location and orientation dialog. Figure 5.11: Crack front template dialog. 104 Figure 5.12: Final meshed crack model. 5.6 Step 6: Static Crack Analysis We perform a static crack analysis using ABAQUS. Choose Analysis and Static Crack Analysis from the FRANC3D menu. Provide a file name (Abaqus_disk_crack.fdb) and choose ABAQUS as the solver. The ABAQUS options are shown in Fig 5.13; the default settings will cause ABAQUS to write nodal temperatures to the results (.dtp) file. The Connect to global model option is checked automatically. Select Next. 105 Figure 5.13: Static analysis options for ABAQUS. The next dialog box has options for connecting the local and global portions. We use node merging with the automatically selected local and global cut-surfaces. Click Finish to begin the ABAQUS analysis. 106 Figure 5.14: Static analysis ABAQUS local/global model connection dialog. 5.6 Step 6: Compute SIFs Once ABAQUS has finished running, we compute the SIFs; choose Cracks and Compute SIFs from the FRANC3D menu. The dialog, Fig 5.15, allows you to specify the method for computing SIFs. If we use the M-integral, we make sure that the Include Thermal Terms option is checked; the Reference Temperature is 0 degrees for this model. The SIFs based on the Mintegral are shown in Fig 5.16 and the SIFs based on Displacement Correlation (DC) are shown in Fig 5.17. It should be noted that the SIFs differ very little, indicating that the results are computed correctly. If your results differ significantly, you should ensure that the nodal temperatures are all correct. Note that if you do not include the thermals terms when computing M-integral SIFs, the results will be very different from the DC SIFs, Fig 5.18. 107 Figure 5.15: Compute SIFs dialog. Figure 5.16: M-Integral based SIFs. 108 Figure 5.17: Displacement correlation based SIFs. Figure 5.19: M-Integral based SIFs without thermal terms added. 5.7 Step 7: Crack Growth The next step is to propagate the crack. Choose Cracks and Grow Crack from the FRANC3D menu. We switch to quasi-static growth, Fig 5.20, and select Next. We leave all the defaults in the next panel, Fig 5.21, and select Next. The median extension is set to 0.015, and the 109 extrapolation is increased to 4% for both ends, Fig 5.22. The template radius is set to 0.01, Fig 5.23. Select Next when ready to start the process of crack growth, insertion and remeshing. Note that the crack front and template should extend beyond the model surface at every step; this sometimes requires small adjustments in the fitting depending on the crack front and model surface geometry. For this model, 3% extrapolation is not quite enough to ensure that all the template end points fall outside of the model. Figure 5.20: Crack growth first wizard panel. 110 Figure 5.21: Crack growth second wizard panel. 111 Figure 5.22: Crack growth third wizard panel. 112 Figure 5.23: Crack growth wizard – final panel. 5.8 Step 8: Automatic Crack Growth We can continue doing static analyses and manually growing the crack at each step or we can do automatic crack growth. We proceed with automatic crack growth at this point. Select Crack Growth Analysis from the Analysis menu. A series of dialog panels some of which you have just seen in Step 7 when manually growing the crack will be displayed. Use the same settings as before. We specify 10 crack growth steps with a constant median increment, Fig 5.24. We set 113 the current crack growth step to 1 as we have extended the crack but have not yet analyzed it, Fig 5.25. The last two panels are the same as those for Step 6 (see Fig 5.13 and 5.14). All the default settings should be okay; select Finish to start the automatic growth. Figure 5.24: Crack growth plan dialog for automatic crack growth. 114 Figure 5.25: Crack growth step number and base file name dialog for automatic crack growth. 5.9 Step 9: Analysis Results After 10 steps of crack growth using a constant increment of 0.015, the crack appears as in Fig 5.26. You can monitor the FRANC3D CMD window for any error messages as well as monitoring the ABAQUS logs. The SIF history is shown in Fig 5.27. You can continue to grow this crack and/or you can compute fatigue cycles – we leave this as an exercise. We can examine the temperature contours in ABAQUS to verify that these are mapped correctly, Fig 5.27. The deformed shape of the crack at step #11 is shown in Fig 5.28. 115 Figure 5.26: Crack configuration after 10 steps of automatic crack growth. Figure 5.27: Mode I SIF history after 10 steps of automatic crack growth. 116 Figure 5.27: Contours of structural temperatures at crack step #11. 117 Figure 5.28: Deformed shape of crack step #11n. 6.0 Tutorial 5: Multiple Cracks in a Plate In Tutorial 5, we simulate multiple cracks using a simple plate model. 6.1 Step 1: Create the ABAQUS Plate Model The plate dimensions are defined as: 20 x 50 x 5. The bottom surface is fixed in the y-direction and the top surface has a traction of 10. Additional constraints on the bottom left edge prevent motion in the x-direction, and the node at the origin is also fixed in the z-direction, Fig 6.1. 118 Figure 6.1: ABAQUS plate model. The material properties are shown in Fig 6.2. The model is meshed with 20-noded brick elements. Once the model has been defined and analyzed in ABAQUS to verify that the boundary conditions are suitable, the model can be saved to a .inp file; we call it Abaqus_plate.inp. 119 Figure 6.2: ABAQUS plate model material properties. 6.2 Step 2: Import Plate Model into FRANC3D From the FRANC3D menu, we select File and Import. We Import and divide the plate model, Fig 6.3. We extract the mid-portion of the plate using the Rubberband tool in the Submodeler window, Fig 6.4. Select Crop and Next in this dialog to extract the portion of the model selected. There are no boundary conditions on this middle portion, so the model is immediately displayed in the FRANC3D main window, Fig 6.5. The cut-surface mesh facets are automatically retained. 120 Figure 6.3: FRANC3D model import of plate model. Figure 6.4: FRANC3D submodel extraction for plate model. 121 Figure 6.5: Plate submodel in FRANC3D main window – Multiple Flaw Insert menu selected. 6.3 Step 3: Insert Multiple Cracks From the FRANC3D menu, we select Cracks and Multiple Flaw Insert, Fig 6.5. The dialog shown in Fig 6.6 is displayed. Use the Add button to define each crack that will be added. Note that one could also define single cracks using the New Flaw Wizard menu, save each crack to a file without adding it to the model, and then use the Flaws From Files to add the multiple .crk files. 122 Figure 6.6: Multiple crack definition dialog. After selecting Add, the usual Flaw Definition wizard panels are displayed. Figs 6.7 – 6.10 provide the parameters for the first crack, which is a middle (or center) through crack. This crack has two fronts. The crack geometry must be defined such that intersections between the crack and model can be computed; we set g=5.2 as the plate is 5.0. Figure 6.7: Flaw definition – middle through crack selected. 123 Figure 6.8: Middle through crack dimensions. Figure 6.9: Middle through crack orientation. 124 Figure 6.10: Middle through crack template. Select the Meshing Parameters button in Fig 6.10 to display the dialog in Fig 6.11. Turn off the Do Coarsen Crack Mouth Mesh so that we generate a more refined mesh to help improve the results. A coarse tetrahedral mesh near the crack typically leads to a rough SIF curve. Figure 6.11: Meshing parameters – Do Coarsen Crack Mouth Mesh turned off. 125 Once the template is defined, select Finish, Fig 6.10, and the Multiple Crack Definition dialog shows the first crack name, Fig 6.12. Select Add again to add the second crack, which will be an edge through crack, with one crack front, Fig 6.13. Figure 6.12: Multiple crack definition dialog with one crack defined. Figure 6.13: Flaw definition – edge through crack selected. 126 The crack geometry is again defined such that it is bigger than the plate and such that it is bigger (0.6) than what we intend the crack depth to be (0.5), Fig 6.14. You must orient the crack so that the front falls inside the model, Fig 6.15; if you are unsure of the orientation, select Next and look at the template, Fig 6.16. If you set the orientation incorrectly, select Back to fix it. When you are done, select Finish. The Multiple Crack Definition dialog shows two crack names, Fig 6.17. Select Add again to add the third crack, which will be a long shallow crack, Fig 6.18. Note that we typically use this crack instead of high-aspect ratio ellipses as the geometry at the ends is better suited to the template mesh. Figure 6.14: Edge through crack dimensions. 127 Figure 6.15: Edge through crack orientation. Figure 6.16: Edge through crack template. 128 Figure 6.17: Multiple crack definition dialog with two cracks defined. The crack geometry is again defined such that intersection with the plate surface can easily be computed, Fig 6.19 - 6.20. Select Finish, Fig 6.21, to return to the Multiple Crack Definition dialog, which now shows three crack names, Fig 6.12. Figure 6.18: Flaw definition – long shallow crack selected. 129 Figure 6.19: Long shallow crack dimensions. Figure 6.20: Long shallow crack orientation. 130 Figure 6.21: Long shallow crack template. Figure 6.22: Multiple crack definition dialog with three cracks defined. Select the Display button, Fig 6.22, to show all three cracks in the model, Fig 6.23. The cracks should not be overlapping or intersecting. 131 Figure 6.23: Multiple cracks displayed together. Select Accept, Fig 6.22, to start the crack insertion and remeshing process. Note that you can use the Add / save radio button to save the cracks to a .crk file first if you think you might need to restart from this initial configuration; you might want to vary the mesh refinement (template radius) for instance. The remeshed model is shown in Fig 6.24. We can now proceed with the static analysis. 6.4 Step 4: Static Crack Analysis Follow the same procedure as in the previous tutorials to run the ABAQUS analysis. Select Static Crack Analysis from the FRANC3D menu, set the file name (we use 132 Abaqus_plate_multi_crack), Fig 6.24, set the ABAQUS options, Fig 6.25, set the local + global connection, Fig 6.26, and select Finish. Figure 6.23: Remeshed model with three cracks inserted. 133 Figure 6.24: Static analysis first wizard panel. Figure 6.25: Static analysis wizard panel to set ABAQUS solver options. 134 Figure 6.26: Static analysis wizard panel to set local / global connection. 6.5 Step 5: Compute SIFs for Multiple Crack Fronts Once ABAQUS has finished, select Compute SIFs from the FRANC3D menu. The SIF dialog allows you to select specific crack fronts to display SIF plots. The front is identified on the left by the red A and B. As you grow the crack, you will have SIF curves from all fronts for all crack growth steps. And if there are multiple load steps, you will have separate SIF curves for each of those also. 135 Figure 6.27: Mode I SIF for crack front #3. 6.6 Step 6: Grow Multiple Cracks Select Grow Cracks from the FRANC3D menu. We switch to quasi-static growth as in Tutorial 4 and leave all the other parameters at their default values. We end up with the dialog shown in Fig 6.28, which shows predicted crack growth for all four crack fronts. We set the median extension to 0.15 to ensure that we have growth for all fronts. Note that you can turn off growth for a specific crack front by unchecking the grow box. Each front has its own fitting parameters. In this case, this is important as the front on the left side can easily be fit to a 3rd order polynomial (2nd order would work too), Fig 6.29. The front on the right must use a different type of fit, Fig 6.30. For this crack front, a cubic spline or moving polynomial fit would work; however, we use the multiple polynomial here. Once you have checked the fit, you can proceed to re-insert and remesh to grow all three cracks. Note that FRANC3D currently does not track crack front ids perfectly; so as the cracks grow, crack front ids might vary or change. 136 Figure 6.28: Crack growth wizard panel. 137 Figure 6.29: Crack growth wizard panel – showing crack front #2. 138 Figure 6.30: Crack growth wizard panel – showing crack front #3. 6.7 Step 7: Grow Crack around a Corner In this section, we describe how to grow a crack around a 90 degree corner, creating a throughedge-crack from a corner-crack shape. Import the local portion of the plate model that was 139 created during Step 2. We can import as “already divided” or we can subdivide again choosing the retained element listing. The model will appear as in Fig 6.5. We insert a single crack, using the elliptical shape from the flaw library. The crack radius is 1.0. It is located as shown in Figure 6.31. The mesh template settings are left at their default values. Figure 6.31: Single corner crack location and orientation. An initial static crack analysis is completed to obtain the initial SIFs, Fig 6.32. The crack growth is done using the quasi-static growth model with n=2. The initial growth and fitting parameters are shown in Fig 6.33. To keep things simple, 24 steps of automated crack growth are completed using this same constant median extension. The mesh template parameters are left at their default values. 140 Figure 6.32: Single corner crack SIFs. At step #24, the crack front is close to the back surface. The crack will transition from a corner crack to an edge crack, and this can happen automatically (Fig 6.34), but if a user wants to capture SIF values as the crack transitions, then some “manual” steps and static analyses can be performed. Fig 6.35 shows a series of manual crack growth steps where the median increment is adjusted so that the crack front transitions in a user-controlled way around the corner. Note that when the crack front is at the corner, and when it intersects the model surface at shallow angles, we can turn on Simple Intersections for the template mesh. This forces the template to be pulled back from the model surface; FRANC3D should turn this on automatically as needed, but we can ensure that it is on by checking the box (see middle right image). If the back surface of the plate is not being refined enough when the crack front is close, you can edit the Meshing Parameters and turn on Do Local Surface Refinement (see bottom right image). 141 Figure 6.33: Single corner crack initial growth. Figure 6.34: Single corner crack after 24 steps (left) and after 27 steps (right) of growth; transition around corner completed automatically. 142 Figure 6.35: Manual steps of growth for single corner crack as it transitions around a corner. 143 6.8 Step 8: Grow Crack through a Back Surface In this section, we describe how to grow a crack through a back-surface, creating a centerthrough-crack with two fronts from a surface-penny crack in a plate. The steps to grow a crack front through a back-surface are similar to those for transitioning a crack around a corner. We use manual crack growth and static analysis steps when the crack front gets close to the surface and as it breaks through. We describe the steps here using the same plate model but with a single surface-penny crack inserted on the front surface. Import the local portion of the plate model that was created during Step 2. We can import as “already divided” or we can subdivide again choosing the retained element listing. The model will appear as in Fig 6.5. We insert a single crack, using the elliptical shape from the flaw library. The crack radius is 1.0. It is located as shown in Figure 6.36. The mesh template settings are left at their default values. Figure 6.36: Single surface crack location and orientation. 144 An initial static crack analysis is completed to obtain the initial SIFs, Fig 6.37. The crack growth is done using the quasi-static growth model with n=2. The initial growth and fitting parameters are shown in Fig 6.38. To keep things simple, 27 steps of automated crack growth are completed using this same constant median extension. The mesh template parameters are left at their default values. Figure 6.37: Single surface crack SIFs. At step #27, the crack front is close to the back surface. The crack will transition from a surface crack to a center-through crack, and this might happen automatically, but if a user wants to capture SIF values as the crack transitions, then some “manual” steps and static analyses can be performed. Fig 6.38 shows a series of manual crack growth steps where the median increment is adjusted so that the crack front transitions in a user-controlled way toward and through the back-surface. If the back surface of the plate is not being refined enough when the crack front is close, you can edit the Meshing Parameters and turn on Do Local Surface Refinement (see first image). The crack increment and template radius can be reduced to get the front close to the back surface before breaking through, but there needs to be enough room to volume-mesh (see second image). Eventually, the crack must be propagated through the back surface (see third image). Note that when the crack front intersects the model surface at shallow angles, we can turn on Simple 145 Intersections for the template mesh. This forces the template to be pulled back from the model surface; FRANC3D should turn this on automatically as needed, but we can ensure that it is on by checking the box (see last image). When the crack front intersects the back surface at a more reasonable angle (closer to a right angle), the Simple Intersection can be turned off. 146 Figure 6.38: Single surface crack after 27 steps of growth. Manual growth and static analysis allows one to control how the crack front breaks through the back surface. 147 7.0 Tutorial 6: Computing Fatigue Life Cycles In Tutorial 6, we describe the Fatigue Life module in more detail by presenting an example simulation of a surface crack in a plate under cyclic loading, comparing the computed number of cycles to experimental values from Manu: Manu, C. (1980) Three-dimensional finite element analysis of cyclic fatigue crack growth of multiple surface flaws, PhD Thesis, Cornell University. The plate and initial crack dimensions are shown in Fig 7.1. The loading is uniaxial tension. The physical testing produced the crack growth seen in Fig 7.2. The crack grows through the plate, eventually becoming a through crack with two crack fronts. Figure 7.1: Single surface crack in plate under tension: 148 Figure 7.2: Single surface crack in plate under tension (from Manu, 1980). The crack growth is simulated using FRANC3D and ANSYS. Fig 7.3 shows the simulated crack fronts. The fatigue cycles are computed using the resulting SIF history and appropriate crack growth rate material data. For units of MPa and mm, the Paris parameters for this material are: C=1.14e-15 and m=3.85; Kth is 121 MPa•mm½ and KIc is 6949 MPa•mm ½. The cycles are compared to previous simulations and experimental observations from Barlow: Barlow, K., 2008, Propagation Simulation of Multiple Cracks in a Tensile Specimen, International Conference on Fatigue Damage of Structural Materials VII, Hyannis, MA. Figure 7.3: FRANC3D simulated crack growth for single surface crack in a plate in tension 149 Figure 7.4: Crack growth cycles for single surface crack in plate under tension. 7.1 Step 1: Perform Crack Growth The first step is to import the ABAQUS model of the plate into FRANC3D. We import and divide the full model using the FRANC3D Submodel tool, Fig 7.5. There are no boundary conditions on the local model; it is displayed in the FRANC3D main modeling window with the cut-surface facets retained once we Crop and Finish with the Submodel tool. 150 Figure 7.5: Local and global model portions. The semi-elliptical surface crack dimensions are defined in Fig 7.1. We use a template radius of 0.25, set the number of template rings to 6, and turn off the Do Crack Mouth Coarsen Mesh flag to generate a more refined mesh to compare the SIFs to the handbook solution, Fig 7.6. 151 460.0000 455.0000 450.0000 445.0000 440.0000 435.0000 Newman-Raju 430.0000 425.0000 0.0000 FRANC3D 0.2000 0.4000 0.6000 0.8000 1.0000 Figure 7.7: Mode I SIF for initial semi-elliptical surface crack – comparing FRANC3D with handbook solution. The crack growth could be simulated using a few steps with relatively large increments, but we use a larger number of steps with small increments of growth here. For the initial analyses, the growth is based on constant amplitude loading with Paris crack growth rate material data, as given in Fig 7.1. Variable amplitude loading options are discussed in Step 3. Using the automatic Crack Growth Analysis menu option in FRANC3D, the crack is propagated for 55 steps with crack fronts as shown in Fig 7.3. The Mode I SIF history is shown in Fig 7.8 for a path through the first 48 crack fronts. This SIF history can be exported and used in an external program to compute fatigue life or crack growth cycles; in Step 2, we describe how the Fatigue module built into FRANC3D is used to compute cycles. 152 Figure 7.8: Mode I SIF history. 7.2 Step 2: Compute Fatigue Crack Growth Cycles The crack growth in Step 1 was performed using a constant amplitude loading with Paris fatigue parameters. When we select Fatigue and Fatigue Life Predictions from the FRANC3D main menu, the dialog shown in Fig 7.9 is displayed. The cycles versus crack growth step number are plotted by default. The number of cycles is computed at each step of growth and stored in the FRANC3D database; the number of cycles is an average of the values computed at each mid-side node along the crack front. 153 Figure 7.9: Mode I SIF history – cycles vs crack step number. The Fatigue Life dialog also allows us to plot cycles versus crack length, Fig 7.10 and 7.11, where the length might be the crack length measured on the model surface, which is what was observed and measured during the experiments. Regardless of the path chosen, the number of cycles is consistent, if the path goes through all of the fronts. The number of cycles is 111,999 at the current configuration, where the crack front is very close to the back surface of the plate, but has not yet broken through; there is about 0.75 mm between the deepest point on the crack front and the back surface. 154 Figure 7.10: Mode I SIF history – define a path on the model surface. Figure 7.11: Mode I SIF history – cycles vs crack length. 155 7.3 Step 3: Crack Growth and Fatigue Options The applied (measured) loading spectrum from the Manu experiments is shown in Fig 7.4. This type of applied cyclic loading does not fall into one of the FRANC3D crack growth options. It consists of a complete history of ‘blocks’ of constant amplitude load cycles, where the ‘blocks’ have different R values (where R = minimum load / maximum load) and different numbers of cycles. There are only two different R values (0.15 and 0.575), and these values differentiate the ‘blocks’ of cycles. There are a total of 375,370 cycles applied during the test, although there is a much smaller number (47) of constant amplitude blocks. The crack fronts from the experiment can be correlated with load cycles from this complete history. Each simulated crack front could be correlated to a position along this load cycle history, but this requires that we track the current position in the history as we grow the crack. This is not something that FRANC3D is able to do currently; we cannot mimic an experiment. The options for crack growth in FRANC3D consist of: 1) quasi-static which implies a single constant or a simply increasing load, 2) constant amplitude cyclic load, 3) variable amplitude sequence loads, 4) variable amplitude spectrum loads, and 5) variable amplitude transient loads. The constant amplitude cyclic loading was used in Step 1 and 2 above, with R=0. The computed number of cycles is significantly less than the number measured in the experiment, which is expected as the K value is higher, and thus the crack growth rate is much higher. If we modify the R value in the Fatigue Life dialog and use 0.15, Fig 7.12, the number of computed cycles increases to 209,421. We can also try setting R to 0.575, and in that case the number of cycles is 3,020,415. 156 Figure 7.12: Fatigue Life dialog – Life Parameters with R set to 0.15. The three variable amplitude load options are briefly described here. None of these really can be used to compute the cycles for the experiment described above, however. The sequence option involves a number of load steps (or load cases). For example, for a jet engine component, a user defines a set of load steps where each step has a different temperature distribution and a different angular velocity; each load step represents a different time point in a typical flight (e.g., ground idle, takeoff/climb, cruse, maneuver, decent, reverse thrust). The load step order in the analysis does not need to correspond to how they would be encountered in a real flight. In FRANC3D, a user constructs a ‘Load Sequence’ (or mission profile) that describes a typical mission or flight. For each stage in the sequence, an optional load and temperature multiplier can be applied, giving a sequence table such as: 157 Load_Step 1 3 2 4 2 4 2 5 1 Load_Mult 1.0 1.0 1.0 0.8 1.1 1.2 1.0 1.0 1.0 Temp_Mult 0.5 1.0 1.0 1.0 1.0 1.1 1.0 1.0 1.0 Comment Ground idle (cold) Climb Initial cruse Maneuver 1 Second cruse Maneuver 2 Third cruse Descent Ground idle (hot) FRANC3D computes SIFs for each of the stages in the sequence and then steps through those SIFs and find the K and R for each reversal (e.g. from ‘off’ to ‘ground idle’). For each K and R, FRANC3D finds da = da/dN(K,R,T), and sums the da's for each stage in the sequence to get da total for one pass through the sequence. Note that da is the change in crack length. Each pass through the sequence represents one flight. FRANC3D passes through the sequence as many times as necessary to predict crack length as a function of number of flights (rather than as a function of the number of cycles). Spectrum loading involves a load history that defines the stress level at a (typically large) number of time points. This load history is “counted” using "rainflow" or other method to come up with a list of load reversals (stress_max and stress_min pairs). This is a counted load spectrum, and there are industry standard spectra (e.g. FALSTAFF, TWIST, TURBISTAN and HELIX). FRANC3D steps through the spectrum one load reversal at a time. For the current crack length, FRANC3D computes the sum of the K's from one or more analysis load steps (as per the user's input) and multiplies the nominal K by the stress_max and stress_min values to get K_max and K_min for the current load reversal. FRANC3D then computes K and R, and then da = da/dN(K,R,T). The crack length is updated and the computation repeated. 158 Transient loading involves a series of load steps that mimic a ‘moving’ load or a load that changes in time. An example of this is gear tooth contact; as two gears rotate the load on a tooth changes in magnitude and location as the tooth comes into and goes out of contact with the opposing tooth. Another example is the changing load on a railway wheel as it comes into and goes out of contact with the track as the wheel revolves. In these cases, the user defines a set of load steps in (time) sequence. FRANC3D computes the SIFs for each load step and computes an increment of crack growth, both extension and direction. The resulting vector sum of all the increments for all load steps gives the total crack growth for one instance of the transient series. 7.4 Step 3: Sequence Crack Growth As described in 7.3, the sequence crack growth option in FRANC3D uses the results from a set of load steps. In this step of the tutorial, we use the simple disk model from Section 4 with three unique load cases. The load steps will consist of: 1) rotation with initial constant temperature, 2) rotation with increased temperature distribution, and 3) load step #2 with additional surface pressure. 7.5 Step 4: Spectrum Crack Growth As described in 7.3, the spectrum crack growth option in FRANC3D uses the results from one or more load steps in combination with a load spectrum (file). In this step of the tutorial, we use the simple disk model from Section 4 with a single load case and two different made-up spectrum files. 7.6 Step 5: Transient Crack Growth As described in 7.3, the transient crack growth option in FRANC3D uses the results from multiple load steps, and crack growth is based on the combined (vector sum) results. In this step of the tutorial, we use a portion of a gear model with load steps that mimic discrete time points as the gear teeth rotate. 159 8.0 Tutorial 7: Resume Growth with Larger Submodel In Tutorial 7, we describe the process of extracting the current crack geometry and inserting this into a larger submodel to resume crack growth for the case when the crack reaches the limits of the submodel. 8.1 Step 1: Extract and Save Crack Geometry The crack geometry information for each step of crack growth is saved in the FRANC3D restart (.fdb) file. The data appears in this block: FLAWSURF ( VERSION: 5 NUM_SURFS: 763 SURF: 0 263 264 356 6.83559456365193 … … 4.73891556707121 ) 5.00380971299962 9.72712346638146 5.00420103803897 8.3468309877949 This data can be copied from the .fdb file and saved to a .crk file, using any text editor. Using the example from Tutorial 1, we open the Abaqus_Cube_sub_STEP_006.fdb file, copy the FLAWSURF data, and save it to a .crk file, called Abaqus_Cube _step_6.crk here. At step 6, the crack is approaching the boundary of the submodel region, Fig 8.1, so we could not have grown the crack much further in Tutorial 1. 160 Figure 8.1: Abaqus_cube model at crack step #6 from Tutorial 1. 8.2 Step 2: Restart from Saved Crack Geometry Start FRANC3D, and from the menu select File and Import. We could extract a larger submodel region from the cube, but for this example, we will just import the full cube model and run subsequent crack growth simulations using the full model. Select Import a complete model from the dialog, Fig 8.2, and then set the Mesh File Type to ABAQUS and select the Abaqus_Cube.inp file, Fig 8.3; select Accept to continue. 161 Figure 8.2: FRANC3D model import dialog. Figure 8.3: FRANC3D mesh import file selector. We use the Select All button in the next dialog, Fig 8.4, to retain all the mesh facets where boundary conditions are applied. Select FINISH when ready; the model will be imported and then displayed in the FRANC3D main window. 162 Figure 8.4: Use Select All button to retain all highlighted mesh facets. From the FRANC3D menu, select Cracks and Flaw From Files. Select the Abaqus_Cube_step_6.crk file, Fig 8.5, which was extracted and saved previously from the .fdb data, and select Accept. The .crk file is read and then displayed in the Orient User Flaw dialog, Fig 8.6. Note that the crack geometry includes the original circular crack and all the subsequent steps of growth. Also note that part of the geometry lies outside the model so that intersections can be computed correctly. In general, a crack that is read from a file can be translated in Cartesian space, but for continuing crack growth, we do not want to do this. Figure 8.5: Select step_6.crk file. 163 Figure 8.6: Step 6 crack geometry displayed in cube model. Select Next to set the mesh template parameters, Fig 8.7; we just use the defaults. Select Finish when ready; the crack will be inserted and the model remeshed. Figure 8.7: Step 6 crack mesh template. 164 From the FRANC3D menu, select Static Crack Analysis and set all analysis parameters the same as for Tutorial 1 (see Section 2.5). The only thing that is changed here is the file name so that we do not overwrite the original submodel step files; we call it Abaqus_cube_STEP_006, Fig 8.8. This analysis should produce SIFs that are identical (or nearly so) to the SIFs computed for the last step using the smaller submodel region. Fig 8.9 shows the Mode I SIFs for the two cases. There is a small difference as the mesh around the crack front is different. At this point, the crack can be propagated further; we do another 6 steps of crack growth here. After propagating the crack an additional 6 steps, we want to combine the SIF history for the two analyses. We can do this using the FRANC3D Advanced menu option: Create Growth History. Figure 8.8: Set FRANC3D restart file name – don’t overwrite previous step 6 files. 165 Figure 8.9: Step 6 Mode I SIFs for the original submodel analysis (top) compared with the new results using the full model (bottom). 8.3 Step 3: Combine SIF Histories Start FRANC3D, and select the File and Open menu option. Select the Abaqus_Cube_sub_STEP_006.fdb file, Fig 8.10, and select Accept. From the Advanced menu, 166 select Create Growth History, Fig 8.11. The Compute SIFs dialog is displayed; select Finish. The dialog shown in Fig 8.12 is displayed. Note that the initial crack is labeled as CrackStep_1 and then there are 6 steps of growth after that. You can use the Plot menu command to display the crack fronts, Fig 8.13. Figure 8.10: FRANC3D restart file selector. Figure 8.11: FRANC3D Advanced menu. 167 Figure 8.12: Create Growth History dialog – submodel data. Figure 8.13: Create Growth History dialog. 168 Using the File menu in the Create Growth History dialog, select Save History, Fig 8.14, and save the SIF history to a .fcg file, called Abaqus_Cube_sub_steps.fcg here. Close this dialog using the Cancel button, and then close the model in FRANC3D using the main File menu Close option. Now open the Abaqus_Cube_STEP_012.fdb file using the File menu Open option. As with the submodel, we save the SIF history for the full model. The SIF history for the full model is shown in Fig 8.15. Note that Crack_Step_1 in this case gives the same SIFs as Crack_Step_7 in the submodel. Figure 8.14: Create Growth History dialog File menu. Figure 8.15: Create Growth History dialog – full model data. 169 Save the full model SIF history to a .fcg file, called Abaqus_Cube_full_steps.fcg here. Close the Create Growth History dialog and close the model. This leaves the FRANC3D main model window empty, and the Advanced menu has only one active entry, Fig 8.16. Select the Create Growth History menu option to display the dialog. It does not have any CrackGrowthData. Figure 8.16: Advanced menu when there is no model data. Use the File menu and select Read History, Fig 8.17. Select the Abaqus_Cube_sub_steps.fcg file. Then using the same menu, select Append History and select the Abaqus_Cube_full_steps.fcg file. Note that there will be 14 steps of crack data at this stage. We need to delete step #7 from the Submodel data or step #1 (now #8 in the combined data). We highlight crackstep_7, Fig 8.18, and then right-click the mouse to display the submenu, Fig 8.19. Select Delete Crack Step and it will be removed, leaving 13 crack steps. You can plot the combined fronts, Fig 8.20. Figure 8.17: Create Growth History dialog – File menu. 170 Figure 8.18: Create Growth History dialog – combined SIF history data. Figure 8.19: Right-mouse button click on the CrackStep_7 to delete. Use the File menu inthis dialog to save the combined SIF history to a .fcg file, called Abaqus_Cube_combined_steps.fcg here. The dialog can be closed by selecting the Cancel button at the bottom; selecting the Save button prompts you save the history data to file. 171 Figure 8.20: Create Growth History dialog – combined crack fronts. The combined SIF history data can be imported into the Fatigue Life module using the Read SIF Data button, Fig 8.21. Once you have Set Parameters, you can plot cycles and SIF data. See Section 7 for more details on the Fatigue Life dialog. Figure 8.21: Fatigue Life dialog. 172 9.0 Tutorial 8: Fretting Fatigue In Tutorial 8, we describe the Fretting Fatigue module by presenting an example simulation, using an ABAQUS finite element model of a fretting test rig. Figure 9.1: Fretting test rig (from: Golden, IJF, 31, 2009). 9.1 Step 1: Saving ABAQUS Data The ABAQUS model is shown in Fig 9.2. Using symmetry, only one quarter of the actual model is required. There are two load steps applied; the deformed shapes for both steps are shown in Fig 9.3. The specimen is pulled downward and then partially unloaded; the load ratio (R) is 0.1. There is contact between the specimen and the fretting pad; the coefficient of friction is 0.3. 173 Figure 9.2 ABAQUS model of fretting test rig. Figure 9.3 Fretting test rig deformed shape for load step #1 (left) and #2 (right). 174 Results can be written to the .fil file by adding the following commands to the ABAQUS inp file or using the ABAQUS CAE Edit Model Keywords option: *File Format, ASCII *Node File, Frequency=1 U *El File, position=averaged at nodes, Frequency=1 S,E *Contact File, Frequency=1 CDISP, CSTRESS This set of commands is repeated for the second load step, minus the “*File Format, ASCII” line. These lines can be added just before the *End Step command. An additional change should be made in ABAQUS CAE to flatten the .inp file and .fil files, removing *Part, *Instance and *Assembly data: >>> mdb.models["fretting_rig"].setValues(noPartsInputFile=ON) This eliminates any confusion with node and element numbering. We plan to use report (.rpt) files from ABAQUS CAE in the future. This requires two .rpt files for each load step. The unique nodal stress (S), strain (E) and displacement (U) can be saved in one .rpt file. The contact data must be stored in a second .rpt file as this data is only output on an element-node basis. 9.2 Step 2: Fretting Model Import Start FRANC3D and from the main menu, choose Fretting and Read model and results, Fig 9.4. You are prompted to select the model file; in this case, we choose the fretting_rig.inp file, Fig 9.5; the default file type is ANSYS, so we must switch the File Filter to ABAQUS to display the .inp file(s). You are then prompted to select the results files, Fig 9.6. In this case, we have two load steps corresponding to Qmax and Qmin conditions. The .fil contains results for each load step. Select the fretting_rig.fil file for both conditions; FRANC3D requests that you specify which load step 175 results will be used for each case, Fig 9.6. Select Finish to proceed to the next step, where we will specify the contact surface(s) where fretting is to be evaluated. Figure 9.4 FRANC3D menu selection for fretting analysis. Figure 9.5 FRANC3D mesh model file selector for fretting module. Figure 9.6 FRANC3D results file selector for fretting module; left-side dialog is displayed if there are multiple load steps in the .fil file. 176 The next dialog, Fig 9.7, allows you to select the materials and contact surfaces. In this case, we can select all materials, but we must select the master and slave surface node sets, Fig 9.8. The edge of contact node set is not defined; it will be determined from the master and slave sets and the contact conditions. Select Finish and the model will be displayed in the FRANC3D main window; the material regions will be colored if the materials are different, Fig 9.9. The .fil file only has pressure results for the “slave” surface, so it is necessary to choose the master and slave surfaces rather than letting FRANC3D try to determine them. Figure 9.7 Fretting model data filter – auto selected contact surfaces. Figure 9.8 Fretting model data filter to select master and slave contact surface nodes. 177 Figure 9.9 Fretting test rig model displayed in FRANC3D. 9.3 Step 3: Fretting Crack Nucleation The next step is to compute the fretting nucleation parameters. From the FRANC3D Fretting menu, select Fretting crack nucleation, Fig 9.10. There are five fretting nucleation models available. The models have been described in the literature; they use some or all of the results data that was read earlier to compute a fretting nucleation parameter. The computed fretting parameter is then compared with empirical or test data to determine number of fretting cycles to discrete crack nucleation. 178 Figure 9.10 Fretting crack nucleation menu option. Figure 9.11 Fretting nucleation models. For this example, we choose the Critical Shear Stress nucleation model, and select Next (not shown). The next dialog, Fig 9.12, allows you to specify the model parameters used to compute the Gcrit value along with the number of cycles. FRANC3D computes the Gcrit values at nodes 179 in the contact region and then computes number of cycles (Ni) based on the equation shown at the top of the dialog. Figure 9.12 Equivalent stress fretting nucleation model parameters. Select Next to proceed to the final dialog, Fig 9.13, which allows you to display the contact surfaces, and color contours of fretting nucleation cycles or nucleation parameter, Fig 9.14. 180 Figure 9.13 Fretting nucleation display window. The Critical Shear Stress model requires several material dependent parameters. For this example, the material is Ti-6Al-4V, which corresponds with the default parameters in the dialog; these parameters were obtained from the literature. 181 Figure 9.14 Gcrit contours on fretting specimen surface. 9.3 Step 3: Discrete Crack Nucleation Assuming that fretting fatigue causes crack nucleation, we will extract a submodel and insert a crack and run the analysis in this section. The first step is to close the fretting model; use File and Close. Next we import the model using File and Import; we choose to import and subdivide and select the fretting_rig.inp file, Fig 9.15. Figure 9.15: Import the fretting rig model. 182 The submodeler tool is displayed once the files are imported, Fig 9.16. The first selection is done using the By Element Group option; type dovetail_specimen and click the Select button, Fig 9.16 – left panel. Use the Crop button to remove the remainder of the model, Fig 9.16 – right panel. Figure 9.16: Submodel selection based on group selection. Next we use the Rubberband Box tool to select a smaller submodel, Fig 9.17. Note that this submodel includes the entire contact surface region; this is important to remember when we are going to set up the static analysis of the full model as we will have to redefine the contact by adding an extra connection. Figure 9.17: Submodel selection based on a rubberband box. 183 After extracting the appropriate submodel and saving the local and global ABAQUS .inp files, the dialog in Fig 9.18 is displayed. This allows us to retain the mesh facets where the boundary conditions are applied. In this case, we do not select these facets as the surface must be remeshed to accommodate the through crack that we are inserting. Just select Finish in this dialog, and the model will be displayed in the FRANC3D main model window. A shallow through (or edge) crack is inserted near the lower edge of contact at the location predicted by the fretting nucleation model(s). Fig 9.19 shows two views of such a crack. Note that for shallow cracks, it is a good idea to change the default meshing parameters when setting the crack front template. Fig 9.20 shows the meshing parameters dialog with Do Local Surface Refinement checked and Do Coarsen Crack Mouth Mesh unchecked. The resulting remeshed cracked submodel is shown in Fig 9.21. Figure 9.18: Select retained surfaces dialog – do not select this surface. 184 Figure 9.19: Through crack near the lower edge of contact. Figure 9.20: Meshing parameters dialog. 185 Figure 9.21: Cracked remeshed submodel. This portion of the model is combined with the global model and the analysis of this combined model is done using ABAQUS. The user controls the analysis step using the Static Analysis dialogs in FRANC3D, shown in Figs 9.22 – 9.25. Note that the global model consists of linear brick elements and these must be tied to the quadratic elements from FRANC3D using *Tie constraints. An extra connection for the contact between the fretting pad and specimen is defined using surface to surface contact, Fig 9.24. 186 Figure 9.22: Static analysis dialogs. Figure 9.23: Static analysis dialogs. 187 Figure 9.24: Static analysis dialogs – extra contact connection. Figure 9.25: Static analysis dialogs. The resulting contact surfaces are shown in Figure 9.26. The analysis produces results as shown in Figure 9.27, which shows the deformed shape, and 9.28, which shows the Mode I SIFs for the first load step. 188 Figure 9.25: Newly defined contact surfaces. Figure 9.26: Deformed shape after analysis – 500x magnification. 189 Figure 9.27: Mode SIFs for first load step. 10.0 Tutorial 9: Multiple Submodel Portions In Tutorial 9, we describe how to extract multiple portions of a full model to create a submodel, which might be useful when inserting multiple cracks into a model where the cracks are far apart. We will use the plate model from Section 6, Figure 10.1, to demonstrate. 190 Figure 10.1: ABAQUS plate model. 10.1 Step 1: Import Plate Model into FRANC3D From the FRANC3D menu, we select File and Import. We Import and divide the plate model, Fig 10.2. We first extract the mid-portion of the plate using the Rubberband tool in the Submodeler, Figure 10.3. Select Crop and then continue with the subsequent Rubberband selections and Crops as shown in Figures 10.4-6. Note that we switch the cropping option to highlight the inverse selection in Figures 10.4-6. Figure 10.2: FRANC3D model import of plate model. 191 Figure 10.3: FRANC3D first submodel extraction for plate model. Figure 10.4: FRANC3D second submodel extraction for plate model. 192 Figure 10.5: FRANC3D third submodel extraction for plate model. Figure 10.6: FRANC3D fourth submodel extraction for plate model. Select Next in Figure 10.6 after selecting Crop, and the model will be displayed in the FRANC3D main model window, Figure 10.7. There are no boundary conditions on these two 193 portions. The cut-surface mesh facets for both portions are retained automatically. The next step is to insert cracks into the two portions; we insert edge through cracks in the next step. 10.2 Step 2: Insert Multiple Cracks From the FRANC3D menu, we select Cracks and Multiple Flaw Insert. The dialog shown in Fig 10.8 is displayed. Use the Add button to define the two edge cracks. Figure 10.9 shows the dimensions for both edge cracks that will be inserted. Figures 10.10 and 10.11 show the location, orientation and mesh template for crack #1, and Figures 10.12 and 10.13 show the location, orientation and mesh template for crack #2. Figure 10.7: FRANC3D main window with two portions of the full model. 194 Figure 10.8: Multiple crack definition dialog. Figure 10.9: FRANC3D edge through crack definition. 195 Figure 10.10: FRANC3D edge through crack location and orientation – crack #1. Figure 10.11: FRANC3D edge through crack mesh template – crack #1. 196 Figure 10.12: FRANC3D edge through crack location and orientation – crack #2. Figure 10.13: FRANC3D edge through crack mesh template – crack #2. After defining both edge cracks, the Multiple Crack dialog shows the two crack names, Figure 10.14. Click on Display in this dialog to show the cracks in the model, Figure 10.15. Click 197 Accept (in Figure 10.14) to finish insertion and remeshing. The resulting model is shown in Figure 10.16. Figure 10.14: FRANC3D multiple crack insertion dialog. Figure 10.15: FRANC3D multiple crack insertion display. 198 Figure 10.16: FRANC3D main window with edge cracks in two separate model portions. 10.3 Step 3: Crack Analysis Follow the same procedure as in the previous tutorials to run the ABAQUS static crack analysis. Select Static Crack Analysis from the FRANC3D menu, set the file name, make sure the local + global connection is set, and run ABAQUS. Once ABAQUS has finished, select Compute SIFs from the FRANC3D menu. The SIF dialog allows you to select specific crack fronts to display SIF plots. The front is identified on the left by the red A and B. Figure 10.17 shows the SIF for crack #1, and Figure 10.18 shows the SIF for crack #2. 199 Figure 10.17: Mode I SIF for crack #1. Figure 10.18: Mode I SIF for crack #2. The cracks can be propagated as described in previous tutorials; see Section 6.6 for example. Figure 10.19 shows the crack growth dialog. Subsequent crack growth is left as an exercise for the reader. 200 Figure 10.19: Crack growth dialog. 11.0 Tutorial 10: Session Log Playback In Tutorial 10, we describe the session log and its playback. When running the FRANC3D (GUI) program, a session log file is saved for (almost) every menu command that is executed. The session log file is a text file that can be edited, played back in the FRANC3D GUI, played back from the command line, and/or converted to a Python script that can be used with the FRANC3D Python module. The session log file number in the current working directory is incremented each time FRANC3D is started using that directory. As an example, the session log file for Tutorial #1 is given here: Submodeler( model_type=ABAQUS, orig_file_name='Abaqus_Cube.cdb', submodel_file_name=' Abaqus _Cube_LOCAL.cdb', global_file_name=' Abaqus _Cube_GLOBAL.cdb', elem_file_name=' Abaqus _Cube_RETAINED_ELEMS.txt') OpenMeshModel( 201 model_type= ABAQUS, file_name=' Abaqus _Cube_LOCAL.cdb', global_name= Abaqus Cube_GLOBAL.cdb') InsertFileFlaw( file_name='Cube_Crack.crk') RunAnalysis( model_type=ABAQUS, file_name='Abaqus_Cube_sub.fdb', flags=[NO_WRITE_TEMP,TRANSFER_BC,NO_CFACE_TRACT,NO_CFACE_CNTCT], merge_tol=0.0001, connection_type=MERGE, executable='abaqus.bat', command='"abaqus.bat" job=Abaqus_Cube_sub_full -interactive -analysis ', global_model='Abaqus-Cube_GLOBAL.inp', merge_surf_labels=[AUTO_CUT_SURF], global_surf_labels=[GLOBAL_CONNECT_SURF]) ComputeSif() SetGrowthParams( load_model=QS_EXPONENTIAL, kink_angle_strategy=MTS, const_median_step=0.15) GrowCrack( load_model=QS_EXPONENTIAL, kink_angle_strategy=MTS, const_median_step=0.15, temp_radius_type=ABSOLUTE, temp_radius=0.1) SetGrowthParams( load_model=QS_EXPONENTIAL, kink_angle_strategy=MTS, const_median_step=0.15) AutoGrowthAbaqus( cur_step=1, file_name='Abaqus_Cube_sub', load_model=QS_EXPONENTIAL, kink_angle_strategy=MTS, const_median_step=0.15, num_steps=5, step_type=SCONST, const_step_size=0.15, temp_radius_type=ABSOLUTE, temp_radius=0.1, flags=[NO_WRITE_TEMP,TRANSFER_BC,NO_CFACE_TRACT,NO_CFACE_CNTCT], 202 merge_tol=0.0001, connection_type=MERGE, executable='abaqus.bat', command='"abaqus.bat" job=Abaqus_Cube_sub_STEP_001_full -interactive -analysis ', global_model='Abaqus-Cube_GLOBAL.inp', merge_surf_labels=[AUTO_CUT_SURF], global_surf_labels=[GLOBAL_CONNECT_SURF]) WriteSifPath( file_name='cube_crack_sif_hist_p5.sif', load_step=1, flags=[TAB,A,KI,KII,KIII,CRD]) Start the FRANC3D GUI, and choose File and Playback. Using the file selector, Fig 11.1, choose the session log file and select Accept. FRANC3D will read the log file and process the commands; so in this case the ANSYS cube model is subdivided, the crack is inserted and analyzed, and then propagated for five steps. Finally the SIF history is extracted and written to a file. A playback.log file is written that includes all of the commands and any FRANC3D messages. If something goes wrong, you should first open the playback log file, which is a text file, and look at the last command that was attempted. The playback.log should be written to the current working directory, but if that is not set, it might be saved to the folder where FRANC3D is located. Figure 11.1: Select session log file to play back in FRANC3D. 203 12.0 Tutorial 11: Python Interface In Tutorial 11, we briefly describe how to use the Python module. The Python module is designed to work with Python version 2.7.8; it should work with versions between 2.7.6 and 2.7.11. The FRANC3D session log (see Tutorial 10) can be converted to Python using the Fcl2Py executable that is shipped with FRANC3D. This program takes one argument, which is the session (command) file name. It reads the commands from the file, converts them to equivalent Python script, and writes the information to stdout, which can be piped to a file. For example: C:/examples/Fcl2Py.exe session01.log > ses01.py The ses01.py file will be similar to: #!/usr/bin/python import sys sys.path.append("/home/bruce/hg/v7/franc3d_v7/Drivers") import PyF3D f3d = PyF3D.F3DApp() f3d.Submodeler( model_type="ABAQUS", orig_file_name='cube.inp', submodel_file_name='cube_LOCAL.inp', global_file_name='cube_GLOBAL.inp', elem_file_name='cube_RETAINED_ELEMS.txt') f3d.OpenMeshModel( model_type="ABAQUS", file_name='cube_LOCAL.inp', global_name='cube_GLOBAL.inp') f3d.InsertFileFlaw( file_name='cube_02.crk') f3d.RunAnalysis( model_type="ABAQUS", 204 file_name='cube_surf_v7.fdb', flags=["NO_WRITE_TEMP","TRANSFER_BC","NO_CFACE_TRACT","NO_CFACE_CNTCT"], merge_tol=0.0001, connection_type="MERGE", executable='abaqus', command='abaqus job=cube_surf_v7_full -interactive -analysis ', global_model='cube_GLOBAL.inp', merge_surf_labels=["Part-1-1__PickedSet2","AUTO_CUT_SURF"], global_surf_labels=["GLOBAL_CONNECT_SURF","ALL","_PickedSurf5","Part-11__PickedSet2","Part-1-1__PickedSet4","all_nodes","_PickedSurf5"]) f3d.ComputeSif() You can run this script from the command line: python ses01.py This assumes that Python (2.7.8) is in your PATH and that you are running from within the folder where the ses01.py and corresponding FE files exist. 205