CALCULO DE TIRANTE CRÍTICOY NORMAL MATLAB
-
Upload
christian-riveros-lizana -
Category
Documents
-
view
375 -
download
27
description
Transcript of CALCULO DE TIRANTE CRÍTICOY NORMAL MATLAB
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 1
INTRODUCCION A LA PROGRAMACION Y ESTRUCTURAS DE CONTROL
Pseudocdigo MATLAB VISUAL BASIC IF/THE: IF condicin THEN Bloque verdadero END IF
if b ~ = 0 r1=-c/b; end
If b 0 Then r1 = -c / b End If
IF/THE/ELSE: IF condicin THEN Bloque verdadero ELSE Bloque falso END IF
if a < 0 b = sqrt(abs(a)); else b = sqrt(a); end
If a < 0 Then b = sqrt(abs(a)) Else b = sqr(a) End If
IF/THE/ELSEIF: IF condicin1 THEN Bloque1 ELSEIF Bloque2 ELSEIF Bloque3 ELSE Bloque4 END IF
if class == 1 x = x + 8; elseif class < 1 x = x 8; elseif class = 10, break, end j = i * x; end
Do i = i + 1 If i >= 10 Then Exit Do j = i * x Loop
LOOP CONTROLADO POR CONTADOR: DO FOR i=inicio, incremento, fin. Bloque END FOR
for i = 1:2:10 x = x + i; end
For i = 1 To 10 Step 2 x = x + i Next i
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 2
Ejemplos de aplicacin de estructuras de control en MatLab Cdigo IF/THE clear; disp('Ejemplo Codigo IF/THEN'); b=input('Ingrese valor de b : '); c=input('Ingrese valor de c : '); if b ~= 0 r1=-c/b end Ejecutando el cdigo en ventana de comandos de MatLab >> ifthen Ejemplo Codigo IF/THEN Ingrese valor de b : 5 Ingrese valor de c : 6 r1 = -1.2000 Codigo IF/THE/ELSE clear; disp('Ejemplo Codigo IF/THEN/ELSE'); a=input('Ingrese valor de a : '); if a < 0 b=sqrt(abs(a)) else b=sqrt(a) end Ejecutando el cdigo en ventana de comandos de MatLab >> ifthenelse Ejemplo Codigo IF/THEN/ELSE Ingrese valor de a : -6 b = 2.4495 Cdigo IF/THE/ELSEIF: clear; disp('Ejemplo Codigo IF/THEN/ELSEIF'); class=input('Ingrese valor de class : '); x=input('Ingrese valor de x : '); if class == 1 x=x+8; elseif class < 1 x=x-8; elseif class
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 3
x=x-64; end x Ejecutando el cdigo en ventana de comandos de MatLab >> ifthenelseif Ejemplo Codigo IF/THEN/ELSEIF Ingrese valor de class : 15 Ingrese valor de x : 80 x = 16 Cdigo CASE clear; disp('Ejemplo Codigo CASE'); a=input('Ingrese valor de a : '); b=input('Ingrese valor de b : '); switch a+b case 1 x=-5; case 2 x=-5-(a+b)/10; case 3 x=(a+b)/10; otherwise x=5; end x Ejecutando el cdigo en ventana de comandos de MatLab >> ejemplocase Ejemplo Codigo CASE Ingrese valor de a : 1 Ingrese valor de b : 2 x = 0.3000 Cdigo DOEXIT: clear; disp('Ejemplo Codigo DOEXIT'); x=input('Ingrese valor de x : '); i=input('Ingrese valor de i : '); while 1 i=i+1; if i>=10,break,end j=i*x; end j
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 4
Ejecutando el cdigo en ventana de comandos de MatLab >> doexit Ejemplo Codigo DOEXIT Ingrese valor de x : 20 Ingrese valor de i : 2 j = 180 Cdigo LOOP CONTROLADO POR CONTADOR: clear; disp('Ejemplo Codigo LOOP FOR'); j=input('Ingrese valor de inicio : '); n=input('Ingrese valor de final : '); s=input('Ingrese valor de incremento : '); x=input('Ingrese valor de x : '); for i=j:s:n x=x+i; end x Ejecutando el cdigo en ventana de comandos de MatLab >> loopfor Ejemplo Codigo LOOP FOR Ingrese valor de inicio : 5 Ingrese valor de final : 60 Ingrese valor de incremento : 2 Ingrese valor de x : 3 x = 899
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 5
SOLUCIN DE ECUACIONES NO LINEALES
CALCULO DE TIRANTE NORMAL - SECCION TRAPEZOIDAL
METODO DE NEWTON - RAPHSON
Q = 20 m3/seg
B = 5 mZ = 1.5 mN = 0.015 s/uS = 0.00035 m/mC = 4123.46L = 1.80 s/u
ITERA Y A P T F D
1 1.75 13.34375 11.31 10.25 -816.06 10594.07492 1.82703016 14.1422096 11.59 10.4810905 89.73 12990.45313 1.8201231 14.0698876 11.56 10.4603693 0.80 12758.93324 1.82006028 14.0692305 11.56 10.4601808 0.00 12756.8432
VERIFICACION CON HCANALES
yyzbA )(
zybT 2
212 zybP
3
24 )145(
P
ZAPTAD
)(
)('1
n
n
nnyf
yfyy
3
2
12
5
S
nQ
P
AF
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 6
DIAGRAMA DE FLUJO PARA EL CLCULO DEL TIRANTE NORMAL, SECCION TRAPEZOIDAL, POR EL MTODO DE NEWTON RAPHSON
V
F
Tirante Normal Seccin Trapezoidal
Leer: Q,B,Z,Y,N,S,Err
C=(Q*N/sqrt(S))^3 L=sqrt(1+Z^2)
D=(A^4*(5*P*T-4*A*L))/P^3 Y1=Y-F/D Y=Y1
abs(F)>=Err
V=Q/A DH=A/T NF=V/sqrt(9.81*DH) EN=Y+V^2/(9.81*2)
Escriba: Y,V,NF,EN
A=(B+Z*Y)*Y P=B+2*Y*L T=B+2*Z*Y F=A^5/P^2-C
A=(B+Z*Y)*Y P=B+2*Y*L T=B+2*Z*Y F=A^5/P^2-C
FIN
INICIO
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 7
Cdigo en MATLAB del Algoritmo de Newton Raphson Para el clculo de tirante normal yn en canales de seccin trapezoidal
Q=20; B=5; Z=1.5; N=0.015; S=0.00035; C=(Q*N/S^0.5)^3; L=sqrt(1+Z^2); Y=1.75; Err=0.001; A=(B+Z*Y)*Y; P=B+2*Y*L; T=B+2*Z*Y; F=A^5/P^2-C; while abs(F)>=Err D=(A^4*(5*P*T-4*A*L))/(P^3); Y=Y-F/D; A=(B+Z*Y)*Y; P=B+2*Y*L; T=B+2*Z*Y; F=A^5/P^2-C; end V=Q/A; DH=A/T; NF=V/sqrt(9.81*DH); EN=Y+V^2/(2*9.81); Y,V,NF,EN
Ejecutando el cdigo en ventana de comandos de MatLab >> tiranteyn Y = 1.8201 V = 1.4215 NF = 0.3913 EN = 1.9231
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 8
CALCULO DE TIRANTE NORMAL - SECCION TRAPEZOIDAL
METODO DE LA SECANTE
Q = 20 m3/seg
B = 5 mZ = 1.5 mN = 0.015 s/uS = 0.00035 m/mC = 4123.459L = 1.803 s/u
ITERA Y0 Y1 A0 P0 A1 P1 F0 F1
1 1.75 1.7501 13.34375 11.31 13.34478 11.31 -816.06 -815.002 1.7501 1.82702 13.34478 11.31 14.1421 11.59 -815.00 89.593 1.82702 1.819402 14.1421 11.59 14.06234 11.56 89.59 -8.394 1.819402 1.820054 14.06234 11.56 14.06917 11.56 -8.39 -0.085 1.820054 1.82006 14.06917 11.56 14.06923 11.56 -0.08 0.00
VERIFICACION CON HCANALES
yyzbA )(
zybT 2
3
2
12
5
S
nQ
P
AF
212 zybP
)()(
))((
1
1
1
ii
iii
iiyfyf
yyyfyy
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 9
Cdigo en MATLAB del Algoritmo de la Secante Para el clculo de tirante normal yn en canales de seccin trapezoidal
clc;clear Q=20; B=5; Z=1.5; N=0.015; S=0.00035; C=(Q*N/S^0.5)^3; L=sqrt(1+Z^2); Y=1.75;Y2=1.7501; Err=0.001; A=(B+Z*Y)*Y;A2=(B+Z*Y2)*Y2; P=B+2*Y*L;P2=B+2*Y2*L; F=A^5/P^2-C;F2=A2^5/P2^2-C; while abs(F)>=Err Y3=Y2-(F2*(Y-Y2))/(F-F2); Y=Y2;Y2=Y3; A=(B+Z*Y)*Y;A2=(B+Z*Y2)*Y2; P=B+2*Y*L;P2=B+2*Y2*L; F=A^5/P^2-C;F2=A2^5/P2^2-C; end T=B+2*Y*Z; V=Q/A; DH=A/T; NF=V/sqrt(9.81*DH); EN=Y+V^2/(2*9.81); Y,V,NF,EN
Ejecutando el cdigo en ventana de comandos de MatLab >> ynsecante Y = 1.8201 V = 1.4215 NF = 0.3913 EN = 1.9231
-
Universidad Nacional Agraria La Molina Maestra en Recursos Hdricos Facultad de Ingeniera Agrcola Departamento de Recursos Hdricos METODOS NUMERICOS EN INGENIERIA DE RECURSOS HIDRICOS
Solucin de ecuaciones No Lineales por los mtodos de Newton Raphson y Secante Aplicado a la Hidrulica de Canales. 10
PROBLEMAS COMPLEMENTARIOS DE APLCACION
1. Elaborar y probar un programa en MATLAB utilizando el algoritmo de la secante, para el clculo del tirante normal yn en canales de seccin circular. Para comprobar la correcta elaboracin y ejecucin del mismo, utilizar los datos, clculos preliminares y resultados mostrados a continuacin en la tabla realiza en Hoja de Clculo Excel y en programa Hcanales.
CALCULO DE TIRANTE NORMAL - SECCION CIRCULAR
METODO DE LA SECANTE
D = 2 mQ = 2 m3/segN = 0.014 s/uS = 0.0004 m/mC = 1.4
ITERA Y0 Y1 A0 P0 A1 P1 F0 F1
1 0.700000 0.700100 0.9799219 2.5322073 0.9801127 2.532417 -0.879621 -0.8794812 0.700100 1.327657 0.9801127 2.532417 2.2141882 3.8092378 -0.879481 0.14216963 1.327657 1.240328 2.2141882 3.8092378 2.0467848 3.6270005 0.1421696 -0.0022744 1.240328 1.241703 2.0467848 3.6270005 2.049454 3.6298342 -0.002274 3.56E-055 1.241703 1.241682 2.049454 3.6298342 2.0494128 3.6297906 3.56E-05 6.853E-096 1.241682 1.241682 2.0494128 3.6297906 2.0494128 3.6297906 6.853E-09 -2.09E-14
VERIFICACION CON HCANALES
)()(
))((
1
1
1
ii
iii
iiyfyf
yyyfyy
)
2(1
2
xCos
Dy
)(8
1xSenxA
D
yCosArcx
212
DxP2
1
)2
(x
SenDT
2
1
2
5
3
2
2
1
))((8
1
S
nQ
Dx
xSenx
Fx