You are on page 1of 126

FRANC3D Workshop/Training

May 7, 2012

Drs. Paul “Wash” Wawrzynek,


Bruce Carter, Tony Ingraffea,
and Omar Ibrahim

Fracture Analysis
Consultants, Inc.

1
Objectives

• General introduction to FRANC3D:


- capabilities and limitations
• Present theory and approaches to
computational fracture mechanics built into the
program.
• Hands-on sessions give participants a chance
to try the code with tutors here to help.
• Opportunity for participants to ask questions.

2
Agenda
• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

3
FRANC3D Product
• FRANC3D (FRacture ANalysis Code 3-D)
uses finite element method to simulate crack
growth analysis
• Adaptively remeshes a finite element model to
simulate crack growth.
• Has several elements to be used for modeling
the crack front

4
FRANC3D Product
• Designed to work in conjunction with a commercial
finite element solvers:
– ANSYS
– ABAQUS
– NASTRAN
• The FRANC3D program has a programming
interface that is an extension to the Python
programming language.
• Written in the C++ programming language
• Support the following operating systems:
– Windows
– Linux

5
FRANC3D Development History
• 1988 to 1994
– FRANC3D v1.0 BEM only
• 1994 to 2001
– FRANC3D v2.0 BEM & Thin Shell FEM
• 2001 to 2005
– FRANC3D v3.0 BEM & Thin Shell & Solid FEM (ANSYS)
• 2005 to 2009
– FRANC3D v4.0 Solid FEM only (ANSYS, ABAQUS, NASTRAN)
– Completely new code written in C++
• 2009 to 2010
– FRANC3D v5.0 – Additional enhancements
• 2010 to 2011
– FRANC3D v6.0 – Fretting Fatigue, Fatigue Life, Post-processing & other enhancements
• 2012
– FRANC3D v7.0 is under development

6
FRANC3D Development History

• Development of FRANC3D was funded


by:
– USA Air Force
– USA Navy
– NASA
– Others

7
What Does FRANC3D Do?

• insert a flaw into an existing finite element mesh


and remesh locally, using special crack-front
elements.
• compute stress intensity factors (SIF’s) for all
nodes along a crack front for isotropic and
anisotropic materials.
• predict how a crack will grow (relative extension
and angle) using engineering growth criteria, and
will then extend the crack geometry and remesh
locally.

8
What FRANC3D is NOT
• not a general finite element pre-processor or post-
processor. External codes are required to build
uncracked FE models and to visualize results
(FRANC3D can display deformations).
• not a finite element analysis program. An
external FE code is required (e.g., ANSYS or
ABAQUS) to perform stress analysis.
• not a general purpose fatigue life prediction code,
although some basic life prediction models are
available. An external lifing code (e.g., AFGRO,
NASGRO or DARWIN) can be used.
9
FRANC3D Typical Work Flow
ANSYS/ABAQUS/NASTRAN ANSYS/ABAQUS/NASTRAN

Full 3D FE Model
Stress Analysis
portion to be
remainder of model
cracked

Combine
portions
FRANC3D
Insert crack(s) into
Define crack(s) portion of model displacements,
geometry and remesh temperatures,
crack surface tractions
Compute stress Extend crack(s)
intensity factors geometry

10
Global and Sub-models

“sub-model”
crack growth region
“global” model
FE package (e.g., ANSYS or ABAQUS) is used to define a global model and a sub-
model. The sub-model should encompass the crack growth region with ‘space’11for
remeshing.
FRANC3D Modifies the Sub-model

uncracked model after crack insertion

FRANC3D

FRANC3D modifies the sub-model, inserting a


crack and remeshing the model locally. It
outputs an input file that combines the global
and sub-model (ABAQUS) or it outputs the
sub-model and a macro command file that will
combine the models (ANSYS).
12
FRANC3D Maintains Compatibility

mesh compatibility
FRANC3D can retain surface meshes on “cut” surfaces so that there is FE
compatibility between the global and sub-model. This is the preferred approach.
However, FRANC3D can also instruct the FE program to insert constraint equations.
13
Combined (Full Model) Analysis

FRANC3D does not use a global/local approach. The FE analysis is


performed with the full combined model. (However, a global/local
approach can be used.) 14
Crack Growth

after 21 steps of crack growth

Crack growth is simulated by FRANC3D repeatedly reading and


modifying the initial sub-model. At each step, the global and modified
sub-model are re-combined and the full model is analyzed.
15
Sub-models for “free” meshes

“free mesh” cut surfaces

It is possible to cut out a FRANC3D sub-model from a “free” (unstructured)


mesh. (However, surface facets of tetrahedral elements with poor aspect ratios
can cause local meshing problems.)
16
Agenda
• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

17
FRANC3D Tutorials
Using ANSYS: Using ABAQUS:
simple global
model vs sub-
model with
global model

through-crack

extract sub-model
automated
crack insertion & crack growth
automated growth

crack face
crack face
traction vs
traction vs
far-field
far-field
loading
loading
18
FRANC3D Tutorials
Step 1: Build the FE model
Step 2: Extract small portion from the full FE model
Step 2.1: Separate element components
• Separate the FE model into a small portion
(local model) and the remaining of the FE model
(global model)
• Local FE model will be used for fracture
analysis

Local Model
Global Model 19
FRANC3D Tutorials
Step 2.2: Create node component for cut-surface
• Select the nodes on the cut surfaces of each component
and save a node component. For the 3x3x3 ‘local’ model,
name this node component CUT_SURF.

Step 2.3: Save local and global


• Archive each element component as a separate model
for the local and other for global
• Global model, which consists of the exterior elements,
will include the boundary conditions and material
properties
• Local model will include the CUT_SURF node component
and FRANC3D will use this information to retain those
mesh facets

20
FRANC3D Tutorials
Step 3: Read the local FE
model into FRANC3D
• Step 3.1: Reading
Local FE Model
• Start with the
FRANC3D graphical
user interface
• Select File and Open
• Switch File Filter in
the Open Model File
dialog box to proper
file extension name
and select the file
name for the local
model
• Click Accept.
21
FRANC3D Tutorials
Step 3.2: Selecting the Retained Items in the Local
FE Model
• Material, mesh facet groups, contact/constraint
& residual stress

22
FRANC3D Tutorials
Step 3.3: Selecting Cut Surface Nodes
• Lists the node components present in the local
FE model file

23
FRANC3D Tutorials
Step 3.4: Importing and Displaying the Local FE Model
• User can turn on the surface mesh and manipulate
the view

24
Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

25
FRANC3D Wizard
for Defining the Crack Type and
Meshing Process for the Cracked
Portion of the FE Model

26
Current Crack Type Options in
FRANC3D
• Elliptical Crack
• Through-the-thickness
– One crack front
– Two crack fronts
• Long-shallow surface
crack shape
• Elliptical crack shape
with two fronts
• User-defined crack

27
Defining Crack Geometry
• Crack geometry and location can be
prescribed either by:
– Interactively using the Graphical User
Interface (GUI)
– Using FRANC3D extensions to the Python
programming language

28
Crack Insertion Wizard (Elliptical Flaw)
crack size/shape
parameters

Define the crack


surface geometry,
position and orient
crack
crack-front template
Fracture Analysis parameters
Consultants, Inc. 29
Crack Insertion Wizard – Flaw Library

30
User Defined Crack Front Points

User-defined flaw allows an


analyst to define an arbitrary
(planar) shape by entering (or
reading from a file) a series of
points that define the vertices of a Crack front vertices
polygon. should be flagged.31
Surface Meshes after Crack Insertion

crack surface mesh

Fracture Analysis
Consultants, Inc. 32
Crack-Front Template Element Types

tetrahedral elements are used


for the bulk of the volume

quarter-point singular wedge


crack-front elements

pyramids enforce compatibility


between brick and tetrahedral
elements two or more “rings”
Fracture Analysis of brick elements
Consultants, Inc. 33
Crack Insertion: Input Sub-model Mesh
The first major input to the crack insertion procedure is a finite element mesh.
Usually this is a sub-model, but a full model mesh is acceptable. In the case of a
sub-model, the cut surfaces are flagged.

sub-model
cut surface

cutting planes

This model has brick elements only. However, brick,


wedge, pyramid, and tetrahedral elements of both first and
Fracture Analysis
second order are okay. Currently, FRANC3D can handle
Consultants, Inc. ANSYS, ABAQUS and NASTRAN models. 34
Crack Insertion: Approximate Surface Geometry
Curved surface geometry is approximated from the faceted surface of the input
finite element mesh. Locally refined meshes near flaws will fall on the curved
surface rather than on the faceted finite element input.
Step 1: compute weighted average normals at all nodes.
Step 2: define 1 or 2 triangular Bezier patches for each
FE facet.
Step 3: identify “topological” edges and group together
facets that form logical faces.

Bezier patches

Note that FE facets on the cut


Fracture Analysis Topological edges and surfaces are retained for
Consultants, Inc. logical faces compatibility
35
Crack Insertion: Flaw Definition
The second major input to the crack insertion procedure is a description of a
flaw shape and location. FRANC3D has tools to define and place a flaw
interactively. Flaws can be zero volume (cracks) or finite volume (voids).

The crack above appears to have a piecewise linear crack front, but that is a just
a display artifact. Flaw surfaces are defined as Bezier patches and can have
curved crack fronts. In theory, initial flaws can be non-planar, but there is
currently no practical user-interface for such a capability.
Fracture Analysis
Consultants, Inc. 36
Crack Insertion: Crack-Front Templates
Crack-front templates are generated to emplace regular well-shaped elements
near crack fronts. The template elements are a combination of brick and quarter-
point wedge elements.
Additional processing is required where
templates intersect free surfaces. Locally
template element topology and geometry
must be modified to conform to the surface
geometry.

Fracture Analysis A typical template


Consultants, Inc. cross-section 37
Crack Insertion: Intersections & Trimming
Surface/surface intersections are computed for all body and flaw patches. The
body and flaw patches are trimmed and combined into one composite object.
Outside Inside

Trimmed patches are divided into triangular sub-


patches to keep the model “water-tight”.
Fracture Analysis
Consultants, Inc. 38
Crack Insertion: Surface Meshing
Surface meshes are generated for all “logical” model surfaces. The surface
meshes are constrained to conform to the meshes on cut surfaces.

retained cut surface meshes

Fracture Analysis
Consultants, Inc. 39
Crack Insertion: Pyramids & Volume Meshing
Pyramid elements are generated to enforce compatibility between quadrilateral
facets on both the template and “cut” surfaces and triangular faces in the volume
mesh.

template
cut surfaces surfaces

An advancing front meshing algorithm* is used to generate a tetrahedral volume


mesh (not shown). This algorithm respects the special case of distinct nodes on
opposite sides of crack faces, which are geometrically coincident.
Fracture Analysis *Neto, J.B., Wawrzynek, P.A., Martha, L.F., and Ingraffea, A.R., “An algorithm for three-
Consultants, Inc. dimensional mesh generation for arbitrary regions with cracks,” Engng with Comp.,40vol. 17,
75-91 (2001)
Volume Meshing
• After completing the surface, the
volume mesh starts
• Options for performing volume meshing:
– FRANC3D
– ANSYS
– ABAQUS CAE
• Final mesh smoothing are used to
improve the elements quality
41
A Sub-Volume Definition Issue

Retained cut-
surface facet

It can be difficult to mesh a thin section


that is constrained with a large quadrilateral
patch on one side.
There is not enough room for a well shaped
pyramids and transition tetrahedral
elements.

42
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

43
FRANC3D Tutorials – Crack Insertion Steps

• Step 1: Selecting Cracks from FRANC3D Menu


– From the FRANC3D menu, select Cracks and New Flaw Wizard.
The first panel of the wizard should appears. The default flaw type is
Crack (zero volume flaw) and select Next.

44
FRANC3D Tutorials – Crack Insertion Steps

• Step 2: Selecting Crack Type


– The next panel allows the user to choose type of crack, hint
Next after the selection.

45
FRANC3D Tutorials – Crack Insertion Steps

• Step 3: Specify the Crack Size


– The next panel allows us to specify the size of the ellipse.
Select Next after the size definition.

46
FRANC3D Tutorials – Crack Insertion Steps

• Step 4: Specify Crack Location and Orientation


– The next panel allows us to specify location and orientation of the
flaw. After defining the location and orientation; select Next.

47
FRANC3D Tutorials – Crack Insertion Steps

• Step 5: Specify Crack Front Template


Parameters
– The next panel allows us to specify the crack front template
parameters. After specifying the parameters; select Finish.

48
FRANC3D Tutorials – Crack Insertion Steps

• Step 6: Surface and Volume Meshing of Local Model after


the Crack Insertion
– FRANC3D begins the process of inserting the flaw into the original
model and then meshes the resulting cracked model.
– Operations is displayed on the screen
– When meshing is completed, the newly meshed cracked model will be
displayed.

49
FRANC3D Tutorials – Static analysis Steps

• Step 1: Select Static


Crack Analysis
– From the FRANC3D menu,
select Analysis and Static
Crack Analysis. The first
panel of the wizard should
appear, specify the file name for
the FRANC3D database first.

50
FRANC3D Tutorials – Static analysis Steps

• Step 2: Select FE Solver


– Next panel allows you to specify the solver

51
FRANC3D Tutorials – Static analysis Steps

• Step 3: Select
Analysis Options
– Next panel allows you to
specify the solver output
and analysis options
– Specify global models
– Use all quadratic elements
– Solver executable should
be defined

52
FRANC3D Tutorials – Static analysis Steps
• Step 4: Merging
Local/Global FE
Models
– Next panel allows for the
specification of whether the
local and global models are
combined by merging
nodes or by defining
constraints or contact
conditions.
– Specify node component
names in the local and
global models for nodes
that will be merged or you
can let the programs
(FRANC3D and Solver) do
the work.
– Select Finish
53
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

54
Stress Intensity Factors

55
Continuum Fracture Modes
y,v y,v y,v
x,u x,u
x,u

z,w z,w z,w

Mode I Mode II Mode III


Basic modes of crack loading. Positive sense shown for each:
Mode I = crack opening
Mode II = in-plane sliding
Mode III = anti-plane tearing
EACH MODE HAS ITS OWN STRESS INTENSITY FACTOR

56
Stress Intensity Factors
• FRANC3D Computes the stress intensity factors
associated with all three “modes” of fracture for
the mid-side nodal points along the crack front
• Under conditions of small-scale yielding, all crack
front displacement fields (crack behavior) are
controlled by the stress intensity factors
– Stability – will the crack tip move?
– Trajectory – in what direction?
– Rate – how fast?

57
Computing Stress Intensity Factors
FRANC3D has two methods to compute stress intensity factors (SIF’s):

Displacement Correlation:
• Relatively simple to understand and implement
• Relatively poor accuracy (~5% error for a reasonable mesh)
• Good sanity check but not for production work

M-Integral (Interaction Integral):

• Somewhat involved formulation and implementation.


• In the literature, the M-Integral is sometimes known an
"interaction integral”.
• Relatively good accuracy (<1% error for a reasonable mesh)
• Requires special additional terms for crack face tractions, residual
58
stresses, FGM’s, etc.
Computing Stress Intensity Factors
M-Integral (Interaction Integral):
• Numerically the M-Integral is similar to the J-Integral.
• M-Integral is used to compute the strain energy release
energy rates (GI, GII, and GIII) and stress intensity factors
(KI, KII, and KIII) associated with the three modes of fracture.
– Mode II (KII) is needed to predict the crack kink angle to
determine the crack front direction
• M-integral implementation in FRANC3D allows the
computation of the three modes of SIFs for isotropic and
anisotropic materials.
– FRANC3D is the only available code that will compute
stress intensity factors for generally anisotropic materials
• The method to use for production work

59
Stress Intensity Factor Computations

SIF’s are computed with the M-integral for isotropic and


generally anisotropic materials.

60
60
Fracture mechanics gives the theoretical
asymptotic displacement fields.
1/ 2
,v K  r   
u I  2  cos 1  2  sin 2 
 2 2
1/ 2
K  r   2
v I   sin 2  2  cos
  2  2  2 
,u
Note: for plane stress, let  = /(1+ )
1/ 2
K  r   2
u  II   sin 2  2  cos
  2  2  2 
1/ 2
K  r   
v  II  2  cos   1  2  sin 2 
Set r = ra-b, and = 180°
 2 2

K II  ra b 
 2  2  2 
KI  ra b 
 2  2  2 
vb  va  ub ua 
 
61
Displacement Correlation Methods

For plane strain case:

 2  v b  v a 
KI 
ra b  2  2 

ra-b  2  ub  ua 
K II 
ra b  2  2 
   wb  wa 
K III 
2ra b

where  is the shear modulus,  is Poisson's ratio, r is the distance from the crack tip to
the correlation point, and ui, vi, wi are the x, y, and z displacements at point i

The same expressions can be used for plane stress assumptions if  is replaced
with  =  / (1+).
62
Energy Release Rates
The crack-tip energy release rates can be determined from Irwin’s
crack closure integral

2 1 
G  lim   2 j (  r ,0)  u j (r , ), j  1,2,3
 0  0
u
r

Substituting crack-tip stress and displacement fields yields

1  2 2 1  2 2 1  2
G KI  K II  K III
E E E

63
The J-Integral
The J-Integral* measures the energy flux
into the crack-tip region
 u 
J   Wnx  Ti i  ds W  12  ij ij
 x 

Under conditions of small scale yielding the


J-Integral is equal to the energy release rate

The contour J-Integral can be recast as an equivalent area (volume in


3D) integral**, which is more accurate and stable in a finite element
context
 u  q
J     ij i  W1 j  ds
 x1 
 jx

q is a function that is one at the crack tip and zero on the boundary of
the integration domain. It can be interpreted as a virtual crack
extension.
* Rice, J.R. (1968) A path independent integral and approximate analysis of strain concentrations by notches and cracks, Journal of
Applied Mechanics, 35, 379-386
** Li, F.Z., Shih, C.F., and Needleman, A. (1985) A comparison of methods for calculating energy release rates, Engineering 64
Fracture Mechanics, 21, 405-421
The 3D J-Integral
In 3D, the J-Integral is evaluated within a cylindrical domain centered on a
portion of the crack-front

In 3D J
 J ( s ) qt ( s ) ds J

 qt (s) ds Aq
65
Formulating the M-Integral From the
Stress and Displacement Fields
For linear analysis, we can add two valid solutions and the result is a valid
solution
take the (1) solution to be the FEM results
 ij   ij(1)   ij( 2)  ij   ij(1)   ij( 2) ui  ui(1)  ui( 2)
the (2) solution(s) are solutions we get to select
Substituting these into the expression for the J-integral

 (1) ui(1) u ( 2)
u (1)
u ( 2)  q

J    ij (1
  ij ) i (
  ij2 ) i (
  ij2 ) i (1) ( 2)
 W 1 j  W 1 j  W (1, 2)
1 j  ds
  x x x x  x
 1 1 1 1  j

where

W (1, 2)   ij(1) ij( 2)   ij( 2) ij(1)

66
Formulation of the M-Integral (cont.)
Collecting terms

 (1) ui(1)  q  ( 2) ui( 2)  q



J    ij (1)
 W 1 j  
ds    ij  W 1 j 
( 2)
ds 
  x  x   x  x
 1  j  1  j
J (1) J ( 2)
 (1) ui( 2) u (1)  q
  x1   ij x1  W 1 j  x j ds
  ij ( 2 ) i (1, 2)

 
M (1, 2)

or J  J (1)  J ( 2)  M (1,2)
 (1) ui( 2) u (1)  q
with M (1, 2) 
   ij (
  ij2 ) i W (1, 2)
1 j  ds
 x1 x1 
  x j

A definition of M in terms of the crack tip field variables we can get from an
FEM analysis (solution 1) or form the theoretical expressions if we know KI,
KII, and KIII (solution 2) 67
Formulating the M-Integral From the
Definition of the Energy Release Rate
(1) ( 2)
K I  K I(1)  K I( 2) K II  K II(1)  K II( 2) K III  K III  K III

for small scale yielding


1  2 2 1  2 2 1  2
GJ  KI  K II  K III
E E E
substituting into the expression for the energy release rate
J  J (1)  J ( 2)  M (1, 2)

 KI  
1   2 (1) 2
  2  1 E  K III(1) 2  
1   2 (1)
K II
 E E 


E
KI
1   2 ( 2)
 2

E

1   2 ( 2)
K II  2

E
 
1   ( 2) 2 
K III  
 
1   2 (1) ( 2) 1   2 (1) ( 2) 1   (1) ( 2) 
 KI KI  K II K II  K III K III 
 E E E  68
Formulation of the M-Integral (cont.)

(1, 2) 1   2 (1) ( 2) 1   2 (1) ( 2) 1   (1) ( 2)


M  KI KI  K II K II  K III K III
E E E

A definition of M in terms of K’s and material properties.

equating the two definitions for the M-Integral

 (1) ui( 2) u (1)  q


  ij 
  x1 ij x1
( 2 ) i (1, 2)
   W 1j  ds Aq 
  x j

1   2 (1) ( 2) 1   2 (1) ( 2) 1   (1) ( 2)


KI KI  K II K II  K III K III
E E E

69
Formulation of the M-Integral (cont.)
We use the FEM results for the (1) solution
KI KII KIII

We select three simple auxiliary solutions a 1.0 0.0 0.0


(2a), (2b), and (2c) b 0.0 1.0 0.0
c 0.0 0.0 1.0

 ( 2 a ) ,  ( 2b ) ,  ( 2 c )
From the analytical expressions for the
 ( 2 a ) ,  ( 2b ) ,  ( 2 c )
crack-front fields, we obtain
u ( 2 a ) , u ( 2b ) , u ( 2 c )
Substitution gives three equations for the unknown K(1)’s



 2 1  2  0 0

 (1)
  K I  M Aq 
(1, 2 a )
 E
 0 
2 1  2    (1)   (1,2b )
0   K II    M

Aq 
 E  (1)   (1,2c ) A 
 21      K III   M q 
 0 0 
 E 
 70
Independent FRANC3D Mode I SIF Verification
S S

CCT SEN
Analyses performed by
2 2 Dawn Phillips of the
2h
2a 3
1
2h
a 3
1
NASA Langley
Research Center
2w w

t t

S S

Fracture Analysis
Consultants, Inc. 71
Independent FRANC3D Mode I & II SIF Verification
S

Analyses performed by
Slant edge crack Dawn Phillips of the
a
2
starting from a NASA Langley
2h
R 
3
1
circular hole Research Center
c

2w

Mode I

Mode II
Fracture Analysis
Consultants, Inc. 72
Typical Isotropic M-Integral Verification
Stress intensity factors are computed at
Surface crack, a = c = 0.8, remote unit traction
all nodes along the crack front
1.3
Raju-Newman
stress intensity factor (psi*in^.5)

f3dng
FRANC3D
1.25

1.2 crack front

1.15 The oscillations arise because different


virtual crack extension are used for
element corner and mid-side nodes.
1.1

1.05
0 0.2 0.4 0.6 0.8 1 virtual crack extensions
normalized distance along crack front

corner node mid-side node


Fracture Analysis
Consultants, Inc. 73
Anisotropic Stress Intensity Factors

• FRANC3D includes an M-Integral


implementation for general anisotropic
materials.1,2

1
Wawrzynek, P.A., Carter, B., and Banks-Sills, L. “The M-integral for computing stress
intensity factors in generally anisotropic materials,” NASA/CR-2005-214006
2
Banks-Sills, L., Wawrzynek, P.A., Carter, B., Ingraffea, T.R., and Hershkovitz, I.,
“Methods for computing stress intensity factors in anisotropic geometries: Part II –
arbitrary geometry,” Engng. Fracture Mech., in review

74
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

75
FRANC3D Tutorials – SIF Computation
Steps
• Step 1: Re-Open FRANC3D restart file
– From the FRANC3D menu, select File and
Open.
– Choose the *.fdb file and select OK.
– FRANC3D will automatically read the FE
solver results

76
FRANC3D Tutorials – SIF Computation
Steps
• Step 2: Select Compute SIFs
– From the FRANC3D menu, select Cracks and Compute SIFs. The
Stress Intensity Factor wizard is displayed
– Use the M-Integral
– User can select thermal or crack face traction terms if they are
used.
– Select Finish, the SIFs Plot dialog is displayed

77
FRANC3D Tutorials – SIF Computation
Steps
• Step 2 (cont’d): Select Compute SIFs
– View the three stress intensity factor (SIF) modes and export
the data

78
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

79
Crack Growth

80
Crack Growth
predicted front (blue)

local kink angle


local extension
smoothed front (red)

original front

Stress Intensity Factors are used to predict the


direction and relative extent of crack growth

81
Crack Growth Prediction within
FRANC3D
• Computing crack front growth is a three-step process:
– Kink angle for each node (direction)
• Based on the crack-front stresses in polar coordinates
• Five options for computing kink angle
– Relative amount of local crack extension for each node
• Computed using a fatigue growth model (using one node
extension with a median SIF or using a specify number of load
cycles)
• Simplest model is Paris growth model
– Smooth the crack front
• Polynomial curves are used to fit the crack front
• User can specify the order of the polynomial or FRANC3D find
the polynomial order that will give the best fit

82
Crack Growth

after 21 steps of automatic crack growth


Confidential 83
83
84
Crack Extension
Cracks are “extended” by “reinserting” an extended crack definition. This
approach to extension: 1) simplifies the code, 2) reduces the amount of
information stored between steps, and 3) allows the sub-volume to be changed
between crack growth steps.

initial crack

non-planar crack growth

crack extension

meshed extended crack


Fracture Analysis
Consultants, Inc. 85


2 1  2  0 0 

  K I  M Aq 
(1, 2 a )
 E
(1)
 0 
2 1  2    (1)   (1,2b )
0   K II    M

Aq 
 E  (1)   (1, 2c ) A 
 21      K III   M q 
 0 0 
 E 

 2  v b  v a 
KI 
ra b  2  2 
 2  ub  ua 
K II 
ra b  2  2 
   wb  wa 
K III 
2ra b 86
   
 c   such that 
k p   
max

k p ( 90  )
n = 
n = 2

n = 1

n = .5
n = .3

k p ( )

k p (0  )

1 2l
 2 l  2 l  2 l 
n n n
k p     k p  n, a    12    22    32  
 k1   k2   k3  
 
1 2 n
 2  n n 
2  a j   ak2  
ki  a   1  ai  2 
 K   K  
2
 ij   ik  87
Kink Angle: Max Stress Criterion (orthotropy)
The orthotropic max stress criterion says that the crack will kink in the direction
where the ratio of the hoop stress to the effective toughness is maximum.

K eff 
n12
1  a12
K
12 a2
2
 K13a32  
n22
1  a22

K 23a3
2
 K 21a12   1  a2  K31a12  K32a22 
n32
3

Where Keff is a function of six principal toughnesses and crack      


orientation relative to the material  kink   for max 
 K eff  a, n  
 
predicted direction of
n  y crack propagation

a  

 
x

K eff  a, n 

Fracture Analysis
Consultants, Inc. 88
K max  PK analysis
K min  PRK analysis

K  K analysis
K max  PK analysis 1  R 
K min K min  PRK analysis 1  R 
K  K max  K min R
K max
K max

SIF (K) K

K min

time
89
K max  Pa Kload _ case _ a
K min  Pb Kload _ case _ b

K min
K  K max  K min R
K max
K max
load case a

SIF (K) K

K min
load case b
90
time
K max  Pa Kload _ case _ a  Pb Kload _ case _ b
K min  Pa Kload _ case _ a  Pb Kload _ case _ b

K max
K load _ case _ b
Kload _ case _ a K

K min

time
91
 kink  0

 kink   such that   ( ) max

 kink   such that


  K Ic 
2
 
2 

MAX   ( ) max ,  2 K
 
   r ( )    Ic    z ( ) 
2
  K IIc   K IIIc  
 

 kink   such that


2 2
   
 
   ( )  2   K Ic    r ( )  2   K Ic    z ( ) 2
 K IIc   K IIIc 
max

92
Kink Angle: Max Stress Criterion (isotropy)
The max stress criterion says that the crack will kink in the direction of a
maximum value of a stress component.
Some materials show a transition from Mode I
to Mode II crack growth for stable tearing.
LEFM Max stress
y
Amstutz (1995) 2024-T3, L-T
Amstutz (1995) 2024-T3, T-L
 r  
Hallback & Nilsson (1994) 7075-T6
Maccagno & Knott (1989), PMMA
Maccagno & Knott (1991), HY130 @ -196C

   
80
70

60 Mode I x
50
40

 c 30 Transition Mode I only:


20 Transition 2024-T3
10 7075-T6  kink   for max    
0
-10
-20
Mode II Mode I or Mode II:
-30
0 10 20 30 40 50 60 70 80 90
 kink   for max max     , max   r    
Mode mixity, tan 1
 K II KI 
Fracture Analysis
Consultants, Inc. 93
 kink   such that   ( , K I , K II ) max

 kink   such that   ( , K I , K II , K III ) max

   
 kink   such that
K p  , K12 , K13 , K 23 , K 21, K 31, K32 , l , n 
max

94
under development, ignore for now

95
n
 Ki 
ai  am  
K
 m

 f
ai  am  NASGRO
 Ki , R,... 

 f NASGRO  K m , R,... 

 f
ai  am  user
 Ki , R,... 

 fuser  K m , R,... 

predicted new
crack front

point i ai computed


point with the extension
median K value
am specified
current extension
crack front 96
ai  NC  Ki  n

ai  Nf NASGRO  Ki , R,...

ai  Nfuser  K i , R,...

predicted new
crack front

point i ai computed


extension

current
crack front 97
NASGRO Equation Dialog

98
Can read AFGRO formatted files and excel
CSV or text files.

User Equation Dialog

99
no crack front fitting
user specified polynomial order
Program selected polynomial order

polynomial fit

no smoothing

100
rt
rt  value
value ai
rt  amin
100
value
rt  ai
100

101
a1  a2    value

ai  a1   i  1 m

All crack increments are specified

102
N1  N 2    value

N i  N1   i  1 m

All cycle increments are specified

103
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

104
FRANC3D Tutorials – Manual Crack Growth Steps

• Step 1: Select Grow


Crack
– From the FRANC3D menu,
select Cracks and Grow
Crack
– Crack Growth wizard is
displayed
– Choose Quasi-Static or
Fatigue growth type
– Select Next

105
FRANC3D Tutorials – Manual Crack Growth Steps

• Step 2: Specify
Growth Rate
– Second panel of the Crack
Growth allows you to specify
the growth rate model data
– Use the Paris model and set C
to 1e-10 and leave n at 2
– Select Next.

106
FRANC3D Tutorials – Manual Crack Growth Steps

• Step 7.3: Specify


Extension or Cycles
– Third panel of the Crack
Growth allows you to
specify whether you will
grow the crack based on a
median extension or a
number of cycles
– Use a median extension
– Select Next.

107
FRANC3D Tutorials – Manual Crack Growth Steps

• Step 7.4: Specify


Fitting and
Extrapolation
– Fourth panel of the Crack
Growth allows you to specify
a value for median extension
as well as the fitting and
extrapolation parameters
– Specify a median extension
of 0.1 and use a fixed 3rd
order polynomial with 3%
extrapolation on both ends to
ensure the fitted end points
fall outside the model
– Select Next 108
FRANC3D Tutorials – Manual Crack Growth Steps

• Step 7.5: Specify


Crack Front Template
– Final panel allows you to
specify the crack front mesh
template parameters
– Set the template radius to
0.06
– Select Next to proceed with
growing the crack and
remeshing
– Once the remeshing is
completed, another Static
Crack Analysis can be
performed
109
FRANC3D Tutorials – Automatic Crack Growth
Steps

• Assuming the crack insertion and static


analysis was completed
• Step 1: Re-Open FRANC3D restart file
– From the FRANC3D menu, select File and Open.
– Choose the *.fdb file and select OK.
– FRANC3D will automatically read the FE model and solver results

110
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 2: Select Crack Growth Analysis
– From the FRANC3D menu, select Analysis and Crack Growth
Analysis
– First panel of the wizard allows you to choose the method for
computing SIFs
– Use all the default values.
– Select Next

111
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 3: Specify Growth Parameters
– Second panel appears
– Select Quasi-Static for simplicity
– All other values are left as defaults
– Select Next.

112
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 4: Specify Growth Model Data
– Third panel appears
– Set the value of n to 2 for the power-law crack growth model
– Select Next

113
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 5: Specify Fitting
and Template
Parameters
– Fourth panel appears
– Set the value for the template
radius to 0.06. The
extrapolation could be increased
from 3 to 5%, but 3% should
suffice for the first 5 steps
– Select Next.

114
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 6: Specify
Extension or Cycle Data
– Fifth panel appears
– Grow the crack for 5 steps using
a Constant Median Crack
Growth Increment of 0.1
– Select Next.

115
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 7: Specify Analysis Code
– Sixth panel appears
– Use ANSYS and the Current crack growth step is 1 as if you
are starting from the initial crack

116
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 8: Specify
Analysis Options
– Seventh panel appears
– Select your FE Solver
– Select global model
– FRANC3D transfers all
the boundary conditions
from the global model to
the combined model, so
leave the Transfer all
retained bc’s checked.
– Click Next

117
FRANC3D Tutorials – Automatic Crack Growth
Steps
• Step 9: Specify
Local/Global Model
Connection
– Final panel allows you to
choose how the local and
global models will be
connected
– Click Finish to start the
automatic crack

118
The Python Programming Interface
• The FRANC3D program has a programming
interface that is an extension to the Python
programming language.
• Python is an open source, object oriented,
scripting language, which is popular in engineering
and scientific computing community (e.g., it is
used to drive the ABAQUS GUI).
• The Python interface allows one to automate
repetitive and possibly error prone tasks.
• It also provides a possible strategy for coupling
FRANC3D with other computational applications.
119
A simple PyF3D Program
import PyF3D   # create a flaw object

# file names for the models flaw = PyF3D.Flaw("Ellipse",[a,b])


flaw.Translate([0.499,4.179,-.374])
uncracked_fname = "minidisk_submodel.cdb“ flaw.Rotate(1,"Y",90.0)
fname_base = "minidisk_crack" flaw.Rotate(2,"Z",-53.61)
   
# lists of crack size parameters to # open an uncrack model, insert the flaw
   
a_sizes = [0.0160, 0.0320, 0.0480, app.OpenModel(uncracked_fname)
0.0640, 0.0787, 0.2362, 0.3937] app.InsertFlaw(flaw)
b_sizes = [0.0160, 0.0787, 0.2362, 0.3937]  
  # generate a new file name like:
app = PyF3D.F3DApp()  # minidisk_crack_160_320.fdb
# loop through the crack size matrix  
  fname = "%s_%d_%d.fdb" % \
for a in a_sizes: (fname_base,int(a*1000),int(b*1000))
for b in b_sizes:  
  # save the file
# skip cases with really  
#bad aspect ratios app.SaveModel(fname)
 
if b > 0.2 and a < 0.065: continue
 

Fracture Analysis
Consultants, Inc. 120
Some FRANC3D Known Bugs

If any of the original body patches fall completely inside


the template (no intersections) the crack insertion will
not be successful.

121
Some FRANC3D Known Bugs

If the none of the crack mouth or template edges intersect any


of the edges of any of the original boundary patches the crack
will not be inserted successfully.
122
Some FRANC3D Known Bugs

FRANC3D can have difficulties


meshing in situations where the
crack-front template (the
singular crack-front element and
the two surrounding rings of
brick elements) intersects one of
the corner of the models.

123
Some FRANC3D Known Bugs

The code is currently able to


detect that the template intersects
a corner and in many cases does a
reasonably good job making the
external mesh compatible with
both the template and the
geometry of the body.

However, reasonable pyramid elements


cannot be added on the outside of the
template. The “Simple Template
Intersections Only” option may work
around this issue.

124
What to do when something goes wrong
If the program crashes before you see the “Flaw Insertion Status”
window:
• Use the “Advanced -> Flaw to File Wizard” option to create
a .crk file that describes the flaw you are trying to insert.
• Send the .crk file along with the mesh file (.inp or .cdb) to us.

If the program crashes during flaw insertion or the program reports that it
cannot insert the flaw:

• Check to make sure that no part of the flaw or crack-front


template is in the retained (cut surface) portion of the sub-model.
• Look for a file called “debug.tst” in your working directory and
send it to us.

125
Workshop Agenda

• Introduction to FRANC3D
• Demo/Hands-on: build an uncracked model
• Overview of the crack insertion process
• Demo/Hands-on: insert initial crack and run analysis
• Stress Intensity Factor (SIF) computation - theory
• Demo/Hands-on: SIF computation - practice
• Crack growth - theory
• Demo/Hands-on: Crack growth - practice
• Demo/Hands-on: Student generated models

126

You might also like