Using - University of Connecticut School of Engineeringkoenig/marc/MARC.doc · Web viewThis primer...
Transcript of Using - University of Connecticut School of Engineeringkoenig/marc/MARC.doc · Web viewThis primer...
Copyright ©1999 Herbert A. Koenig. All rights reserved. Printed in the United States of America. Except as permitted under the United States Copyright Act of 1976, no part of this publication may be reproduced or distributed in any form or by any means, or stored in a data base or retrieval system, without prior written permission of the author.
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
from an existing document entitled, “MARC PRIMER”. Thus, it is with
acknowledgement to the MARC Corporation that this tutorial is offered.
The author has attempted in this document to include the parts of that primer
which he feels will enhance the reader’s 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
presented in this tutorial.
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.
At the University of Connecticut, MARC is initiated by issuing the command
/apps/apps_me/marc/run_marc7.2
or an appropriate alias which is created by the user. This command will result in a menu
which looks like
3
Program name marck72
Job ID
User subroutine name
Restart file job ID
Substructure file ID
Post file job ID
Defaults file ID
View Factor ID
Save generated module no
Number of tasks 1
Number of threads 1
Message passing type 0
Run job in queue background
input file .dat not accessible
job id required
Please correct or quit (correct, quit, <correct>):
There will now follow an explanation of most of these items with
recommendations for their usage.
The first line informs the user that he is using marc version 7.2. The user must
not change this parameter at any time.
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
leave off the extension.
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
analysis already assumes that it is a FORTRAN subroutine.
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.
5
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
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, or he may correct any menu item.
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
reader has had little or no experience in nonlinear FE analysis.
In a typical FE analysis, the reader will need to define the:
mesh (which is an approximate model of the actual structure)
material properties (Young’s modulus, Poisson’s ratio, etc.)
applied loads (static, dynamic, temperature, inertial, etc.)
boundary conditions (geometric and kinematic constraints)
type of analysis (linear static, nonlinear, buckling, thermal, etc.)
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
have also been discussed in the tutorials on PATRAN and MENTAT.
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
greater detail. These other manuals are:
MARC User Manuals
Vol. A User Information Manual
(technical basis of program and capabilities)
Vol. B MARC Element Library
Vol. C Program Input
Vol. D User Subroutines and Special Routines
MARC Demonstration Manual (Volume E)
Vol. E1 Linear Problems, Plasticity and Creep Problems
Vol. E2 Large Displacement, Heat Transfer, Dynamics, Special and Recent
Analysis Capabilities
MARC Background Papers (Volume F)
Theoretical papers on MARC procedures
In addition to the above manuals, HELP regarding the MARC program is
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
handle coupled thermal-mechanical and electrical-thermal analyses. In nonlinear and
transient problems, MARC makes the user’s analysis easier by offering automatic load
incrementation and time-stepping capabilities.
Many types of analyses can be obtained by any combination of these basic
MARC capabilities. The following is a cursory listing of MARC capabilities. Please
refer to the appropriate manuals for more detailed descriptions.
Geometry
1-D: truss, beams (open or closed section)
2-D: plane stress, plane strain, generalized plane strain
Axisymmetric
2-D: solid or shell (with nonaxisymmetric loading for linear problems)
3-D: solids, plates, shells, membranes
Behavior
linear/nonlinear for geometry or material
static/dynamic
steady-state/transient
Material
linear elastic
isotropic/orthotropic/anisotropic
composites
9
elastic-plastic, work hardening
isotropic, kinematic, and combined hardening
finite strain
cyclic loading
viscoplasticity
rigid plastic flow
nonlinear elastic, elastomers, rubber
viscoelastic (Maxwell, Kelvin, combined)
Boundary Conditions vary with
time/increment
temperature
displacements, velocities, accelerations
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
This includes all the analysis types available in MARC.
1- Linear elastic standard linear finite element analysis
superposition of multiple load cases
Fourier (nonaxisymmetric) analysis of linear axisymmetric bodies
2- Substructuring multilevel, quasi-static
3- Nonlinear automatic load incrementation
elastoplastic – scaling to first yield
large deformation/finite strain –
total and updated Lagrangian approaches
buckling/collapse – linear/nonlinear
creep buckling
postbuckling – with adaptive load step
rigid plastic flow – Eulerian, metal forming
creep – with adaptive time step
viscoplastic –
state equations (Kelvin model)
hereditary integrals (generalized Maxwell or generalized
Kelvin-Voight model)
11
thermo-rheologically simple behavior
viscoplastic-modified creep option to include plasticity effects
contact/friction – automatic convergence
4- Fracture mechanics
linear/nonlinear
brittle/ductile
J-integral evaluation
dynamic J-integral
brittle cracking concrete model
5- Dynamics
modal analysis/eigenvalue extraction –
inverse power sweep method
Lanczos method
transient response –
modal superposition
direct integration:
Newmark-beta method
Houbolt method
Central difference method
harmonic response
spectrum response
time-stepping-linear/nonlinear
adaptive time-stepping algorithm
12
6- Heat transfer
steady-state and transient analyses –
conduction-linear/nonlinear
convection/radiation boundary conditions
internal heat generation
latent heat/phase changes
adaptive time steps
7- Hydrodynamic bearings
lubrication problems
pressure distribution and mass flow
8- Joule heating
coupled electric flow with heat transfer
9- Fluid/structure interaction
incompressible and inviscid fluid
10- Thermo-mechanical
quasi-coupled thermally driven stress analysis
fully coupled thermo-mechanical analysis solved by staggered
scheme
heat generated by plastic deformation and friction effects
large displacement effects on thermal boundary conditions
automated contact/friction capability
11- Change of state
transient thermal analysis with change of phase and volume
13
Material Library
This includes more than 40 different material models:
1- Linear elastic
isotropic, orthotropic, and anisotropic
(properties may be temperature dependent)
2- Composites
laminated plates and shells –
isotropic, orthotropic, or anisotropic layers
elastic or elastic-plastic behavior
arbitrary material orientation definition –
with respect to any element edge.
with respect to global Cartesian axes.
with respect to a user-defined axis or through user
subroutines.
relative ply angle for each layer
multiple failure criteria –
maximum stress
maximum strain
Tsai-Wu
Hill
Hoffman, or
user-defined.
3- Hypolelastic
15
nonlinear elastic (reversible)
4- Elastomers
nonlinear elastic, incompressible
Mooney-Rivlin model (allows large strains)
5- Elastic-plastic
Prandtl-Reuss flow rule
user-defined non-associative flow law
von Mises yield criterion
Drucker-Prager yield criterion
isotropic, kinematic or combined hardening
strain hardening (or softening) as a function of strain rate and
temperature
temperature dependence of yield stress and work hardening slopes
isotropic, orthotropic, and anisotropic
Hill’s anisotropic plasticity
6- Cyclic plasticity
isotropic, kinematic, combined hardening
7- Creep
deviatoric or volumetric (swelling) strains
piecewise linear or exponential forms for rate of equivalent creep
strain
temperature dependence
Oak Ridge National Lab. Model – combines creep, plasticity and
16
cyclic loadings
8- Viscoelasticity
Maxwell and Kelvin models
combined Kelvin-Voight and Maxwell models
hereditary integrals of strain histories with both small and large
strain formulations
thermo-rheologically simple behavior
isotropic or anisotropic material
9- Polymers
thermo-rheologically simple behavior
10- Viscoplasticity
combining plasticity and the Maxwell model of plasticity
11- Soils
yield surfaces as a function of hydrostatic stress
linear or parabolic Mohr-Coulomb law
12- Concrete
low-tension cracking
crushing surfaces
rebars
17
Function Library
This includes kinematic constraints, loads, bandwidth optimization, rezoning, in-
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
MARC manuals for descriptions of the others.
1- Loads and constraints
mechanical loads – concentrated, distributed, centrifugal,
volumetric forces
thermal loads – initial temperatures read from a post file produced
from a thermal analysis, or from direct data input
initial stresses and initial plastic strains
kinematic constraints –
transformation of degrees of freedom
elastic foundation
tying (multipoint constraints or MPC’s)
boundary conditions in user-defined axes
springs and gaps – with and without friction
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
elements of interest to the beginner.
Definitions
isoparametric a single function is used to define both the element
geometry and the deformation
numerical integration a method used for evaluating integrals over an
element. Element quantities, such as stresses,
strains, and temperatures are calculated at each
integration point of the element.
Gauss points the optimal integration point locations for numerical
accuracy.
full integration requires, for every element, 2d integration points
(quadrature) for linear interpolation, and 3d points for quadratic
interpolation. The scalar “d” is the number of
geometric dimensions of an element (i.e. d=2 for a
quad, d=3 for a hexahedron). This results in exact
19
integration of linear functions in linear elements, or
quadratic functions in quadratic elements.
reduced integration means using a lower number of integration than
necessary to integrate exactly. For example, for an
8-noded quadrilateral, the number of integration
points is reduced from 9 to 4, and for a 20-node
hexahedron, from 27 to 8.
Caution: The use of reduced integration near singularities and
in regions of high strain gradients can lead to
oscillations in the displacement and produce
inaccurate results. This problem is highly
problem dependent.
interpolation (shape function) an assumed function relating the
displacement at points inside an element to
the displacements at the nodes of the
element. In MARC, four types of shape
functions are used: linear, quadratic, cubic,
and Hermitian.
Degrees of freedom (DOF) the number of unknowns at a node. In the
general case, there are six DOF’s at a node
in structural analysis (three translations and
three rotations), and one DOF in thermal
20
analysis (nodal temperature). In special
cases, the number of DOFs is: 2
(translations) for plane stress, plane strain,
and axisymmetric elements; 3 (translations)
for 3-D solid elements; 3 (translations) for a
3-D truss element; 6 (three translations and
three rotations) for a 3-D beam element.
incompressible elements MARC has a special class of elements
which can be used to analyze incompressible
(zero volume change) and nearly
incompressible materials such as elastomers
and rubber. They are based on a modified
Hermann variational principle, and are
sometimes referred to as “Hermann
elements”. Unlike regular finite element
formulations, they can handle the case of
Poisson’s ratio equal to one-half. They are
used for elastic analysis, but are capable of
analyzing large displacement effects as well
as thermal and creep strains. The
incompressible constraint is imposed by
using Lagrange multipliers.
21
Element Types
MARC has an extensive element library numbering approximately 100 elements. They are basically of two categories: structural and thermal. They cover a wide variety of geometric domains and problems:
truss 3-D rod with axial stiffness only (no bending)
membrane thin sheet with in-plane stiffness only (no bending resistance)
beam 3-D bar with axial, bending and torsional stiffnesses
plate flat thin structure carrying in-plane and out-of-plane loads
shell curved thin or thick structure with membrane/bending capabilities
plane stress thin plate with in-plane stresses only. All normal and shear stresses
associated with the out-of-plane direction are assumed to be zero.
(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
strains associated with the out-of-plane direction equal to zero. (In
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 aplane strain
prescribed constant or function of x and y
axisymmetric 2-D idealized structure with radial and circumferential degrees of
freedom only. In MARC, all axisymmetric elements lie in the Z-R
[X-Y] plane.
3-D solid solid structure with only translational degrees of freedom for each
node (linear or quadratic interpolation functions)
22
special MARC special elements include: a gap/friction element, a pipe-
bend element, a shear panel element, rebar elements, and several
“semi-infinite” elements (which are useful for modeling a domain
unbounded in one direction).
Heat Transfer Elements
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 –
which is a coupled thermal-electrical 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:
1- Element input data generally include:
element connectivity
thickness for 2-D beams, plates, and shell elements
cross section for 3-D beam elements
coordinates of nodal points
face identifications for distributed loadings
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
provide appropriate tying constraints.
3- The user may select most MARC elements for both linear and nonlinear analyses;
except as noted in Vol. A.
4- In linear analysis, the user should consider using higher-order elements, especially
in problems involving bending action. In nonlinear analysis, lower-order elements
are preferred.
5- When using lower-order elements (whether the analysis is linear or nonlinear), 4-
node quadrilaterals are preferred over 3-node triangles in 2-D problems.
Similarly, 8-node bricks perform significantly better than 4-node tetrahedra in 3-
D 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
properties have preferred orientations.
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
nodal forces using numerical integration. Concentrated forces may be applied at
the nodes.
9- For the five bilinear elements (Types 7, 10, 11, 19, and 20), an optional
integration scheme may be used which imposes a constant dilatational strain
constraint on the element. This option is often useful in approximately
incompressible, inelastic analysis, such as large strain plasticity, because
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
analysis of linear axisymmetric structures with nonaxisymmetric loads. The
circumferential load and displacement is represented by a Fourier series, but 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
principle of superposition applies to only this type of analysis.
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
integration elements; generalized plane strain elements; axisymmetric shell/solid Fourier
elements; axisymmetric solid elements with torsional and bending capabilities;
incompressible elements which are of generalized plane strain and axisymmetric Fourier
types; rebar elements; semi-infinite elements; and pipe bend elements.
27
Recommended Elements
The following 18 elements are recommended elements, which should serve the
novice’s (as well as most users’) purposes for the bulk of structural and thermal analysis
problems:
2-D 4-node quadrilaterals Elements 3, 10, 11, 39, 40, 80, 82
3-D 8-node hexahedra: Elements 7, 43, 84
2-node truss and beams: Elements 9, 25, 52, 98
3-node axisymmetric, Element 89curved thick shell:
thin/thick shells: Elements 22, 72, 75
These five classes of structural/thermal elements will be briefly described below.
Notice the emphasis on quadrilateral elements in preference to triangles because of
better overall performance. Likewise, hexahedral solid elements are preferred over
tetrahedral elements.
In internal MARC calculations, stress-strain relationships are computed at the
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
and bilinear interpolation. Figure 2 shows this type of element.
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 DOF’s per node, except for elements
80 and 82 (two of the so-called “Hermann elements”) which have an extra node
with a single degree of freedom (pressure). The node numbering is
counterclockwise as shown in Figure 2. These elements use a four-point Gaussian
integration scheme. Elements 10 and 11 have an optional constant dilatation
integration scheme, which is useful in plasticity problems.
8-node Hexahedra: (Elements 7, 43, 84)
These are 3-D isoparametric continuum elements with straight edges and trilinear
interpolation. These are shown in Figure 3.
Element Type
7 solid cube for stress analysis
43 solid cube for thermal analysis
84 solid cube for incompressible problems
29
These three elements are basically 8-noded elements with three DOF’s 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
scheme. (Element 7 also has an optional constant dilatation integration scheme.)
These solid elements are arbitrarily distorted hexahedra.
2-node Truss and Beams: (Elements 9, 25, 52, 98)
These are straight truss or beam elements with constant cross sections.
Element Type
9 truss
25 3-D closed section thin-walled beam with twist
52 3-D solid-section elastic beam
98 3-D elastic beam with transverse shear
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
has linear interpolation for twist. Element 52 is a thin-walled closed-section beam
for which material nonlinearity is allowed in the cross section. Element 9 has
three DOF’s at each node, which are the three translations. It can be used for large
strain, large displacement analysis. Element 52 has six DOF’s 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
98 is a straight elastic beam including transverse shear effects.
Axisymmetric, Curved Thick Shell: (Element 89)
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
analysis with small strains.
Thin/Thick Shells: (Elements 22, 72, 75)
These thin/thick shell elements will be appropriate for the bulk of plate and shell
analyses. They are shown in figure 6.
Element Type
22 8-noded curved quadrilateral thick-shell element
72 8-noded bilinear constrained thin-shell element
75 4-noded bilinear thick shell
Element 22 is a quadratic thick-shell element with global displacements and
rotations as DOF’s. Second-order interpolation is used for 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 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 DOF’s per node (3 displacements and 3 rotations). Bilinear thickness variation is
allowed in the plane of the element. There are four Gaussian integration points.
Element 72 is an 8-noded thin shell element. It has straight edges. A bilinear
variation in thickness is allowed. Bilinear interpolation is used for global displacements
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
of elements may be required.
Element 75 is a 4-noded bilinear thick shell element. A bilinear variation in
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
is not very sensitive to distortion.
32
INPUT
This section highlights MARC input concepts. Concepts such as PARAMETER,
MODEL DEFINITION, and LOAD INCREMENTATION are briefly described, as
are 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
that all input is being provided in a consistent set of units.
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
restart for nonlinear analysis.
MARC input consists of three major sections: (we’ll use the term “card”
throughout this tutorial to refer to an individual line in the user’s input file.)
PARAMETER define the title of the analysis, the storage
allocation, analysis type, element type(s) etc. (This
section terminates with an END card.)
MODEL DEFINITION define coordinates, connectivity, materials,
boundary conditions, initial loads, initial stresses,
nonlinear analysis controls, output options, etc.
(This section ends with an END OPTION card.)
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
requires the additional section:
LOAD INCREMENTATION: define the increments in terms of load increments or HISTORY DEFINITION
and/or boundary condition changes occurring
during the increment. (This section ends with a
CONTINUE card.)
At this stage, one or more increments are analyzed.
The first two sections (PARAMETER, MODEL DEFINITION) are always
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
show only the first two sections of input data.
Input Format
A MARC input file consists of many blocks of lines of input, each headed by a
keyword. A keyword describes some “property” of the FE model of the structure
(coordinates, materials, boundary conditions, etc.). A keyword can also describe a
“control” function for the analysis (generation of printout, writing of a post file,
numerical tolerances, etc.).
A block may contain three different types of input:
alphabetic keyword describes the contents of the block; placed on a single line.
numerical data quantify the “properties” of the model; floating point or
34
integer; placed on one or more lines.
lists denote the nodes, elements, and DOFs to which the
“properties” apply; free format.
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
(MENTAT casts input data in fixed field format. This type
of input is flagged by at least one comma existing in the
input line. The last item of line has to be a comma only if
the single entry on a card is I5 format. Data items on a card
are separated by commas, which may be preceded or
followed by an arbitrary number of blanks. No imbedded
blanks may appear within the data item itself. Each card
must contain the same number of data items that it would
have using the fixed format. Floating point numbers may be
given with or without an exponent. The mantissa must
contain a decimal point. If an exponent is given, it must be
preceded by the letter E or D and must immediately follow
the mantissa (no imbedded blanks).
Example:
5.4E6,0.3,11.,0.,18.
fixed field described in detail in MARC Vol. C. Standard FORTRAN
35
convention is used. Integers must be right-justified in the
field. Floating point numbers may be given with or without
exponent. The mantissa must contain a decimal point. If an
exponent is given, it must be preceded by the letter E or D,
and it must be right-justified.
A list is a convenient way to identify a set of elements, nodes, DOFs, integration
points, shell layers, etc. Lists come in three forms:
sequence n1,n2,n3 the list includes n numbers placed on one or more cards
separated by blanks or commas. If a sequence continues
onto another card, a C must be the last item on the card.
range m TO n BY p the list includes all numbers from m to n with interval p
(Default p=1)
set name STEEL the list includes the numbers in the set named STEEL
previously specified by the DEFINE command of the
MODEL DEFINITION cards.
Furthermore, lists can be operated upon by the logical operations AND,
EXCEPT, and INTERSECT. For example:
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
temperatures being input for stress analysis).
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
SIZING card. All other PARAMETER cards are optional.
The PARAMETER cards do not have to appear in any order. The only
requirement is that they must terminate with an END card.
MODEL DEFINITION Cards
These cards describe the complete FE model for analysis:
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
MODEL DEFINITION cards:
COORDINATES of the nodes in the mesh
CONNECTIVITY of the elements connecting the nodes
GEOMETRY geometric properties of beam and shell elements (e.g. beam
cross section, shell thickness, etc.)
PROPERTY material properties, e.g.:
ISOTROPIC
ORTHOTROPIC
GAP DATA
MOONEY
WORK HARD
TEMPERATURE EFFECTS
RATE EFFECTS
38
CREEP
The DOFs (loads, displacements) at a node depend on the element type
connected to the node, unless a triad of local axes is defined for a set of nodes using:
TRANSFORMATIONS establishes the directions of the local nodal axes with
respect to the global axes.
Mechanical Loads
Mechanical loads are of two types: concentrated and distributed.
POINT LOAD concentrated load vector acting on a node
DIST LOADS volumetric (body forces such as gravity) or pressure loads
(acting on surfaces or edges). The type is specified by
defining the variable IBODY. The loads can be uniform or
non-uniform.
Thermal Loads
The INITIAL STATE option can be used to define a nonhomogeneous initial
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
properties, if THERMAL EFFECTS are included.
Kinematic Constraints
The user can prescribe values to individual DOFs using:
39
FIXED DISP prescribed values for specified DOFs on a set of nodes
The input displacements refer to the directions associated with the element,
generally global Cartesian, unless a TRANSFORMATIONS card is provided to refer
them to user-defined local axes. These prescribed displacements can be subsequently
modified using the DISP CHANGE load incrementation option.
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
Another important MODEL DEFINITION option is the 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.
Item Meaning Default
step maximum number of increments in analysis 4
cycl maximum number of iterations per increment 3
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-
positive definiteness checks, etc. Please see Volume C p. C3.3-4.
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
algorithm. The default algorithm is Cuthill-McKee, which is widely used in many FE
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
of other available bandwidth optimization algorithm, see Volume C, p. C3.3-11.
41
OUTPUT
This section summarizes MARC output and post-processing options. MARC
output can be obtained in four forms:
printed output (standard)
selective printed output
post file (also called post tape) for MENTAT/PATRAN post-processing
restart file (for continuation of analysis)
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.
Input Echo and Interpretation
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,
coordinates, properties, geometry, boundary conditions, loads, etc.).
Analysis Messages
During the analysis, MARC produces several diagnostic messages. Those
of interest include:
algebraic sum of the distributed and point loads over the whole model
singularity ratio of the matrix. This is a measure of the conditioning number
(hence the accuracy) in the solution of the linear equations. The ratio and
its meaning are:
between 10-4 and 1 acceptable
42
between 10-8 and 10-4 possible numerical problems
on order of machine accuracy singular equations
During the analysis, MARC will print out the elapsed CPU time at the
following points:
start of increment
start of assembly
start of matrix solution
end of matrix solution
end of increment
Output of Analysis Results
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
reaction forces at fixed boundary conditions).
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
PARAMETER card, only the centroidal results will be reported.)
continuum elements physical components (in global axes); principal
values; mean normal values (hydrostatic); Tresca
and Mises equivalent values.
shell elements generalized total stress and strain resultants (stretch
and curvature) at midplane; total physical stresses at
43
integration points through the thickness.
beam elements resultant forces at Gauss points; axial force, bending
moment (referred to local axes of beam element),
and torque.
b) Nodal Output
For every node, the vectors of these nodal quantities are printed out, depending on
the analysis:
static incremental and total displacements; equivalent
nodal loads; reaction forces (at boundary nodes);
residual loads, at nodes without boundary
conditions.
dynamic eigenvectors (for modal analysis)
for transient analysis:
total displacements, velocities, and accelerations;
equivalent nodal loads; reaction forces; residual
loads.
for heat transfer:
total temperatures and optional fluxes
c) Selective Output
The user may selectively print out data for elements or nodes using these
MODEL DEFINITION cards:
PRINT ELEMENT selects elements, integration points, and layers (for
44
plate and shell elements) to be printed in the output.
PRINT NODE selects nodes and nodal quantities to be printed (e.g.
displacements, input load vectors, output
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.
The file output includes:
complete mesh data (nodal coordinates, element connectivities)
all nodal variables (displacements, forces, etc.)
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
output will be produced for all integration points of all elements.
A restart tape can be made using the RESTART Model Definition option
(volume C, p. C3.3-29). This option is very convenient in nonlinear analyses.
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
interpretation, analysis message, and output of analysis results.
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. Young’s modulus E is 30E6 (30 x 106 or 30,000,000) psi. This
configuration is shown in figure 7.
The theoretical axial displacement at the right end is easily calculated to be:
Ux = PL / AE = (10000) (10) / (1) (30E6) = 3.3333E-3 in.
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
that is obtained by MARC.
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
The following sections are for use by the advanced
MARC user and should be ignored by the novice.
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
appropriate control setup. A description of each of the available subroutines is given
below. In addition, discussions of special routines are found in the MARC manuals or in
the on-line documentation that is available.
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-
H, O-Z) is required in the user subroutines.
In addition to the user subroutines, MARC makes certain Common Blocks
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
ELMVAR, is available to the user. This will be discussed below.
48
List of User Subroutines
A. User-defined Loading, Boundary Conditions, and State Variables Subroutines
FORCEM Input of Nonuniform Distributed Loads
FLUX Input of Nonuniform Fluxes
CUPFLX Coupling of Inelastic Energy and Internal Heat Generation
UINSTR Input of Initial State of Stresses
UFOUR Input of a User-defined Function F(Q) for Fourier Analysis
FORCDT Input of Time Dependent Nodal Loads, Displacements or
Time Dependent Nodal Fluxes, Temperatures for Heat
Transfer
FORCDF Input of Frequency Dependent Loads or Displacements in
Harmonic Analysis
FILM Input of Nonuniform Film Coefficients
FLOW Input of Mass Flow Rate and Inlet Temperature
GAPT Input of Thermal Contact (Conrad) Gap Temperature
UFORMS Definition of Constraint Conditions
CREDE Input of Pre-specified State Variables
INITSV Initialize State Variable Values
NEWSV Input New State Variable Values
USSD Input of Spectral Response Density
USINC Input of Initial Conditions
USDATA Input of Initial Data
UVELOC Generation or Modification of Nodal Velocity Vectors
49
MOTION Definition of Rigid Surface Motion for 2-D Contact
MOTION Definition of Rigid Surface Motion for 3-D Contact
UFRIC Definition of Friction Coefficients
DIGEOM Definition of 3-D Rigid Surface Patch
SEPFOR Definition of Separation Force
SEPSTR Definition of Separation Stress
UHTCOE Definition of Environment Film Coefficient
UHTCON Definition of Contact Film Coefficient
UNORST Definition of Normal Stress, Flow Stress, and Temperature
at Contact Node
UCONTACT User-defined Contact Condition
INITPL Initialize Equivalent Plastic Strain Values
INITPO Initialize Pore Pressure in an Uncoupled Fluid-Soil
Analysis
NEWPO Modify Pore Pressure in an Uncoupled Fluid-Soil Analysis
B. User-defined Anisotropy and Constitutive Relations Subroutines
ANELAS Elastic Anisotropy
HOOKLW Anisotropic Elastic Law
ANPLAS Anisotropic Yield Surface and Creep Potential
UFAIL User-defined Failure Criterion
ORIENT Specification of Preferred Orientation
ANEXP Anisotropic Thermal Expansion
50
ANKOND Input of Anisotropic Thermal Conductivity Matrix
UEPS Input of Anisotropic Permittivity Matrix
UMU Input of Anisotropic Permeability Matrix
USIGMA Input of Anisotropic Electric Conductivity
USPCHT Definition of Specific Heat
CRPLAW Input of Special Creep Law
VSWELL Input of Special Swelling Law
WKSLP User Subroutine for Work-hardening Slope Definition
USPRING Input of Nonlinear Spring, Dashpot, and Foundation
Stiffness
UCRACK Input of Ultimate Stress for Cracking Analysis
TENSOF Input of Tension Softening Modulus for Cracking Analysis
USHRET Input of Shear Retention Factor for Cracking Analysis
UVOID Definition of the Initial Void Volume Fraction
UVOIDN Definition of the Void Nucleation Rate
UPOWDR Definition of Material Data for Powder Metallurgy Model
UPERM Definition of Soil Permeability
UMOONY Mooney-Rivlin Material
UENERG Strain Energy Function
UOGDEN Definition of Ogden Material Parameters
UELDAM Definition of Damage Parameters in Ogden Model
HYPELA Hypoelastic Material
HYPELA2 User-defined Material Behavior
51
UFINITE Finite Deformation Isotropic Material Models
UPSTRECH Definition of Generalized Principal Stretch-based Elasticity
Models
GENSTR Generalized Stress Strain Law (Shells & Beams)
UBEAM Input for Nonlinear Beam
UPHI Input of PHI Function in Harmonic Analysis
UCOMPL Input of Viscous Stress Strain Relationship
GAPU Input of Gap Direction and Closure Distance
USELEM User-Defined Element
UNEWTN Input of Viscosity in Flow Analysis
URPFLO User Routine for Rigid-Plastic Flow
B. Viscoplasticity and Generalized Plasticity Subroutines
UVSCPL Definition of the Inelastic Strain Rule
CRPLAW Input of Special Viscoplastic Strain Rate Law
NASSOC Input of a Nonasscociated Flow Law
ZERO Calculation of Equivalent Stress
YIEL Calculation of Current Yield
ASSOC Input of Associated Flow Law
SINCER User Subroutine for Improving Accuracy
C. Viscoelasticity Subroutines
CRPVIS Viscoelasticity – Generalized Kelvin Material Behavior
52
TRSFAC Define a Shift Function for Thermo-Rheologically Simple
(T.R.S.) Material Behavior
HOOKVI User Defined Anisotropic Viscoelasticity
D. Geometry Modification Subroutines
UFXORD Coordinate Generation or Modification
UFCONN Connectivity Generation or Modification
MAP2D Boundary Node Coordinates Modification in Mesh2D
UPNOD Update Nodal Positions in Flow Solutions
UACTIVE Activate or Deactivate Elements
REBAR Input of Rebar Positions, Areas, and Orientations
UFRORD Rezoning Coordinate Generation or Modification
URCONN Rezoning Connectivity Generation or Modification
UCOORD Relocate Nodes Created During Adaptive Meshing
UADAP User Defined Error Criteria
UTRANS Implement Local Coordinate System
USHELL Modify Thickness of Shell Elements
SSTRAN Transformation of Substructures
UTHICK User-Specified Nodal Thicknesses
UACTUAT Prescribe the Length of an Actuator
E. Output Quantities Subroutines
PLOTV User-selected Postprocessing of Element Variables
53
UPOSTV User-selected Postprocessing of Nodal Variables
IMPD Output of Nodal Quantities
ELEVAR Output of Element Quantities
ELEVEC Output of Element Quantities in Harmonic Analysis
INTCRD Output of Integration Point Coordinates
UBGINC Beginning of Increment
UEDINC End of Increment
UBGITR Beginning of Iteration
UELOOP Beginning of Element Loop
F. Hydrodynamic Lubrication Subroutines
UBEAR Input of Spatial Orientation of Lubricant Thickness
UGROOV Input of Groove Depths
URESTR Input of Nonuniform Restrictor Coefficients
UTHICK Generation or Modification of Nodal Thickness or
Thickness Change Field
UVELOC Generation or Modification of Nodal Velocity Vectors
G. Special Routines – MARC Post File Processor PLDUMP
PLDUMP MARC Post File Processor
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
MARC manuals or to the on-line documentation.
55
List of ELMVAR Utility Routine
To facilitate extraction of solution results, it is possible to use subroutine
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
return the calculated values to the user.
This routine is called with the following header:
CALL ELMVAR (ICODE, M, NN, KC, VAR)
where:
ICODE is the post code.
M is the element number.
NN is the integration point number.
KC is the layer number.
VAR is the current value(s) of the items requested.
The values of ICODE are given in Volume C: Program Input in the model
definition section in the POST option.
If subroutine ELMVAR is called from a routine within the element assembly or
stress recovery stage, the values of VAR are the current ones for this iteration. They are
not necessarily the converged values.
This subroutine can be called from user subroutines:
ANELAS FILM NEWSV UCRACK UNEWTN USIGMA
ANEXP FLUX ORIENT UELDAM UOGDEN USPCHT
ANKOND FORCEM PLOTV UELOOP UPERM UVOIDN
ANPLAS GENSTR REBAR UENERG UPOWDR UVSCPL
56
ASSOC HOOKLW SINCER UEPS UPSTRECH VSWELL
CRPLAW HOOKVI TENSOF UFAIL URESTR WKSLP
CRPVIS HYPELA TRSFAC UHTCOE URPFLO YIEL
CUPFLX HYPELA2 UACTIVE UHTCON USELEM ZERO
ELEVAR INTCRD UADAP UMOONY USHELL
ELEVEC NASSOC UCOMPL UMU USHRET
57
MATDAT Common Block
The material identification numbers (1,2,3, etc.) for cross-referencing to various
quantities such as TEMPERATURE EFFECTS, WORK HARD, etc. must be used in
user subroutines ANELAS, HOOKLW, ANPLAS, ANEXP, ANKOND< ORIENT,
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
documentation for this common block.
CONCOM Common Block
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
for this common block.
ELMCOM Common Block
In subroutines that are within an element loop, information about a particular
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
MARC manuals or in the on-line documentation for this common block.
58