Problem with Plate Bending Stress on triangle


I created some TriangleFlatShell Elements with the behaviour FlatShellBehaviour.DrillingDof. The deformation is very simular in comparsion to Ansys. But I got very different bending stresses. The stress was of course not evaluated on nodal loads and supports.
The evaluation was done by this code :
 var globTensor = new Func<TriangleFlatShell, MembraneStressTensor>(elm =>

                    MembraneStressTensor xx = new MembraneStressTensor();
                    BendingStressTensor xy = elm.GetInternalForce(0, 0, LoadCombination.DefaultLoadCombination).BendingTensor;
                    xx.Sx = xy.M11;
                    xx.Sy = xy.M22;
                    xx.Sz = xy.M33;

                    var rt = elm.RotateTensor(xx, Plane.XZPlane);

                    return rt;


  var bfeElms = new[] { model.Elements.IndexOf(targetElement) }.Select(i => model.Elements[i]).Cast<TriangleFlatShell>().ToArray();

                   var bsT = globTensor(bfeElms[0]);
Does anyone has an idea why this happened ?


epsi1on wrote Mar 2 at 3:58 AM

epsi1on wrote Mar 2 at 4:46 AM

Thank you for reporting the problem. I think you are right and it is possible that there be some bugs in BFE codes. Finding and fixing these errors can needs significant amount of time.

The BriefFiniteElementNet.Elements.TriangleFlatShell is going to be obsolete in near future and BriefFiniteElementNet.Elements.TriangleElement will be its successor, So rather to do not expense time on TriangleFlatShell and concentrate on TriangleElement. It would be great if you can have a brief look at code of method you are using, and see if you can find out something.
By the way do you know any reference (book, paper, etc.) for transforming bending tensor from local to global system on shell element?