Matlab - AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

 
Vista:
sin imagen de perfil
Val: 65
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por José (35 intervenciones) el 28/09/2020 05:34:00
Buena noche a todos.

Me encuentro resolviendo vigas por el método de las rigideces y me piden graficar los diagramas de cortante y momento flector. De la manera que lo hago es con el comando patch, graficando polígonos correspondientes al diagrama. Mi duda es si hay una manera más eficiente de hacer dichos diagramas. Gracias de antemano.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
figure(1)
plot(nod(:,1),nod(:,2),'linewidth',3), hold on, grid on
plot(nod(1,1),nod(1,2)-0.5,'gs','markersize',10,'linewidth',4)
plot(nod(3,1),nod(3,2)-0.5,'go','markersize',10,'linewidth',4)
plot(nod(4,1),nod(4,2)-0.5,'go','markersize',10,'linewidth',4)
plot(nod(5,1),nod(5,2)-0.5,'gs','markersize',10,'linewidth',4)
%Diagrama de cortante
v1=[0 0;0 3;60 3;60 0];
f1=[1 2 3 4];
patch('Faces',f1,'Vertices',v1,'FaceColor','blue','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt1 = ['3000 lb'];
text(0,4,txt1)
v2=[60 0;60 -2;120 -2;120 0];
f2=[1 2 3 4];
patch('Faces',f2,'Vertices',v2,'FaceColor','red','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt2 = ['-2000 lb'];
text(120,-3,txt2)
v3=[120 0;120 0.375;240 0.375;240 0];
f3=[1 2 3 4];
patch('Faces',f3,'Vertices',v3,'FaceColor','blue','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt3 = ['375 lb'];
text(240,0.5,txt3)
v4=[240 0;240 -0.125;360 -0.125;360 0];
f4=[1 2 3 4];
patch('Faces',f4,'Vertices',v4,'FaceColor','red','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt4 = ['-125 lb'];
text(360,-0.3,txt4)
title('DIAGRAMA DE CORTANTE')
axis([-10 400 -4 6])
 
% %Diagrama de momento flector
figure(2)
plot(nod(:,1),nod(:,2),'linewidth',3), hold on, grid on
plot(nod(1,1),nod(1,2)-0.5,'gs','markersize',10,'linewidth',4)
plot(nod(3,1),nod(3,2)-0.5,'go','markersize',10,'linewidth',4)
plot(nod(4,1),nod(4,2)-0.5,'go','markersize',10,'linewidth',4)
plot(nod(5,1),nod(5,2)-0.5,'gs','markersize',10,'linewidth',4)
v1=[0 0;0 9.5;95/3 0;];
f1=[1 2 3];
patch('Faces',f1,'Vertices',v1,'FaceColor','red','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt1 = ['-95000 lb*in'];
text(0,10,txt1)
v2=[95/3 0;60 -8.5;205/2 0];
f2=[1 2 3];
patch('Faces',f2,'Vertices',v2,'FaceColor','blue','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt2 = ['85000 lb*in'];
text(60,-9,txt2)
v3=[205/2 0;120 3.5;640/3 0];
f3=[1 2 3];
patch('Faces',f3,'Vertices',v3,'FaceColor','red','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt3 = ['-35000 lb*in'];
text(120,4,txt3)
v4=[640/3 0;240 -1;320 0];
f4=[1 2 3];
patch('Faces',f4,'Vertices',v4,'FaceColor','blue','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt4 = ['1000 lb*in'];
text(240,-2,txt4)
v5=[320 0;360 0.5;360 0];
f5=[1 2 3];
patch('Faces',f5,'Vertices',v5,'FaceColor','red','EdgeColor','black','LineWidth',0.5,'FaceAlpha',.3);
txt5 = ['-5000 lb*in'];
text(360,1,txt5)
title('DIAGRAMA DE MOMENTO FLECTOR')


Captura
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jon
Val: 354
Ha aumentado 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por Jon (161 intervenciones) el 28/09/2020 08:20:54
Buenas José,

Yo por lo menos no conozco una forma más eficiente de obtener dichos diagramas, ya que MATLAB está pensado para graficar señales y no funciones parte por parte.

Yo te recomendaría el programa MDSolids (licencia libre mirando en Internet), un programa muy simple pero con muchas opciones en cuanto a Resistencia de Materiales (diagramas, etc.).

Un saludo,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por José (35 intervenciones) el 28/09/2020 14:15:11
Buen día Jon.

Lo que sucede es que en las tareas que me asignan, me piden hacer los diagramas en Matlab y compararlos con SAP 2000, pero al graficarlos en Matlab me parece que se hace lenta la labor. Gracias por la recomendación del programa, lo tendré en cuenta para comparar resultados.

Saludos desde Colombia.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 28/09/2020 18:55:23
Tiene que usar ciclos iterativos para poder optimizar el código.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por Leonardo (1 intervención) el 28/02/2022 04:52:00
Cuando se corre tu código aparece un error que dice que no encuentra la variable "nod" que usas en la línea 2 para el plot, me podrias decir que ese "nod"?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

AYUDA PARA HACER MÁS RÁPIDO DIAGRAMAS DE CORTANTE Y MOMENTO FLECTOR

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 07/03/2022 21:59:26
Sólo ha compartido una parte del código, por que no hay información del codigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar