# GetStrain() and GetStress() equivalents for ChElementShellBST

38 views

### Qian Cao

Jan 5, 2022, 8:29:58 AMJan 5
to ProjectChrono
Happy new year everyone,

I just have a quick question about how to retrieve stress and strain values from ChElementShellBST elements.

From the example script: https://github.com/projectchrono/chrono/blob/develop/src/demos/python/fea/demo_FEA_shellsBST.py, several fields are extracted from the element after running the solver:

Fi = chrono.ChVectorDynamicD(melement.GetNdofs())
melement.ComputeInternalForces(Fi)

print( "BST updated: \n"

+ "phi: " + str(melement.phi) + "\n"

+ "k: " + str(melement.k) + "\n"

+ "e: " + str(melement.e) + "\n"

+ "m: " + str(melement.m) + "\n"
+ "n: " + str(melement.n) + "\n" )

But I'm having trouble finding documentation on what phi, k, e, m, and n are. Are they the same variables as described in Onate's paper (https://www.cimne.com/eoOld/publicaciones/files/Rotation-freeTriangularplate.pdf)?

k == kappa == curvature?
e == epsilon == membrane strain?
What is m, n and phi?

Thank you,

Qian

### JASON Z

Jan 9, 2022, 1:08:51 AMJan 9
to ProjectChrono
Hi,

I would recommand you check the source code of "ChElementShellBST".

The definition of each field is commented in the source.

Line 225:
ChVector<> phi; // actual edge bendings (last computed) - can be made temp in force computation if not needed to fetch

Line 232 - 236:
ChVector<> k; // actual curvature (last computed)
ChVector<> e; // actual strain (last computed)

ChVector<> n; // actual stress, membrane (last computed)
ChVector<> m; // actual stress, bending (last computed)

Jason

### Qian Cao

Jan 9, 2022, 1:13:05 AMJan 9
to ProjectChrono
Thank you, Jason.

Q

Jan 9, 2022, 9:06:45 AMJan 9
to qianc...@gmail.com, ProjectChrono

These public member variables of ChElementShellBST are now documented with doxygen.  See https://api.projectchrono.org/classchrono_1_1fea_1_1_ch_element_shell_b_s_t.html