Showing results for 
Search instead for 
Did you mean: 

BEAM Von Mises Stresses in a Contour Plot




I am purshing to plot the VM stresses of a BEAM structure as a contour/fringe (such as for the Comb. Stresses).


As far as I know, the only way to obtain the VM stresses of a beam element is by plotting the section cut(using the "Beam Cross Section"). this may not be always usefull specially if you want to show the critical elements in a huge structure.


It would be really usefull to plot these results in a coloures contour along the elements. Other parameters may be needed to obtain this (eg. max. stress in the EndA/EndB in one/several Pt).


This option is available in other postprocessors such as Patran but I´m not sure how to proceed in FEMAP.


Any help will ve very much appreciated!


Re: BEAM Von Mises Stresses in a Contour Plot

Siemens Phenom Siemens Phenom
Siemens Phenom

I am not familiar with PATRAN plotting beam von Mises stress data except like FEMAP does, in a 2-D cross section of the beam.  Would you please run the attached NASTRAN model and show me what PATRAN produces for von Mises stresses?  

Re: BEAM Von Mises Stresses in a Contour Plot


Hi masherman,


thanks a lot for your quick reply. Attached you have a PATRAN plot of the VM stresses at the beam. This fringe is based on the maximum stress at each node section.





Unfortunately I was unable to compare the attached plot withthe FEMAP output as my FEMAP is unable to show the VM stresses at the beam sections.

I´m using v11.3.2, it runs your txt file directly and the usual contours/deformed plots work fine. However, the beam cross section menu doesn´t show any result. The following error is shown in the message window: "No valid elements selected for beam cross section contour".

I´ve rerunned the model asking for the "Eq. Forces" and "Force Balances" in destination 3 "Print and PostProcess". This doesn´t work either.


Thanks in advance!


Re: BEAM Von Mises Stresses in a Contour Plot

Siemens Phenom Siemens Phenom
Siemens Phenom

I really don't know exactly what PATRAN is doing, but the maximum value being displayed appears to be the Max Combined Stress from NASTRAN.  This is not von Mises, it is the Maximum Tensile value for combined Axial and Bending Stress Mc/I + P/A, 6.15+003 appears in the .F06 listing as this value -


You can get the same plot in FEMAP by making a Contour of Vector "3164..Beam EndA Max Comb Stress", FEMAP automatically grabs the matching EndB data to make this plot -


In order to calculate beam von Mises stresses, you need the cross section, using the information from the Max Combined Stress, I zeroed in on Element 35 and used FEMAP's View - Advanced Post - Beam Cross Section and get this von Mises stress plot -


The von Mises Stress is 6913, higher than the Max Combined Stress since stresses due to torsion are now taken into account.  This is what makes me think that PATRAN is just reporting back the Max Combined Stress and not a calculated von Mises value. 


I realize that it would be tedious to look at every beam in your model to find peak von Mises values.  Our Beam Cross Section Stress Calculator is available via the FEMAP API.  Here is an API that will go through every beam in your model, for every output set, and report back maximum calculated von Mises stresses for each element, and report back the overall highest.


The HTML Clipboard

Sub Main
    Dim App As femap.model
    Set App = feFemap()

    Dim ouSets As femap.Set
    Set ouSets = App.feSet

    rc = ouSets.AddAll( FT_OUT_CASE )

    Dim feElem As femap.Elem
    Set feElem = App.feElem

    Dim fbc As femap.BeamCalculator
    Set fbc = App.feBeamCalculator

    fbc.IncludeAxialForce = True
    fbc.IncludeMomentY = True
    fbc.IncludeMomentZ = True
    fbc.IncludeShearForceY = True
    fbc.IncludeShearForceZ = True
    fbc.IncludeTorque = True
    fbc.MeshFactor = 4
    fbc.Position = 0.0

    Dim mxStress2 As Double
    Dim mxStressID As Long
    Dim mxStressSetID As Long
    Dim mxStressSetID2 As Long

    Dim mxStress As Double
    Dim vMax As Double
    Dim vMin As Double
    Dim ouSetsID As Long
    ouSetsID = ouSets.ID
    Dim maxOutID As Long
    Dim maxComp As Long
    Dim maxLoc As Double
    Dim minOutID As Long
    Dim minComp As Long
    Dim minLoc As Double

    mxStress = 0.0
    mxStress2 = 0.0

    While feElem.Next
        If feElem.type = femap.FET_L_BEAM Or feElem.type = FET_L_BAR Then

            mxStress = 0.0
            fbc.Element = feElem.ID
            rc = fbc.FindMaxMinStress( ouSetsID, FBMC_SC_VONMISES, maxOutID, maxComp, maxLoc, vMax, minOutID, minComp, minLoc, vMin )

            If vMax > mxStress Then
                mxStress = vMax
                mxStressSetID = maxOutID
            End If

            If mxStress > mxStress2 Then
                mxStress2 = mxStress
                mxStress2ID = feElem.ID
                mxStressSetID2 = maxOutID
            End If

            Msg = "The Maximum vonMises Stress for Element " + Str$( feElem.ID) + " is " + Str$( mxStress) + " Output Set ID " + Str$(mxStressSetID)
            rc = App.feAppMessage( FCM_NORMAL, Msg )

        End If

    If mxStress2 > 0.0 Then
        Msg = "The Maximum overall vonMises Stress is" + Str$( mxStress2) + " on Element " + Str$(mxStress2ID ) + " Output Set ID " + Str$(mxStressSetID2)
        rc = App.feAppMessage( FCM_NORMAL, Msg )
    End If

End Sub

Running this API does find and report back -


"The Maximum overall vonMises Stress is 6312.9892578125 on Element  35 Output Set ID  1"


Please try this on your model and let me know if it helps.  As soon as we get v11.4 out the door, we'll work on a more comprehensive version of this API that creates EndA and EndB von Mises data so that you can do a contour plot.