When STRFLG=1, d3plot contains only 12 shell trains per time state: epsxx, epsyy, epszz, epsxy, epsyz, and epszx for the innermost ipt and epsxx, epsyy, epszz, epsxy, epsyz, and epszx for the outermost ipt. "Mean" values of epsxx, epsyy, epszz, epsxy, epsyz, and epszx are calculated by LS-PrePost as (upper eps + lower eps)/2. Principal strains and effective strain are calculated by LS-PrePost using the aforementioned epsxx, epsyy, epszz, epsxy, epsyz, and epszx values. effective strain = sqrt(2.0*(epsxx^2+epsyy^2+epszz^2)/3.0 + (epsxy^2+epsyz^2+epsxz^2)/3.0) Ticket#2015042310000215 __________________________________________________________________________ Whereas through-thickness strain of shells is always computed, change of thickness is NOT calculated by default. ISTUPD in *control_shell controls only whether the shell thickness is updated in accordance with the through-thickness strain. By setting ISTUPD to 1, change of shell thickness is activated. Shell thinning may be important in applications where shell stretching is prominent -- this is NOT the case in the majority of impact simulations while it IS important in metal forming applications. In crash analysis, we recommend ISTUPD be left as zero (no change in thickness) for several reasons. For one, it's cheaper and secondly, shell thinning is generally not an important effect. Lastly, dynamic simulations may be somewhat less stable with shell thinning turned on. [Version 971 update: A new parameter PSSTUPD in *control_shell identifies which parts are affected by the ISTUPD parameter. This allows some parts to include shell thinning and others not. Also, a new thinning option, invoked by setting ISTUPD=4, is available for isotropic, elasto-plastic materials. This new option should be more stable than ISTUPD=1 since elastic strains are neglected in the thickness update.] Most shell formulations are, by definition, plane stress elements, meaning local sig-zz is zero. However, eps-zz can be and usually is nonzero. Bearing in mind that transverse shear stresses and strains can be nonzero, principal stresses and principal strains may not be in-plane. LSPP allows the user to plot vectors of princ. stress, in-plane princ. stress, princ. strain, and in-plane princ. strain. The in-plane principal stresses (strains) are calculated considering only the in-plane stresses (strains), including the in-plane shear stress (strain). There are two appoaches that LS-PrePost uses for calculating principal strains in shells. 1. "Full 3D" Method. This method takes into account all 6 components of strain. The following LS-Prepost buttons utilize this method: Vector > Prin. strain Post > FriComp > Strain > L-surf max-prin strain History > Element > Lower surface principal strain 2. "In-Plane" strain Method. In the second method, the two in-plane principal strains are computed by LS-PrePost by first transforming the six global components of strain to the local element system. Then, using ONLY the three in-plane components of local strain, one of which is the in-plane shear strain, the two in-plane principal strains are derived. The following LS-Prepost buttons utilize this method: Vector > P. Inplane strain Post > FriComp > FLD > lower eps1 or, equivalently, Post > FriComp > Forming > Bottom Major Prin. strain After the fringing operation, you may create a history plot by selecting History > Scalar --------------------------------------------- LSPP computes the "In-Plane" principal strain based on the formula: E_max = (ex+ey)/2 + sqrt(0.25*(ex-ey)*(ex-ey) + exy*exy); E_min = (ex+ey)/2 - sqrt(0.25*(ex-ey)*(ex-ey) + exy*exy); where E_max,E_min,ex,ey and exy means the "In-Plane" max principal strain,the "In-Plane" min principal strain, the "In-Plane" x strain, the "In-Plane" y strain and the "In-Plane" shear strain, resp. In Ticket 2017090610000039, this user wanted to multiply a factor in front of "exy" in calculating the "In-Plane" principal strain, say E_max = (ex+ey)/2 + sqrt(0.25*(ex-ey)*(ex-ey) + FACTOR *exy*exy); E_min = (ex+ey)/2 - sqrt(0.25*(ex-ey)*(ex-ey) + FACTOR *exy*exy); and so I added a command: [shearstrainfactor factor], say "shearstrainfactor 0.25" to initialize the factor, thanks. WangKai Ticket#2019021410000167 ____________________________________________________________________________ Maximum in-plane (tensorial) shear strain is gamma/2 = (eps1 - eps2)/2. In other words, tensorial shear strain is half the engineering shear strain. You can get a time history of maximum in-plane shear strain by plotting histories of eps1 and eps2 on the same plot and then using the "Oper" button to subtract the eps2 curve from the eps1 curve. Then use "Scale" to scale the ordinate value by 0.5. ___________________________________________________________ Of course, before you can do any of the above, you MUST set the strain output flag STRFLG to 1 in the LS-DYNA input deck using *database_extent_binary so that the strain tensor is written to the d3plot and/or elout databases. Be aware that the strain values stored in the databases correspond to the upper and lower integration points, not the actual upper and lower surfaces of the shell (unless you've placed integration points on the surface by way of *integration_shell or have specified that Lobatto integration be used via *control_shell). As an alternative to Lobatto integration, LS-PrePost can use resultant forces and moments to calculate STRESS (not strain) on the surface of a cal' method gives you the in-plane principal strains. shell (assuming linear elasticity). To invoke this feature, choose one of the last six components listed under Fcomp > Result. Setting STRFLG=1 in *DATABASE_EXTENT_BINARY only directs the code to dump strains at the uppermost and lowermost integration points. But if you additionally set INTOUT="STRAIN" or "ALL" in *DATABASE_EXTENT_BINARY, and include *DATABASE_ELOUT and *DATABASE_HISTORY_SHELL in your input, you'll get strains at all shell integration points for the shells chosen via *DATABASE_HISTORY_SHELL. Look for this detailed output in the "eloutdet" file. Also, the strains in d3plot are in the global system while the strains in elout are in the local element system. So eps-zz in elout would be the through thickness strain. To plot elout data using LS-PrePost, choose the following ... History>ASCII>elout>Load>Strain>(select element)>(select upper or lower surface)>eps-zz>Plot See http://ftp.lstc.com/anonymous/outgoing/support/FAQ_kw/simple_cantilever_22_impl.k for an example. In d3plot, strain can only be written at the lowermost and uppermost integration points and therefore fringe plots of strain at interior integration points are not possible. Keys to understanding the strain output: 1. Use the Setting button to select the through-thickness location before plotting In-plane strain vectors via the Vector button. 2. The in-plane principal strains are labeled as max principal and min principal in Fcomp > Strain and History > Element when "Local" is toggled on. Through-thickness strain appears as 2nd principal. This convention is somewhat misleadsing since it does NOT necessarily meet the condition 2nd prin strain > min principal strain and < max principal strain. A final note -- it is not proper to extrapolate principal strains from integration points to the surface; extrapolation is only appropriate for the six components of the strain tensor. You can plot the six components of strain in either the global coordinate system (default for d3plot data) or the element local coordinate system (default for elout data; also available from d3plot data by selecting "Local" in the postprocessor ). The advantage of working with strains in the local element system is that x and y axes are, by definition, in plane. Strains from Fcomp > Infin are calculated by LS-PrePost using nodal coordinates and thus are only an approximation. The greater the displacements, the worse the approximation. Furthermore, strains acquired in this manner would not take into account any variation of strain through the thickness of the shell. Lastly, be aware the infinitesimal strain is affected by rotation of the element as illustrated by ftp://ftp.lstc.com/outgoing/support/FAQ_kw/spinup.bar.expl_dr.k. In constrast, the tensorial strains stored in d3plot and elout (when STRFLG=1) are calculated directly by LS-DYNA and are thus accurate for large displacements and give the variation of strain through the shell thickness. jpd