How to plot the deformed shape of a truss

14 vues (au cours des 30 derniers jours)
Vlasis Demosthenes
Vlasis Demosthenes le 8 Déc 2018
Réponse apportée : Naga le 16 Sep 2024
How can I plot the undeformed and deformed shape of a truss?
The code?

Réponses (1)

Naga
Naga le 16 Sep 2024
Hello Vlasis,
To plot the undeformed and deformed shape of a truss, you can follow these steps:
  1. Define the node coordinates and element connectivity.
  2. Calculate the deformed node coordinates based on the displacement vector.
  3. Use plot to draw lines between nodes for both undeformed (solid) and deformed (dashed) configurations.
Below is an example code to achieve this:
% Node coordinates (x, y)
nodes = [0, 0; 1, 0; 1, 1; 0, 1];
% Element connectivity (start node, end node)
elements = [1, 2; 2, 3; 3, 4; 4, 1; 1, 3; 2, 4];
% Displacement vector [u, v] for each node
displacements = [0, 0; 0.1, 0; 0.1, 0.1; 0, 0.1];
% Scale factor for deformation
scaleFactor = 1;
% Deformed node coordinates
deformedNodes = nodes + scaleFactor * displacements;
% Plot
figure; hold on;
for i = 1:size(elements, 1)
n1 = elements(i, 1); n2 = elements(i, 2);
% Undeformed shape (solid blue)
plot(nodes([n1, n2], 1), nodes([n1, n2], 2), 'b-', 'LineWidth', 2);
% Deformed shape (dashed red)
plot(deformedNodes([n1, n2], 1), deformedNodes([n1, n2], 2), 'r--', 'LineWidth', 2);
end
xlabel('X'); ylabel('Y'); legend('Undeformed', 'Deformed');
title('Truss Structure'); axis equal; grid on; hold off;
Adjust the node coordinates, element connectivity, and displacements as required for your specific problem.

Catégories

En savoir plus sur Structural Analysis dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by