Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
I.
INGENIERA CIVIL
OBJETIVOS:
Dominio y aplicacin de las sentencias if, switch
y while con lectura y escritura interactiva de
variables.
Hacer un programa aplicado a la Ingeniera en
MATLAB usando las sentencias if, switch y
while.
PROGRAMACIN DIGITAL
IC-246
II.
INGENIERA CIVIL
RESUMEN
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
DESCRIPCIN MATEMTICA
RECTANGULA R , TRIANGULAR YTRAPEZOIDAL
ECUACIN DEL CAUDAL
AR 2 / 3 S 1 / 2
A5 / 3 S 1 / 2
n
nP 2 / 3
REEMPLAZANDO LAS EXPRESIONES DE A Y P Y DESPEJANDO TIRANTE
b zy y 5 / 3 S 1 / 2
Qn
b 2 y 1 z
S
Qn
b 2 y 1 z
S
2/3
n b 2 y 1 z 2
b zy y 5 / 3 Qn
b 2 y 1 z 2
1/ 2
S
b zy y 5
b zy 5 y 5
Qn
S 1/ 2
2/3
2/3
1/ 2
1/ 2
b 2 y
b zy
1 z
1/ 5
Qn
C
1/ 5
C b 2 y 1 z 2
y
b zy 5
Para la sec cin rec tan gular ( z 0)
Cb 2 y 2
b5
1/ 5
1/ 5
C 2 y 1 z 2
y
zy 5
PARA LOS TRES ANTERIORES
A (b zy ) y
P b 2 y 1 z 2
T b 2 zy
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
Q
PARA LA SECCIN PARBOLICA
A5 / 3 S
nP 2 / 3
Qn 2 / 3 2
P Ty
S
3
2
T
K
8y
5/3
K 2y
2
Ty
3
2
T
3
Qn
Qn 2 / 3
P
S
Qn 2 / 3
P
S
1/ 5
Qn
P2
S
3
y
2T
C d
2
1/ 5
1/ 5
K 2y
2 Ky 4 y 2 K ln
K K
A
P
Velocidad del flujo :
Q
V
A
Nmero de FroVude
3
2
CP
2T
2
A T y
3
1/ 5
1
sen d 2
8
1
P d
2
T sen
d
2
Finalmente :
Radio Hidrulico
d
2
Qn
y
P2
S
d
2
8
sen
d2
Qn
Qn
Qn
2/3
Qn 1
d
2
S
2y
2
Ty
3
1
2
sen d
8
2 Ky 4 y 2 K ln
5/3
5/3
8
sen
d2
1
2
sen d
8
T
8y
2y
A
T
Energ Especfecica
V2
2g
Tipo de Flujo
E y
Si F 1 es un Flujo Subcritico
Si F 1 es un Flujo Supercriti co
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
Despejamos
Qn
1/ 2
S
obtenemos. y
3/5
b 2 y
1 z2
2/5
b 2R
SECCION TRIANGULAR CON BASE CIRCULAR
A5 / 3 S
nP 2 / 3
Al reemplazar el rea y el permetro en la ecuacin, luego despejamos obtenemos lo sigiuente :
Para facilitar al escribir la operacin definimos J y ya sabemos T
Q
J = 1 z * cot g 1 ( z )
T = 2 z y - R R 1 z 2
z Qn
S 1/ 2
3/ 5
T2
2 RJ
1 z
z
2/5
1/ 2
R J
R 1 z2
z
SECCION EN FORMA DE BAUL
Q
A5 / 3 S
nP 2 / 3
rea
.R 2
+ (y - R).2R
2
Permetro
P = 2.(y - R) + R
A=
Radio hidrulico
A
P
Espejo de agua 2R
A
T
Al reemplazar el rea y el permetro en la ecuacin, luego despejando tenemos :
Profundidad Hidrulica
Qn
S 1 / 2
1/ 5
( 2( y R ) R )
2
2R
III.
PLANTEAMIENTO Y RESOLUCIN
1. Planteamiento del Problema.
Desarrollar un programa de Hidrulica de Canales Abiertos que calcule el
Tirante, Velocidad, rea Hidrulica, Permetro, Radio Hidrulico, Espejo de
agua o Foco de la Parbola, Nmero de Froude, Energa Especifica y Tipo de
Flujo por diferentes secciones geomtricas tales como: Rectangular , Triangular ,
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
switch u
case 1
msgbox('POR FAVOR ESCOJA UNA SECCION','ERROR')
return
case 2
img=imread('rectangular.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','on');
set(handles.talud,'visible','off');
set(handles.diametro,'visible','off');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','on');
set(handles.text23,'visible','off');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','on');
set(handles.text27,'visible','off');
set(handles.text28,'visible','off');
set(handles.text29,'visible','off');
set(handles.text30,'visible','off');
b=str2double(get(handles.base,'string'));
z=0;
case 3
img=imread('triangular.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','off');
set(handles.talud,'visible','on');
set(handles.diametro,'visible','off');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','off');
set(handles.text23,'visible','on');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','off');
set(handles.text27,'visible','off');
set(handles.text28,'visible','off');
set(handles.text29,'visible','off');
set(handles.text30,'visible','off');
b=0;
z=str2double(get(handles.talud,'string'));
case 4
img=imread('trapezoidal.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
set(handles.pendiente,'visible','on');
set(handles.base,'visible','on');
set(handles.talud,'visible','on');
set(handles.diametro,'visible','off');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','on');
set(handles.text23,'visible','on');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','on');
set(handles.text27,'visible','off');
set(handles.text28,'visible','off');
set(handles.text29,'visible','off');
set(handles.text30,'visible','off');
b=str2double(get(handles.base,'string'));
z=str2double(get(handles.talud,'string'));
case 5
img=imread('parabolico.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','off');
set(handles.talud,'visible','off');
set(handles.diametro,'visible','off');
set(handles.espejo,'visible','on');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','off');
set(handles.text23,'visible','off');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','off');
set(handles.text27,'visible','on');
set(handles.text28,'visible','off');
set(handles.text29,'visible','on');
set(handles.text30,'visible','off');
T=str2double(get(handles.espejo,'string'));
case 6
img=imread('circular.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','off');
set(handles.talud,'visible','off');
set(handles.diametro,'visible','on');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','off');
set(handles.text23,'visible','off');
set(handles.text24,'visible','on');
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
set(handles.text25,'visible','on');
set(handles.text26,'visible','off');
set(handles.text27,'visible','off');
set(handles.text28,'visible','on');
set(handles.text29,'visible','off');
set(handles.text30,'visible','on');
D=str2double(get(handles.diametro,'string'));
case 7
img=imread('rectangularesquinasredondeadas.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','on');
set(handles.talud,'visible','off');
set(handles.diametro,'visible','on');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','on');
set(handles.text23,'visible','off');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','on');
set(handles.text27,'visible','off');
set(handles.text28,'visible','on');
set(handles.text29,'visible','off');
set(handles.text30,'visible','on');
set(handles.text30,'string','Radio');
b=str2double(get(handles.base,'string'));
R=str2double(get(handles.diametro,'string'));
case 8
img=imread('triangularbasecircular.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','off');
set(handles.talud,'visible','on');
set(handles.diametro,'visible','on');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','off');
set(handles.text23,'visible','on');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','off');
set(handles.text27,'visible','off');
set(handles.text28,'visible','on');
set(handles.text29,'visible','off');
set(handles.text30,'visible','on');
set(handles.text30,'string','Radio');
z=str2double(get(handles.talud,'string'));
R=str2double(get(handles.diametro,'string'));
case 9
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
img=imread('baul.jpg');
axes(handles.axes1);
imshow(img);
set(handles.caudal,'visible','on');
set(handles.rugosidad,'visible','on');
set(handles.pendiente,'visible','on');
set(handles.base,'visible','off');
set(handles.talud,'visible','off');
set(handles.diametro,'visible','on');
set(handles.espejo,'visible','off');
set(handles.text19,'visible','on');
set(handles.text20,'visible','on');
set(handles.text21,'visible','on');
set(handles.text22,'visible','off');
set(handles.text23,'visible','off');
set(handles.text24,'visible','on');
set(handles.text25,'visible','on');
set(handles.text26,'visible','off');
set(handles.text27,'visible','off');
set(handles.text28,'visible','on');
set(handles.text29,'visible','off');
set(handles.text30,'visible','on');
set(handles.text30,'string','Radio');
R=str2double(get(handles.diametro,'string'));
end
IC-246
INGENIERA CIVIL
%PROCESO DE CALCULO
error=0.0000000001
C=((Q*n)/sqrt(S))^3;
y=1;
if u<=4
L=sqrt(1+z^2);
E=1;
while E>=error
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
G=y;
J=C*(b+2*y*L)^2;
K=(b+z*y)^5;
y=(J/K)^(1/5);
E=abs(G-y);
end
A=(b+z*y)*y;
P=b+2*y*L;
T=b+2*z*y;
elseif u==5
E=1;
while E>=error
G=y;
J=C*(3/(2*T))^5;
K=(T^2)/(8*y);
P=(2*K*y+4*y^2)^0.5+K*log(((K+2*y)^0.5+(2*y)^0.5)/(K^0.5));
y=(J*P^2)^(1/5);
E=abs(G-y);
end
A=(2*T*y)/3;
P=(2*K*y+4*y^2)^0.5+K*log(((K+2*y)^0.5+(2*y)^0.5)/(K^0.5));
K=(T^2)/(8*y);
elseif u==6
E=1;
teta=pi/2;
while E>=error
G=teta;
J=(D*teta/2)^2;
K=8*((C*J)^(1/5))/(D^2);
teta=sin(teta)+K;
E=abs(G-teta);
end
y=D*(1-cos(teta/2))/2;
A=((D^2)*(teta-sin(teta)))/8;
P=(teta*D)/2;
T=D*sin(teta/2);
elseif u==7
E=1
M=((Q*n)/sqrt(S))^(3/5)
L=(pi-2)*R+b+2*y
N=(pi/2-2)*R^2
while E>=error
G=y
y=(M*L^(2/5)-N)/(b+2*R)
E=abs(G-y)
end
A=N+(b+2*R)*y
P=L
T=b+2*R
elseif u==8
E=1
while E>=error
G=y
J=1-z*(acot(z))
T=2*(z*(y-R)+R*sqrt(1+z^2))
y=((4*z*(C)^(1/5)*((T^2*sqrt(1+z^2)/z)(2*R*J/z))^(2/5)+4*R^2*J)^1/2-2*R*sqrt(1+z^2))/(2*z)+R
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
E=abs(G-y)
end
A=T^2/(4*z)-R^2*J/z
P=T^2*sqrt(1+z^2)/z-2*R*J/z
T=2*(z*(y-R)+R*sqrt(1+z^2))
elseif u==9
E=1
while E>=error
G=y
J=(2*(y-R)+pi*R)^2
y=(C*J)^(1/5)/(2*R)+(pi*R)/4+R
E=abs(G-y)
end
A=pi*R^2/2+(y-R)*2*R
P=2*(y-R)+pi*R
T=2*R
end
R=A/P;
V=Q/A;
F=V/(sqrt(9.810001*A/T));
E=y+V^2/19.62;
%VISUALIZACION DE RESULTADOS
set(handles.tirante,'string',y);
set(handles.velocidad,'string',V);
set(handles.area,'string',A);
set(handles.perimetro,'string',P);
set(handles.radio,'string',R);
set(handles.froude,'string',F);
set(handles.energia,'string',E);
if u ==5
set(handles.respejo,'string',K);
set(handles.text15,'string','Foco de la parabola');
else
set(handles.respejo,'string',T);
set(handles.text15,'string','Espejo del agua');
end
if F<1
set(handles.flujo,'string','Subcritico');
else
set(handles.flujo,'string','Supercritico');
end
IV.
PRESENTACION DE RESULTADOS
El programa realizado, es una herramienta que consta para 8 secciones de las cuales
se pueden calcular Tirante, Velocidad, rea Hidrulica, Permetro, Radio Hidrulico,
Espejo de agua o Foco de la Parbola, Nmero de Froude, Energa Especifica y Tipo de
Flujo como se puede observar en la figura :
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
Luego puedes escoger la seccin desea calcular y llenar los datos en el casillero, click
en Ejecutar:
RECTANGULAR
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
TRIANGULAR
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
TRAPEZOIDAL
PARABLICO
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
CIRCULAR
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL
SECCIN BAUL
V.
CONCLUSIONES:
la programacin en MatLab es dinmico debido a que tiene herramientas
de clculo ya estructurados que ayudan al programador, adems teniendo
en cuenta que la utilidad ms sobresaliente de dichas herramientas es
obtener paquetes con mayor capacidad en el clculo, y as podemos
hacer programas de mayor rango que pueden ser aplicados a las
Ciencias e ingeniera.
El uso de las sentencias if, switch y while tiene mucha importancia por
su eficiencia en la elaboracin del programa realizado para Hidrulica
de Canales Abiertos , porque son sentencias que permiten a que la
programacin sea mas resumida y concreta que arroje buenos
resultados.
VI.
OBSERVACION:
PROGRAMACIN DIGITAL
IC-246
PROGRAMACIN DIGITAL
IC-246
INGENIERA CIVIL