Dear all,
I am trying to plot a deformed shape of a 3d object using pdeplot3d, inputing a structured array consisting of ux,uy,uz.
g = pdeplot3D(model,'ColorMapData',structuralresults.Displacement.uy)
The function plots the undeformed shape of the object, however it seems to ignore the 'Deformation' input.
Any ideas of how to deal with this?

 采纳的回答

Cris LaPierre
Cris LaPierre 2021-2-27

0 个投票

Your syntax for applying the deformation is correct. Perhaps your values of Displacement are not what you expect? We don't have your data to test, but since you are are displacing all nodes, I wonder if the end result is just a linear translation of your structure. In other words, the result of the deformation is just moving the structure uniformly in x,y and z.
Can you attach you structural model and Displacement variable? You can save them to a mat file and attach them to your post using the paperclip icon.

3 个评论

The Displacement and model variables appear to be missing. Can you include that as well?
Learning as i go. It appears to me you are using settings for a structural model on a PDE model (the data types). Any chance you can create your model as a StructuralModel rather than a PDEModel?
I'm not seeing any way to apply a displacement to a pde model.
Great answer and it solved the problem. Much appreciated sir.

请先登录,再进行评论。

更多回答(1 个)

I had a similar issue with pdeplot3D eithor not plotting deformations or plotting unrealistic deformations. Turned out that the issue was that I wasn't using the DeformationScaleFactor parameter, so Matlab just picked something automatically.
This is how to plot the deformed shape properly:
figure
pdeplot3D(model,"Deformation",structuralresults.Displacement,"DeformationScaleFactor",1)
axis equal
axis on

产品

版本

R2019b

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by