I am trying to implement my own FE code for shell structures. Most literature provide formulations and strategies on how to compute shell element stiffness matrix. I can already compute deformations using my FE code, but I don't know how to get the stress field. Can somebody direct me to the right paper/textbook?
Here be dragons. Or, to paraphrase a hadith of the Prophet Mohammed, "There are seventy ways to compute element stresses, and all of them are wrong."
The naive approach is to differentiate the element shape functions to find the strain at a point, and then use the stress-strain relationship for the material.
The problem is that since the shape functions are (usually) low order polynomials, differentiating them reduces the order by one. Therefore the calculated strain and stress distribution in the element is not physically realistic, and is discontinuous across element boundaries. For example in a 3-node triangular membrane element, this method implies the stress and strain are constant over the each element.
Back in the 1970s, Barlow published a paper which pointed out that these "low order" stresses and strains have a higher-order accuracy at a few well-defined points in each element, which were subsequently named "Barlow points".
If you use numerical integration to formulate the stiffness matrix, you are effectively "sampling" the element strain energy (i.e. stress $\times$ strain) at the numerical integration points and minimizing it by differentiating it to form the stiffness matrix. Therefore it is not surprising that the Barlow points coincide with the numerical integration points, for many element formulations.
However, "these are not the
droids stresses you are looking for", because the critical stress locations are often on the boundary of the structure (and hence on the boundary of an element) and the integration points are at internal locations in the element.
Therefore, the final step is to somehow interpolate or extrapolate the Barlow point stresses to create a stress distribution for the entire structure. A naive way to do this is to interpolate within each element to calculate nodal stresses at the element, and then find the "average nodal stress" from all the elements which connect to each node.
That is a simple way to produce pretty computer graphics (and some commercial FE post processing software uses this algorithm), but a bit of experimentation (e.g. modelling a cantilever beam with shell elements) will show that the maximum errors (which are large) are on the boundaries where an engineer wants to know the stress, because (obviously) on a boundary there are fewer points to average.
A more sophisticated idea is to define a continuous stress function for the structure based on element shape functions, and do a least-squares fit to match that with the Barlow point stresses.
But those are still not always the stresses you are looking for, because a shell element model may contain assumptions (e.g. step changes in thickness or different materials in different parts of the model) which mean that assuming the stresses and strains are continuous everywhere is also physically wrong...
... and all of the above has ignored the complications of formulating curved shell elements, or using flat elements to model curved real-world shells. For example, it might make sense to average the stresses from flat elements modelling a spherical or cylindrical structure, but it doesn't make any sense at all to average the stress at the edges or corners of a box, where the sides, top and bottom are modelled as flat shells.
None of the above really answers the question, but at least you now know why a full answer is more likely to be a book (or a PhD thesis) not a post on Engineering.SE.
All this is still a research topic. Barlow's original 1976 paper is online here (paywall), plus a (free) list of more than 300 citations: https://onlinelibrary.wiley.com/doi/abs/10.1002/nme.1620100202
A shell element is similar to the plate element that having both in-plane and out-plane stiffness (note that membrane has the in-plane stiffness only), and have different bending theories:
- Mindlin Theory for thick shells, and
- Kirchhoff-Love Theory for thin shells.
Here is a good book to read, "Theory and Analysis of Elastic Plates and Shells", by J. N. Reddy.
And, here is a wiki-article on the differences of thick shell and thin shell and their formulations. https://wiki.csiamerica.com/display/kb/Thin+vs.+Thick+shells