|
|
|
|
|
|
|
|
# Background and introduction |
|
|
# Background and introduction |
|
|
|
|
|
|
|
|
Take this text as a written chat between you an me, i.e. an average engineer that have already taken the journey from college to performing actual engineering using finite element analysis and has something to say about it. Picture yourself with me in a coffee bar, taling and discussing concepts and ideas. Maybe needing to go to a blackboard (or notepad?). Even using a tablet to illustrate some three-dimensional results. But always as a chat between colleagues. |
|
|
|
|
|
|
|
|
Take this text as a written chat between you an me, i.e. an average engineer that have already taken the journey from college to performing actual engineering using finite element analysis and has something to say about it. Picture yourself with me in a coffee bar, talking and discussing concepts and ideas. Maybe needing to go to a blackboard (or notepad?). Even using a tablet to illustrate some three-dimensional results. But always as a chat between colleagues. |
|
|
|
|
|
|
|
|
College, paper and pencil or chalk and blackboard. |
|
|
|
|
|
|
|
|
Please also note that I am not a mechanical engineer, although I shared many undergraduate courses with them. I am a nuclear engineer with a strong background on mathematics and programming. I went to college between 2002 and 2008. Probably a lot of things have changed since then---at least that is what these millenials guys and girls seem to be bragging about---but chances are we all studied solid mechanics and heat transfer with a teacher using a piece of chalk on a blackboard and students writing down notes with pencils on paper sheets. And there is really not much that one can do with pencil and paper regarding mechanical analysis. Any actual case worth the time of an engineer need to be more complex than an ideal canonical case with analytical solution. |
|
|
|
|
|
|
|
|
|
|
|
We will be swinging back and forth between a case study about fatigue analysis in piping systems of a nuclear power plant and more generic and even romantic topics related to finite elements and computational mechanics. These latter regressions will not remain just as abstract theoretical ideas. Not only will they be directly applicable to the development of the main case, but they will also apply to a great deal of other engineering problems tackled with the finite element method. |
|
|
|
|
|
|
|
|
|
|
|
Finite elements are like magic to me. I mean, I can follow the whole derivation of the equations, from the strong, weak and variational formulations of the equilibrium equations for the mechanical problem (or the energy conservation for heat transfer) down to the algebraic multigrid preconditioner for the inversion of the stiffness matrix passing through Sobolev spaces and the grid generation. Then I can sit down and program all these steps into a computer, including the shape functions and its derivatives, the assembly of the discretised stiffness matrix assembly, the numerical solution of the system of equations and the computation of the gradient of the solution. Yet, the fact that all these a-priori unconnected steps once gets a pretty picture that resembles reality is still astonishing to me. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Again, take all this information as coming from a fellow that has already taken such a journey from college’s pencil and paper to real engineering cases involving complex numerical calculations. And developing, in the meantime, both an actual working finite-element [back-end](https://www.seamplex.com/fino) and [front-end](https://www.caeplex.com) from scratch. |
|
|
|
|
|
|
|
|
## Tips and tricks |
|
|
|
|
|
|
|
|
|
|
|
FEM is like magic to me. I mean, I can follow the whole derivation of the equations, from the strong, weak and varitional formulations of the equilibrium equations for the mechanical problem (or the energy conservation for heat transfer) down to the algebraic multigrid preconditioner for the inversion of the stiffness matrix passing through Sobolev spaces and the grid generation. Then I can sit down and program all these steps into a computer, including the shape functions and its derivatives, the assembly of the discretized stiffness matrix assembly, the numerical solution of the system of equations and the computation of the gradient of the solution. Yet, the fact that all these a-priori unconnected steps once gets a pretty picture that resembles reality is still astonishing to me. |
|
|
|
|
|
|
|
|
## Tips and tricks |
|
|
|
|
|
|
|
|
There are some useful tricks that come handy when trying to solve a mechanical problem. Throughout this text, I will try to tell you some of them. |
|
|
There are some useful tricks that come handy when trying to solve a mechanical problem. Throughout this text, I will try to tell you some of them. |
|
|
|
|
|
|
|
|
One of the most important ones is using your _imagination_. You will need a lot of imagination to “see“ what it is actually going on when analyzing an engineering problem. How the loads “press” one element with the other, how the material reacts depending on its properties, how the nodal displacements generate stresses (both normal and shear), how results converge, etc. And what these results actually mean besides the pretty-colored figures.^[A former manager once told me “I need the CFD” when I handed in some results. I replied that I did not do computational fluid-dynamics but computed the neutron flux kinetics within a nuclear reactor core. He said “I know, what I need are the _Colors For Directors_, those pretty colored figures along with your actual results.”] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
One of the most important ones is using your _imagination_. You will need a lot of imagination to “see“ what it is actually going on when analysing an engineering problem. How the loads “press” one element with the other, how the material reacts depending on its properties, how the nodal displacements generate stresses (both normal and shear), how results converge, etc. And what these results actually mean besides the pretty-coloured figures.^[A former boss once told me “I need the CFD” when I handed in some results. I replied that I did not do computational fluid-dynamics but computed the neutron flux kinetics within a nuclear reactor core. He joked “I know, what I need are the _Colors For Directors_, those pretty coloured figures along with your actual results.”] |
|
|
This journey will definitely need your imagination. We will see equations, numbers, plots, schematics, 3D geometries, interactive 3D views, etc. Still, when the theory says “thermal expansion produces linear stresses” you have to picture in your head three little arrows pulling away from the same point in three directions, or whatever mental picture you have about what you understand are thermally-induced stresses. What comes to your mind when someone says that out of the nine elements of the stress tensors there are only six that are independent? Whatever it is, try to practice that kind of graphical thoughts with every concept. |
|
|
This journey will definitely need your imagination. We will see equations, numbers, plots, schematics, 3D geometries, interactive 3D views, etc. Still, when the theory says “thermal expansion produces linear stresses” you have to picture in your head three little arrows pulling away from the same point in three directions, or whatever mental picture you have about what you understand are thermally-induced stresses. What comes to your mind when someone says that out of the nine elements of the stress tensors there are only six that are independent? Whatever it is, try to practice that kind of graphical thoughts with every concept. |
|
|
|
|
|
|
|
|
Another heads up is that we will dig into some math. Probably it would be be simple and you would deal with it very easily. But probably you do not like equations. No problem! Just ignore them for now. Read the text skipping them, it should work. It is fine to ignore math (for now). But, eventually, a time will come in which math cannot be avoided. Here comes another experience tip: do not fear math. Even more, keep exercising. You have used differences of squares in high school. You know (or at least knew) how to integrate by parts. Once in a while, perform a division of polynomials using [Ruffini’s rule](https://en.wikipedia.org/wiki/Ruffini's_rule). Or compute the second derivative of the quotient of two functions. Whatever. It should be like doing crosswords on the newspaper. Grab those old physics college books and read the exercises at the end of each chapter. It will pay off later on. |
|
|
|
|
|
|
|
|
Another heads up is that we will dig into some math. Probably it would be be simple and you would deal with it very easily. But probably you do not like equations. No problem! Just ignore them for now. Read the text skipping them, it should work. It is fine to ignore math (for now). But, eventually, a time will come in which it cannot (or should not) be avoided. Here comes another experience tip: do not fear math. Even more, keep exercising. You have used differences of squares in high school. You know (or at least knew) how to integrate by parts. Once in a while, perform a division of polynomials using [Ruffini’s rule](https://en.wikipedia.org/wiki/Ruffini's_rule). Or compute the second derivative of the quotient of two functions. Whatever. It should be like doing crosswords on the newspaper. Grab those old physics college books and read the exercises at the end of each chapter. It will pay off later on. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Nuclear reactors, pressurized pipes and fatigue |
|
|
|
|
|
|
|
|
# Nuclear reactors, pressurised pipes and fatigue |
|
|
|
|
|
|
|
|
Piping systems in sensitive industries like nuclear or oil & gas should be designed and analysed following the recommendations of an appropriate set of codes and norms, such as the ASME\ Boiler and Pressure Vessel Code. |
|
|
Piping systems in sensitive industries like nuclear or oil & gas should be designed and analysed following the recommendations of an appropriate set of codes and norms, such as the ASME\ Boiler and Pressure Vessel Code. |
|
|
This code of practice (book) was born during the late XIX century, before finite-element methods for solving partial differential equations were even developed, and much longer before they were available for the general engineering community. Therefore, much of the code assumes design and verification is not necessarily performed numerically but with paper and pencil. However, it still provides genuine guidance in order to ensure pressurised systems behave safely and properly without needing to resort to computational tools. Combining finite-element analysis (even plain linear equations) with the ASME code gives the cognizant engineer a unique combination of tools to tackle the problem of designing and/or verifying pressurised piping systems. |
|
|
|
|
|
|
|
|
This code of practice (book) was born during the late\ XIX century, before finite-element methods for solving partial differential equations were even developed. And much longer before they were available for the general engineering community. Therefore, much of the code assumes design and verification is not necessarily performed numerically but with paper and pencil (yes, like in college). However, it still provides genuine guidance in order to ensure pressurised systems behave safely and properly without needing to resort to computational tools. Combining finite-element analysis with the ASME code gives the cognisant engineer a unique combination of tools to tackle the problem of designing and/or verifying pressurised piping systems. |
|
|
|
|
|
|
|
|
In the years following Enrico Fermi’s demonstration that a self-sustainable fission reaction chain was possible, people started to build plants in order to transform the energy stored within the atoms nuclei into usable electrical power. They quickly reached the conclusion that high-pressure heat exchangers and turbines were needed. So they started to follow the ASME\ Boiler and Pressure Vessel Code. They also realised that some requirements did not fit the needs of the nuclear industry, but instead of writing a new code from scratch they added a new section to the existing body of knowledge: the celebrated ASME Section\ III\ [1]. |
|
|
|
|
|
|
|
|
In the years following Enrico Fermi’s demonstration that a self-sustainable fission reaction chain was possible (actually, in fact after WWII was over), people started to build plants in order to transform the energy stored within the atoms nuclei into usable electrical power. They quickly reached the conclusion that high-pressure heat exchangers and turbines were needed. So they started to follow the ASME\ Boiler and Pressure Vessel Code. They also realised that some requirements did not fit the needs of the nuclear industry. But instead of writing a new code from scratch, they added a new chapter to the existing body of knowledge: the celebrated ASME Section\ III. |
|
|
|
|
|
|
|
|
After further years passed by, people (probably the same characters as before) noticed that fatigue in nuclear power plants was not exactly the same as in other piping systems. There were some environmental factors directly associated to the power plant that was not taken into account by the regular ASME code. Again, instead of writing a new code from scratch, people decided to add correction factors to the previous body of knowledge. This is how knowledge evolves, and it is this kind of complexities that engineers are faced with during their professional lives. And, yes, it would be a very hard work to re-write everything from scratch every time something changes. |
|
|
|
|
|
|
|
|
After further years passed by, engineers (probably the same people that forked section\ III) noticed that fatigue in nuclear power plants was not exactly the same as in other piping systems. There were some environmental factors directly associated to the power plant that was not taken into account by the regular ASME code. Again, instead of writing a new code from scratch, people decided to add correction factors to the previously amended body of knowledge. This is how knowledge evolves, and it is this kind of complexities that engineers are faced with during their professional lives. We have to face it, it would be a very hard work to re-write everything from scratch every time something changes. |
|
|
|
|
|
|
|
|
# Solid mechanics, or what we are taught at college |
|
|
# Solid mechanics, or what we are taught at college |
|
|
|
|
|
|
|
|
|
|
|
So, let us start our journey. Our starting place: undergraduate solid mechanics courses. Our first step: Newton’s laws of motion. For each of them, all we need to recall here is that |
|
|
|
|
|
|
|
|
|
|
|
1. a solid is in equilibrium if it is not moving in at least one inertial coordinate system, |
|
|
|
|
|
2. in order for a solid not to move, the sum of all the forces ought to be equal to zero, and |
|
|
|
|
|
3. for every external load there exists an internal reaction with the same magnitude but opposite direction. |
|
|
|
|
|
|
|
|
|
|
|
We have to accept that there is certain intellectual beauty when complex stuff can be expressed in simple term. Yet, from now on, everything can be complicated at will. We can take the mathematical path like D’Alembert and its virtual displacements ideas (in his mechanical treatise, D’Alembert boasts that he does not need to use a single figure throughout the book). Or we can go graphical following Cullman. Or whatever other logic reasoning to end up with a set of actual equations which we need to solve in order to obtain engineering results. |
|
|
|
|
|
|
|
|
|
|
|
## The stress tensor |
|
|
|
|
|
|
|
|
|
|
|
In any case, what we should understand (and imagine) is that external forces lead to internal stresses. And in any three-dimensional body subject to such external loads, the best way to represent internal stresses is through a $3 \times 3$ _stress tensor_. This is the first point in which we should not fear math. Trust me, it will pay back later on. Let me introduce then the three-dimensional stress tensor: |
|
|
|
|
|
|
|
|
|
|
|
$$ |
|
|
|
|
|
\begin{bmatrix} |
|
|
|
|
|
\sigma_x & \tau_{xy} & \tau_{xz} \\ |
|
|
|
|
|
\tau_{yx} & \sigma_{y} & \tau_{yz} \\ |
|
|
|
|
|
\tau_{zx} & \tau_{zy} & \sigma_{z} \\ |
|
|
|
|
|
\end{bmatrix} |
|
|
|
|
|
$$ |
|
|
|
|
|
|
|
|
|
|
|
It looks like a regular $3 \times 3$ matrix, doesn’t it? Some brief comments about it: |
|
|
|
|
|
|
|
|
|
|
|
* The $\sigma$s are normal stresses, i.e. they try to stretch or tighten the material. |
|
|
|
|
|
* The $\tau$s are shear stresses, i.e. they try to bend and rotate the material. |
|
|
|
|
|
* It is symmetric (so there are only six independent elements) because |
|
|
|
|
|
- $\tau_{xy} = \tau_{yx}$, |
|
|
|
|
|
- $\tau_{yz} = \tau_{zy}$, and |
|
|
|
|
|
- $\tau_{zx} = \tau_{xz}$. |
|
|
|
|
|
* The elements of the tensor depends on the orientation of the coordinate system. |
|
|
|
|
|
* There exists a particular coordinate system in which the stress tensor is diagonal, i.e. all the shear stresses are zero. In this case, the three diagonal elements are called the principal stresses. |
|
|
|
|
|
|
|
|
|
|
|
Still scared of the term _tensor_? Do not be! It is just a slightly more complex vector, and I assume you are not afraid of vectors. If you recall, a vector somehow generalises the idea of a scalar in the following sense: a given vector $\vec{v}$ can be projected into any direction $\vec{n}$ to obtain a scalar $p$. We call this scalar $p$ the “projection” of the vector $\vec{v}$ in the direction $\vec{n}$. Well, a tensor can be also projected into any direction $\vec{n}$. The difference is that instead of a scalar, a vector is now obtained. |
|
|
|
|
|
|
|
|
|
|
|
What does this all have to do with mechanical engineering? Well, once we know what the stress tensor is for every point of a part, in order to obtain the internal forces per unit area acting in a plane passing through that point and with a normal given by the direction $\vec{n}$, all we have to do is “project” the stress tensor through $\vec{n}$. That is all we need to know about the stress tensor for now. |
|
|
|
|
|
|
|
|
|
|
|
dnl Oh yes, and the fact that tensors follow the rules of matrix multiplication. |
|
|
|
|
|
|
|
|
|
|
|
dnl That is to say, the internal stress $\vec{T}$ (i.e. force per unit area) is |
|
|
|
|
|
dnl |
|
|
|
|
|
dnl $$ |
|
|
|
|
|
dnl \begin{bmatrix} |
|
|
|
|
|
dnl T_x \\ |
|
|
|
|
|
dnl T_y \\ |
|
|
|
|
|
dnl T_z \\ |
|
|
|
|
|
dnl \end{bmatrix} |
|
|
|
|
|
dnl = |
|
|
|
|
|
dnl \begin{bmatrix} |
|
|
|
|
|
dnl \sigma_x & \tau_{xy} & \tau_{xz} \\ |
|
|
|
|
|
dnl \tau_{yx} & \sigma_{y} & \tau_{yz} \\ |
|
|
|
|
|
dnl \tau_{zx} & \tau_{zy} & \sigma_{z} \\ |
|
|
|
|
|
dnl \end{bmatrix} |
|
|
|
|
|
dnl \cdot |
|
|
|
|
|
dnl \begin{bmatrix} |
|
|
|
|
|
dnl n_x \\ |
|
|
|
|
|
dnl n_y \\ |
|
|
|
|
|
dnl n_z \\ |
|
|
|
|
|
dnl \end{bmatrix} |
|
|
|
|
|
dnl $$ |
|
|
|
|
|
dnl |
|
|
|
|
|
dnl And yes, tensors follow the rule of matrix multiplication. So if you take a look, in general the internal forces do not |
|
|
|
|
|
dnl |
|
|
|
|
|
|
|
|
|
|
|
## An infinitely-long pressurised pipe |
|
|
|
|
|
|
|
|
An infinite pipe subject to uniform internal pressure |
|
|
An infinite pipe subject to uniform internal pressure |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ecuación diferencial 1D -> appendix |
|
|
ecuación diferencial 1D -> appendix |
|
|
|
|
|
|
|
|
# Finite elements, or solving an actual engineering problem |
|
|
# Finite elements, or solving an actual engineering problem |
|
|
|
|
|
|
|
|
# Conclusions |
|
|
# Conclusions |
|
|
|
|
|
|
|
|
Back in College, we all learned how to solve engineering problems. But there is a real gap between the equations written in chalk on a blackboard (now probably in the form of beamer slide presentations) and actual real-life engineering problems. This chapter introduces a real case from the nuclear industry and starts by idealising the structure such that it has a known analytical solution that can be found in textbooks. Additional realism is added in stages allowing the engineer to develop an understanding of the more complex physics and a faith in the veracity of the FE results where theoretical solutions are not available. Even more, a brief insight into the world of evaluation of low-cycle fatigue using such results further illustrates the complexities of real-life engineering analysis. |
|
|
Back in College, we all learned how to solve engineering problems. But there is a real gap between the equations written in chalk on a blackboard (now probably in the form of beamer slide presentations) and actual real-life engineering problems. This chapter introduces a real case from the nuclear industry and starts by idealising the structure such that it has a known analytical solution that can be found in textbooks. Additional realism is added in stages allowing the engineer to develop an understanding of the more complex physics and a faith in the veracity of the FE results where theoretical solutions are not available. Even more, a brief insight into the world of evaluation of low-cycle fatigue using such results further illustrates the complexities of real-life engineering analysis. |
|
|
|
|
|
|
|
|
|
|
|
* use your imagination |
|
|
|
|
|
* practise math |