Professional Documents
Culture Documents
Marc/Mentat Documentation
Marc/Mentat Documentation
Marc/Mentat Documentation
MARC
(a nonlinear Finite Element Analysis package)
by
Herbert A. Koenig
Copyright1999HerbertA.Koenig.Allrightsreserved.Printedinthe
UnitedStatesofAmerica.ExceptaspermittedundertheUnitedStates
CopyrightActof1976,nopartofthispublicationmaybereproducedor
distributedinanyformorbyanymeans,orstoredinadatabaseor
retrievalsystem,withoutpriorwrittenpermissionoftheauthor.
Library of Congress
Registration Number:
2
Introduction
This tutorial, the third in a series (after PATRAN and MENTAT), differs in the fact that
it is not an original work of the author. Instead, the author has taken most of this work
The author has attempted in this document to include the parts of that primer
which he feels will enhance the readers ability to perform Finite Element Analysis using
MARC. Any aspects of the MARC analysis that is missing from this document can be
found either in the MARC USER MANUALS which are available in Room 202 of
Engineering II or from the online documentation which is included with the MARC
software. The reader is encouraged to use these aids to enhance the material which is
The material which is presented in the next sections will acquaint the user to most
of the aspects of MARC. The remainder of this introductory section will now be devoted
to teaching the user how to invoke MARC from a workstation and how to configure his
run properly.
/apps/apps_me/marc/run_marc7.2
or an appropriate alias which is created by the user. This command will result in a menu
3
Program name marck72
Job ID
Substructure file ID
Defaults file ID
View Factor ID
Number of tasks 1
Number of threads 1
job id required
The first line informs the user that he is using marc version 7.2. The user must
4
The next line, which is initially blank, is asking the user to provide the name of
the MARC data file that will be used to run the analysis. The reader notices that, near the
bottom of the screen, the program is telling him that the .dat file is missing. This is
because he does not have a blank.dat file. Instead, the user has a MARC file that is, for
example, called cantilever.dat. Therefore, when the user corrects this item he will have
to type cantilever in the portion of the menu that requests the Job ID. A note of caution
is appropriate here. The analysis always assumes that the data file has a .dat extension
(you must have this). Therefore, the user need only provide the name of the file and must
The next line, which is initially blank, is asking the user to provide the name of
the MARC User subroutine (if included in the analysis). If there is no user subroutine
that is necessary for this analysis, the item may be left blank (See section on User
subroutines at the end of this document). If, however, a user subroutine is present, it must
be written in FORTRAN and have an extension .f (e.g. hypela.f). When the user inserts
the name of the routine into the MARC menu, he should only type hypela since the
The next several lines are generally not adjusted by the user so they will be
ignored here. The last line of the menu informs the user that the analysis will be run in the
background. It is strongly suggested that the user not change this setting to foreground. In
the latter case, the computer will be locked for the duration of the analysis. Additionally,
the user will be unable to log off without breaking the execution of the program.
The final menu item invites the user to change any of the settings on the menu. At
the least, the user will have to supply a Job ID (name of the data file). Thus, the user
5
choose correct or just c. By pressing enter to accept a menu item, and by typing the
new information for other menu items, the user will arrive again at a menu item which
now is ready for execution. At this point, he may accept the menu selections and perform
The analysis is then started. Progress of the analysis may be followed (if desired)
by typing ps from the keyboard or by periodically viewing the file that is called, for
example, cantilever.log.
6
The Primer
This primer is a tutorial for the novice who is using MARC for the first time. MARC is a
powerful, modern, general-purpose nonlinear finite element program for structural and
thermal analysis. This primer covers only some typical linear and nonlinear applications
and does not describe all of the capabilities in MARC. The reader is presumed to have
had some exposure to linear finite element (FE) analysis, either through coursework or
by having used other FE software. The primer is written with the assumption that the
These steps leading up to the actual FE analysis are generally termed pre-
processing and have been discussed in depth in the two preceding tutorials comprising
PATRAN and MENTAT. After an analysis, the results evaluation phase is called post-
processing, where the user checks the adequacy of the design (and of the approximate FE
model) in terms of critical stresses, deflections, temperatures, and so forth. These features
7
The primary emphasis of this document is to explain the MARC input and output
for stress analysis problems. An example for structural analysis will be presented herein.
In addition to this tutorial, several other MARC manuals are available. These are
referential in nature, and describe the feature and applications of the MARC program in
Analysis Capabilities
available on-line.
8
I. Program Features
MARC is a general-purpose finite element program designed for both linear and
non-linear analyses of structural, thermal, and electric field problems. In addition, it can
transient problems, MARC makes the users analysis easier by offering automatic load
Geometry
Axisymmetric
Behavior
static/dynamic
steady-state/transient
Material
linear elastic
isotropic/orthotropic/anisotropic
composites
9
elastic-plastic, work hardening
finite strain
cyclic loading
viscoplasticity
time/increment
temperature
open/close contact.
10
In addition to the above capabilities, MARC has four comprehensive libraries
which are described below. The user may combine almost any number of options from
each of the four libraries, and, consequently, can solve virtually any structural mechanics
or thermal problem.
Procedure Library
buckling/collapse linear/nonlinear
creep buckling
viscoplastic
Kelvin-Voight model)
11
thermo-rheologically simple behavior
4- Fracture mechanics
linear/nonlinear
brittle/ductile
J-integral evaluation
dynamic J-integral
5- Dynamics
Lanczos method
transient response
modal superposition
direct integration:
Newmark-beta method
Houbolt method
harmonic response
spectrum response
time-stepping-linear/nonlinear
12
6- Heat transfer
conduction-linear/nonlinear
7- Hydrodynamic bearings
lubrication problems
8- Joule heating
9- Fluid/structure interaction
10- Thermo-mechanical
scheme
13
associated stress analysis with plasticity and residual stresses
14
Material Library
1- Linear elastic
2- Composites
subroutines.
maximum stress
maximum strain
Tsai-Wu
Hill
Hoffman, or
user-defined.
3- Hypolelastic
15
nonlinear elastic (reversible)
4- Elastomers
5- Elastic-plastic
temperature
6- Cyclic plasticity
7- Creep
strain
temperature dependence
16
cyclic loadings
8- Viscoelasticity
strain formulations
9- Polymers
10- Viscoplasticity
11- Soils
12- Concrete
low-tension cracking
crushing surfaces
rebars
17
Function Library
core and out-of-core solution, user subroutines, restart, output on post files, selective
print, error analysis, etc. Only loads and constraints are summarized below; refer to the
volumetric forces
kinematic constraints
elastic foundation
18
Element Library
MARC has a library of approximately 100 elements. Only the most important
subset (the recommended elements) will be discussed in this tutorial. The heart of an
FE program lies in its element library, which allows the user to model a structure for
analysis. MARC has a very comprehensive element library which lets the user model
virtually any conceivable 1-D, 2-D, or 3-D structure. This section gives some basic
definitions, summarizes MARC element types, and describes the most commonly used
Definitions
accuracy.
19
integration of linear functions in linear elements, or
hexahedron, from 27 to 8.
problem dependent.
and Hermitian.
20
analysis (nodal temperature). In special
21
Element Types
membrane thin sheet with in-plane stiffness only (no bending resistance)
plane stress thin plate with in-plane stresses only. All normal and shear stresses
(In MARC, all plane stress elements lie in the global X-Y plane.)
plane strain structure with in-plane strains only, with all normal and shear
MARC, all plane strain elements lie in the global X-Y plane.)
generalized same as plane strain except that the normal Z-strain can be a
plane strain
prescribed constant or function of x and y
[X-Y] plane.
3-D solid solid structure with only translational degrees of freedom for each
22
special MARC special elements include: a gap/friction element, a pipe-
Heat transfer elements in MARC consist of 3-D links, planar and axisymmetric
elements, 3-D solid elements, and shell elements. For each heat transfer element, there
exists at least one corresponding stress element. Temperature is the only degree of
freedom for each node in these elements (except in the case of Joule heating analysis
23
Element Usage Hints
Before summarizing the most commonly used elements in MARC, the author will
provide hints on element usage which should be helpful to most MARC users, especially
the novice:
element connectivity
2- The user may select different element types to represent various parts of a model.
If they are incompatible (meaning conflicting degrees of freedom), the user has to
3- The user may select most MARC elements for both linear and nonlinear analyses;
4- In linear analysis, the user should consider using higher-order elements, especially
are preferred.
node quadrilaterals are preferred over 3-node triangles in 2-D problems. Similarly,
problems.
24
6- Stresses and strains in all continuum elements are defined in the global coordinate
system. For truss, beam, plate, and shell elements, stresses and strains are output
in the local system of the element and the output must be interpreted accordingly.
The user should pay special attention to the use of these elements if the material
7- The coordinates and degrees of freedom of all continuum elements are defined in
the global coordinate system. Truss, beam, plate, and shell elements may be
defined in a local coordinate system and the user must interpret the output
accordingly.
8- Distributed loads may be applied along element edges, over element surfaces, or
over the volume of the element. MARC will automatically evaluate the consistent
the nodes.
9- For the five bilinear elements (Types 7, 10, 11, 19, and 20), an optional
conventional elements give results which are too stiff for nearly incompressible
behavior.
10- Five Fourier shell and solid elements (Types 62, 63, 73, 74, and 90) exist for the
geometry and the material properties may not change in the circumferential
25
direction. The user may, therefore, decouple a 3-D problem into a series of 2-D
problems. These elements can only be used for linear elastic analysis, because the
26
In the abbreviated Element Summary Table of Figure 1, the most
commonly used elements are circled. The following element types are intentionally
excluded from the table because they are unlikely to be used by the novice: all reduced
incompressible elements which are of generalized plane strain and axisymmetric Fourier
27
Recommended Elements
The following 18 elements are recommended elements, which should serve the
novices (as well as most users) purposes for the bulk of structural and thermal analysis
problems:
better overall performance. Likewise, hexahedral solid elements are preferred over
tetrahedral elements.
Gauss (integration) points. Stresses and strains may be printed at those integration points,
where the values are most accurate. To reduce computational costs for linear analysis, the
user can optionally specify that calculations be performed only at the centroid. This is not
recommended for nonlinear analysis. Nodal values of stresses and strains, produced by
extrapolation of integration point values, can be printed out in both linear and nonlinear
analyses.
2-D 4-node Quads: (Elements 3, 10, 11, 39, 40, 80, 82)
These are isoparametric quadrilateral 2-D continuum elements with straight edges
28
Element Type
3 plane stress
10 axisymmetric solid
11 plane strain
39 thermal-planar
40 thermal-axisymmetric
80 incompressible-plane strain
81 incompressible-axisymmetric
All these elements have four nodes with two DOFs per node, except for elements
80 and 82 (two of the so-called Hermann elements) which have an extra node
These are 3-D isoparametric continuum elements with straight edges and trilinear
Element Type
29
These three elements are basically 8-noded elements with three DOFs per node,
except that element 84 has an extra node with a single DOF (pressure). The node
numbering is counter-clockwise as shown in figure 3, first for the bottom face and
then for the top face. The elements have an eight-point Gaussian integration
These are straight truss or beam elements with constant cross sections.
Element Type
9 truss
These four elements (shown in Figure 4) are two-noded straight elements with
linear interpolation (constant axial force) along the axis. In addition, element 52
features cubic interpolation (constant beam curvature) normal to the axis and also
for which material nonlinearity is allowed in the cross section. Element 9 has
three DOFs at each node, which are the three translations. It can be used for large
strain, large displacement analysis. Element 52 has six DOFs at each node: three
translations and three rotations. It can be used only for elastic materials. Large
30
curvature changes are neglected in the large displacement formulation. Element
This 3-noded curved element (shown in figure 5) has better performance than the
2-noded curved element 1. In addition, it includes transverse shear effects and hence is
recommended for axisymmetric thick shell analysis. It is suitable for large displacement
These thin/thick shell elements will be appropriate for the bulk of plate and shell
Element Type
and rotations. The membrane strains are obtained from the displacement field; the
curvatures from the rotation field. The transverse shear strains are calculated at ten
special points and interpolated to the integration points. In this way, this element behaves
correctly in the limiting case of thin shells. It has eight nodes (4 corners, 4 midsides) with
31
6 DOFs per node (3 displacements and 3 rotations). Bilinear thickness variation is
allowed in the plane of the element. There are four Gaussian integration points.
and coordinates. Global rotations are interpolated quadratically from the rotation vectors
at the centroid and at the midside nodes. The element has 3 DOFs (global Cartesian
displacements) at the four corner nodes, and one rotation DOF (of the edge about itself)
at each of the midside nodes. It has four Gaussian integration points. The element is
efficient for the analysis of curved shells and plate structures, and is fairly insensitive to
distortion. Because of the relatively few degrees of freedom per element, a large number
thickness is allowed. Each node has six DOFs : 3 global displacements and 3 global
rotations. Bilinear interpolation is used for the coordinates, displacements, and rotations.
The membrane strains are obtained from the displacement field; the curvatures from the
rotation field. The transverse shear strains are calculated at the middle of the edges and
interpolated to the integration points. The element has four Gaussian integration points. It
is very efficient for analyzing curved shells, plate structures, and nonlinear problems, and
32
INPUT
input formats (fixed versus free field input of numerical data, lists) and input of loads and
constraints. For details, the user is referred to MARC User Information Manual Volume
C.
Input Units
No units are actually entered in the input file by the user. MARC simply assumes
Input Sections
MARC is a batch program. This means that the user defines the input, and this
input is not changed during the program execution. The input may be modified upon
MARC input consists of three major sections: (well use the term card
throughout this tutorial to refer to an individual line in the users input file.)
33
At this point, the model is completely defined. MARC proceeds to solve
Increment 0. Linear static analysis ends here. Nonlinear and/or transient analyses are
performed by increments (steps). The information required to define the load history
CONTINUE card.)
present. The user may stack as many load incrementation cards as is desired; they are
analyzed by MARC in sequence until the last CONTINUE card is encountered. At the
end of this section, the user will see the input of a simple linear static example which will
Input Format
A MARC input file consists of many blocks of lines of input, each headed by a
control function for the analysis (generation of printout, writing of a post file,
alphabetic keyword describes the contents of the block; placed on a single line.
34
integer; placed on one or more lines.
The numerical data may be in free or fixed format. Lines in free and in fixed
format may both exist in the input deck, although a particular card may use only one
format.
free field is easier, safer, and recommended for hand generated input
blanks may appear within the data item itself. Each card
Example:
5.4E6,0.3,11.,0.,18.
35
convention is used. Integers must be right-justified in the
sequence n1,n2,n3 the list includes n numbers placed on one or more cards
(Default p=1)
set name STEEL the list includes the numbers in the set named STEEL
2 TO 38 BY 3 AND STEEL
36
PARAMETER Cards
PARAMETER cards control the scope and type of the analysis. Typically, the
first card, TITLE, is the name of the problem. The SIZING card defines the problem
size in words of the core buffer used by MARC. ELEMENTS indicates what MARC
element types are used in the analysis. Other optional PARAMETER cards include:
ALL POINTS (asking for stress output at all the integration points of the element);
BEAM SECT (defining the cross-sectional properties of a beam, i.e. prismatic or thin-
walled); CENTROID (asking for stress output only at the centroids of the elements);
ELASTIC (flags linear elastic stress analysis); SHELL SECT (defines the number of
integration points across the shell thickness ranging from 3 to 99); STOP (telling MARC
not to do the analysis a check run of input only); and THERMAL (flags initial
In this set of cards, only TITLE, SIZING, and END cards are mandatory. The
ELEMENTS card may, however, be used instead of (or in conjunction with) the
The PARAMETER cards do not have to appear in any order. The only
mesh
materials
applied loads
37
constraints
controls
Here, this author will point out the more important ones which the user will come
across repeatedly. In a nonlinear analysis, the user may alter most of this data during the
later stages of the analysis. For a linear elastic analysis, the model is defined once and
for all with the MODEL DEFINITION cards. The MODEL DEFINITION cards also
control the output. The selective output features will be described later under the
OUTPUT section.
Mesh
The shape and geometry of the FE mesh are specified using the following
ISOTROPIC
ORTHOTROPIC
GAP DATA
MOONEY
WORK HARD
TEMPERATURE EFFECTS
RATE EFFECTS
38
CREEP
connected to the node, unless a triad of local axes is defined for a set of nodes using:
Mechanical Loads
non-uniform.
Thermal Loads
temperature field in a stress analysis. This temperature does not produce any thermal
strains. The temperatures can be then modified using the CHANGE STATE option. The
change in temperature causes thermal strains, and possible changes in the material
Kinematic Constraints
39
FIXED DISP prescribed values for specified DOFs on a set of nodes
The input displacements refer to the directions associated with the element,
Support Springs
Elastic springs may be defined between any two DOFs at any two nodes:
SPRINGS assigned spring constant between two DOFs for two nodes.
CONTROL Card
which lets the user select input parameters governing convergence and accuracy in a
nonlinear analysis. Items in CONTROL are mostly integers (except for tolerances which
are in floating point). The first two items are the most important. Note that the number of
cycles includes the first cycle and the number of increments likewise includes the first
increment.
There are other items on the CONTROL card, but they are usually not needed by
the novice. These items flag such options as convergence tests, iteration schemes, non-
40
The first increment in the analysis is considered increment zero and should be
linear elastic. Thus, four increments in the CONTROL card imply 0, 1, 2, and 3.
Similarly, three cycles imply the first cycle and two iterations.
OPTIMIZE Option
Finally, the user needs to be aware of the OPTIMIZE option in the MODEL
DEFINITION section. This option lets the user choose a bandwidth optimization
codes and suffices for most cases. Minimizing the bandwidth in a problem reduces
computer costs in medium to large-sized problems. Therefore, the user should make a
habit to invoke the OPTIMIZE option before performing an analysis. For a description
41
OUTPUT
Printed Output
A standard printed output from a MARC run contains three different parts: an
input echo and interpretation; analysis messages; and output of analysis results.
This portion repeats the input to allow the user to verify its correctness. It
includes various items such as: position of the card columns; a card count for the blocks;
set up of parameters for the run; and interpretation of the input (e.g. connectivity,
Analysis Messages
of interest include:
algebraic sum of the distributed and point loads over the whole model
(hence the accuracy) in the solution of the linear equations. The ratio and
42
between 10-8 and 10-4 possible numerical problems
During the analysis, MARC will print out the elapsed CPU time at the
following points:
start of increment
start of assembly
end of increment
At the end of the analysis, MARC will print out (for each increment): element
data (stresses, strains, etc.); nodal data (displacements, equivalent nodal forces, and
a) Element Output
At every Gaussian integration point, stresses (or forces) and strains are printed
out, depending on the element type. (If the user includes a CENTROID
43
integration points through the thickness.
and torque.
b) Nodal Output
For every node, the vectors of these nodal quantities are printed out, depending on
the analysis:
conditions.
loads.
c) Selective Output
The user may selectively print out data for elements or nodes using these
44
PRINT NODE selects nodes and nodal quantities to be printed (e.g.
reactions/residuals).
Post File
The user may use the POST command to flag the writing of a MARC post file
(post tape), which can be processed later by MENTAT or PATRAN. The post file can be
either binary or formatted. A binary file is machine dependent, but is usually quite a bit
smaller than a formatted file. A formatted file is portable across different types of
computers, but is usually larger than a binary file. It can also be edited.
element variables (strains, stresses, etc.) as selected in the POST option. The user
may select which stress components to write out for which layer; the
A restart tape can be made using the RESTART Model Definition option (volume
45
SAMPLE PROBLEM AND OUTPUT
A very simple linear static problem is analyzed. The entire MARC output
follows, in figures 8-14, for the purpose of illustrating typical input echo and
The FE model is a one-element, 2-node rod held at the left end and loaded by an
axial tensile load P of 10,000 lbs. at the right end. The length L is 10 in; the cross-section
area A is 1 in2. Youngs modulus E is 30E6 (30 x 106 or 30,000,000) psi. This
The theoretical axial displacement at the right end is easily calculated to be:
The MARC calculated displacement agrees exactly with the theoretical value.
The axial stress is, of course, merely P/A, or 10,000 psi which is the same value
46
A summary of important PARAMETER and MODEL DEFINITION key
words, along with their locations in the MARC manuals is given in figures 15-18.
47
User Subroutines
In MARC, the user subroutine feature constitutes one of the real strengths of the
program, allowing the user to substitute his own subroutines for several existing in the
program. This feature provides the user with a wide latitude for solving nonstandard
problems. These routines are easily inserted into the program. When such a routine is
supplied, the user is simply replacing the one which exists in the program file using an
below. In addition, discussions of special routines are found in the MARC manuals or in
The MARC code, and hence all of the user subroutines must be written in
FORTRAN using double precision. The use of the statement IMPLICIT REAL*8 (A-
available to the user so that he may obtain the values of several internal values, if desired.
A description of these blocks is also provided below. Finally, a utility routine, called
48
List of User Subroutines
Transfer
Harmonic Analysis
49
MOTION Definition of Rigid Surface Motion for 2-D Contact
at Contact Node
Analysis
50
ANKOND Input of Anisotropic Thermal Conductivity Matrix
Stiffness
51
UFINITE Finite Deformation Isotropic Material Models
Models
C. Viscoelasticity Subroutines
52
TRSFAC Define a Shift Function for Thermo-Rheologically Simple
53
UPOSTV User-selected Postprocessing of Nodal Variables
54
The user subroutines that are listed above are for informational purposes only. For
more detailed descriptions of the subroutines and their usage, the user is directed to the
55
List of ELMVAR Utility Routine
ELMVAR. This routine can be called from any user subroutine that is within an element
loop. This routine is used in conjunction with the MARC post element post codes to
where:
The values of ICODE are given in Volume C: Program Input in the model
stress recovery stage, the values of VAR are the current ones for this iteration. They are
56
ASSOC HOOKLW SINCER UEPS UPSTRECH VSWELL
57
MATDAT Common Block
CRPLAW, VSWELL, etc. The common block elmcom (which is described below)
contains the material identification number MATS for each material type.
In addition, the reference values of the material properties as given in the model
definition section can be obtained in common block MATDAT. All of the variables
within this common block are delineated in the MARC manuals or in the on-line
Two common blocks might be particular useful for advanced usage of MARC.
Common block concom contains most of the program controls in MARC. The variables
and their meaning are delineated in the MARC manuals or in the on-line documentation
element can be found in common block elmcom. These variables are also placed in an
array IPROPS, that is used in those versions that support parallelization on an element
level. The variables in common block elmcom and their meaning are delineated in the
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76