The following content is provided under a Creative
Commons license.
Your support will help MIT OpenCourseWare continue to
offer high quality educational resources for free to make a
donation or view additional materials from hundreds of MIT
courses, visit MIT OpenCourseWare at ocw.mit.edu.
PROFESSOR: Ladies and gentlemen, welcome to this
lecture on non-linear finite element analysis of solids and
structures.
In the previous lectures, we have considered quite a bit of
theory related to non-linear finite element analysis in
some example solutions.
The objective in the next two lectures now, the last
lectures of this video course, is to show how an actual
finite element analysis is performed on the computer.
We start with a linear solution in this lecture, and
then consider a non-linear solution in the next lecture.
We cannot discuss really, in this amount of time given, all
the aspects of the analysis, but want to summarize and
demonstrate on the computer the major steps of the
analysis and concentrate on possible difficulties,
possible pitfalls, and some general recommendations.
As the example problem, we want to use the plate with a
hole, that we already considered earlier.
And we performed a linear analysis and then
a non-linear analysis.
Remember, I pointed out in the previous lectures that it is
very important to always do linear analysis first before
you go into a non-linear analysis.
The elastic analysis is performed to obtain the stress
concentration factor at the hole, then we do an
elasto-plastic analysis to estimate the limit load, and
an analysis also to investigate the effect of a
shaft in the plate hole.
These two analyses are being performed in the last lecture
of the video course.
The plate we are analyzing is shown on this view graph here.
Notice it's a square plate.
Here, we show the hole, the plate is loaded as shown up
here, and down here.
The material property for the elastic analysis are given
here and the thickness of the plate is 0.01 meter.
Because of symmetry conditions, we only need to
consider this quarter here.
Of course, using appropriate boundary conditions along
these two lines. we will talk about that more later on.
The first step for a finite element analysis is to select
a computer program, and we, of course, use the ADINA system.
ADINA-IN is the pre-processor to prepare, generate the
finite element data.
ADINA then solves the actual finite element model, and
ADINA-PLOT is used to this display numerically or
graphically the solution results.
Schematically, we are sitting here at a terminal and we're
inputting the data to ADINA-IN.
We can also receive here, numerical output, and we can
also plot on this terminal here, any of the information
that we like to plot.
This is a graphics terminal.
Notice ADINA-IN, of course, communicates to a storage
device and further on to ADINA, as we will
discuss just now.
The user inputs, in other words, or
types into the terminal.
ADINA-IN commands interactively or for batch
processing and then the user checks also the input and the
generated data on the graphics device, as I showed you on the
previous view graph.
ADINA-IN generates the input data for ADINA.
The input data is checked internally in ADINA in for
errors and inconsistency, and also is displayed as you are
requesting it as a user.
The degree of freedom numbers are generated and to obtain
minimum bandwidth, we have a minimum bandwidth minimization
algorithm in the program, as I will point out a bit
stronger later on.
ADINA data inputs then, is available to ADINA, and the
user runs ADINA, and ADINA then stores the output data on
a porthole file and on an output file.
The output file, in other words, contains really the
ADINA model data and the calculated results.
We access ADINA porthole file using ADINA-PLOT.
We can, of course, also look at the output file and see
numerically the data that was calculated using ADINA.
Here, we have the action displayed or schematically
shown by the user.
User uses ADINA-PLOT to fetch data from the ADINA porthole
file and then ADINA-PLOT displays those data either
numerically or graphically.
Let's look very briefly at an overview of ADINA.
The program can be used for static and dynamic solutions,
for linear and non-linear analysis, for small and very
large finite element models, and the formulations finite
elements and numerical procedures used in the program
have largely been discussed in this course.
The displacement assumptions that can be employed for the
finite element models are either infinitesimally small
displacements, large displacements, large rotations
but small strains, and large deformations, large strains.
We discussed these assumptions, of course, also
in the course.
Material models that are available in isotropic linear
elastic model, orthotropic linear elastic model,
isotropic thermo-elastic model, a curve description
model for analysis of geological materials, a
concrete model, isothermal plasticity models,
thermo-elastic-plastic and creep models, and non-linear
elastic incompressible, and user-supplied models.
The elements available in the program, is available number
nodes tress element, an element that can have two
nodes, three nodes, or four nodes.
It can also be used as a ring element.
A two-dimensional solid element that is used for plane
stress axis symmetric and plane strain analysis.
This also can have available number of nodes, from four
nodes to nine nodes.
Similarly, available number of nodes element for
three-dimensional analysis.
Then also a beam element, a 2-node beam element, Hermitian
beam element.
And the isoparametric beam element that we talked about
in the course.
This element can carry, or can be used with two nodes, or
three nodes, or four nodes.
A pipe element that we did not discuss in the course, but you
might be interested in reading about that element is a curved
beam element, of course, of pipe section.
Which however, also includes the effects of ovalization So
this element also carries, if desired ovalization degrees of
freedoms at the nodes.
And shell elements, we talked about the use of the 16-node
element, and the MITC 4, the 4-node element.
We also talked briefly about transition elements that I
used to model shells, or thin structures
that couple into solids.
Let us summarize some important observations
regarding finite element analysis.
It's important to check the finite element data, of
course, very carefully.
The data must be checked prior to the
actual response solution.
This is done, of course, with the pre-processor, by plotting
the data, looking at it very carefully, typically.
And then after the response solution, you still want to
check the input data once more by seeing whether the boundary
conditions are properly satisfied, that you want to
impose on to the model, whether the displacement and
stress solution is a reasonable.
Once the analysis has been performed, you want to very
carefully evaluate and interpret
the calculate response.
You want to start in detail the calculated displacement
and stresses along certain lines.
In particular, look at stress jumps.
We pointed that out already in an earlier lecture, and we
will do so in our example solution again, just now.
And here, I'd like to add that stress averaging, stress
smoothing should only be done after the above careful
evaluation.
That's something important to keep in mind.
I believe that you should first look at the stresses,
the way they have been calculated by the program and
then start thinking about stress smoothing.
Only after you've gone through this phase here.
The data for the construction of the finite element mesh,
that we want to deal with in the example solution is input
for this quarter of the plate, as I
pointed out earlier already.
We have these elastic material constants, we're looking at a
plane stress analysis.
This is the thickness of the plate.
And once again, here is a loading.
Notice, we are putting this boundary on rollers, and we
want to put this boundary as well on rollers to model the
symmetry conditions that we need to model in order to
consider a whole plate, where we actually analyze here, only
one quarter of that plate.
The finite element mesh that we will be using is shown on
this view graph.
It consists of 64 8-node isoparametric elements.
Well, we performed this analysis on the computer in my
laboratory at MIT a few weeks ago, and we have brought in a
video crew to record all the actions that we have been
performing to actually complete the analysis.
I like to now share with you what we have recorded and
narrate to you as we go step by step through the analysis
of this plate on the computer.
Our first step is to look at how we are generating using
ADINA-IN, how we are generating this mesh, and also
the other data that are required for use of ADINA.
So let's look at this first step now, after which I will
then introduce you to the next step and narrate continuous
narration of the analysis.
Here we show briefly the hardware equipment we are
using in my MIT laboratory.
A MASSCOMP minicomputer with two megabytes of real memory,
and 330 megabytes of disk storage.
We also have a tape drive.
The computer features virtual memory, and we use a
Unix-based operating system.
Roughly, for our purposes, the computer is
equivalent to a VAX 750.
We use two terminals.
One terminal for alphanumerical and numerical
input and output, and one terminal, the one to the
right, for graphical output.
We also have a plotter.
We use this plotter to generate the figures of finite
element meshes, and results for this course.
Here comes my student, Ted [? Sossman, ?]
who will sit at the terminal to input
the data to the program.
In what follows, we will see the data input prepared by Ted
on the terminal at which he sits.
Non-graphical output is displayed by that same
terminal, whereas we will see graphical output displayed on
the right terminal.
Here, we see the start of input
preparation for ADINA-IN.
We have opened the data base, on which the data input and
generated will be stored and have already input the title
for the analysis, quarter plate with hole, 64 elements.
We have also defined master degrees of freedom conditions
by specifying the values of IDOF.
1 means of a deleted degree of freedom, 0 means a free,
existing degree of freedom.
Here, all degrees of freedom have been deleted except for
the yz displacements.
Notice also that at our request, all
text appears twice.
After we have typed a line, the line is echoed back by the
program merely for checking.
In what follows, we now specify the coordinates of a
few key points that defines the outline of the
quarter of the plate.
Note we define the y- and z-coordinates.
First of node 1, then for nodes 2, 3, 4, 5, and 6.
Note that these coordinates are input in free format.
Here the node 6 input is not aligned with the other nodal
point coordinate input.
We now want to look at the plot of these nodal points.
This is achieved by the frame and mesh commands.
Here they are, the six points.
Point 1 is the center of the hole, points 2 and 3 defines
the boundary of the hole.
Points 4, 5, 6 defines the remaining corners of the
quarter plate.
And here, you see the first set of generated nodes.
Note that the nodal points have consecutive numbers along
the vertical symmetry edge, except for the top and bottom
nodes, numbers 3 and 4, similarly for the horizontal
symmetry edge.
This would mean a large bandwidth unless we use a
bandwidth minimizer.
And we will do so, hence we are not concerned with the
nodal point numbering used at this stage.
Next, we generate also the nodal points on the remaining
edges of the quarter plate.
And here they are.
We now want to generate the elements of the plate.
For this we define, first the material to be a elastic.
Young's modulus E, Poisson's ratio NU.
We want a plane stress element group.
The Gauss integration order is 3x3.
The material set has a number 1, this is the material set we
just defined.
The G-surface command next generates the 8-node elements
in the domain defined by the corner points, so to
say 6, 4, 3, 2.
We now want to plot the generated element mesh, and
here, you see it.
Note once again, we use 8-note isoparametric elements, around
the hole, they are curved elements.
Finally, we also define in the ADINA-IN input the elements
thicknesses to be 0.01 and the loads which correspond to the
pulling on the plate.
This [? end ?] completes the input preparation
for ADINA-IN .
ADINA-IN has now all the information to generate a
complete input file ADINA.
In addition, we also want to ask ADINA-IN to assign
equation numbers that correspond to a minimum
bandwidth for the solution of this problem.
So our next step is to have ADINA-IN go through these
actions, and turn back to our laboratory and see what is
happening now.
Here, we see the end of the ADINA-IN input file that we
saw already before.
The command ADINA now generates the ADINA file.
At the same, also, the bandwidth of the stiffness
matrix is minimized.
We use the reverse Cuthill-Mckee algorithm.
Notice that the bandwidth has been reduced from 399 to 93.
The original bandwidth was, of course, artificially large
because our nodal point generation did not take
account of any bandwidth considerations, as I pointed
out before.
Let us briefly look at the ADINA file
generated by the ADINA-IN.
Here, we see common cards, automatically inserted by
ADINA-IN to explain the input cards.
We see the master control card, the load control card,
the Eigenvalue solution control card, and so on.
Let us look a bit closer at the element data cards.
Element 1 has eight nodes and the first three are 6, 64, 74.
Element 2 has 8 nodes and the first three are 64, 62, 76.
Note a maximum of nine nodes is possible.
The last 0 is the node card signifies that the ninth node
is not used.
With a complete ADINA input file now available, we can
call ADINA to execute this file and this gives us our
first solution results.
We look at the solution results and, in particular, we
plot the deformed mesh onto the original mesh, and this
shows, in fact, that we have made an error in the input
description.
It will show us that we have fixed all these nodes down
here, whereas they should have been on a roller.
This is shown by plotting the deformed mesh on to the
original mesh, and it's also shown by
looking at the stresses.
We do so by using an option in the ADINA system for the
stress vector outputs, and this is schematically shown
here, this option.
We plot maximum principle stresses--
say tensile in this case here--
as a line with two arrows, and principles stress that's
compressive as simply a line.
So we can see, in other words, how the stress flows through
the material, and we can see, of course, compressive and
tensile stress situations, and notice that the lengths of
these lines corresponds or is proportional to the magnitude
of the stresses.
We can plot this stress vector output for all the integration
points stresses in the mesh, and that, as I said already,
indicates clearly once again, that we have used the wrong
boundary conditions down here.
So we go and correct the boundary conditions down here,
and re-run the analysis.
In other words, call ADINA again and those results that
we obtained then, once again, displacements, in other words,
are plotted by plotting the deformed mesh onto the
original mesh.
We see that we now got much better, much more
realistically-looking results.
And we also will look at the stresses using the stress
vector plots again, in the elements, that show us also
that the results are now quite realistic and that our mesh,
including the boundary conditions have been quite
properly defined.
So let us now look at this step of the analysis.
The command runadina calls ADINA to
execute the input data.
The data input file is in ADINA-IN F02.
And here, we see now the deformed plotted onto the
original mesh.
The original mesh is plotted in dash lines.
Of course, the deformations are magnified.
Note that as expected, the top face has uniformly moved up.
However, note that the nodal points on the horizontal
symmetry line have not displaced at all.
This is quite unphysical and shows that the wrong boundary
conditions have been used.
If we look at the stress vector plot over the mesh, the
same conclusion is reached.
For clarity, on the video, we show here the stress vectors
just on the elements closest to the hole.
And we can see in the element adjoining the horizontal
symmetry line, a stress that acts normal to the whole.
This is, of course, unphysical.
Next, we show the stress vectors in the outer most
elements of the quarter plate.
And you can see here, a stress acting perpendicular to the
free edge of the plate, when we look near the horizontal
symmetry line.
This is also unphysical and is due to having specified the
wrong boundary conditions on the wrong
horizontal symmetry line.
The specification of the boundary
conditions is shown here.
The character, C, denotes the boundary condition on the
horizontal symmetry line.
The character B denotes the boundary condition on the
vertical symmetry line.
Where B means only the z displacement is free and C
means all displacements are fixed.
For the six possible displacements and
[? flotatations, ?]
a 1 means the degree of freedom is fixed, and 0 means
the degree of freedom is free.
We now correct the boundary conditions.
And B on the horizontal symmetry line means now the v
displacement is free.
C on the vertical symmetry line means now the w
displacement is free.
We run ADINA again, and here you see the deformed mesh
plotted on the original mesh.
The deformations look very reasonable.
The plate has contracted horizontally, and
correspondingly, the hole has shrunk horizontally.
The deformations closest to the hole are shown here.
And here, we see the stress vector
plots for these elements.
The stresses align nicely with the hole.
Notice that there is no stress perpendicular to the free
surface of the hole when we look at the integration point
layer closest as a hole.
The value of the maximum stress is given here.
It is 301.9 megapascal.
Here, we look at the element which carries the largest
stress, element 57.
Once again, we can see that the stresses align
nicely with the hole.
We now recall is that the objective of our analysis is
really the calculation of the stress concentration factor.
And if we look at the problem once more, here, we have the
plate with the hole.
The plate subjected to the tractions, as shown here.
We now need to, of course, predict the stresses
accurately around the hole, and in particular, at this
point here.
Here, we have our finite element
method used in the analysis.
And so far, the only calculated stresses at the
integration points in the elements.
Now this is here, by the way, element number 57.
And for this element, we have calculated so far, only the
stresses at these integration points.
However, these integration points do not lie on the
circumference of the hole, on the boundary of the hole.
And that is where the maximum stresses occur.
Of particular interest is, of course, also this point here,
where we anticipate to obtain the maximum
stress in the analysis.
If you look at, schematically, how the stresses would vary,
say, through the element, to the boundary of the hole, we
would see a schematic plot as shown here.
Here is an actual element, the other elements lie next to it,
and here you can see schematically shown the stress
computed at the closest integration point to the
boundary of the hole.
And here, we would have the stress computed
at the nodal point.
That is actually the stress that we are interested in.
Well, we can ask ADINA to calculate the stresses at the
nodal points, and then we can ask ADINA-PLOT to enter with
these nodal point stresses into this formula here.
Sigma yy, sigma zz, and sigma yz are the stresses at the
nodal points.
To calculate, ADINA-PLOT calculate this Sigma 1, which
is the maximum principle of stress at that nodal point.
We can ask ADINA-PLOT to calculate sigma 1 at all the
nodal points in the mesh, and by doing so, we obtained these
stresses and then they can ask ADINA-PLOT to search through
those nodal points stresses, these sigma 1 stresses, to
find us the location, the element and the nodal point,
to have the physical location of the maximum stress
occurring in the mesh.
We will see that doing so, ADINA-PLOT comes up to tell us
that this is the point, element number 57, point
number 4, that is this physical point here, where the
maximum stress occurs and will also give us that maximum
stress, and that maximum stress, of course, gives us
then the stress concentration factor.
So let us now look at this phase of the analysis.
Here, we have input some information regarding
variables that need be defined in ADINA plot.
TYY refers to tau yy, TZZ refers to tau zz, TYZ
refers to tau yz.
We define the result and variable to calculate the
maximum principle stress.
Hence, when TYY, TZZ, and TYZ are defined [? smax ?]
gives the maximum principle stress.
Here, we now enter the command to look for the maximum
principal stress in the mesh.
First we make a small input error, obtain a message, we
correct the input, and here comes the result.
We see that indeed element 57.4 carries a maximum
principle stress and this value is 345.151 megapascal.
We have now actually obtained an answer to the
question that we asked.
Originally, namely, we wanted to calculated the stress
concentration factor around the hole.
And we have obtained a number for that stress
concentration factor.
However, a valid question, certainly is to ask, how good
is this number?
After all, we used a finite element mesh to approximate
the plate a particular finite element idealization was used,
and we have only obtained an approximation
to the exact result.
Well, to evaluate that question, to obtain insight
into that question, to evaluate how good our analysis
results really are, we can plot stress jumps, the way we
discussed it in an earlier lecture.
And in particular, for the analysis that I'd like to show
you in this final phase, we have plotted stress jumps
along these two lines.
Now, notice that, for example, at this node here, we have
four elements coupling into this node, so at this node we
get four different stress predictions
for each stress component.
At this node here, we would have only two stress
predictions, for each stress component because only two
elements couple into this node.
That is one way to evaluate or to look at how accurate our
results are.
An alternative way is to plot pressure bands, and the
pressure here is scalar.
It's computed as shown here, and we can plot bands of
constant pressure, the way we already have discussed it in
an earlier lecture.
Notice because this is a scalar, it can be used very
nicely to plot these bands of constant pressure.
Of course, we could also have used here, say, an effective
stress, which is also a scalar, and we could plot
bands of constant effective stresses.
One example that you've seen already early, is this one
here where we plotted pressure bands, with band magnitude of
5 MPa, megapascal, and you can see here this white band, here
a black band, in other words, we're going in steps 5 MPa
from one band to the next.
Notice that there's a pressure band discontinuity right here,
which already indicates that we have a stress discontinuity
here, and which indicates that the mesh that we used is
really not a very fine mesh.
And if we are interested in obtaining a very accurate
result, then based on these pressure band plots, and also
the stress jump plots that I will show you just now, we may
actually decide to use a finer mesh.
We discussed this issue already in an earlier lecture.
So let us now then look at what happens, or what happened
in this final phase of the analysis.
Let's go back to the laboratory and share the
experiences that we'll see there.
Here, we see once more the mesh we're
using in the analysis.
We will plot the stresses, and hence, we can see the stress
jumps along the horizontal symmetry line, and the
diagonal line of the plate.
Here, you see the stresses along the horizontal symmetry
line, Tau zz is plotted.
The horizontal axis measures distance along
the symmetry line.
And the vertical axis measures the stress values.
Note that the stress predictions at the nodes, when
calculated for the different elements are almost the same.
Only at one node can we actually see a difference, and
it is quite small.
Note that two elements couple into this node.
Hence, there are only small stress jumps along the
horizontal symmetry axis of the plate.
Next, we look at the stress plot along the diagonal line
of the model.
Here the maximum principle stress is plotted.
Note that at one node into which four elements couple, we
have four markedly different stress values.
Indeed, we have significant stress jumps at that node, but
otherwise the stress predictions do
not show large jumps.
Finally, we look at the pressure band plots.
Here, they are drawn.
To save time, we skipped some of the drawing process and
jumped to a later picture here.
We notice that the pressure bands are quite continuous,
except between the first and second layer of elements
around the hole.
This corresponds to the stress discontinuity between these
element layers that we saw earlier.
We see now this is now completed, I'd like to look
with you once more back on to two view graphs that we
already have looked at earlier.
On this you graph, we summarize some important
observations.
And we said that it is very important to check the finite
element data input carefully prior to the actual response
solution run.
That, of course, means plotting the data.
And we have done so, of course, in our analysis.
And after the response solution has been obtained, by
starting whether desired boundary conditions are
satisfied, whether displacement and stress
solution is reasonable.
Remember, in our analysis, we did this, of course, as well
and we found, by looking at the boundary conditions, the
way they were represented in the actual solution, that we
have actually made an error.
In other words, we looked at the deformed mesh, and the
boundary conditions on the deformed mesh in our first
analysis showed that we had fixed the boundary at the
bottom off the mesh, which was an error.
So it is very important to go through this step, to look
very closely whether the boundary conditions are
actually satisfied on the mesh that you have been using, in
the right way.
Of course, the same holds for the stress and solution.
Remember, that we looked at the stress plots for the mesh
that was fixed at the bottom and we could directly see
there were errors there, and, in other words, the error of
having fixed the boundary at the bottom of the plate.
So this step is most important, and we have seen an
example in the analysis that we just completed.
I also had this view graph already on, where we said that
we want to carefully evaluate and interpret
the calculated response.
We want to study, in detail, the calculated displacement
and stresses along certain lines, study stress jumps.
Well, we saw an example of that in the analysis that we
just completed, and we also pointed out that it is
important to go through this step here first, prior to
using a stress averaging because if you do average
stresses, of course, you would never see stress jumps.
And this can be an important step to gain confidence in the
analysis results that you have obtained.
This then completes what I wanted to share with you in
this lecture.
Thank you very much for your attention.