Main Content

evaluateVonMisesStress

Evaluate von Mises stress for dynamic structural analysis problem

Description

vmStress = evaluateVonMisesStress(structuralresults) evaluates von Mises stress at nodal locations for all time- or frequency-steps.

example

Examples

collapse all

Evaluate the von Mises stress in a beam under a harmonic excitation.

Create and plot a beam geometry.

gm = multicuboid(0.06,0.005,0.01);
pdegplot(gm,FaceLabels="on",FaceAlpha=0.5)
view(50,20)

Figure contains an axes object. The axes object contains 6 objects of type quiver, text, patch, line.

Create an femodel for transient structural analysis and include the geometry.

model = femodel(AnalysisType="structuralTransient", ...
                Geometry=gm);

Specify Young's modulus, Poisson's ratio, and the mass density of the material.

model.MaterialProperties = ...
    materialProperties(YoungsModulus=210E9, ...
                       PoissonsRatio=0.3, ...
                       MassDensity=7800);

Fix one end of the beam.

model.FaceBC(5) = faceBC(Constraint="fixed");

Apply a sinusoidal displacement along the y-direction on the end opposite the fixed end of the beam.

yDisplacementFunc = ...
@(location,state) ones(size(location.y))*1E-4*sin(50*state.time);
model.FaceBC(3) = faceBC(YDisplacement=yDisplacementFunc);

Generate a mesh.

model = generateMesh(model,Hmax=0.01);

Specify the zero initial displacement and velocity.

model.CellIC = cellIC(Displacement=[0;0;0],Velocity=[0;0;0]);

Solve the model.

tlist = 0:0.002:0.2;
R = solve(model,tlist);

Evaluate the von Mises stress in the beam.

vmStress = evaluateVonMisesStress(R);

Plot the von Mises stress for the last time-step.

figure
pdeplot3D(R.Mesh,ColorMapData = vmStress(:,end))
title("von Mises Stress in the Beam for the Last Time-Step")

Figure contains an axes object. The hidden axes object with title von Mises Stress in the Beam for the Last Time-Step contains 5 objects of type patch, quiver, text.

Input Arguments

collapse all

Solution of a dynamic structural analysis problem, specified as a TransientStructuralResults or FrequencyStructuralResults object. Create structuralresults by using the solve function.

Output Arguments

collapse all

Von Mises Stress at the nodes, returned as a matrix. The rows of the matrix contain the values of von Mises stress at nodal locations, while the columns correspond to the time or frequency steps.

Version History

Introduced in R2018a