Sunteți pe pagina 1din 10

SOLUCIÓN DE PREGUNTA 7

%Solucion PC 03 - Pregunta 07
%Ejercicio de torsión en un tronco de cono
%Autor: Gustavo Loa Canales

clc; %limpia el comand window


clear; %limpia el workspace
close ALL; %cierra figura
fprintf('<strong>Ejercicio de torsión en un tronco de cono</strong> \n');

%**************************************************************************
%******************** Datos de entrada *************************
%**************************************************************************

%Datos de entrada:
T = input('Torsión en el tronco de cono (N-mm): ');
L = input('Altura del tronco de cono (mm): ');
G = input('Módulo de corte del tronco de cono (MPa): ');
c = input('Radio menor del tronco de cono (mm): ');
n = [10 25 50 100];%vector de subdivisiones

%**************************************************************************
%*********** Cálculo matemático de la deformación **************
%**************************************************************************

syms x; %Se crea la variable x para comenzar la integración


%Se parte el tronco cónico en diferenciales para integrar y obtener el giro
%total
rx = c + c/L*x; %radio en el diferencial x
Jx = (pi/2)*rx^4; %Inercia polar en el diferencial x
giro_exacto = int(T/(G*Jx),'x',0,L); %Giro en el extremo del tronco cónico
giro_exacto = double(giro_exacto); %Se convierte de simbolo a número

%**************************************************************************
%***** Desarrollo numérico de la solución mediante particiones *******
%**************************************************************************

giro_aprox = zeros(1,numel(n));%vector que capta los resultados para las


diferentes particiones

for i=1:numel(n); %condicional para resolver para diferentes casos de n


giro = 0;%deformación para el disco 0 comienza en 0
for j=1:n(i); %solución para caso de n
radio = c+(j-1/2)*c/n(i); %radio medio de cada división en la altura
J = (pi/2)*radio^4; %Inercia polar para cada división
giro = T*(L/n(i))/(G*J); %giro en cada división
giro_aprox(1,i) = giro_aprox(1,i) + giro; %giro total para cada caso de n
%Deformación total del tronco cónico es igual al acumulado del disco de cada
disco
end
end

%Cálculo del porcentaje de error para cada subdivisión


error = abs(giro_aprox-giro_exacto)/giro_exacto*100;

%**************************************************************************
%********************** Presentación de resultados *******************
%**************************************************************************

%Se presentan los datos de salida como texto:


fprintf('<strong>Resultados</strong> \n');
fprintf('La deformación exacta es %5.3f rad.\n',giro_exacto);
fprintf('El porcentaje de error para 5,10,15,20 particiones es
%5.3f,%5.3f,%5.3f,%5.3f\n',error(1:4));

%Se presentan los datos de salida en un gráfico:


figure(1)
set(0,'defaultfigurecolor',[1 1 1])
plot(n,error,'k','Linewidth', 2); grid on
xlabel('Número de divisiones (n)');ylabel('% de error');
title('% de error vs número de divisiones');

El programa consiste en los siguientes pasos:


Paso 1: Lectura de datos de entrada:
Momento torsor (N-mm)
Altura del tronco cónico (mm)
Módulo de corte del tronco cónico (MPa)
Radio superior del tronco cónico (mm)
Paso 2: Solución teórica.
Se plantea la ecuación de giro por torsión para cada diferencial en la altura y se integra para
estimar el giro en el extremo del elemento. La torsión sobre cada diferencial es constante en la
altura y la variación se produce en la Inercia polar. La solución de la función ‘int’ del MATLAB
es simbólica y es necesario aplicar la función double para que se vuelva un número decimal.
Paso 3: Solución numérica:
Se subdivide el tronco cónico en discos. Dependiendo el número de particiones, se calcula el
radio de cada disco. A mayor número de particiones, la respuesta convergerá a la respuesta
teórica.
Los alumnos son libres de elegir las variables para su desarrollo, sin embargo, las operaciones
debe ser muy similares a las desarrolladas en el script adjunto.
Forma de ingreso de datos:

La mayor dificultad para el alumno debe ser el planteo de la iteración para cada valor de n. El
programa calcula el giro en el extremo para cada valor de n y el porcentaje de error respecto al
valor real.

Para los valores de “n” de 10, 25, 50 y 100 se obtiene la figura 1.


Figura 1: Número de divisiones vs porcentaje de error
Si se calcula para una mayor cantidad de valores de “n”, se obtendría una mejor representación
del error vs el número de divisiones (ver figura 1).

S-ar putea să vă placă și