Está en la página 1de 10

UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS

JULIAN DAVID MARTIN HERNANDEZ


CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

TRABAJO FINAL
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

% se definen los valores conocidos


D=6;
Lab=3;
W=2000;
% se define el vector Lac y su
incremento constante
a=6.7/0.1;
% el vector se inicia en a porque no
debe ser cero Lac.
% hay que encontrar los valores que
generan solucion al
% al sistema del cual se tiene que
%(D^2+Lab^2-(Lac(i))^2)/(2*D*Lab) debe
ser menor o igual a
% 1 o si no la solucion del arcoseno
sera compleja
% el minimo Lac que produce solución es
Lacmins=sqrt(D^2+Lab^2-2*D*Lab)
% el punto minimo de evaluación es Lac=3
y max Lac=6.7
Lac=linspace(Lacmins,6.7,a)
% se evalua el ciclo hasta romper la
condición de
% tensiones mayores a 2000lb
% agregamos una bandera que indique el
estatus de condición
% cumplida
act=0;
%% inciamos el contador en 1
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

while(act==0)
% se calcula cada variable
ciclicamente hasta encontrar
% valores mayores a 2000, el vector
se recorre de 6.7
% hasta Lacmins que es el valor
minimo de existencia de
% solución
theta(i)=acos((D^2+Lab^2-(Lac(a-
i))^2)/(2*D*Lab));
phi(i)=asin((Lab*sin(theta(i)))/(Lac(a-
i)));
A=[-cos(theta(i)) cos(phi(i));
sin(theta(i)) sin(phi(i))];
B=[0;W];
X(:,i)=inv(A)*B;
% para reducir todo a una sola
comparación
if X(1,i)>2000 || X(2,i)>2000
act=1;
pos=i;
% como el actual cumple que
X(1,i)>2000 || X(2,i)>2000
% entonces el valor anterior es el
minimo de Lac
Lacmin=Lac(a-i+1);
else
% en caso tal de que nunca supere
el valor de 2000
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

% este condicional rompe el while


if(i==67)
act=1;
% este es el valor minimo para
el caso de no
% cumplirse la condicion de
arriba
Lacmin=Lac(a-i+1);
else
act=0;
end;
act=0;
i=i+1
end

end
%ahora sigue la grafica hacemos un ciclo
for
for j=2:a
thetaG(j)=acos((D^2+Lab^2-
(Lac(j))^2)/(2*D*Lab));

phiG(j)=asin((Lab*sin(thetaG(j)))/(Lac(j
)));
AG=[-cos(thetaG(j)) cos(phiG(j));
sin(thetaG(j)) sin(phiG(j))];
BG=[0;W];
XG(:,j)=inv(AG)*BG;
end
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

plot(Lac(:),XG(1,:),Lac(:),XG(2,:))
hold on
plot(Lacmin,X(1,i-1),'*')
hold on
plot(Lacmin,X(2,i-1),'*')
grid on
legend('Tab','Tac','Lacmin/Tab','Lacmin/
Tac')
xlabel('Lac [ft]')
ylabel('T [Lb]')
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

clc
clear
r_a= double (input('ingrese el valor del
radio a: '));
r_b= double (input('ingrese el valor
del radio b: '));
%
Area_toroide = pi^2*(r_b^2-r_a^2)
Volumen_toroide=
1/4*pi^2*(r_a+r_b)*(r_b-r_a)^2
sprintf('El area del toride es: %f\nEl
volumen del toroide es:
%f',Area_toroide,Volumen_toroide)
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

ingrese el valor del radio a: 20


ingrese el valor del radio b: 10

Area_toroide =

-2.9609e+03

Volumen_toroide =

7.4022e+03

ans =

'El area del toride es: -2960.881320


El volumen del toroide es: 7402.203301'
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

clc
clear
syms x
y=x^4-16/3*x^3+8*x^2-4;
d=diff(y,x);

K>> d

d =

4*x^3 - 16*x^2 + 16*x

clc
clear
syms x
y=4*x^3 - 16*x^2 + 16*x;
d=diff(y,x);
K>> d

d =

12*x^2 - 32*x + 16
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

clc
clear
syms x
y=12*x^2 - 32*x + 16;
d=diff(y,x);

K>> d

d=

24*x – 32

clc
clear
syms x
y=24*x - 32;
d=diff(y,x);
K>> d

d=

24
UNIVERSIDAD DISTRITAL FRANCISCO JOSE DE CALDAS
JULIAN DAVID MARTIN HERNANDEZ
CODIGO: 20201574029
GRUPO: 574-281
FUNDAMENTOS DE PROGRAMACIÓN

clc
clear
syms x
y=24;
d=diff(y,x);
K>> d

d=

También podría gustarte