LAMPAT and LAMPATNL User’s Manual

by Jeffrey M. Staniszewski and Travis A. Bogetti

ARL-TR-6188 September 2012

Approved for public release; distribution is unlimited. 
NOTICES

Disclaimers

The findings in this report are not to be construed as an official Department of the Army position unless 

so designated by other authorized documents.

Citation of manufacturer’s or trade names does not constitute an official endorsement or approval of the 

use thereof.

Destroy this report when it is no longer needed. Do not return it to the originator.
Army Research Laboratory

Aberdeen Proving Ground, MD 21005-5066

ARL-TR-6188 September 2012

LAMPAT and LAMPATNL User’s Manual

Jeffrey M. Staniszewski and Travis A. Bogetti

Weapons and Materials Research Directorate, ARL

Approved for public release; distribution is unlimited. 
ii

REPORT DOCUMENTATION PAGE Form Approved

OMB No. 0704-0188

Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering 

and maintaining the data needed, and completing and reviewing the collection information. Send comments regarding this burden estimate or any other aspect of this collection of information, 

including suggestions for reducing the burden, to Department of Defense, Washington Headquarters Services, Directorate for Information Operations and Reports (0704-0188), 1215 Jefferson 

Davis Highway, Suite 1204, Arlington, VA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to any penalty for failing to 

comply with a collection of information if it does not display a currently valid OMB control number.

PLEASE DO NOT RETURN YOUR FORM TO THE ABOVE ADDRESS.

1. REPORT DATE (DD-MM-YYYY)

September 2012

2. REPORT TYPE

Final

3. DATES COVERED (From - To)

September 2008–October 2011

4. TITLE AND SUBTITLE

LAMPAT and LAMPATNL User’s Manual

5a. CONTRACT NUMBER

1120-1120-99

5b. GRANT NUMBER

5c. PROGRAM ELEMENT NUMBER

6. AUTHOR(S)

Jeffrey M. Staniszewski and Travis A. Bogetti

5d. PROJECT NUMBER

H42

5e. TASK NUMBER

5f. WORK UNIT NUMBER

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES)

U.S. Army Research Laboratory

ATTN: RDRL-WMM-B

Aberdeen Proving Ground, MD 21005-5066

8. PERFORMING ORGANIZATION

 REPORT NUMBER

ARL-TR-6188

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S)

11. SPONSOR/MONITOR'S REPORT

 NUMBER(S)

12. DISTRIBUTION/AVAILABILITY STATEMENT

Approved for public release; distribution is unlimited.

13. SUPPLEMENTARY NOTES

14. ABSTRACT

LAMPAT and LAMPATNL are design tools developed for analyzing thick-section composite structures with progressive 

failure and material nonlinearity. These tools are implemented as subroutines in the finite element software ABAQUS. This 

user’s manual provides information on the proper use of these subroutines, providing specific details on their setup and output. 

This manual is the primary documentation for users who wish to use LAMPAT or LAMPATNL to model thick-section 

composites.

15. SUBJECT TERMS

composite laminate, progressive ply failure, multi-scale, nonlinear response, composite design, thick section

16. SECURITY CLASSIFICATION OF: 

17. LIMITATION

 OF 

 ABSTRACT

UU

18. NUMBER

 OF 

 PAGES

26

19a. NAME OF RESPONSIBLE PERSON

Travis A. Bogetti

a. REPORT

Unclassified

b. ABSTRACT

Unclassified

c. THIS PAGE

Unclassified

19b. TELEPHONE NUMBER (Include area code)

302-831-6324

Standard Form 298 (Rev. 8/98)

Prescribed by ANSI Std. Z39.18
iii

Contents

List of Figures v

List of Tables v

1. Introduction 1

1.1 Description of Output Parameters for LAMPATNL.......................................................2

1.2 Description of Output Parameters for LAMPAT............................................................5

2. Material Database Format 5

2.1 Header .............................................................................................................................6

2.2 Region Data.....................................................................................................................7

2.3 Material/Ply Properties....................................................................................................7

3. LAMPAT (UVARM) 8

3.1 Material Definition..........................................................................................................8

3.2 Step and Field Output Requests ......................................................................................9

3.3 Element Compatibility ....................................................................................................9

3.4 Special Considerations....................................................................................................9

4. LAMPATNL (UMAT) 9

4.1 Material Definition........................................................................................................10

4.2 Step and Field Output Requests ....................................................................................10

4.3 Element Compatibility ..................................................................................................10

4.4 Special Considerations..................................................................................................10

5. LAMPAT (VUSDFLD) 11

5.1 Material Definition........................................................................................................11

5.2 Step and Field Output Requests ....................................................................................12

5.3 Element Compatibility ..................................................................................................12

5.4 Special Considerations..................................................................................................12
iv

6. LAMPATNL (VUMAT) 12

6.1 Material Definition........................................................................................................12

6.2 Step and Field Output Requests ....................................................................................13

6.3 Element Compatibility ..................................................................................................13

6.4 Special Considerations..................................................................................................13

Appendix. Example Material Database 15

Distribution List 18
v

List of Figures

Figure 1. Relation of global coordinates to laminate and ply coordinates......................................4

Figure 2. Example of material database format. .............................................................................6

List of Tables

Table 1. Selection of software product and subroutine...................................................................1

Table 2. List of state dependent parameters....................................................................................2
vi

INTENTIONALLY LEFT BLANK.
1

1. Introduction

The LAMPAT and LAMPATNL user’s manual details how to properly use the available 

LAMPAT and LAMPATNL subroutines, including formatting the material database file, 

specifics on the material definition, step and output setup, special considerations, and element 

compatibility for each subroutine. This manual assumes that the user can do all the other 

additional steps necessary to create the model, including creating the part, creating the material, 

creating and assigning the section, meshing the part, creating an assembly and steps, applying 

loads and boundary conditions, and creating and running a job.

Prior to running LAMPAT or LAMPATNL, one must first answer two questions: (1) Do I want 

to run linear, uncoupled, progressive failure analysis or nonlinear, coupled, progressive failure 

analysis and (2) is the model I am going to be running a static analysis or a dynamic analysis?

The answer to the first question determines whether to run LAMPAT (linear) or LAMPATNL 

(nonlinear). The answer to the second question leads the user either to UVARM/UMAT (static) 

or VUSDFLD/VUMAT (dynamic). Table 1 illustrates the choices and their corresponding 

subroutines. The chosen LAMPAT or LAMPATNL subroutine must be linked to the job created 

for the model either through the General tab of the Edit Job dialog box in Abaqus/CAE or the 

command line with user=(subroutine filename).

Table 1. Selection of software product and subroutine.

Static Analysis With

Abaqus/Standard

Dynamic Analysis With

Abaqus/Explicit

Linear, uncoupled 

progressive failure

Title: LAMPAT Title: LAMPAT

Subroutine: UVARM Subroutine: VUSDFLD

Nonlinear, uncoupled 

progressive failure

Title: LAMPATNL Title: LAMPATNL

Subroutine: UMAT Subroutine: VUMAT

A detailed report on LAMPAT, including theoretical background and example cases, are 

provided by Bogetti et al1. A detailed report on LAMPATNL, with theoretical background, 

details on implementation, a design methodology that can be used with LAMPATNL, and two 

example cases are provided in Staniszewski2. A full summary and description of the output 

parameters created by LAMPAT and LAMPATNL are presented in those references, and 

provided here for completeness.

 

1 Bogetti, T. A.; Hoppel, C.P.R.; Burns, B. P. LAMPAT: A Software Tool for Analyzing and Designing Thick. Laminated 

Composite Structures; ARL-TR-0890; U.S. Army Research Laboratory: Aberdeen Proving Ground, MD, September 1995.

2 Staniszewski, J. M, An Improved Design Methodology for Modeling Thick-section Composite Structures Using a Multiscale Approach; Master’s Thesis, University of Delaware, July 2010.
2

1.1 Description of Output Parameters for LAMPATNL

A full list and brief description of each of the 16 output parameters of LAMPATNL is provided 

in table 2. These history-dependent parameters are calculated and stored throughout the 

incremental solution.

Table 2. List of state dependent parameters.

Abaqus Parameter Name Description

SDV1 CXXR CXX Ratio, X stiffness

SDV2 CYYR CYY Ratio, Y stiffness

SDV3 CZZR CZZ Ratio, Z stiffness

SDV4 CYZR CYZ Ratio, YZ stiffness

SDV5 CXZR CXZ Ratio, XZ stiffness

SDV6 CXYR CXY Ratio, XY stiffness

SDV7 NOF Number of failures

SDV8 CMODE Current critical failure mode

SDV9 FMODE Previous failed mode

SDV10 CPLY Current critical ply number

SDV11 FPLY Previous failed ply number

SDV12 SF Safety factor

SDV13 SUMCIJ Sum of SDV1 through SDV6

SDV14 PRODCIJ Produce of SDV1 through SDV6

SDV15 MINCIJ Minimum value of SDV1 through SDV6

SDV16 MINCIJN Cij number (1 to 6) of SDV15

The first six parameters are stiffness ratios evaluated directly from the elemental (global) 

stiffness matrix. At the beginning of the finite element analysis, the values on the diagonal of the 

stiffness matrix, Cij, are stored. These values change throughout the analysis due to material 

nonlinearity and progressive ply failure. The stiffness matrix is updated and the current values 

occupying the diagonal are divided by the original values to determine the stiffness ratio for that 

direction. Equation 1 shows the calculation of the CXX stiffness ratio CXXR, with the 

calculation of the five other ratios following similarly.

c

XX

i

XX

C

CXXR

C



(1)

In equation 1, the c term is the current value and the i term is the initial value. For this analysis, 

CXX refers to value in the (1, 1) position of the global Cij stiffness matrix, CYY in the (2, 2), 

CZZ in the (3, 3), CYZ in the (4, 4), CXZ in the (5, 5), and CXY in the (6, 6). The values of the 

stiffness ratios range from 1 to 0, where a value of 1 indicates no stiffness loss from the original 

stiffness and 0 indicates complete loss of stiffness of the element in the direction.

The parameter for the number of failures, NOF or SDV7, records the number of ply failures that 

have occurred in the element. For example, if a (0°/90°)s laminate had transverse tensile failure 
3

in the 90° plies and longitudinal tensile failure in the 0° plies the number of failures would be 4. 

This value is a result of symmetry with a single failure recorded in the two 90° plies and another 

single failure recorded in the two 0° plies. If failure has not occurred in the element, NOF will 

be at zero. This parameter does not indicate the effect of ply failure on the stiffness of the 

sample but is a count of the number of failure allowables exceeded in the element up to this 

point.

The critical mode CMODE, previous failed mode FMODE, critical ply CPLY, previous failed 

ply FPLY, and safety factor SF are important parameters used to determine the progressive ply 

failure history in LAMPATNL. The safety factor is defined as the ratio of the principal material 

direction strain allowable to the current ply level strain, as shown below:

1

1

1



Y T

SF  if ε1>0 (2)

1

2

1



Y C

SF  if ε1<0 (3)

2

3

2



Y T

SF  if ε2>0 (4)

2

4

2



Y C

SF  if ε2<0 (5)

3

5

3



Y T

SF  if ε3>0 (6)

3

6

3



Y C

SF  if ε3<0 (7)

4

7

23



Y

SF 

(8)

5

8

13



Y

SF 

(9)

6

9

12



Y

SF 

(10)

where Y1T, Y1C, Y2T, Y2C, Y3T, Y3C, Y23, Y13, and Y12 are the maximum strain 

allowables. These calculations are done for all N plies in the laminate. The lowest value out of 

the 9N safety factors is recorded and displayed as the SF output parameter. The ply with the 
4

lowest safety factor becomes the critical ply CPLY and the mode in which this safety factor has 

occurred is recorded as the critical mode CMODE. The values of CPLY range from 1 to N. The 

values of CMODE correspond to the number of the lowest safety factor, as defined in equations 

2 to 10, and range from 1 to 9. Critical or failure mode 1 refers to 1-direction fiber tension, 

mode 2 is 1-direction fiber compression, mode 3 is 2-direction matrix tension, mode 4 is 

2-direction matrix compression, mode 5 is 3-direction matrix tension, mode 6 is 3-direction 

matrix compression, mode 7 is interlaminar (23) shear, mode 8 is interlaminar (13) shear, and 

mode 9 is in-plane (12) shear. The failure modes refer to the ply-level coordinate system that is 

related to the laminate and global systems, as shown in figure 1.

Figure 1. Relation of global coordinates to laminate and ply coordinates

When a strain in a ply has reached its allowable (safety factor=1), the failed ply and direction are 

discounted and excluded from the safety factor calculation. The critical ply at this point is 

recorded as the previous failed ply number FPLY and the critical mode becomes the previous 

failed mode FMODE. These values are initially at zero and will take on the range of values of 

CPLY and CMODE if ply failure occurs in the element. If failure is recorded, the FPLY and 

FMODE parameters will portray the progression of failure in the analysis.

The SUMCIJ parameter is simply the sum of the CXXR, CYYR, CZZR, CYZR, CXZR, and 

CXYR stiffness ratio parameters and can range from 6 to 0. The PRODCIJ parameter is the 

product of these stiffness ratios and ranges from 1 to 0. The MINCIJ parameter records the 

minimum value of the six stiffness ratios and also ranges from 1 to 0. The MINCIJN parameter 

indicates which stiffness ratio is recorded as the minimum for the element. If CXXR is the 

minimum stiffness ratio, MINCIJN is 1, for CYYR it is 2, for CZZR it is 3, for CYZR it is 4, for 

CXZR it is 5, and for CXYR it is 6. If the minimum stiffness ratio for the element is greater than 

80%, no value for MINCIJN is recorded and this parameter is set to zero. Some output 

parameters are not used in the following case studies but may have more important uses in 

different analyses.
5

1.2 Description of Output Parameters for LAMPAT

The LAMPAT subroutines produce only 3 output parameters, safety factor (SF or SDV12 from 

above), critical mode (CMODE or SDV8), critical ply (CPLY or SDV10). Although these 

parameters are named similarly to the nonlinear parameters, please note the differences stated 

below.

For the linear case (LAMPAT), safety factor is defined as the ultimate load that a laminate could 

sustain, based on the allowable amount of progressive failure, divided by the applied loading on 

the laminate. The safety factor is therefore a scalar multiple of the applied loading. The process 

of determining this value starts by calculating the ratio of the strain allowable to ply strain for 

each ply and each direction (see equations 2–10). The lowest ratio is called the safety factor for 

that iteration, and the ply and direction in which the lowest ratio occurs is called the critical ply 

and critical mode, respectively. The ply and direction are next flagged for failure and the 

stiffness in the critical direction of that ply is discounted. New linear “smeared” properties for 

the laminate are then calculated and the process repeats. A new safety factor, critical mode, and 

critical ply are calculated and recorded for the next iteration, the plies are discounted, and 

“smeared” properties are updated. Iterations continue until the structural integrity of the 

laminate has been compromised. At the end of the analysis, the highest safety factor of all the 

iterations is determined to be last ply failure and the mode and ply of that highest safety factor 

are reported as critical mode and ply for the element.

The process for determining the safety factor in nonlinear, progressive failure analysis

(LAMPATNL) is not as straightforward. First, stress and strains in nonlinear analysis cannot be 

linearly scaled to larger values because this analysis uses the incremental approach for 

determining stress from strain. Secondly, the progressive nature of the analysis requires that 

plies must exceed their strain allowable to be flagged for failure. In the linear analysis, the 

lowest ratio of the strain failure allowable to the ply strain is designated for failure and the ply is 

discounted. In nonlinear, progressive failure analysis, the safety factor is defined as the lowest 

ratio of failure allowable to ply strain at the current level and the critical ply and mode are the 

ply and direction of this lowest ratio. This determines which ply and direction are closest to 

failure, not which ply and direction would cause last ply failure. Because of these differences, it 

is not appropriate to directly compare values of the variables calculated in LAMPATNL to those 

calculated in the LAMPAT.

2. Material Database Format

All subroutines of LAMPAT and LAMPATNL (UVARM, VUSDFLD, UMAT, VUMAT) 

require and read a material database file that contains the region and ply material data used for 

simulating composite structures. Whether linear or nonlinear, static or dynamic, all the subroutines 
6

read data from one database format. The details of how to create and properly format the database 

are given below and an example database is provided in the appendix of this manual.

The database file is broken into three separate areas: the header, region data, and material/ply 

properties (figure 2). The order and composition of these areas are important in ensuring the 

correct functioning of the subroutines. Each of these areas are discussed in detail.

Figure 2. Example of material database format.

2.1 Header

The header consists of two lines of one number on each line, with the first number being the 

number of regions listed in this database file and the second number being the number of 

materials contained in the database file. If these numbers do not correspond correctly to what is 

in the database file, there will be errors in the material properties and/or layups when the code 

runs and will result in the simulation not running properly.
7

2.2 Region Data

The region data is where the layups of the composite that are going to be simulated are specified. 

Each set of region data should contain 3+N lines of four numbers separated by commas, where N 

is the number of plies that are going to be used in the layup. Generally, the fourth column in this 

region is not used, although numbers should be in this column (this column was used for thermal 

effects, something not yet integrated into the current code). The first line should contain the 

region number, failure criteria that is to be used for this region, and the number of iterations that 

will be evaluated (this is only used for LAMPAT analysis and is typically set to 10). The second 

line contains the beta, phi, and si that can be used to rotate the region to the proper orientation 

when compared to the coordinate system in the finite element model. The third line contains the 

number of plies for this layup and two values that are currently not used. It is important that the 

number of plies indicated on this line match the number in this region, as not matching these will 

probably lead to errors in the simulation. The next N number of lines should contain the number 

of the material used for the ply, the thickness of the ply, and the orientation angle of the ply.

For example, the first region shown in figure 2 contains a (0°/90°) symmetric layup of the 

Material1 over four plies, which is evaluated using failure criteria 3. This region is not rotated in 

comparison to the finite element (FE) coordinate system (beta=phi=si=0). For LAMPAT 

analysis, 10 iterations of failure are evaluated (unless, of course, it is stopped for some reason 

before the 10th iteration).

2.3 Material/Ply Properties

The final area of the material database file contains the material or ply properties. This area 

consists of 49 lines of data, with 3 numbers separated by commas per line. The first 9 lines 

contain the properties of the material, while the last 40 lines contain the failure allowables for the 

8 different failure criteria (8 blocks of 5 lines each).

The first line contains the number of the material, the material type (not used), and the density of 

the material (used only in the LAMPAT Preprocessor). The second line contains the Young’s 

modulus (E) in the 1, 2, and 3 directions. The third line contains the sigma-0 (stress asymptote) 

parameters for the 1, 2, and 3 directions used in the Ramberg-Osgood equation to model 

nonlinearity. The forth line is the N (shape factor) parameters for the 1, 2, and 3 directions used 

in the Ramberg-Osgood equation to model nonlinearity. When running the LAMPAT (linear) 

analysis lines 3 and 4 (along with the shape factors and sigma-0 for the shear modulus) are 

ignored. The fifth line contains the Poisson’s ratios v23, v13, and v12, in that order. The sixth 

line contains the shear modulus (G) in the 23, 13, and 12 directions. The seventh line contains 

the sigma-0 (stress asymptote) parameters for the 23, 13, and 12 directions used in the RambergOsgood equation to model nonlinearity. The eighth line is the N (shape factor) parameters for 

the 23, 13, and 12 directions used in the Ramberg-Osgood equation to model nonlinearity. The 

ninth line contains the thermal expansion coefficients alpha 1, 2, and 3 (these material properties 

are not currently used in the analysis).
8

Considerations for the failure allowables of this material should be examined on a criterion-bycriterion basis. The two most commonly used failure criteria are the maximum stress and 

maximum strain failure criteria and they are discussed here. The maximum stress failure 

allowable starts at line 15 (lines 10 to 14 are for the Von Mises failure allowables). On this line, 

the tensile failure stresses for the 1, 2, and 3 directions should be listed. Line 16 contains the 

compressive failure stresses for the 1, 2, and 3 directions. Line 17 should contain the shear 

failure stresses for the 23, 13, and 12 directions. Lines 18 and 19 are not used but should be left 

as zeros. The maximum strain failure allowable starts at line 20, which should contain the tensile 

failure strains for the 1, 2, and 3 directions. Line 21 contains the compressive failure strains for 

the 1, 2, and 3 directions. Line 22 should contain the shear failure strains for the 23, 13, and 

12 directions. Lines 23 and 24 are not used but should be left as zeros. Any other failure 

allowables for the other failure criteria should be investigated by the user to ensure proper 

functioning of the failure theory.

3. LAMPAT (UVARM)

The procedure and special considerations for setting up and running a linear, uncoupled,

progressive failure analysis on a static simulation using LAMPAT are discussed in this section. 

For each subroutine, specifics on the material definition, additions to the field output requests, 

and element compatibility are discussed. Also, modifications to the subroutine increase the 

variable definitions to accommodate larger mesh sizes (if required) are detailed.

As with all subroutines discussed in this manual, the correct path of the database file used for the 

model must be specified for the correct functioning of LAMPAT. To do this, the user must 

modify the following line in the subroutine: OPEN(UNIT=15,FILE='(path)',STATUS='OLD'), 

where (path) is replaced with the path and name of the database file. For example, the database 

file used for the current simulation is called dbase.txt and is located in the root directory of the C 

drive so the line would become OPEN(UNIT=15,FILE='C:\dbase.txt',STATUS='OLD').

3.1 Material Definition

When creating materials for use with LAMPAT, one of the most important steps is naming the 

material correctly. The naming convention required for these materials is REGION#, where the 

# is replaced by the number of the region in the database to which this material refers. For 

example, if the model has three separate composite layups in it, the database should have three 

regions and the materials created in the model should be named REGION1, REGION2, and 

REGION3 (region is not required to be caps). This naming convention is required because the 

subroutine will identify the region number for analysis based upon the material name.

There are two required options that need to be selected when defining the material for this case. 

These options are Elastic (typically engineering constants, though it is not required) and User 
9

Output Variables. The elastic engineering constants is defined by selecting Mechanical->Elastic-

>Type: Engineering constants in the Edit Material dialog box of Abaqus/CAE. To determine the 

engineering constants of each region, the LAMPAT Preprocessor must be run with the database 

file that will be used in the simulation. A material “card” will be output by the preprocessor and 

these values must be input into the engineering constants dialog box in the order presented. The 

User Output Variable option is selected through the General menu in the Edit Material dialog 

box. The number of user-defined variables at each material point must be set to 3.

3.2 Step and Field Output Requests

In creating the step for this analysis (typically a Static, General step), it is recommended that the 

initial increment size be decreased from 1 to 0.1 (under the Incrementation tab). This will help 

the model solve without having to cut back the step size and also create intermediate points in 

the analysis for the plots of safety factor, critical mode, and critical ply. For large problems, the 

automatic incrementation would probably cut back the step size anyway.

To ensure that the output variables of LAMPAT are recorded, the field output request must be 

modified to include the UVARM. To add this, select the UVARM checkbox under the 

State/Field/User/Time section of the Edit Field Output Request dialog box. The output 

parameters produced by this subroutine are: UVARM1 = safety factor, UVARM2 = critical 

mode, UVARM3 = critical ply. See section 1.2, description of output parameters for LAMPAT, 

for an explanation of these values.

3.3 Element Compatibility

This subroutine has been tested and verified to be working with both full and reduced integration 

elements of plane stress (CPS4 and CPS4R) and three-dimensional (3D) stress (C3D8 and 

C3D8R). Because of the way the subroutine reads in stresses, the UVARM should be 

compatible with any element that returns the stress in to the GETVRM utility routine in the form 

S11, S22, S33, S12, S13, S23.

3.4 Special Considerations

The linear, uncoupled progressive failure simulated in LAMPAT does not require the tracking of 

failure history of the element and integration point. Because of this, there is no need to modify 

the subroutine to accommodate a large number of elements.

4. LAMPATNL (UMAT)

The procedure and special considerations for setting up and running a nonlinear, coupled, 

progressive failure analysis on a static simulation using LAMPATNL are discussed in this section. 

As with all subroutines discussed in this manual, the correct path of the database file used for the 
10

model must be specified for the correct functioning of LAMPATNL. To do this, the user must 

modify the following line in the subroutine: OPEN(UNIT=16,FILE='(path)',STATUS='OLD'), 

where (path) is replaced with the path and name of the database file. For example, the database 

file used for the current simulation is called dbase.txt and is located in the root directory of the C 

drive so the line would become OPEN(UNIT=16,FILE='C:\dbase.txt',STATUS='OLD').

4.1 Material Definition

There are two required options that need to be selected when defining the material for this case. 

These options are User Material and Depvar, both selected through the General menu in the Edit 

Material dialog box. For the User Material, the first (and only) mechanical constant is required 

to be the number of the region in the database that corresponds to the composite desired to be 

modeled with this material (1 for region 1, 2 for region 2, etc.). For the Depvar option, the 

number of solution-dependent state variables must be set to 16.

4.2 Step and Field Output Requests

In creating the step for this analysis (typically, a Static, General step), it is important to switch 

the Nlgeom from Off (default) to On. It is also strongly recommended to increase the maximum 

number of increments to 500, decrease the initial increment size from 1 to 0.01, and decrease the 

maximum increment size also from 1 to 0.01 (under the Incrementation tab). Because of the 

piecewise linear procedure used to model material nonlinearity, it is important to keep the 

increment size small to ensure the desired nonlinearity is modeled.

To ensure that the output variables of LAMPATNL are recorded, the field output request must be 

modified to include the solution dependent variables (SDV). To add this, select the SDV 

checkbox under the State/Field/User/Time section of the Edit Field Output Request dialog box. 

There are 16 output parameters produced by this subroutine, SDV1 through SDV16. See section 

1.1, description of output parameters for LAMPATNL, for an explanation of these values.

4.3 Element Compatibility

This subroutine has been tested and verified to be working with both full and reduced integration 

elements of plane stress (CPS4 and CPS4R) and 3D stress (C3D8 and C3D8R). When using 

reduced integration elements with the UMAT, it is required to specify an hourglass stiffness for 

the elements. For solid elements, it is recommended that the hourglass stiffness be equal to 

0.005*G, where G is the shear modulus of the material (for more detailed information on 

selecting an hourglass stiffness, see section 21.1.4-Section Controls of the ABAQUS Analysis 

User’s Manuel for Version 6.7).

4.4 Special Considerations

The nonlinear, coupled progressive failure simulated in LAMPATNL requires the tracking of 

failure history of the element and integration point. There are several arrays of variables in the 

subroutine that are sized based upon the maximum number of elements in the model. Because 
11

the UMAT does not have access to the total number of elements in a given model, a sufficiently 

large number is chosen to predefine these arrays (currently, this number is set to 9,000). If there 

are more than 9000 elements in your model, you must increase this parameter in order for the 

UMAT to run as expected. To do this, simply modify the line PARAMETER (INEL=9000) by 

increasing the number. Setting this value to reflect the relative size of your analysis ensures that 

enough variables are predefined, but setting it too large (for example, 30,000 used in an 1000 

element model) may decrease the performance of the code and increase the load on the memory 

of the computer.

5. LAMPAT (VUSDFLD)

The procedure and special considerations for setting up and running a linear, uncoupled, 

progressive failure analysis on a dynamic simulation using LAMPAT are discussed in this 

section. As with all subroutines discussed in this manual, the correct path of the database file used 

for the model must be specified for the correct functioning of LAMPAT. To do this, the user must 

modify the following line in the subroutine: OPEN(UNIT=17,FILE='(path)',STATUS='OLD'), 

where (path) is replaced with the path and name of the database file. For example, the database 

file used for the current simulation is called dbase.txt and is located in the root directory of the C 

drive so the line would become OPEN(UNIT=17,FILE='C:\dbase.txt',STATUS='OLD').

5.1 Material Definition

When creating materials for use with LAMPAT, one of the most important steps is naming the 

material correctly. The naming convention required for these materials is REGION#, where the 

# is replaced by the number of the region in the database to which this material refers. For 

example, if the model has three separate composite layups in it, the database should have three 

regions and the materials created in the model should be named REGION1, REGION2, and 

REGION3 (region is not required to be caps). This naming convention is required because the 

subroutine will identify the region number for analysis based upon the material name.

There are four required options that need to be selected when defining the material for this case. 

These options are Elastic (typically engineering constants, though it is not required), Density, 

Depvar, and User Defined Field. The elastic engineering constants is defined by selecting 

Mechanical->Elastic->Type: Engineering constants in Abaqus/CAE. To determine the 

engineering constants of each region, the LAMPAT Preprocessor must be run with the database 

file that will be used in the simulation. A material “card” will be output by the preprocessor and 

these values must be input into the engineering constants dialog box in the order presented. The 

Depvar option is selected through the General menu in the edit material dialog box. The number 

of user-defined variables at each material point must be set to 3. The Density option is also 

selected through the General menu in the edit material dialog box and should be set to the mass 
12

density of the composite. Finally, the User Defined Field option must be selected through the 

General menu in the edit material dialog box and there is no input for this.

5.2 Step and Field Output Requests

The typical step type for this analysis is a Dynamic, Explicit step. The default settings for this 

step are sufficient to the needs of running LAMPAT. To ensure that the output variables of 

LAMPAT are recorded, the field output request must be modified to include the SDV. To add 

this, select the SDV checkbox under the State/Field/User/Time section of the Edit Field Output 

Request dialog box. The output parameters produced by this subroutine are SDV1 = safety 

factor, SDV2 = critical mode, SDV3 = critical ply. See section 1.2, description of output 

parameters for LAMPAT, for an explanation of these values.

5.3 Element Compatibility

This subroutine has been tested and verified to be working with both full and reduced integration 

elements of 3D stress (C3D8 and C3D8R). Because of the way the subroutine reads in stresses, 

the VUSDFLD should be compatible with any element that returns the stress in to the 

VGETVRM utility routine in the form S11, S22, S33, S12, S13, and S23.

5.4 Special Considerations

The linear, uncoupled progressive failure simulated in LAMPAT does not require the tracking of 

failure history of the element and integration point. Because of this, there is no need to modify 

the subroutine to accommodate a large number of elements.

6. LAMPATNL (VUMAT)

The procedure and special considerations for setting up and running a nonlinear, coupled, 

progressive failure analysis on a dynamic simulation using LAMPATNL are discussed in this 

section. As with all subroutines discussed in this manual, the correct path of the database file used 

for the model must be specified for the correct functioning of LAMPATNL. To do this, the user 

must modify the following line in the subroutine: OPEN(UNIT=16,FILE='(path)',STATUS='OLD'), 

where (path) is replaced with the path and name of the database file. For example, the database file 

used for the current simulation is called dbase.txt and is located in the root directory of the C drive 

so the line would become OPEN(UNIT=16,FILE='C:\dbase.txt',STATUS='OLD').

6.1 Material Definition

There are three required options that need to be selected when defining the material for this case. 

These options are User Material, Density, and Depvar, all selected through the General menu in 

the Edit Material dialog box. For the User Material, the first (and only) mechanical constant is 

required to be the number of the region in the database that corresponds to the composite desired 
13

to be modeled with this material. For the Depvar option, the number of solution-dependent state 

variables must be set to 16. The Density option should be set to the mass density of the 

composite.

6.2 Step and Field Output Requests

The typical step type for this analysis is a Dynamic, Explicit step. The default settings for this 

step are sufficient to the needs of running LAMPATNL. Because of the small increment size of 

explicit analyses, the default setup is sufficient to simulate the piecewise linear procedure used to 

model material nonlinearity.

To ensure that the output variables of LAMPATNL are recorded, the field output request must be 

modified to include the SDV. To add this, select the SDV checkbox under the 

State/Field/User/Time section of the Edit Field Output Request dialog box. There are 16 output 

parameters produced by this subroutine, SDV1 through SDV16. See section 1.1, description of 

output parameters for LAMPATNL, for an explanation of these values.

6.3 Element Compatibility

This subroutine has been tested and verified to be working with both fully integrated and reduced 

integration elements of plane stress (CPS4 and CPS4R) and 3D stress (C3D8 and C3D8R). 

When using reduced integration elements with the VUMAT, it is required to specify an 

hourglass stiffness for the elements. For solid elements, it is recommended that the hourglass 

stiffness be equal to 0.005*G, where G is the shear modulus of the material (for more detailed 

information on selecting an hourglass stiffness (see section 21.1.4-Section Controls of the 

ABAQUS Analysis User’s Manuel for Version 6.7).

6.4 Special Considerations

The nonlinear, coupled progressive failure simulated in LAMPATNL requires the tracking of 

failure history of the element and integration point. There are several arrays of variables in the 

subroutine that are sized based upon the maximum number of elements in the model. Because 

the VUMAT does not have access to element number and integration point number, specific 

considerations needed to be taken. Abaqus breaks up each material into blocks of 136 elements 

to be evaluated in each call to the subroutine. Abaqus does not provide unique identifiers for 

specific elements and integration points, which presents a problem when tracking failure history. 

The most recent solution in an attempt to address this problem continuously updates a unique 

number that is reset with each new increment irrespective of element or integration point.

For the user, this section is important when accounting for a large amount of elements. 

Currently, the VUMAT should handle 1250 C3D8 or 2500 CPS4 fully integrated elements and 

10,000 reduced integration elements. Increasing this number depends upon whether you are 

using reduced integration or not. For reduced integration, simply change the line PARAMETER 

(INEL=10000) to a number greater than the amount of elements in your model. For full 
14

integration, take the number of elements in your model and multiply by 8 for the 3D case (4 for 

the two-dimensional [2D] case). Next, set the line PARAMETER (INEL=10000) to something 

greater than this resulting number. For example, the model being run has 13,000 C3D8 

elements. Multiplying 13,000 by 8 gives 104,000 (choose 105,000, as the number greater). So 

the line should be PARAMETER (INPT=105000).
15

Appendix. Example Material Database

 

This appendix appears in its original form, without editorial change.
16

 2 ! NUMBER OF REGIONS IN DATABASE

 2 ! NUMBER OF MATERIALS IN DATABASE

 1.0, 3.0, 10.0, 1.0 ! REG_ID, FAIL_CRT, ITERS, ---

 0.0, 0.0, 0.0, 0.0 ! BETA, PHI, SI, ---

 4.0, 2.0, 0.0, 0.0 ! NPLY, ---, ---, ---

 1.0, 0.05, 0.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 1.0, 0.05, 90.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 1.0, 0.05, 90.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 1.0, 0.05, 0.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 2.0, 3.0, 10.0, 1.0 ! REG_ID, FAIL_CRT, ITERS, ---

 0.0, 0.0, 0.0, 0.0 ! BETA, PHI, SI, ---

 2.0, 2.0, 0.0, 0.0 ! NPLY, ---, ---, ---

 2.0, 0.05, 0.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 2.0, 0.05, 0.0, -0.0001 ! MAT_ID, THICKNESS, ANGLE, ---

 1.0, 2.0, 6.800E-02 ! MAT_ID, MAT_TYPE, MAT_DENS

 6.397E+06, 1.010E+06, 1.010E+06 ! E1, E2, E3

 1.000E+09, 9.929E+03, 9.929E+03 ! SIG_0-1, SIG_O-2, SIG_O-3

 1.000E+01, 3.600E+00, 3.600E+00 ! N-1, N-2, N-3

 3.840E-01, 2.540E-01, 2.540E-01 ! NU23, NU13, NU12

 3.650E+05, 4.190E+05, 4.190E+05 ! G23, G13, G12

 1.000E+09, 4.464E+03, 4.464E+03 ! SIG_O-23, SIG_O-13, SIG_O-12

 1.000E+01, 2.370E+00, 2.370E+00 ! N-23, N-13, N-12

 5.393E-06, 4.091E-05, 4.091E-05 ! A1, A2, A3

 0.0, 0.0, 0.0 ! YLDSTRS, ---, --- ... Von Mises

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 1.750E+05, 3.000E+03, 3.000E+03 ! X1T, X2T, X3T ... Max Stress

 5.200E+04, 2.000E+04, 2.000E+04 ! X1C, X2C, X3C

 5.000E+03, 1.100E+04, 1.100E+04 ! X23, X13, X12

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 2.736E-02, 2.970E-03, 2.970E-03 ! Y1T, Y2T, Y3T ... Max Strain

 8.129E-03, 1.980E-02, 1.980E-02 ! Y1C, Y2C, Y3C

 1.370E-02, 2.625E-02, 2.625E-02 ! Y23, Y13, Y12

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

420.000E+03, 8.700E+03, 1.0 ! XLT, XTT, HPD ... Hydrostatic

175.000E+03, 100.00E+03, 20.300E+03 ! XLC, XTC, S

 2.0, 2.0, 0.0 ! ML1, ML2, LTP

 1.0, 1.0, 0.0 ! MT1, MT2, TTP

 1.0, 1.0, 0.0 ! MS1, MS2, STP

420.000E+03, 175.00E+03, 0.0 ! X1T, X1C, --- ... Tsai-Wu

 8.700E+03, 30.000E+03, 0.0 ! X2T, X2C, ---

 20.000E+03, 1.1915e-09, -1.916e-09 ! S12, F12, F23

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 2.230E+07, 1.220E+06, 1.220E+06 ! E1, E2, E3 ... Christensen

 0.450E+00, 0.330E+00, 0.330E+00 ! NU23, NU13, NU12

 0.700E+06, 0.700E+06, 0.700E+06 ! G23, G13, G12

 1.507E-02, 0.1027913, 0.0 ! K, ALPHA, ---

 1.88E-02, 7.8E-03, 0.0 ! Y1T, Y1C, ---

 452.55, 101910, 0.0 ! A1, A11, FE3 ... Feng

 1189.1, 1189.1, 0.0 ! A2, A4, FE6

 -37.42, 4819.74, 0.0 ! A5, A55, FE9

 0.0, 0.0, 0.0 ! FE10, FE11, FE12

 0.0, 0.0, 0.0 ! FE13, FE14, FE15

420.000E+03, 8.700E+03, 8.700E+03 ! X1T, X2T, X3T ... Hashin

175.000E+03, 30.000E+03, 30.000E+03 ! X1C, X2C, X3C

 20.000E+03, 20.000E+03, 20.000E+03 ! X23, X13, X12

 0.0, 0.0, 0.0 ! HA10, HA11, HA12

 0.0, 0.0, 0.0 ! HA13, HA14, HA15

 2.0, 2.0, 5.400E-02 ! MAT_ID, MAT_TYPE, MAT_DENS

 1.932E+07, 8.470E+05, 8.470E+05 ! E1, E2, E3

 1.000E+09, 1.815E+04, 1.815E+04 ! SIG_0-1, SIG_O-2, SIG_O-3
17

 1.000E+01, 3.600E+00, 3.600E+00 ! N-1, N-2, N-3

 3.960E-01, 2.390E-01, 2.390E-01 ! NU23, NU13, NU12

 3.030E+05, 2.390E+05, 2.390E+05 ! G23, G13, G12

 1.000E+09, 3.805E+03, 3.805E+03 ! SIG_O-23, SIG_O-13, SIG_O-12

 1.000E+01, 2.020E+00, 2.020E+00 ! N-23, N-13, N-12

 3.064E-07, 4.316E-05, 4.316E-05 ! A1, A2, A3

 0.0, 0.0, 0.0 ! YLDSTRS, ---, --- ... Von Mises

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 4.200E+05, 8.700E+03, 8.700E+03 ! X1T, X2T, X3T ... Max Stress

 1.750E+05, 3.000E+04, 3.000E+04 ! X1C, X2C, X3C

 2.030E+04, 2.030E+04, 2.030E+04 ! X23, X13, X12

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 2.174E-02, 1.027E-02, 1.027E-02 ! Y1T, Y2T, Y3T ... Max Strain

 9.058E-03, 3.542E-02, 3.542E-02 ! Y1C, Y2C, Y3C

 6.700E-02, 8.494E-02, 8.494E-02 ! Y23, Y13, Y12

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

420.000E+03, 8.700E+03, 1.0 ! XLT, XTT, HPD ... Hydrostatic

175.000E+03, 100.00E+03, 20.300E+03 ! XLC, XTC, S

 2.0, 2.0, 0.0 ! ML1, ML2, LTP

 1.0, 1.0, 0.0 ! MT1, MT2, TTP

 1.0, 1.0, 0.0 ! MS1, MS2, STP

420.000E+03, 175.00E+03, 0.0 ! X1T, X1C, --- ... Tsai-Wu

 8.700E+03, 30.000E+03, 0.0 ! X2T, X2C, ---

 20.000E+03, 1.1915e-09, -1.916e-09 ! S12, F12, F23

 0.0, 0.0, 0.0 ! ---, ---, ---

 0.0, 0.0, 0.0 ! ---, ---, ---

 2.230E+07, 1.220E+06, 1.220E+06 ! E1, E2, E3 ... Christensen

 0.450E+00, 0.330E+00, 0.330E+00 ! NU23, NU13, NU12

 0.700E+06, 0.700E+06, 0.700E+06 ! G23, G13, G12

 1.507E-02, 0.1027913, 0.0 ! K, ALPHA, ---

 1.88E-02, 7.8E-03, 0.0 ! Y1T, Y1C, ---

 452.55, 101910, 0.0 ! A1, A11, FE3 ... Feng

 1189.1, 1189.1, 0.0 ! A2, A4, FE6

 -37.42, 4819.74, 0.0 ! A5, A55, FE9

 0.0, 0.0, 0.0 ! FE10, FE11, FE12

 0.0, 0.0, 0.0 ! FE13, FE14, FE15

420.000E+03, 8.700E+03, 8.700E+03 ! X1T, X2T, X3T ... Hashin

175.000E+03, 30.000E+03, 30.000E+03 ! X1C, X2C, X3C

 20.000E+03, 20.000E+03, 20.000E+03 ! X23, X13, X12

 0.0, 0.0, 0.0 ! HA10, HA11, HA12

 0.0, 0.0, 0.0 ! HA13, HA14, HA15
NO. OF NO. OF

COPIES ORGANIZATION COPIES ORGANIZATION

18

1 ADMNSTR

ELEC DEFNS TECHL INFO CTR

ATTN DTIC OCP

8725 JOHN J KINGMAN RD STE 0944

FT BELVOIR VA 22060-6218

1 US ARMY RSRCH DEV AND ENGRG 

CMND

ARMAMENT RSRCH DEV & ENGRG 

CTR

ARMAMENT ENGRG & TECHNLGY 

CTR

ATTN AMSRD AAR AEF T J MATTS

BLDG 305

ABERDEEN PROVING GROUND MD 

21005-5001

1 US ARMY INFO SYS ENGRG CMND

ATTN AMSEL IE TD A RIVERA

FT HUACHUCA AZ 85613-5300

1 US GOVERNMENT PRINT OFF

DEPOSITORY RECEIVING SECTION

ATTN MAIL STOP IDAD J TATE

732 NORTH CAPITOL ST NW

WASHINGTON DC 20402

1 US ARMY RSRCH LAB

ATTN RDRL WML G J BENDER

ABERDEEN PROVING GROUND MD 

21005

2 US ARMY RSRCH LAB

ATTN RDRL WML G W DRYSDALE

ATTN RDRL WMM A E WETZEL

BLDG 4600

ABERDEEN PROVING GROUND MD 

21005

3 US ARMY RSRCH LAB

ATTN RDRL WMM A J SANDS

ATTN RDRL WMM A J TZENG

ATTN RDRL WMM A R EMERSON

ABERDEEN PROVING GROUND MD 

21005

1 US ARMY RSRCH LAB

ATTN RDRL WMM B B LOVE

BLDG 393

ABERDEEN PROVING GROUND MD 

21005

3 US ARMY RSRCH LAB

ATTN RDRL WMM B G GAZONAS

ATTN RDRL WMM B 

J STANISZEWSKI

ATTN RDRL WMM B 

M VANLANDINGHAM

BLDG 4600

ABERDEEN PROVING GROUND MD 

21005

1 US ARMY RSRCH LAB

ATTN RDRL WMM B S BOYD

ABERDEEN PROVING GROUND MD 

21005

2 US ARMY RSRCH LAB

ATTN RDRL WMM B T BOGETTI

ATTN RDRL WMM J ZABINSKI

BLDG 4600

ABERDEEN PROVING GROUND MD 

21005

2 US ARMY RSRCH LAB

ATTN RDRL WMP B C HOPPEL

ATTN RDRL WMP B D POWELL

BLDG 390

ABERDEEN PROVING GROUND MD 

21005

1 US ARMY RSRCH LAB

ATTN RDRL WML H T G BROWN

BLDG 4600

ABERDEEN PROVING GROUND MD 

21005-5066

1 US ARMY RSRCH LAB

ATTN RDRL WML G 

M A MINNICINO

BLDG 4600

ABERDEEN PROVING GROUND MD 

21005-5069

3 US ARMY RSRCH LAB

ATTN IMAL HRA 

MAIL & RECORDS MGMT

ATTN RDRL CIO LL TECHL LIB

ATTN RDRL CIO LT TECHL PUB

ADELPHI MD 20783-1197

TOTAL: 24 (1 ELEC, 23 HCS)