Introduction To CPFEM Manual-1
Introduction To CPFEM Manual-1
Introduction To CPFEM Manual-1
Introduction
Crystal Plasticity model coded in the subroutine UMAT describes the deformation of
single crystals and polycrystals assuming crystallographic slip as the main
deformation mode. For a given initial texture and material parameters of the model,
the code computes the stress-strain response and orientation evolution of single
crystals or aggregate of crystals.
Setup
To use CPFEM, one need first install the finite element software ABAQUS in your
computer. At present, we have a license to run ABAQUS 6.9 at CAVS.
Step 2:
Create a job, click the job menu and select create menu as Figure 2:
2 / 20
Figure 3. Select the CPFEM model umat_xtal.f
Step 4:
Right click job menu--Manager--select the job--- submit the job and run the
job in ABAQUS as Figure 4 below.
3 / 20
Figure 5. Job is done.
Step 6:
Check the result as Figure 6.
As for compression and simple shear, one just needs to change the boundary
conditions as follows:
For compression:
BC---displa---change the U3 from 0.75 to -0.75.
4 / 20
U2---create a job-----submit job----run job.
Input files
There are five input files and they must be located in the same folder which you will
run the CPFEM. These five files are:
umat_xtal.f
texture.txti
fcc.sx
test.xtali
params_xtal.inc
numbers.inc
umat_xtal.f
The umat_xtal.f file is the central file of CPFEM. It integrates the constitutive
equations of crystal plasticity. One must change the variable path in the code to
your present working directory::
& /'/cavs/cmd/data1/users/***/'/
The folder *** is your working directory.
The first several lines in the umat_xtal.f subroutine look like as follows:
c
c=====================================================================7
2
c
c UMAT subroutine for crystal plasticity - SNL & MSU
c
c=====================================================================7
2
c
subroutine umat ( stress, statev, ddsdde, sse, spd,
& scd, rpl, ddsddt, drplde, drpldt,
& strain, dstrain, time, dtime, temp,
& dtemp, predef, dpred, cmname, ndi,
& nshr, ntens, nstatv, props, nprops,
& coords, drot, pnewdt, celent, dfgrd0,
& dfgrd1, noel, npt, layer, kspt,
& kstep, kinc )
include 'ABA_PARAM.INC'
character*8 cmname
5 / 20
texture.txti
texture.txti contains the initial texture information used in the simulation. It can
include many initial orientations as Euler angles using Kocks convention. The
texture.txti contains the following lines:
500
0 0
101.98 145.03 249.44
131.73 86.26 229.29
13.58 153.68 314.40
88.98 124.12 115.16
132.81 105.72 180.69
238.51 61.10 158.50
346.98 88.58 325.61
82.38 144.74 207.65
329.83 45.23 169.92
208.78 79.17 347.94
144.95 30.76 261.40
31.83 159.33 264.14
228.51 95.52 192.43
158.86 79.44 359.90
253.69 118.83 330.44
48.85 160.26 259.66
55.97 134.44 65.93
71.21 139.18 354.20
327.43 125.04 162.16
146.09 99.43 133.64
202.51 74.62 274.15
51.67 97.14 63.49
555
The number 500 means that there are 500 orientations in this texture file. The last
line number 555 is the seed number it should be larger than the total orientation
number (500 in this case). The three columns of data are the corresponding three
Euler angles in Kocks convention.
fcc.sx
fcc.sx is another key input file. It includes all the deformation modes and the
corresponding hardening parameters. When you change these parameters you will
get different output results. The parameters of these deformation modes can be
obtained in the published literature or by calibration using experimental data. It
includes the following:
6 / 20
2 / elastID (1: iso, 2: ani) /
108.2e3 61.3e3 28.5e3 / c11(c1), c12(c2), c44(c3) /
10.0e-6 10.0e-6 10.0e-6 0.0e0 0.0e0 0.0e0 /Thermal expansion Coeffs/
1.0 dummy for Cubic Crystals (for hcp: c/a ratio)
2 nmodesx (total # of modes listed in file)
1 nmodes (# of modes to be used in the calculation)
1 mode(i) (label of the modes to be used)
28 = nvtx (number of vertices of scys)
vert_fcc.028.00 = filename for file with vertices of scys
*<111>{110} SLIP
1 12 1 modex,nsmx,isensex
0.05 1.0 / xm, gam0 /
5.e-4 / bdrag /
20. 40 3.7 30.80 0.0-4 5.0e10 / h0, tausi, taus0, xms, gamss0 /
3.7 / initial slip system hardness (kappa0) /
0.000 0 0.000 0.000 twshx,isectw,thres1,thres2
1.0 1.0 hlat(nmodes)
1. 1. 1. 0. 1. -1.
1. 1. 1. 1. 0. -1.
1. 1. 1. 1. -1. 0.
-1. 1. 1. 0. 1. -1.
-1. 1. 1. 1. 0. 1.
-1. 1. 1. 1. 1. 0.
-1. -1. 1. 0. 1. 1.
-1. -1. 1. 1. 0. 1.
-1. -1. 1. 1. -1. 0.
1. -1. 1. 0. 1. 1.
1. -1. 1. 1. 0. -1.
1. -1. 1. 1. 1. 0.
*<111>{112} TWIN
2 12 0 modex,nsmx,isensex
0.05 1.0 / xm, gam0 /
5.e-4 / bdrag /
20.40 3.7 30.80 0.0-4 5.0e10 / h0, tausi, taus0, xms, gamss0 /
3.7 / initial slip system hardness (kappa0) /
0.707 0 0.100 0.500 twshx,isectw,thres1,thres2
1.0 1.0 hlat(nmodes)
1. 1. 1. -2. 1. 1.
1. 1. 1. 1. -2. 1.
1. 1. 1. 1. 1. -2.
-1. 1. 1. 2. 1. 1.
-1. 1. 1. -1. -2. 1.
7 / 20
-1. 1. 1. -1. 1. -2.
-1. -1. 1. 2. -1. 1.
-1. -1. 1. -1. 2. 1.
-1. -1. 1. -1. -1. -2.
1. -1. 1. -2. -1. 1.
1. -1. 1. 1. 2. 1.
1. -1. 1. 1. -1. -2.
test.xtali
This input file controls which structure you will use and how many orientations
you will use in your simulation. The file structure looks like as follows:
8 / 20
The number 500 is the total number of grains. If one change it to 1 that means just one
grain will be deformed. Note that there are 12 {111}<011> slip systems in a FCC
structure.
params_xtal.inc
The params_xtal.inc input file defines some control parameters. Usually, users
can not change this input file. But, users should change the parameter like below
when you simulate 2D or 3D problems.
numbers.inc
This file lists a number of numerical constants used in the UMAT. This file does
not need to be changed.
Running CPFEM
To run CPFEM in your computer, make sure all the input files have been loaded in
your present working folder. You also need to change the working path in the input
file: umat_xtal.f. First, you should install ABAQUS and open the ABAQUS CAE and
create your 2D or 3D structure model. At present, you can directly open the example
CAE file oneelement.cae to practice as shown in SETUP part of this manual. Note
that the boundary conditions also need to be changed if you want to change the
deformation condition, e.g., uniaxial compression, shear, plane strain compression.
Output files
9 / 20
ang1 ang2 ang3 igrn intpt ielem // ang1 ang2 ang 3 are the three Euler angle
101.98 145.03 249.44 1 1 1 // in degree. Igrn means the grain ID, intpt
131.73 86.26 229.29 2 1 1 // means the integration point in one element.
13.58 153.68 314.40 3 1 1// ielem means the element ID.
88.98 124.12 115.16 4 1 1
132.81 105.72 180.69 5 1 1
238.51 61.10 158.50 6 1 1
346.98 88.58 325.61 7 1 1
82.38 144.74 207.65 8 1 1
329.83 45.23 169.92 9 1 1
208.78 79.17 347.94 10 1 1
144.95 30.76 261.40 11 1 1
31.83 159.33 264.14 12 1 1
228.51 95.52 192.43 13 1 1
158.86 79.44 359.90 14 1 1
253.69 118.83 330.44 15 1 1
48.85 160.26 259.66 16 1 1
55.97 134.44 65.93 17 1 1
71.21 139.18 354.20 18 1 1
327.43 125.04 162.16 19 1 1
146.09 99.43 133.64 20 1 1
202.51 74.62 274.15 21 1 1
51.67 97.14 63.49 22 1 1
26.77 85.13 4.27 23 1 1
131.69 72.44 156.67 24 1 1
78.50 137.25 212.56 25 1 1
..
.
.
66.60 166.72 222.04 498 1 1
83.61 117.93 341.25 499 1 1
165.49 99.96 280.51 500 1 1
*----- Euler Angles at incr 40 -----* // that means the Euler angle at time increments 40 steps.
ang1 ang2 ang3 igrn intpt ielem kappa(1) d_eff
107.41 143.61 -115.58 1 1 1 10.63 0.67E+00
131.71 84.79 -130.37 2 1 1 11.07 0.67E+00
12.89 151.01 -45.11 3 1 1 9.87 0.67E+00
86.95 124.16 120.29 4 1 1 10.67 0.67E+00
132.74 104.13 -178.81 5 1 1 9.13 0.67E+00
-122.81 59.81 152.79 6 1 1 10.28 0.67E+00
-13.04 88.00 -33.76 7 1 1 10.97 0.67E+00
76.07 141.80 -146.63 8 1 1 10.37 0.67E+00
-32.65 45.71 166.46 9 1 1 10.97 0.67E+00
-151.38 80.23 -10.99 10 1 1 9.01 0.67E+00
10 / 20
142.43 30.21 -100.54 11 1 1 10.23 0.67E+00
32.01 161.13 -95.34 12 1 1 9.14 0.67E+00
-131.60 94.62 -169.37 13 1 1 8.93 0.67E+00
158.84 81.21 -0.41 14 1 1 8.80 0.67E+00
-104.88 120.04 -33.01 15 1 1 10.77 0.67E+00
49.33 162.00 -99.89 16 1 1 9.18 0.67E+00
60.01 132.27 60.40 17 1 1 10.57 0.67E+00
72.79 139.19 -7.52 18 1 1 11.27 0.67E+00
-30.56 125.08 156.85 19 1 1 10.55 0.67E+00
146.11 102.39 133.37 20 1 1 11.08 0.67E+00
-157.84 76.31 -85.81 21 1 1 8.94 0.67E+00
53.15 99.78 64.33 22 1 1 9.72 0.67E+00
26.75 85.72 3.81 23 1 1 8.94 0.67E+00
130.40 69.51 154.34 24 1 1 9.97 0.67E+00
74.85 134.43 -143.15 25 1 1 10.76 0.67E+00
13.19 85.09 10.88 26 1 1 9.03 0.67E+00
118.70 144.81 129.49 27 1 1 10.21 0.67E+00
.
.
..
*----- Euler Angles at incr 180 -----*//grain orientations at time increment 180 steps.
ang1 ang2 ang3 igrn intpt ielem kappa(1) d_eff
121.95 133.62 -130.26 1 1 1 23.54 0.44E+00
130.82 75.37 -129.40 2 1 1 24.01 0.44E+00
12.08 138.01 -44.72 3 1 1 22.80 0.44E+00
82.19 124.35 129.85 4 1 1 24.06 0.44E+00
132.88 98.64 -178.02 5 1 1 20.45 0.44E+00
-128.18 56.45 141.02 6 1 1 23.78 0.44E+00
-14.03 84.29 -31.52 7 1 1 23.83 0.44E+00
67.51 131.49 -137.48 8 1 1 23.67 0.44E+00
..
.
.
-118.68 128.22 47.89 496 1 1 24.14 0.44E+00
-61.62 109.73 61.42 497 1 1 22.29 0.44E+00
64.36 173.91 -135.95 498 1 1 20.17 0.44E+00
89.08 122.13 -36.51 499 1 1 23.53 0.44E+00
165.61 96.06 -84.11 500 1 1 20.06 0.44E+00
As such, the first three columns of data are the texture information. You can use the
first three columns of Euler angles and MTEX to plot pole figure.
11 / 20
Step 1:
File---Open---*.odb---Tools--XY Data---Manager-Create-ODB
field output --Continueon the figure select select Unique Nodal, select strain
LE33 as Figure 7.
Step 2:
Select one node at the force surface as shown by the red dot in Figure 8, press
Done---save---Ok.
12 / 20
everything as above, as shown in Figure 9.
13 / 20
Figure 11. combine stress and strain data.
Step 6:
Plot stress-strain curve as shown in Figure 12.
14 / 20
Figure 13. Save stress-strain data.
X stress-strain
0. //strain 0. //stress
74.9972E-06 5.34312
149.989E-06 8.8698
262.466E-06 10.3045
431.157E-06 10.7584
684.141E-06 10.9172
15 / 20
1.0635E-03 11.0235
1.63226E-03 11.1435
2.4848E-03 11.3073
3.76225E-03 11.5459
5.67536E-03 11.8998
8.53819E-03 12.4258
12.5457E-03 13.1561
16.5372E-03 13.8763
20.5129E-03 14.5868
24.4728E-03 15.288
28.417E-03 15.9802
32.3458E-03 16.6636
36.2592E-03 17.3381
40.1573E-03 18.0042
44.0403E-03 18.6618
47.9083E-03 19.3112
51.7613E-03 19.9524
55.5996E-03 20.5857
59.4232E-03 21.2111
63.2322E-03 21.8287
67.0267E-03 22.4386
70.8069E-03 23.0411
74.5729E-03 23.6363
78.3248E-03 24.2243
82.0626E-03 24.8053
85.7865E-03 25.3793
89.4966E-03 25.9462
93.1929E-03 26.5064
96.8757E-03 27.0602
100.545E-03 27.6074
104.201E-03 28.148
107.843E-03 28.6821
111.473E-03 29.21
115.089E-03 29.7318
118.692E-03 30.2475
122.282E-03 30.7572
125.859E-03 31.2608
129.424E-03 31.7585
132.976E-03 32.2505
136.515E-03 32.7367
140.042E-03 33.2174
143.556E-03 33.6926
147.058E-03 34.1622
150.548E-03 34.6266
16 / 20
154.026E-03 35.0858
157.492E-03 35.5403
160.946E-03 35.9899
164.387E-03 36.4347
167.817E-03 36.8747
171.236E-03 37.3101
174.642E-03 37.741
178.038E-03 38.1674
181.421E-03 38.5895
184.793E-03 39.0072
188.154E-03 39.4203
191.504E-03 39.8291
194.842E-03 40.2333
198.17E-03 40.6333
201.486E-03 41.0293
204.792E-03 41.4212
208.086E-03 41.8091
211.37E-03 42.193
214.643E-03 42.5729
217.905E-03 42.9491
221.157E-03 43.3214
224.398E-03 43.6897
227.629E-03 44.0543
230.849E-03 44.4152
234.059E-03 44.7727
237.259E-03 45.1267
240.448E-03 45.4771
243.627E-03 45.824
246.797E-03 46.1676
249.956E-03 46.5076
253.105E-03 46.8439
256.245E-03 47.1768
259.374E-03 47.5062
262.494E-03 47.8325
265.604E-03 48.1558
268.705E-03 48.4763
271.796E-03 48.794
274.877E-03 49.1088
277.949E-03 49.4206
281.012E-03 49.7294
284.065E-03 50.0352
287.109E-03 50.3381
290.143E-03 50.6383
293.169E-03 50.9358
17 / 20
296.185E-03 51.2306
299.192E-03 51.5228
302.19E-03 51.8125
305.18E-03 52.0993
308.16E-03 52.3832
311.132E-03 52.6642
314.094E-03 52.9426
317.048E-03 53.2183
319.993E-03 53.4912
322.93E-03 53.7616
325.858E-03 54.0294
328.777E-03 54.2946
331.688E-03 54.5572
334.591E-03 54.8173
337.485E-03 55.075
340.37E-03 55.3302
343.248E-03 55.5829
346.117E-03 55.8333
348.978E-03 56.0816
351.831E-03 56.3276
354.676E-03 56.5716
357.512E-03 56.8135
360.341E-03 57.0532
363.161E-03 57.2908
365.974E-03 57.5262
368.779E-03 57.7595
371.576E-03 57.9908
374.365E-03 58.2199
377.146E-03 58.447
379.92E-03 58.6719
382.686E-03 58.8946
385.444E-03 59.115
388.195E-03 59.3333
390.938E-03 59.5496
393.674E-03 59.7642
396.402E-03 59.9771
399.123E-03 60.1884
401.837E-03 60.3982
404.543E-03 60.6065
407.242E-03 60.8132
409.933E-03 61.0181
412.618E-03 61.221
415.295E-03 61.4219
417.965E-03 61.6209
18 / 20
420.628E-03 61.8183
423.284E-03 62.0142
425.932E-03 62.2082
428.574E-03 62.4005
431.209E-03 62.5913
433.837E-03 62.7806
436.458E-03 62.9684
439.072E-03 63.1547
441.68E-03 63.3396
444.28E-03 63.5232
446.874E-03 63.7057
449.461E-03 63.8868
452.042E-03 64.0665
454.615E-03 64.2444
457.183E-03 64.4205
459.743E-03 64.595
462.297E-03 64.768
464.845E-03 64.9395
467.386E-03 65.1094
469.921E-03 65.2779
472.449E-03 65.445
474.971E-03 65.6108
477.486E-03 65.7752
479.996E-03 65.9383
482.499E-03 66.1003
484.995E-03 66.2611
487.486E-03 66.4207
489.97E-03 66.5789
492.448E-03 66.736
494.92E-03 66.8917
497.386E-03 67.0461
499.846E-03 67.199
502.3E-03 67.3504
504.748E-03 67.5003
507.19E-03 67.6489
509.626E-03 67.7962
512.056E-03 67.9423
514.48E-03 68.0874
516.898E-03 68.2314
519.31E-03 68.3745
521.717E-03 68.5164
524.118E-03 68.6573
526.513E-03 68.797
528.902E-03 68.9358
19 / 20
531.286E-03 69.0735
533.664E-03 69.2103
536.036E-03 69.3461
538.403E-03 69.4811
540.764E-03 69.6152
543.119E-03 69.7483
545.469E-03 69.8803
547.814E-03 70.011
550.153E-03 70.1404
552.487E-03 70.2689
554.815E-03 70.3964
557.138E-03 70.523
559.455E-03 70.6488
559.612E-03 70.6544
As such, you can plot stress-strain curve using these data above.
References
One can read the following publications to learn the theory of CPFEM and
applications.
[1] E.B. Marin, On the formulation of a crystal plasticity model, Sandia National
Laboratories, CA, 2006, SAND2006-4170.
[2] S. Groh, E.B. Marin, M.F. Horstemeyer, et al., Multiscale modeling of the
plasticity in an aluminum single crystal, International Journal of Plasticity,
25(2009), 1456-1473.
[3] E.B. Marin, P.R. Dawson, On modeling the elasto-viscoplastic response of metals
using polycrystal plasticity, Computer Methods in Applied Mechanics and
Engineering, 165(1998), 1-21.
[4] E.B. Marin, P.R. Dawson, J.T. Jenkins, Aggregate size effect on the predicted
plastic response of hexagonal close-packed polycrystals, Modelling Simulation
Materials Science Engineering, 3(1995), 845-864.
[5] F. Roters, Application of crystal plasticity FEM from single crystal to bulk
polycrystal, Computational Materials Science, 32(2005), 509-517.
[6] F. Roters, P. Eisenlohr, L. Hantcherli, et al., Overview of constitutive laws,
kinematics, homogenization and multiscale methods in crystal plasticity
finite-element modeling: Theory, experiments, applications, Acta Materialia,
58(2010), 1152-1211.
[7] D. Peirce, R.J. Asaro, A. Needleman, Analysis of nonuniform and localized
deformation in FCC single crystals, Acta Metallurgica, 30(1982), 1087-1119.
[8] D. Peirce, R.J. Asaro, A. Needleman, Material rate dependence and localized
deformation in crystalline solids, Acta Metallurgica, 31(1983), 1951-1976.
20 / 20