Vous êtes sur la page 1sur 582

SOFTWARE  PARA EL DISEÑO DE  CANALES ABIERTOS 

JAIRO ALEXANDER BARRAGAN MENDOZA 
ANDRES RICARDO REYES CARRILLO 
LUIS EDUARDO ACOSTA VELASQUEZ 

UNIVERSIDAD DE LA SALLE 
FACULTAD DE INGENIERÍA CIVIL 
BOGOTÁ  D.C. 
2007
SOFTWARE  PARA EL DISEÑO DE CANALES ABIERTOS 

JAIRO ALEXANDER BARRAGAN MENDOZA 
ANDRES RICARDO REYES CARRILLO 
LUIS EDUARDO ACOSTA VELASQUEZ 

Trabajo  de grado presentado como requisito parcial  para optar al título de 
Ingeniero  Civil 

Director temático 
Ing. Roberto Vásquez Madero 
Asesora  metodológica 
Mag. Rosa Amparo Ruiz Saray 

UNIVERSIDAD DE LA SALLE 
FACULTAD DE INGENIERÍA CIVIL 
BOGOTÁ  D.C. 
2007
Nota de aceptación: 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 
___________________________________________ 

________________________________ 
Firma del presidente de jurado 

________________________________ 
Firma del jurado 

________________________________ 
Firma del jurado 

Bogotá D.C.  20 de febrero  año 2007
DEDICATORIA 

La  carta  que  denominan  dedicatoria,  que  ha  ser  breve  y  sucinta,  con  propósito  y 

espacio,  llena  de  verdad  y  no  dilatarse  en la  memoria  de  hazañas  de  quienes  le 

pertenece,  motivo  por  el  cual    de  la  manera  mas  humilde  les  presento  esta 

dedicatoria como un tesoro y una ofrenda. 

Este  trabajo  representa  el  fruto  del  esfuerzo  generado  durante  un  proceso  en  mi 

vida, debo agradecer este logro de mi vida, no por compromiso, ni necesidad, sino 

por nobleza y lealtad a todos las personas que me han permitido aprender y vivir 

con ellas. 

Gracias  a  mi  padre,  que  me  enseño  el  significado  de  la  perseverancia  y  me 

entrego los valores que me han permitido culminar este proceso. 

A  mi  madre,  que  me  enseño  el  valor  de  los  sacrificios  y  me  enseño  que  de  la 

austeridad se aprende y se valora los tesoros de la vida. 

A  mis  hermanos;    Harold,  quien  siempre  estuvo  presente  cuando  necesite  un 

amigo fiel y sincero; Jair, quien con su nobleza y virtud, siempre fue un motivo para 

seguir adelante.
A  mis  grandes  amigos  con  quienes  crecí  y  me  forme;  la  gente  del  Inner  Circle, 

Freddy  Prieto  el  mago  Oscuro,  Nidia  Camargo  “La  Tia”,  Alejandro  Mogollón;  la 

gente  de  la  universidad  y  a  todas  aquellas  personas  que  de  una  u  otra  manera 

hicieron un aporte positivo para mi proyecto de vida. 

A  mis  padres  que  me    brindaron  la  solidez  para  lograrlo  y  me  enseñaron  los 

valores para conseguir el título de Ingeniero Civil. 

A  mis  compañeros  de  proyecto,  Ricardo  Reyes  “Lord  Hariman”  y  Luís  Acosta 

“Luchini”. De Ricardo Reyes por ser un gran amigo que me ha brindado consejo y 

conocimiento,  a  Luís  Acosta  por  brindarme  su  amistad,  y  con  pues  con  ellos  se 

realizo este sueño. 

A las familias Mendoza, Rubio, Carrillo, Díaz que me brindaron su sincera amistad. 

A mis amigos de la universidad, Ferley Díaz, Javier Rubio,  Wilson Patiño, Edinson 

Carreño, Fernando Castaño, Helberth Torres  y demás amigos que  me brindaron 

su amistad, un tesoro incunable. 

A  mi  mentor  J.R,  quien  me  brinda los  conocimientos  necesarios  para  alcanzar la 

tan anhelada sabiduría. Por la confianza entregada y su valiosa amistad.
A mis maestros quienes han formado en mí el espíritu de un hombre, la mente de 

un ingeniero y el corazón de un patriota. 

A  Friedrich  Nietzsche,  por  enseñarme  la  luz  en  medio  de  la  penumbra  y  las 

tinieblas. 

A  Sir  Isaac  Newton,  por  demostrar  que  se  logran  grandes  cosas  si  te  apoyas  en 

hombros de gigantes. 

A  los  ingenieros  Antoine  de  Chézy  y  Robert  Manning,  por  demostrar  que  los 

ingenieros trascienden en el tiempo. 

A la humanidad para la cual se entregan los frutos de este proceso personal, para 

que  los  conocimientos  entregados  sean  para  el  bienestar  y  prosperidad  de  la 

humanidad en general. 

A  Colombia  y  Bogota,  quienes  son  mi  casa  y  mi  identidad,  por  adoptarme  como 

hijo y darme todas las herramientas para ser el mejor. 

No  pido  a  quienes  les  pertenece  esta  dedicatoria  reciban  este  escrito  bajo  su 

tutela,  por  que  sé  que  si  no  es  buena,  aunque  lo  ponga  bajo  la  custodia  de 

Cerbero,  y  al  cuidado  de  Sigfrido,  no  dejaran  las  lenguas  maldicientes  y
murmuradoras de morderla y lacerarla, sin guardar respeto a nadie. Solo les pido, 

como quien no dice nada, esta es una obra que fue labrada por mi entendimiento, 

presumieran  ponerla  al  lado  de  las  mas  pintadas.  Tal  es,  que  yo  quedo  aquí 

contentísimo por parecerme en algo el deseo que tengo de servir a la Humanidad, 

a mi país y a mi profesión. 

“La potencia intelectual de un hombre se mide por la dosis de humor que es capaz 

de utilizar” Friedrich Nietzsche. 

JAIRO ALEXANDER BARRAGAN MENDOZA
DEDICATORIA 

La realización de este proyecto, refleja los primeros frutos de un arduo camino que 

he recorrido, y que aún falta por recorrer. Convirtiéndose este proyecto en el punto 

de partida de mi vida profesional. 

A mi mamá, quien con su esfuerzo, dedicación, apoyo, confianza y sabiduría, supo 

guiarme por el camino correcto y hoy logro convertir un hijo en un profesional de la 

ingeniería. Te doy gracias mamá por haberme dado el regalo más grande que me 

hayas podido dar y que nadie me lo quitara, el estudio. 

A  mi  papá,  que  con  sus  consejos  supo  orientarme  en  el  momento  que  lo 

necesitaba y sus ejemplos me hicieron ver, y entender  muchas cosas de la vida. 

A  mis abuelos, pues su apoyo incondicional, atención y amor, fueron importantes 

para  la  formación  como  profesional,  además  darles  gracias  por  su  compañía  en 

estos últimos años que hemos vivido y a esas pequeñas comidas que la dieron a 

conocer en la universidad. 

A mi hermano Mauricio, que es mi motivo de seguir adelante y dejarle un camino 

labrado y con puertas abiertas para que saque su mayor provecho.
A mi hermana Mónica, por sus palabras y confidencias que de una u otra manera 

han sido un aporte a mi proyecto de vida. 

A  mi    familia,  quien  me  apoyó  cuando  mas  lo  necesite  y  gracias  a  ellos  logre 

alcanzar una meta más. 

A  mis  compañeros  de  proyecto,  Jairo  Barragán  y  Luís  Acosta,  pues  con  la 

realización de este proyecto pudimos compartir muchas cosas. 

A  mis  amigos  de  la  universidad,  Carlos  Porras,  Alfonso  Correa,  Wilson  Patiño, 

Ferley  Díaz,  Claudia  Gamez,  Edinson  Carreño,  Javier  Rubio,  Fernando  Castaño, 

Diana Hilarión, Diego Lozano, Camilo Castro, Mario Rodríguez, Carlos Ballesteros 

y demás amigos que nos colaboraron directa o indirectamente en la realización de 

este proyecto. 

A  todas  aquellas  personas  que  estuvieron  cerca  y  que  a  pesar  de  la  distancia 

aportaron  su  granito  de  arena,  y  han  hecho de  mí,  la  persona que  soy,  y  a estar 

donde estoy. 

ANDRÉS RICARDO REYES CARRILLO
DEDICATORIA 

Este  trabajo  representa  la  obtención  de  mi  titulo  de  Ingeniero  Civil  no  con  antes 

agradecerles a todas las personas que hicieron presencia de una y otra forma en 

la obtención de este. 

A  mi Padre que me guió siempre por el camino del bien y estuvo conmigo en las 

buenas y las malas. 

A mi Madre que aunque no este acompañándome en cuerpo siempre lo estuvo en 

alma    para  ella  el  mas  grande  de  mis  agradecimientos  donde  quiera  que  este 

porque solo ella sabe cuanto la extraño y todo lo que soy gracias a ella. 

A mis hermanitas Nora Liliana y Julieth Marcela que las amo  con todo mi corazón, 

y  gracias  por  todo  ese  apoyo  incondicional  que  siempre  me  dieron  y  que  espero 

seguir recibiéndolo. 

A  toda  mi    familia    mi  abuela  Amaita  ,  mi  abuela  Ceferina  ,  mis  tíos  Orlando 

Velásquez y Orlando Acosta y mis tías Amanda, Cecilia Yolanda y carmen  a mis 

primos  Hernán  Darío  el  gran  Buche  de  puerco,  jorge  Mario,  Karen  Liseth,  Gina 

Paola, Olga Lucia, Diego francisco y Sandra.
A mis amigos y compañero de tesis Jairo y Richi que sin ellos nada de esto seria 

posible  y  por  supuesto  que  no  se  pierdan  y  esta  amistad  no  quede  solo  aquí 

aprendí y quiero seguir aprendiendo mucho  de ellos y por mucho tiempo mas. 

A mis amigos del barrio Juan Carlos, Quito, Lalo, Pachito, Pacheco, Nando, Leo, y 

a mi gran amigo Daniel Bohórquez que lastimosamente se nos fue de este mundo 

pero para donde este es para el esta tesis con mucho aprecio y cariño mi cerdito,y 

como  no  a  mi  gran  amigo  o  hermanazo  Andrés  Villate  que  gracias  a  el  que  es 

como  mi padre y  mi hermano a la vez el que  me aconseja y acompaña en todas 

las cosas de la vida un señor en todo el sentido de la palabra pero me quedo corto 

con palabras por eso las dejo aquí y se las estaré diciendo siempre personalmente 

hasta que la vida me lo permita y a toda su familia especialmente a doña Miriam mi 

segunda madre si se puede decir así por que así lo siento y la quiero con todo mi 

corazón  y  además    que  a  sido  mi  gran  apoyo  desde  todos  los  buenos  y 

especialmente  los  malos  momentos  les  podría  decir  mi  segunda  familia  y  como 

sacar a Juan casco y a Mi querido Julio Villate que están y pertenecen a mi gran 

familia. 

A  mis  amigos  de la  universidad  algunos  que  aunque los  conocí  muy  tarde  tienen 

un  gran  espacio  en  mi  corazón  German  Cubillos  ,  Omar  Eduardo,  el  Paisa,  caro, 

Pinky, german Romero , Yesid ,pacho, Daniela, y todos los demás que estuvieron 

en  grandes  y  chicos  momentos  conmigo,  y  como  voy  a  olvidar  a una  de las  mas
importante mi vida aleja a la mujer que amo con todo mi corazón y la que espero 

seguir  amando  toda  mi  vida  y  claro  si  dios  me  lo  permite  estar  con  ella 

acompañándola el resto de su vida como un gran compañero porque si es de decir 

es una de las que mas me ha soportado todas mis cagadas plantadas y de mas te 

amo y te amo con todo mi corazón  a su familia en la cual también sentí siempre 

un gran apoyo su madre Gladis a Juancho y a sus hermanos luisita por supuesto 

con su bella hija Maria José a su hermano diego hijo y familia. 

Gracias de antemano a todas esas personas que de pronto están y estuvieron  con 

uno  en    este  u  otro  momento  y  no  los  hay  citado  en  estas  letras  estas    pero  de 

verdad es que son muchos y la lista seria demasiada grande de todas maneras a 

ellos también las mismas gracias y los quiero mucho. 

LUIS EDUARDO ACOSTA VELASQUEZ
AGRADECIMIENTOS 

Los autores  expresan  el reconocimiento: 

Al Ingeniero HECTOR VEGA, por el apoyo y la dedicación que presto durante este 

proceso y la amistad que brindó. 

A ROSA AMPARO RUIZ SARAY, por el apoyo y la dedicación que presto durante 

este proceso y la amistad que brindó. 

A  ROBERTO  VASQUEZ  MADERO,  por  el  apoyo  y  la  dedicación  que  presto 
durante este proceso y la amistad que brindó. 

A  todos  los  educadores  que  aportaron  enseñanza  y  valores  representados  en 


este largo proceso de aprendizaje y formación. 

A Tuxstone Technologies, por sus asesorias y dedicacion; en especial al Ingeniero 
Juan Fajardo. 

A C.O.E.C, por la dedicacion y las herramientas puestas a nuestro servicio, una de 
las grandes compañías de ingeniería en Colombia. 

A  TODAS,  aquellas  personas  que  de  una  u  otra  forma  colaboraron  en  la 

realización del presente trabajo.
CONTENIDO 

CONTENIDO  14 

LISTA DE CUADROS  20 

LISTA DE ECUACIONES  21 

LISTA DE FIGURAS  27 

LISTA DE FIGURAS  27 

LISTA DE IMÁGENES  30 

LISTA DE TABLAS  32 

GLOSARIO  33 

GLOSARIO  33 

INTRODUCCIÓN  46 

1.  EL PROBLEMA  49 

1.1  LÍNEA  49 


1.2  TÍTULO  49 
1.3  DESCRPCIÓN DEL PROBLEMA  49 
1.4  FORMULACIÓN DEL PROBLEMA  51 
1.5  JUSTIFICACIÓN  51 
1.6  OBJETIVOS  52
1.6.1  OBJETIVO GENERAL  52 
1.6.2  OBJETIVOS ESPECÍFICOS:  52 

2.  MARCO REFERENCIAL  54 

2.1 MARCO TEORICO  54 


2.1.1 FLUJO EN CANALES ABIERTOS,  55 
2.1.1.1 TIPOS DE FLUJO  56 
2.1.1.1.1 FLUJO UNIFORME  57 
2.1.1.1.2 FLUJO VARIADO  58 
2.1.1.1.3 FLUJO PERMANENTE  59 
2.1.1.1.4 FLUJO NO PERMANENTE  60 
2.1.1.1.5 FLUJO UNIFORME PERMANENTE  61 
2.1.1.1.6 FLUJO UNIFORME NO PERMANENTE  62 
2.1.1.1.7 FLUJO VARIADO PERMANENTE  63 
2.1.1.1.8 FLUJO VARIADO NO PERMANENTE O INESTABLE O FLUJO NO PERMANENTE  64 
2.1.1.1.9 FLUJO ESPACIALMENTE VARIADO  65 
2.1.2. INFLUENCIA DE LA VISCOSIDAD, LA DENSIDAD Y LA GRAVEDAD SOBRE EL FLUJO  65 
2.1.2.1 EFECTO DE LA VISCOSIDAD SOBRE EL FLUJO  66 
2.1.2.2 EFECTO DE LA DENSIDAD DEL LÍQUIDO SOBRE EL FLUJO  68 
2.1.2.3 EFECTO DE LA GRAVEDAD SOBRE EL FLUJO  68 
2.1.2.3.1 FLUJO SUBCRÍTICO  69 
2.1.2.3.2 FLUJO CRITICO  69 
2.1.2.3.3 FLUJO SUPERCRÍTICO  69 
2.1.3 CLASES DE CANALES Y SUS PROPIEDADES  69 
2.1.3.1 CANALES NATURALES  69 
2.1.3.2 CANALES ARTIFICIALES  70 
2.1.4 LA SECCIÓN TRANSVERSAL EN LOS CANALES ABIERTOS  74 
2.1.4.1 ELEMENTOS GEOMÉTRICOS DE LA SECCIÓN DE UN CANAL  76 
2.1.4.1.1 PROFUNDIDAD DEL AGUA  76 
2.1.4.1.2 ÁREA MOJADA  78 
2.1.4.1.3 PERÍMETRO MOJADO  78 
2.1.4.1.4 RADIO HIDRÁULICO  78
2.1.4.1.5 ANCHO SUPERFICIAL  78 
2.1.4.1.6 PROFUNDIDAD HIDRÁULICA  78 
2.1.4.1.7 TALUD DE LA PARED LATERAL DEL CANAL  78 
2.1.4.1.8 ANCHO DEL FONDO DEL CANAL  78 
2.1.4.1.9 FACTOR DE SECCIÓN PARA EL CÁLCULO DEL FLUJO CRITICO  79 
2.1.4.1.10 FACTOR DE SECCIÓN PARA EL CÁLCULO DE FLUJO UNIFORME  79 
2.1.4.1.11 ELEMENTOS GEOMÉTRICOS DE SECCIONES DE CANALES  79 
2.1.5 CARACTERÍSTICAS DEL FLUJO EN LAS SECCIONES MÁS USADAS  80 
2.1.5.1 FLUJO EN UN CANAL DE SECCIÓN CIRCULAR,  80 
2.1.5.2 FLUJO EN CANALES RECTANGULARES MUY ANCHOS  80 
2.1.6 DISTRIBUCIÓN DE LA VELOCIDAD EN LA SECCIÓN DE UN CANAL  81 
2.1.6.1 MEDICIÓN DE LA VELOCIDAD EN UN CANAL ABIERTO  84 
2.1.6.1.1 MÉTODO 0.6Y  84 
2.1.6.1.2 MÉTODO 0.2Y – 0.8Y  84 
2.1.6.1.3 CONDICIONES GENERALES DE LOS MÉTODOS PARA MEDIR LA VELOCIDAD  84 
2.1.6.2 COEFICIENTES DE DISTRIBUCIÓN DE VELOCIDAD  86 
2.1.6.2.1 COEFICIENTE DE ENERGÍA  86 
2.1.6.2.2 COEFICIENTE DE MOMENTUM  87 
2.1.7 DISTRIBUCIÓN DE PRESIONES EN LA SECCIÓN DE UN CANAL  88 
2.1.7.1 FLUJO PARALELO  89 
2.1.7.2 FLUJO CURVILÍNEO  89 
2.1.7.2.1 FLUJO CONVEXO  89 
2.1.7.2.2 FLUJO CÓNCAVO  89 
2.1.7.3 EFECTO DE LA PENDIENTE DEL CANAL SOBRE LA DISTRIBUCIÓN DE PRESIONES  90 
2.1.8 ENERGÍA Y MOMENTUM  92 
2.1.8.1 ENERGÍA ESPECIFICA  95 
2.1.8.1.1 CURVA DE ENERGÍA ESPECIFICA  98 
2.1.8.1.2 CARACTERÍSTICAS DE LA CURVA DE ENERGÍA  98 
2.1.8.2 CLASIFICACIÓN DEL FLUJO  100 
2.1.8.2.1 FLUJO SUBCRÍTICO  101 
2.1.8.2.2 FLUJO CRITICO  101 
2.1.8.2.3 FLUJO SUPERCRÍTICO  102 
2.1.8.3 DETERMINACIÓN DEL FLUJO CRITICO  104
2.1.8.3.1 PROPIEDADES GENERALES DEL FLUJO CRÍTICO  106 
2.1.8.3.2 FLUJO CRÍTICO EN UNA SECCIÓN RECTANGULAR  108 
2.1.8.4 FENÓMENOS LOCALES  109 
2.1.8.4.1 CAÍDA HIDRÁULICA  109 
2.1.8.4.2 SALTO HIDRÁULICO  110 
2.1.8.4.3 PROFUNDIDADES ALTERNAS  112 
2.1.8.5 MOMENTUM  113 
2.1.8.5.1 VOLUMEN DE CONTROL  113 
2.1.8.5.2 ECUACIÓN DE FUERZA ESPECIFICA  115 
2.1.8.5.3 FUERZA ESPECIFICA EN UN CANAL DE SECCIÓN RECTANGULAR  115 
2.1.8.5.4 CURVA DE FUERZA ESPECIFICA  118 
2.1.8.5.5 PROFUNDIDADES SECUENTES  120 
2.1.8.6 PÉRDIDA DE ENERGÍA EN UN RESALTO HIDRÁULICO  123 
2.1.8.6.1 LA LONGITUD DEL RESALTO  126 
2.1.8.6.2 POTENCIA DISIPADA  128 
2.1.8.7 FUERZA SOBRE LA ESTRUCTURA EN EL RESALTO  129 
2.1.9 FLUJO UNIFORME  131 
2.1.9.1 TIPOS DE FLUJO UNIFORME  132 
2.1.9.2 ECUACIONES DE VELOCIDAD DE FLUJO  133 
2.1.9.3 ECUACIÓN DE CHÉZY  134 
2.1.9.4 EXPRESIONES PARA EL FACTOR DE RESISTENCIA C EN LA ECUACIÓN DE CHÉZY  137 
2.1.9.4.1 FÓRMULA DE KUTTER – GANGUILLET  137 
2.1.9.4.2 FÓRMULA DE KUTTER,  138 
2.1.9.4.3 FÓRMULA DE MANNING  138 
2.1.9.4.4 FÓRMULA DE BAZIN  145 
2.1.9.4.5 FÓRMULA LOGARÍTMICA  146 
2.1.9.4.6 ECUACIÓN DE DARCY­W EISBACH  148 
2.1.9.5 CANALES CON RUGOSIDADES COMPUESTAS  150 
2.1.9.5.1 PRINCIPIO DE SUPERPOSICIÓN  150 
2.1.9.5.2 DIVIDIR LA SECCIÓN TRANSVERSAL  152 
2.1.9.6 PÉRDIDAS DE ENERGÍA EN UN CANAL  153 
2.1.10 DISEÑO DE CANALES EN FLUJO UNIFORME  154 
2.1.10.1 CRITERIOS PARA EL DISEÑO DE CANALES  154
2.1.10.2 INFORMACIÓN BÁSICA DE DISEÑO  155 
2.1.10.3 PARÁMETROS DE DISEÑÓ  156 
2.1.10.4 ESTUDIO AMBIENTAL Y ECOLÓGICO  157 
2.1.10.5 CASOS DE DISEÑO  159 
2.1.10.5.1 CANALES REVESTIDOS O NO EROSIONABLES  159 
2.1.10.5.2 CANALES NO REVESTIDOS O EROSIONABLES  159 
2.1.10.6 DISEÑO DE CANALES REVESTIDOS O NO EROSIONABLES  160 
2.1.10.6.1 SECCIÓN HIDRÁULICAMENTE ÓPTIMA  160 
2.1.10.7 DISEÑO DE CANALES NO REVESTIDOS O EROSIONABLES  172 
2.1.10.7.1 MÉTODO DE LA VELOCIDAD MÁXIMA PERMISIBLE  173 
2.1.10.7.3 MÉTODO DE LA SECCIÓN HIDRÁULICAMENTE ESTABLE  193 
2.1.10.8 PÉRDIDAS POR INFILTRACIÓN EN CANALES  204 
2.1.10.9 DISEÑO DE TRANSICIONES  207 
2.2  MARCO CONCEPTUAL  212 
2.2.1 CANAL  212 
2.2.2 DISEÑO DE CANALES  213 
2.2.3 SOFTWARE  213 
2.3  MARCO LEGAL  213 
2.3.1  NORMAS  213 
2.3.2  NORMAS TÉCNICAS COLOMBIANAS  213 
2.3.3  NORMAS TÉCNICAS ISO  214 

3.  METODOLOGÍA  214 

3.1  DISEÑO DE LA INVESTIGACIÓN  215 


3.2  OBJETO DE ESTUDIO  217 
3.3  VARIABLES  218 

4.  TRABAJO INGENIERIL  218 

4.1  DESARROLLO  219 


4.1.1  IDENTIFICACIÓN DEL LENGUAJE DE PROGRAMACIÓN  219
4.1.2  IDENTIFICACIÓN DE LOS PRINCIPIOS FÍSICOS Y DEFINICIONES QUE INTERVIENEN EN EL 
DISEÑO.  219 
4.1.3  IDENTIFICACIÓN DE LOS PRINCIPALES MÉTODOS DE DISEÑO DE CANALES  221 
4.2  SOFTWARE  222 
4.2.1  EJEMPLO PARA EL CALCULO DE LA FUERZA ESPECIFICA EN UNA SECCIÓN RECTANGULAR. 
223 
4.2.2  EJEMPLO PARA EL DESARROLLO DE UNA PRACTICA DE LABORATORIO.  226 
4.3  MANUAL DE USUARIO OPEN FLOW UNISALLE  232 
4.4  DOCUMENTO ESCRITO DIGITALIZADO  232 
4.5  CODIGO FUENTE  232 

5.  COSTOS TOTALES DE LA INVESTIGACIÓN  233 

5.1  RECURSOS MATERIALES  233 


5.2  RECURSOS INSTITUCIONALES  234 
5.3  RECURSOS TECNOLÓGICOS  234 
5.4  RECURSOS HUMANOS  235 
5.5  RECURSOS FINANCIEROS  235 

6.  CONCLUSIONES  237 

7.  RECOMENDACIONES  245 

BIBLIOGRAFÍA  247 

ANEXOS  250 

ANEXO 1 SOFTWARE OPEN FLOW UNISALLE  250 


ANEXO 2 MANUAL DE USUARIO OPEN FLOW UNISALLE  251 
ANEXO 3 DOCUMENTO ESCRITO DIGITAL  344 
ANEXO 4 CODIGO FUENTE  345
LISTA DE CUADROS 

CUADRO 1.  ANÁLISIS DE LAS VARIABLES  218
LISTA DE ECUACIONES 

ECUACIÓN 1 DERIVADA PARCIAL DE LA VELOCIDAD RESPECTO A LA LONGITUD  57 
ECUACIÓN 2 DERIVADA PARCIAL DE LA PROFUNDIDAD DEL FLUJO RESPECTO A LA 
LONGITUD  57 
ECUACIÓN 3 DERIVADA PARCIAL DEL CAUDAL RESPECTO A LA LONGITUD  57 
ECUACIÓN 4 DERIVADA PARCIAL DE LA VELOCIDAD RESPECTO A LA LONGITUD  58 
ECUACIÓN 5 DERIVADA PARCIAL DE LA PROFUNDIDAD DEL FLUJO RESPECTO A LA 
LONGITUD  58 
ECUACIÓN 6 DERIVADA PARCIAL DE LA VELOCIDAD RESPECTO AL TIEMPO  60 
ECUACIÓN 7 DERIVADA PARCIAL DE LA PROFUNDIDAD DEL FLUJO RESPECTO AL TIEMPO 
60 
ECUACIÓN 8 DERIVADA PARCIAL DEL CAUDAL RESPECTO AL TIEMPO  60 
ECUACIÓN 9 DERIVADA PARCIAL DE LA VELOCIDAD RESPECTO AL TIEMPO.  61 
ECUACIÓN 10 DERIVADA PARCIAL DE LA PROFUNDIDAD DEL FLUJO RESPECTO AL 
TIEMPO.  61 
ECUACIÓN 11 DERIVADA PARCIAL DEL CAUDAL RESPECTO A LA LONGITUD.  65 
ECUACIÓN 12 NUMERO DE REYNOLDS  66 
ECUACIÓN 13 NUMERO DE REYNOLDS PARA CANALES ABIERTOS  67 
ECUACIÓN 14 NUMERO DE REYNOLDS PARA UNA LONGITUD CARACTERÍSTICA DE 
CUATRO VECES EL RADIO HIDRÁULICO  67 
ECUACIÓN 15 NUMERO DE FROUDE  68 
ECUACIÓN 16 RELACIÓN ENTRE LA PROFUNDIDAD DEL AGUA Y EL ÁNGULO DE LA 
PENDIENTE DEL FONDO DEL CANAL.  77 
ECUACIÓN 17 DEFINICIÓN DEL RADIO HIDRÁULICO  78 
ECUACIÓN 18 DEFINICIÓN DE LA PROFUNDIDAD HIDRÁULICA.  78 
ECUACIÓN 19 DEFINICIÓN DE FACTOR DE SECCIÓN  79 
ECUACIÓN 20 RADIO HIDRÁULICO PARA UN CANAL DE SECCIÓN RECTANGULAR.  81 
ECUACIÓN 21 APROXIMACIÓN DEL RADIO HIDRÁULICO EN UN CANAL DE SECCIÓN 
RECTANGULAR  81 
ECUACIÓN 22 VELOCIDAD MEDIA EN UN CAUSE DIVIDIDO POR FRANJAS  85 
ECUACIÓN 23 COEFICIENTE DE ENERGÍA  87 
ECUACIÓN 24 COEFICIENTE DE MOMENTUM.  88 
ECUACIÓN 25 ALTURA PIEZOMÉTRICA EN FUNCIÓN DE LA PROFUNDIDAD MEDIDA 
VERTICALMENTE  90
ECUACIÓN 26 ALTURA PIEZOMÉTRICA EN FUNCIÓN DE LAS PROFUNDIDAD MEDIDA 
PERPENDICULARMENTE  90 
ECUACIÓN 27 ENERGÍA TOTAL PARA EN UN CANAL ABIERTO CON FLUJO GRADUALMENTE 
VARIADO  92 
ECUACIÓN 28 ENERGÍA TOTAL EN UN CANAL  93 
ECUACIÓN 29 ENERGÍA TOTAL PARA CANALES CON PENDIENTES BAJAS  93 
ECUACIÓN 30 ENERGÍA TOTAL ENTRE DOS PUNTOS EN UN CANAL  94 
ECUACIÓN 31 ENERGÍA TOTAL ENTRE DOS PUNTOS EN UN CANAL DE PENDIENTE 
PEQUEÑA  95 
ECUACIÓN 32 ECUACIÓN DE ENERGÍA DE BERNOULLI  95 
ECUACIÓN 33 ENERGÍA ESPECIFICA EN UN CANAL ABIERTO, EN FUNCIÓN DE LA ALTURA 
PIEZOMÉTRICA.  95 
ECUACIÓN 34 ENERGÍA ESPECIFICA EN UN CANAL ABIERTO, EN FUNCIÓN DE LA 
PROFUNDIDAD PERPENDICULAR AL FONDO DEL CANAL DESDE LA SUPERFICIE DEL 
LIQUIDO  95 
ECUACIÓN 35 ENERGÍA ESPECIFICA EN UN CANAL ABIERTO, EN FUNCIÓN DE LA 
PROFUNDIDAD VERTICAL DEL LIQUIDO AL FONDO DEL CANAL.  95 
ECUACIÓN 36 ENERGÍA ESPECIFICA PARA UN CANAL DE BAJA PENDIENTE, EN FUNCIÓN 
DE LA PROFUNDIDAD VERTICAL DEL LIQUIDO  95 
ECUACIÓN 37 ECUACIÓN DE CONTINUIDAD  97 
ECUACIÓN 38 VELOCIDAD EN FUNCIÓN DEL CAUDAL  97 
ECUACIÓN 39 ECUACIÓN GENERAL DE ENERGÍA ESPECIFICA  97 
ECUACIÓN 40 ENERGÍA ESPECIFICA EN UN CANAL EN FUNCIÓN DE UN CAUDAL UNITARIO 
97 
ECUACIÓN 41 ECUACIÓN DIFERENCIA DEL FLUJO CRITICO  104 
ECUACIÓN 42 ENERGÍA ESPECIFICA  104 
ECUACIÓN 43 ECUACIÓN GENERAL DEL FLUJO CRÍTICO  105 
ECUACIÓN 44 ESTADO CRÍTICO DE FLUJO  106 
ECUACIÓN 45 CONDICIÓN GENERAL DEL FLUJO CRÍTICO  106 
ECUACIÓN 46 CAUDAL TOTAL EN UN CANAL RECTANGULAR, EN FUNCIÓN DEL CAUDAL 
UNITARIO.  108 
ECUACIÓN 47 PROFUNDIDAD CRÍTICA PARA UNA SECCIÓN RECTANGULAR.  108 
ECUACIÓN 48 ENERGÍA MÍNIMA EN UN CANAL RECTANGULAR, EN FUNCIÓN DE LA 
PROFUNDIDAD CRITICA.  109 
ECUACIÓN 49 RELACIÓN DE ENERGÍA ESPECIFICA, PARA DETERMINAR LAS ALTURAS 
ALTERNAS  113
ECUACIÓN 50 ECUACIÓN PARA EL CÁLCULO DE LAS PROFUNDIDADES ALTERNAS  113 
ECUACIÓN 51 ECUACIÓN DE APLICACIÓN DEL PRINCIPIO DE MOMENTUM  114 
ECUACIÓN 52 ECUACIÓN DE APLICACIÓN DEL PRINCIPIO DE MOMENTUM PARA CANALES 
LISOS Y DE BAJA PENDIENTE.  114 
ECUACIÓN 53 DEFINICIÓN DE LA FUERZA HIDROSTÁTICA.  115 
ECUACIÓN 54 FUERZA ESPECIFICA POR UNIDAD DE ANCHO.  115 
ECUACIÓN 55 ECUACIÓN DE FUERZA ESPECIFICA.  115 
ECUACIÓN 56 ECUACIÓN DE FUERZA ESPECIFICA  116 
ECUACIÓN 57 ECUACIÓN DE FUERZA ESPECIFICA PARA LAS SECCIONES (1) Y (2), 
FIGURAS 32 Y 33.  117 
ECUACIÓN 58 ECUACIÓN DE FUERZA ESPECÍFICA PARA UN CANAL DE SECCIÓN 
RECTANGULAR.  117 
ECUACIÓN 59 FUERZA ESPECIFICA POR UNIDAD DE ANCHO  118 
ECUACIÓN 60 PROFUNDIDAD CRITICA DE FLUJO DE UN CANAL, EN FUNCIÓN DEL CAUDAL 
UNITARIO.  119 
ECUACIÓN 61 FUERZA ESPECIFICA MÍNIMA PARA EL FLUJO EN UN CANAL ABIERTO.  119 
ECUACIÓN 62 NUMERO DE FROUDE EN FUNCIÓN DEL CAUDAL UNITARIO  122 
ECUACIÓN 63 RELACIÓN ENTRE LAS PROFUNDIDADES SECUENTES O CONJUGADAS  123 
ECUACIÓN 64 PÉRDIDAS DE ENERGÍA EN UN RESALTO HIDRÁULICO.  124 

ECUACIÓN 65 RELACIÓN  L j  y 1  PARA CANALES PRISMÁTICOS DE CUALQUIER FORMA. 127 


ECUACIÓN 66 RELACIÓN  L r  y 1  PARA CANALES ANCHOS  128 
ECUACIÓN 67 POTENCIA DISIPADA EN UN RESALTO  129 
ECUACIÓN 68 ECUACIÓN DE APLICACIÓN DE MOMENTUM PARA DETERMINAR LA FUERZA 
SOBRE UNA ESTRUCTURA  130 
ECUACIÓN 69 ECUACIÓN DE APLICACIÓN DE MOMENTUM PARA DETERMINAR LA FUERZA 
SOBRE UNA ESTRUCTURA EN UN CANAL DE BAJA PENDIENTE Y LISO.  130 
ECUACIÓN 70 ECUACIÓN GENERAL PARA DETERMINAR LA FUERZA SOBRE UNA 
ESTRUCTURA.  131 
ECUACIÓN 71 FORMA GENERAL DE LAS ECUACIONES DE VELOCIDAD EN FLUJO 
UNIFORME.  134 
ECUACIÓN 72 ECUACIÓN DE CHÉZY  134 
ECUACIÓN 73 ECUACIÓN DE CHÉZY PARA FLUJO UNIFORME  134 
ECUACIÓN 74 FUERZA TOTAL RESISTENTE AL FLUJO EN UN CANAL CON FLUJO 
UNIFORME  135
ECUACIÓN 75 FÓRMULA DE KUTTER – GANGUILLET, PARA UNIDADES DEL SISTEMA 
INTERNACIONAL  138 
ECUACIÓN 76 FÓRMULA DE KUTTER, PARA UNIDADES DEL SISTEMA INTERNACIONAL  138 
ECUACIÓN 77 FÓRMULA DE MANNING, PARA UNIDADES DEL SISTEMA INTERNACIONAL 139 
ECUACIÓN 78 ECUACIÓN DE MANNING PARA FLUJO UNIFORME EN UNIDADES DEL 
SISTEMA INTERNACIONAL  139 
ECUACIÓN 79 ECUACIÓN DE MANNING PARA CAUDAL EN UNIDADES DEL SISTEMA 
INTERNACIONAL  139 
ECUACIÓN 80 ECUACIÓN GENERAL DE MANNING  139 
ECUACIÓN 81 FÓRMULA DE BAZIN, PARA UNIDADES DEL SISTEMA INTERNACIONAL.  146 
ECUACIÓN 82 FÓRMULA LOGARÍTMICA PARA UNIDADES DEL SISTEMA INTERNACIONAL. 
147 
ECUACIÓN 83 FÓRMULA LOGARÍTMICA GENERALIZADA PARA UNIDADES DEL SISTEMA 
INTERNACIONAL.  147 
ECUACIÓN 84 ESFUERZO CORTANTE EN EL FONDO DEL CANAL  148 
ECUACIÓN 85 COEFICIENTE DE RESISTENCIA AL FLUJO, SEGÚN LA ECUACIÓN DE DARCY­ 
WEISBACH  148 
ECUACIÓN 86 ECUACIÓN DE DARCY­WEISBACH  149 
ECUACIÓN 87 ECUACIÓN DE COLEBROOK Y WHITE  149 
ECUACIÓN 88 COEFICIENTE DE RESISTENCIA AL FLUJO, SEGÚN LA ECUACIÓN DE DARCY­ 
WEISBACH  149 
ECUACIÓN 89 COEFICIENTE DE RUGOSIDAD EQUIVALENTE PARA CANALES DE SECCIÓN 
COMPUESTA  151 
ECUACIÓN 90 COEFICIENTE DE RUGOSIDAD EQUIVALENTE PARA CANALES DE SECCIÓN 
COMPUESTA  151 
ECUACIÓN 91 COEFICIENTE DE RUGOSIDAD EQUIVALENTE PARA CANALES DE SECCIÓN 
COMPUESTA  152 
ECUACIÓN 92 PÉRDIDAS POR FRICCIÓN EN CANALES  153 
ECUACIÓN 93 BORDE LIBRE PARA CANALES  157 
ECUACIÓN 94 ÁREA DE LA SECCIÓN TRAPEZOIDAL  164 
ECUACIÓN 95 PERÍMETRO MOJADO DE LA SECCIÓN TRAPEZOIDAL  164 
ECUACIÓN 96 PERÍMETRO MOJADO DE UNA SECCIÓN TRAPEZOIDAL EN FUNCIÓN DEL 
ÁREA Y LA PROFUNDIDAD DEL FLUJO  165 
ECUACIÓN 97 ÁREA DE LA SECCIÓN TRAPEZOIDAL EN FUNCIÓN DE LA PENDIENTE 
LATERAL Y LA PROFUNDIDAD DEL FLUJO  165
ECUACIÓN 98 ANCHO DE FONDO DE UN CANAL TRAPEZOIDAL EN FUNCIÓN DE LA 
PENDIENTE LATERAL Y LA PROFUNDIDAD DEL FLUJO  165 
ECUACIÓN 99 PERÍMETRO MOJADO DE UNA SECCIÓN TRAPEZOIDAL EN FUNCIÓN DE LA 
PENDIENTE LATERAL Y LA PROFUNDIDAD DEL FLUJO  166 
ECUACIÓN 100 PENDIENTE LATERAL PARA LA CUAL SE OBTIENE EL MÍNIMO PERÍMETRO 
MOJADO EN UN CANAL TRAPEZOIDE CUALQUIERA  167 
ECUACIÓN 101 ÁREA EN UNA SECCIÓN TRAPEZOIDAL CON SECCIÓN HIDRÁULICA ÓPTIMA 
167 
ECUACIÓN 102 PERÍMETRO MOJADO PARA UNA SECCIÓN TRAPEZOIDAL CON SECCIÓN 
HIDRÁULICA ÓPTIMA  167 
ECUACIÓN 103 RADIO HIDRÁULICO PARA  UNA SECCIÓN TRAPEZOIDAL CON SECCIÓN 
HIDRÁULICA ÓPTIMA  167 
ECUACIÓN 104 ANCHO SUPERFICIAL PARA UNA SECCIÓN TRAPEZOIDAL CON SECCIÓN 
HIDRÁULICA ÓPTIMA  167 
ECUACIÓN 105 PROFUNDIDAD DEL FLUJO PARA EL DISEÑO DE UN CANAL REVESTIDO 
CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA.  169 
ECUACIÓN 106 ANCHO DE FONDO DE CANAL, EL DISEÑO DE UN CANAL REVESTIDO CON 
SECCIÓN HIDRÁULICAMENTE ÓPTIMA  169 
ECUACIÓN 107 ANCHO DE FONDO DE CANAL A MEDIO ESPESOR EL DISEÑO DE UN CANAL 
REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  169 
ECUACIÓN 108 ANCHO DE FONDO TOTAL DE CANAL, EL DISEÑO DE UN CANAL 
REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  170 
ECUACIÓN 109 VOLUMEN DE MATERIA A EXCAVAR PARA EL DISEÑO DE UN CANAL 
REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  170 
ECUACIÓN 110 COSTO DE LA EXCAVACIÓN PARA EL DISEÑO DE UN CANAL REVESTIDO 
CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  171 
ECUACIÓN 111 COSTO DEL TRANSPORTE DEL MATERIAL DE LA EXCAVACIÓN PARA EL 
DISEÑO DE UN CANAL REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  171 
ECUACIÓN 112 VOLUMEN DEL MATERIAL A UTILIZAR COMO REVESTIMIENTO EL DISEÑO 
DE UN CANAL REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  172 
ECUACIÓN 113 COSTO DEL MATERIAL DE REVESTIMIENTO PARA EL DISEÑO DE UN 
CANAL REVESTIDO CON SECCIÓN HIDRÁULICAMENTE ÓPTIMA  172 
ECUACIÓN 114 ESFUERZO CORTANTE EN EL FONDO DE UN CANAL MUY ANCHO  179 
ECUACIÓN 115 FUERZA TRACTIVA UNITARIA EN EL TALUD DE UN CANAL  182 
ECUACIÓN 116 FUERZA TRACTIVA UNITARIA EN EL FONDO DE UN CANAL  183 
ECUACIÓN 117 RAZÓN DE LA FUERZA TRACTIVA  183
ECUACIÓN 118 ESFUERZO TRACTIVO CRITICO  196 
ECUACIÓN 119 ESFUERZO TRACTIVO CRITICO SOBRE LOS TALUDES DEL CANAL.  196 
ECUACIÓN 120 ESFUERZO TRACTIVO EN EL CENTRO DEL CANAL CON PROFUNDIDAD YN
196 
ECUACIÓN 121 PROFUNDIDAD DEL FLUJO EN FUNCIÓN DE LA PROFUNDIDAD NORMAL, 
DEL ÁNGULO DEL TALUD Y DEL ÁNGULO DE LA PARTÍCULA DE REPOSO.  197 
ECUACIÓN 122 ECUACIÓN DIFERENCIAL DE LA SECCIÓN TRANSVERSAL DE UN CANAL 
CON SECCIÓN HIDRÁULICAMENTE ESTABLE  197 
ECUACIÓN 123 PROFUNDIDAD DEL FLUJO EN UN CANAL CON SECCIÓN 
HIDRÁULICAMENTE ESTABLE, EN FUNCIÓN DE LA PROFUNDIDAD NORMAL.  198 
ECUACIÓN 124 PROFUNDIDAD DEL FLUJO EN UN CANAL CON SECCIÓN 
HIDRÁULICAMENTE ESTABLE, EN FUNCIÓN DE LA PROFUNDIDAD NORMAL.  198 
ECUACIÓN 125 ÁREA MOJADA DE LA SECCIÓN DE MAYOR EFICIENCIA HIDRÁULICA  198 
ECUACIÓN 126 PERÍMETRO MOJADO DE LA SECCIÓN DE MAYOR EFICIENCIA HIDRÁULICA 
199 
ECUACIÓN 127 SOLUCIÓN DE LA INTEGRAL ELÍPTICA DE SEGUNDO TIPO  199 
ECUACIÓN 128 CAUDAL PARA UN CANAL NO REVESTIDO CON DE LA SECCIÓN DE MAYOR 
EFICIENCIA HIDRÁULICA  199 
ECUACIÓN 129 CAUDAL PARA UN CANAL NO REVESTIDO CON DE LA SECCIÓN 
HIDRÁULICA ESTABLE CUANDO  Q D > Q  200 

ECUACIÓN 130 CAUDAL PARA UN CANAL NO REVESTIDO CON DE LA SECCIÓN 
HIDRÁULICA ESTABLE CUANDO  Q D < Q .  201 

ECUACIÓN 131 CAUDAL TEÓRICO EN LA SECCIÓN HIDRÁULICAMENTE ÓPTIMA, EN 
FUNCIÓN DEL ÁREA HIDRÁULICA  202 
ECUACIÓN 132 CAUDAL DE DISEÑO EN LA SECCIÓN HIDRÁULICAMENTE ÓPTIMA, EN 
FUNCIÓN DEL ÁREA HIDRÁULICA  202 
ECUACIÓN 133 DETERMINACIÓN DEL  T ' ' PARA LA SECCIÓN HIDRÁULICA ESTABLE 
CUANDO Q D < Q .  203 

ECUACIÓN 134 PÉRDIDA POR TRANSICIÓN EN FLUJO ACELERADO  V1  < V 2 .  210 

ECUACIÓN 135 PÉRDIDAS POR TRANSICIÓN EN FLUJO RETARDADO,  V1  < V 2  211


LISTA DE FIGURAS 

FIGURA 1 FLUJO LIBRE  56 
FIGURA 2 FLUJO UNIFORME EN UN CANAL DE LABORATORIO  58 
FIGURA 3 FLUJO VARIADO  59 
FIGURA 4 FLUJO PERMANENTE  60 
FIGURA 5 FLUJO NO PERMANENTE  61 
FIGURA 6 FLUJO UNIFORME PERMANENTE  62 
FIGURA 7 FLUJO UNIFORME NO PERMANENTE.  63 
FIGURA 8 FLUJO VARIADO.  64 
FIGURA 9 FLUJO VARIADO NO PERMANENTE.  65 
FIGURA 11 FLUJO ESPACIALMENTE VARIADO. A) SUMIDERO CON DESCARGA COMPLETA. 
65 
FIGURA 12 SECCIÓN TRANSVERSAL DE UN CAUSE IRREGULAR  75 
FIGURA 13 SECCIÓN TRANSVERSAL DE UN CAUCE PRISMÁTICO DE FORMA 
TRAPEZOIDAL.  75 
FIGURA 14 SECCIONES COMUNES EN CANALES PRISMÁTICOS  76 
FIGURA 15 RELACIÓN ENTRE LA PROFUNDIDAD (Y) Y LA PROFUNDIDAD (D)  77 
FIGURA 16. DISTRIBUCIÓN DE VELOCIDADES EN SECCIONES TRANSVERSALES DE 
DIFERENTE FORMA. TOMADO DE HIDRÁULICA DE CANALES ABIERTOS. CHOW, V. T 
2000  82 
FIGURA 17 EFECTO DE LA RUGOSIDAD EN LA DISTRIBUCIÓN DE VELOCIDADES EN UN 
CANAL ABIERTO. TOMADO DE HIDRÁULICA DE CANALES ABIERTOS DE CHOW V.T. 
2000  83 
FIGURA 18 SECCIÓN TRANSVERSAL DE UN CAUCE DIVIDIDO EN FRANJAS.  85 
FIGURA 19 DISTRIBUCIÓN DE PRESIONES EN CANALES RECTOS Y CURVOS CON 
PENDIENTE PEQUEÑA U HORIZONTAL. A) FLUJO PARALELO, B) FLUJO CONVEXO, C) 
FLUJO CÓNCAVO. TOMADO DE HIDRÁULICA DE CANALES ABIERTOS DE CHOW V.T. 
2000 CHOW, V. T. 2000  89 
FIGURA 20 DISTRIBUCIÓN DE PRESIONES EN UN FLUJO PARALELO EN CANALES DE 
PENDIENTE ALTA. TOMADO DE HIDRÁULICA DE CANALES ABIERTOS DE CHOW V.T. 
2000.  91 
FIGURA 21 ENERGÍA TOTAL PARA CANALES ABIERTOS  93 
FIGURA 22 ENERGÍA DE UN FLUJO GRADUALMENTE VARIADO EN CANALES ABIERTOS  94 
FIGURA 23 COMPONENTES DE LA ENERGÍA ESPECIFICA  96
FIGURA 24 CANAL DE SECCIÓN RECTANGULAR  97 
FIGURA 25 CURVA DE ENERGÍA ESPECÍFICA  100 
FIGURA 26 FLUJO SUBCRÍTICO  101 
FIGURA 27 FLUJO CRÍTICO  102 
FIGURA 28 FLUJO SUPERCRÍTICO  103 
FIGURA 29 ELEMENTO DIFERENCIAL EN LA SECCIÓN DE UN CANAL  105 
FIGURA 30 CAÍDA HIDRÁULICA CON SU RESPECTIVA CURVA DE ENERGÍA ESPECÍFICA  110 
FIGURA 31 RESALTO HIDRÁULICO CON SUS CURVAS DE ENERGÍA ESPECIFICA Y FUERZA 
ESPECIFICA.  111 
FIGURA 32 PROFUNDIDADES ALTERNAS EN LA CURVA DE ENERGÍA ESPECÍFICA.  112 
FIGURA 33 APLICACIÓN DEL PRINCIPIO DE MOMENTUM  114 
FIGURA 34 CANAL DE SECCIÓN RECTANGULAR.  116 
FIGURA 35 CURVA DE FUERZA ESPECÍFICA PARA FLUJO EN CANALES ABIERTOS.  120 
FIGURA 36 PROFUNDIDADES SECUENTES O CONJUGADAS, REPRESENTADAS EN LA 
CURVA DE FUERZA ESPECIFICA.  121 
FIGURA 37 A) PÉRDIDA DE ENERGÍA EN UN RESALTO. B) LONGITUD DEL RESALTO 
HIDRÁULICO.  125 
FIGURA 38 FUERZA SOBRE LA ESTRUCTURA EN UN RESALTO HIDRÁULICO.  129 
FIGURA 39 DEMOSTRACIÓN DE LA ECUACIÓN DE CHÉZY PARA UN CANAL CON FLUJO 
UNIFORME.  136 
FIGURA 40 CANAL CON RUGOSIDAD COMPUESTA  150 
FIGURA 41 SECCIONES TRANSVERSALES DE CAUDAL MÁXIMO  162 
FIGURA 42 PROPIEDADES DE GEOMÉTRICAS DE LAS PRINCIPALES SECCIONES  162 
FIGURA 43 COMPONENTES DE UN CANAL REVESTIDO.  169 
FIGURA 44 DISTRIBUCIÓN TÍPICA DE FUERZA TRACTIVA EN UN CANAL TRAPEZOIDAL. 
TOMADO DE HIDRÁULICA DE CANALES ABIERTOS DE CHOW V.T. 2000.  180 
FIGURA 45 ANÁLISIS DE FUERZAS ACTUANTES EN UNA PARTÍCULA QUE ESTA 
SUSPENDIDA EN EL FONDO DE UN CANAL  182 
FIGURA 46 ESFUERZOS TRACTIVOS ESFUERZO CORTANTE TRACTIVO MÁXIMO EN FUNCIÓN 
DE  g  × y × S o  . A) PARA LOS TALUDES Y B) PARA EL FONDO DEL CANAL. TOMADO DE 
HIDRÁULICA DE CANALES ABIERTOS DE FRENCH. R. H. 1988.  184 
FIGURA 47 ÁNGULOS DE REPOSO PARA MATERIALES NO COHESIVOS. TOMADO DE 
HIDRÁULICA DE CANALES ABIERTOS DE FRENCH. R. H.1988  186 
FIGURA 48 ESFUERZOS TRACTIVOS PERMISIBLES RECOMENDADOS PARA CANALES 
CONSTRUIDOS EN MATERIAL NO COHESIVO, LANE (1955). TOMADO DE HIDRÁULICA 
DE CANALES ABIERTOS DE FRENCH. R. H 1988  188
FIGURA 49 ESFUERZOS TRACTIVOS PERMISIBLES RECOMENDADOS PARA CANALES 
CONSTRUIDOS EN MATERIAL  COHESIVO, CHOW (1959). TOMADO DE HIDRÁULICA DE 
CANALES ABIERTOS DE FRENCH. R. H 1988  189 
FIGURA 50 SECCIÓN HIDRÁULICA ESTABLE PARA Q < QD  196 
FIGURA 51 SECCIÓN HIDRÁULICA ESTABLE CUANDO  Q D > Q  201 

FIGURA 52 SECCIÓN HIDRÁULICA ESTABLE CUANDO  Q D < Q  202 

FIGURA 53 MÁXIMO ÁNGULO ÓPTIMO ENTRE EL EJE DE UN CANAL Y LA SECCIÓN 
CORRESPONDIENTE A UNA TRANSICIÓN  209
LISTA DE IMÁGENES 

IMAGEN 1. CANAL NATURAL, RÍO ATRÁTO A LA ALTURA DEL MUNICIPIO DE QUIBDO  70 
IMAGEN 2. CANALIZACIÓN QUEBRADA LA CHIGUAZA, LOCALIDAD DE TUNJUELITO, 
BOGOTÁ  72 
IMAGEN 3 CANAL ARTIFICIAL REVESTIDO, CANAL DE TRANSPORTE ACUEDUCTO DE 
IBAGUÉ  73 
IMAGEN 4 CANAL ARTIFICIAL, MODELO HIDRÁULICO PARA EXPERIMENTACIÓN, 
LABORATORIO DE HIDRÁULICA, UNIVERSIDAD DE LA SALLE, BOGOTA.  74 
IMAGEN 5 SALTO HIDRÁULICO COMO MEZCLADOR HIDRÁULICO. PLANTA DE 
TRATAMIENTO IBAGUÉ, TOLIMA.  111 
IMAGEN 6 CÁLCULO DE LA FUERZA ESPECIFICA PARA UNA SECCIÓN RECTANGULAR EN 
EL SOFTWARE OPEN FLOW UNISALLE.  223 
IMAGEN 7 CÁLCULO DE LA FUERZA ESPECIFICA PARA UNA SECCIÓN RECTANGULAR EN 
EL SOFTWARE OPEN FLOW UNISALLE, DATOS DE ENTRADA.  224 
IMAGEN 8 CÁLCULO DE LA FUERZA ESPECIFICA PARA UNA SECCIÓN RECTANGULAR EN 
EL SOFTWARE OPEN FLOW UNISALLE, DATOS DE SALIDA.  225 
IMAGEN 9 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, PRELIMINARES.  226 
IMAGEN 10 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, DATOS DE ENTRADA.  227 
IMAGEN 11 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, DATOS DE SALIDA 1.  227 
IMAGEN 12 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, DATOS DE SALIDA 2.  229 
IMAGEN 13 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, DATOS DE SALIDA 3.  230 
IMAGEN 14 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, GRÁFICOS 1.  231
IMAGEN 15 APLICACIÓN PARA EL LABORATORIO DE HIDRÁULICA DE CANALES, PRACTICA 
“GEOMETRÍA DE LA SECCIÓN, CURVA DE ENERGÍA Y FUERZA ESPECIFICA” EN EL 
SOFTWARE OPEN FLOW UNISALLE, GRÁFICOS 2.  231
LISTA DE TABLAS 

TABLA 1 RELACIÓNES GEOMÉTRICAS PARA LAS SECCIONES TRANSVERSALES EN 
CANALES MÁS USADOS.  80 
TABLA 2 FACTORES DE FORMA PARA LA ECUACIÓN 65  127 
TABLA 3 VALORES DEL COEFICIENTE DE RUGOSIDAD N DE MANNING. TOMADOS DE 
HIDRÁULICA DE CANALES ABIERTOS DE CHOW V.T. 2000  141 
TABLA 4 VALORES PROPUESTOS PARA EL M DE BAZIN. TOMADOS DE HIDRÁULICA DE 
CANALES ABIERTOS DE CHOW V.T. 2000  146 
TABLA 5 VALORES PARA EL COEFICIENTE  C , PARA DETERMINAR EL BORDE LIBRE  F  . 157 
TABLA 6 TALUDES RECOMENDADOS PARA CANALES CONSTRUIDOS EN DIFERENTES 
TIPOS DE MATERIAL. TOMADOS DE HIDRÁULICA DE CANALES ABIERTOS DE CHOW 
V.T. 2000 Y DE HIDRÁULICA DE CANALES ABIERTOS DE FRENCH. R.H.  168 
TABLA 7 ESPESOR RECOMENDADO PARA CANALES EN CONCRETO SIMPLE, EN FUNCIÓN 
DEL CAUDAL A TRANSPORTAR  170 
TABLA 8 ESPESOR RECOMENDADO PARA CANALES EN CONCRETO REFORZADO, EN 
FUNCIÓN DEL CAUDAL A TRANSPORTAR  171 
TABLA 9 VELOCIDADES MÁXIMAS PERMISIBLES RECOMENDADAS POR FORTIER Y 
SCOBEY PARA CANALES RECTOS CON PENDIENTES PEQUEÑAS  174 
TABLA 10  FACTORES DE CORRECCIÓN PARA LAS FUERZAS TRACTIVAS MÁXIMAS PARA 
CANALES CON DIVERSOS GRADOS DE SINUOSIDAD. TOMADO DE HIDRÁULICA DE 
CANALES ABIERTOS DE FRENCH. R. H. 1988.  191 
TABLA 11 PÉRDIDAS POR INFILTRACIÓN EN CANALES EN DIVERSOS MATERIALES, SIN 
TENER EN CUENTA EL NIVEL FREÁTICO. TOMADO DE HIDRÁULICA DE CANALES 
ABIERTOS DE CHOW. V. T 2000 Y DE HIDRÁULICA DE CANALES ABIERTOS DE FRENCH 
.R. H 1998.  206 
TABLA 12 COEFICIENTES DE PÉRDIDA POR TRANSICIÓN. TOMADO DE HIDRÁULICA DE 
CANALES ABIERTOS DE CHOW. V. T 2000 Y DE HIDRÁULICA DE CANALES ABIERTOS 
DE FRENCH .R. H 1998  211 
TABLA 13 RECURSOS MATERIALES.  233 
TABLA 14 RECURSOS INSTITUCIONALES.  234 
TABLA 15 RECURSOS TECNOLÓGICOS.  234 
TABLA 16 RECURSOS HUMANOS  235 
TABLA 17 RECURSOS FINANCIEROS  235
GLOSARIO 

Las definiciones presentadas en este documento han sido generadas a través de 
dos  vías  distintas,  una  es  a  saber;  definiciones  hechas  por  el  grupo  investigador 
teniendo  en  cuenta  la  documentación  y  material  que  se  encontró,  y  otra  es, 
definiciones  tomadas  de  la  normatividad  existente  caso  que  se  aplica  el  RAS 
2000. 

AFLUJO: elevación del nivel del agua por encima del nivel normal (es decir, nivel 
natural  de  la  creciente)  en  el  lado  aguas  arriba  de  una  alcantarilla  o  una 
obstrucción en un canal. 

AGUA:  nombre  común  aplicado  al  estado  líquido  de  la  combinación  hidrogeno­ 
oxigeno  .A  pesar  de  que  la  estructura  molecular  del  agua  es  simple,  las 
propiedades  físicas  y  químicas  del  agua  son  inusualmente  complicadas.  El  agua 
es  un líquido incoloro, insaboro  e inodoro  a la  temperatura  ambiente.  Una  de las 
propiedades más importantes del agua es su habilidad para disolver muchas otras 
sustancias.  El  agua  se  conoce  con  frecuencia  como  el  solvente  universal  .bajo 
presión  atmosférica  estándar,  el  punto  de  congelamiento  del  agua  es  O  grados 
centígrados  o  273.16  grados  kelvin,  y  su  punto  de  ebullición  es  100  grados 
centígrados o 373.16 grados kelvin. 

ANCHO SUPERFICIAL: el ancho superficial de un canal es el ancho de la sección 
del canal en la superficie libre del agua. 

AREA  HIDRAULICA:  el  área  hidráulica  es  el  arrea  de  la  sección  transversal  del 
flujo, tomada normal a la dirección del flujo. 

ÁREA MOJADA: en canales abiertos el término de área mojada se refiere al área 
superficial en contacto con el líquido que fluye.
ASPERSION: pequeñas gotas de agua que vuelan o caen a través del aire. 

ATAGUIA: estructura temporal que contiene toda o parte del área de construcción 
de  tal  manera  que  la  construcción  pueda  proceder  en  condiciones  secas  .una 
ataguía de desviación desvía una corriente hacia una tubería o un canal. 

BASALTO: Roca volcánica, por lo común de color negro o verdoso, de grano fino, 
muy dura, compuesta principalmente de feldespato y piroxena o augita, y a veces 
de estructura prismática. 

BAZIN:  Henry  Emile  Bazin,  ingeniero  e  hidráulico  francés  (1829­1917)  miembro 


del corps des ponts­et­chaussees francés y después de la academia de Ciencias 
de Paris .Al principio de su carrera trabajo como asistente de Henry P. G. Darcy. 

BERNOULLI:  Daniel  Bernoulli  (1700­1782),  matemático,  físico  y  botánico  suizo 


que  desarrollo  la  ecuación  de  Bernoulli  en  su  Hydrodynamica,  de  Viribus  et 
Motibus  Fluidorum  (primer  borrador  en  1733,  primera  publicación  en  1738, 
Estrasburgo. 

BOUSSINESQ:  Joseph  Valentin  Boussinesq  (1842­1929),  hidrodinámico  y 


profesor  francés  en  la  Universidad  de  la  Sorbona  (Paris).Su  tratado  Essai  sur  la 
Theoriebdes  Eaux  Courantes  (Boussinesq,  1877)  permanece  como  una 
contribución extraordinaria en la literatura hidráulica. 

CAÍDA HIDRÁULICA: caída abrupta de agua sobre un precipicio caracterizado por 
una napa de agua en caída libre.
CANAL:  el  termino  canal  se  refiere  a  un  gran  conducto  abierto  de  pendiente 
suave.  Estos  conductos  abiertos  pueden  ser  no  revestidos  o  revestidos  con 
concreto, pasto, madera, materiales bituminosos, o una membrana artificial. 

CANALES PRISMÁTICOS: un canal prismático es el que tiene constantes tanto la 
forma transversal como la pendiente del fondo. Los canales que no entran en este 
criterio son llamados no­prismáticos 

CAUDAL: volumen de agua corriente que discurre por un cauce. 

CAUDAL UNITARIO: un caudal unitario se puede definir. 

CAVITACION: formación de burbujas de vapor y paquetes de vapor dentro de un 
líquido  homogéneo  causado  por  el  esfuerzo  excesivo  (Franc  et  al.  1995).  La 
cavitacion  modifica  las  características  hidráulicas  de  un  sistema  y  esta 
caracterizada  por  erosión  dañina,  ruido  adicional,  vibraciones  y  disipación  de 
energía. 

COEFICIENTE DE BOUSSINESQ: coeficiente de de corrección de momentum en 
honor a J.V Boussinesq quien lo propuso por primera vez (1877). 

COEFICIENTE  DE  CORIOLIS:  coeficiente  de  corrección  de  energía  cinética  en 
honor a G.G Coriolis quien introdujo por primera vez este coeficiente de corrección 
(1836). 

COEFICIENTE  DE  CHEZY:  coeficiente  de  resistencia  para  el  flujo  en  canales 
abiertos introducido por primera vez por A. Chezy. A pesar de que se pensó que 
era constante, el coeficiente es una función de la rugosidad relativa y del número 
de Reynolds.
COMPUERTAS: válvula o sistema para controlar el paso de un fluido. En canales 
abiertos,  los  dos  tipos  mas  comunes  de  compuerta  son  la  compuerta  de  flujo 
interior y la de rebose. 

CORIOLIS:  Gustave  Gaspard  Coriolis  (1792­1843),  matemático  e  ingeniero 


francés del ‘’Cuerpo de de Puentes y Caminos’’ quien describió por primera vez la 
fuerza de coriolis, es decir, el efecto del movimiento sobre un cuerpo que rota. 

CRESTA  DE  REBOSADERO:  parte  superior  del  vertedero.  El  termino  (cresta  de 
presa) se refiere a la parte superior de un vertedero no controlado. 

CRIBA:  marco  de  alambres  o  vigas  que  se  llena  con  piedras,  cantos  rodados  o 
material de relleno y se hunde como cimentación o muro de retención. 

CHEZY: Antonie Chezy (1717­1798), Ingeniero francés y miembro del ‘’Cuerpo de 
Puentes  y  Caminos’’,  quien  diseño  canales  para  el  suministro  de  aguas  de  la 
ciudad  de  Paris.  En  1768  propuso  una  formula  para  la  resistencia  al  flujo  en 
canales  abiertos  conocida  como  la  ecuación  de  Chezy.  En  1798,  se  convirtió  en 
director  de  la  Escuela  Nacional  Superior  de  Puentes  y  Caminos  después  de 
enseñar allí por muchos años. 

DARCY:  Henri  Philibert  Gaspard  Darcy  (1805­1858), ingeniero  civil francés  quien 


llevo  a  cabo  numerosos  experimentos  sobre  la  resistencia  al  flujo  en  tuberías 
(Darcy  1858).  Y  en  canales  abiertos  (Darcy  y  Bazin  1865),  y  del  flujo  en  medios 
porosos (Darcy 1856). Dio su nombre al factor de fricción de Darcy Weisbach y a 
la ley de Darcy en medios porosos. 

DIAMETRO HIDRAULICO: se define como el diámetro equivalente de tubería: es 
decir,  cuatro  veces  el  área  de  la  sección  transversal  dividida  por  el  perímetro
mojado.  Este  concepto  fue  expresado  por  primera  vez  por  el  francés  P.L.G.Du 
Buat (Buat, 1779). 

ENERGIA  ESPECIFICA:  cantidad  proporcional  a  la  energía  por  la  unidad  de 
masa,  masa  medida  atizando  el  fondo  del  canal  como  elevación  de  referencia  y 
expresada en metros de agua. El concepto de energía especifica, desarrollado por 
primera  vez  por  B.A.Bakhmeteff  en  1912,  se  utiliza  por lo  común  para  el  flujo  de 
canales abiertos. 

EROSION: Desgaste o destrucción producidos en la superficie de un cuerpo por la 
fricción  continúa  o  violenta  de  otro  o  Desgaste  de  la  superficie  terrestre  por 
agentes externos, como el agua o el viento. 

FACTOR  DE  FRICCION  DE  DARCY­WEISBACH:  parámetro  adimensional  que 


caracteriza  la  pérdida  por  fricción  en  un  flujo.  Bautizado  por  el  francés 
H.P.G.Darcy y el alemán J.Weisbach. 

FENÓMENO  LOCAL:  en  los  canales  abiertos  a  menudo  ocurren  cambios  en  el 
estado de flujo subcrítico a supercrítico, y viceversa. Tales cambios se manifiestan 
con un correspondiente cambio en la profundidad de flujo de una profundidad alta 
a una profundidad baja, o viceversa. Si el cambio ocurre con rapidez a lo largo de 
una  distancia  relativamente  corta,  el  flujo  es  rápidamente  variado  y  se  conoce 
como fenómeno local. 

FUERZA TRACTIVA: cuando el agua fluye en un canal, se desarrolla una fuerza 
que  actúa  sobre  el lecho de  este  en la  dirección  del  flujo.  Esta  fuerza, la  cual  es 
simplemente  el  empuje  del  agua  sobre  el  área  mojada,  se  conoce  como  fuerza 
tractiva.  También  conocida  como  fuerza  cortante,  fuerza  de  arrastre  o  fuerza 
tangencial.
FLUCTUAR:  Dicho  de  un  cuerpo:  Vacilar  sobre  las  aguas  por  el  movimiento 
agitado de ellas 
FLUIDO IDEAL: fluido sin fricción e imconpresible. Un fluido ideal tiene viscosidad 
cero, es decir, no puede soportar esfuerzo cortante en ningún flujo. 

FLUJO  GRADUALMENTE  VARIADO:  se  caracteriza  por  pequeños  cambios 


relativos  en  las  distribuciones  de  velocidad  y  presión  a  lo  largo  de  varias 
distancias. 

FLUJO NO PERMANENTE: las propiedades del flujo cambian con el tiempo. 

FLUJO  PERMANENTE:  ocurre  cuando  las  condiciones  en  cualquier  punto  de  un 
fluido no cambian con el tiempo. 

FLUJO  UNIFORME:  se  dice  que  el  flujo  en  canales  abiertos  es  uniforme  si  la 
profundidad  de  flujo  es  la  misma  en  cada  sección  del  canal.  Un  flujo  uniforme 
puede  ser  permanente  o  no  permanente,  según  cambie  o  no  la  profundidad  con 
respecto al tiempo. 

FLUJO  UNIFORME  NO  PERMANENTE:  El  flujo  uniforme  no  permanente  el 
criterio  que  se  toma  para  considerarlo  como    flujo  uniforme  no  permanente  es  el 
espacio.  Se  dice  que  se  presenta  un  flujo  uniforme  no  permanente  cuando  los 
parámetros hidráulicos del flujo (velocidad, profundidad) se mantienen constantes 
en  el  espacio  pero  no  en  el  tiempo.  Para  que  se  presente  flujo  uniforme  y  no 
permanente se necesita que la superficie del líquido este cambiando o fluctuando 
de  tiempo  en  tiempo  mientras  permanece  paralela  al  fondo  del  canal.  Este 
comportamiento  es  poco  probable  encontrarlo  en  la  naturaleza,  esto  se  debe  a 
que estos cambios en el tiempo tendrían que suceder a lo largo del canal paro a 
su vez permanecer constantes la profundidad y la velocidad del flujo.
FLUJO  UNIFORME  PERMANENTE:  es  el  tipo  de  flujo  fundamental  que  se 
considera en la hidráulica de canales abiertos. La profundidad de flujo no cambia 
durante  el  intervalo  de  tiempo  bajo  consideración.  El  establecimiento  de  un  flujo 
uniforme  no  permanente  requeriría  que  la  superficie  del  agua  fluctuara  de  un 
tiempo a otro pero permaneciendo paralela al fondo del canal. 

FLUJO PERMANENTE: se dice que el flujo en un canal abierto es permanente si 
la  profundidad  de  flujo  no  cambia  o  puede  suponerse  constante  durante  el 
intervalo de tiempo en consideración. 

FLUJO  VARIADO:  puede  clasificarse  además  como  rápidamente  variado  o 


gradualmente  variado.  El  flujo  es  rápidamente  variado  si la  profundidad  del  agua 
cambia de manera abrupta en distancias comparativamente cortas; de otro modo 
es  gradualmente  variado.  Un  flujo  rápidamente  variado  también  se  conoce  como 
fenómeno local; algunos ejemplos son el resalto hidráulica y la caída hidráulica. 

FLUJO  NO  PERMANENTE:  el  flujo  es  no  permanente  si  la  profundidad  cambia 
con  el  tiempo.  En  la  mayor  parte  de  los  problemas  de  canales  abiertos  es 
necesario estudiar el comportamiento del flujo solo bajo condiciones permanentes. 

FLUJO  LAMINAR:  se  caracteriza  por partículas  fluidas que  se  mueven  a lo largo 


de  trayectorias  suaves  en  láminas  o  capas,  con  una  capa  deslizándose  con 
suavidad sobre la capa adyacente. 
Los  flujos  laminares  están  regidos  por  la  ley  de  viscosidad  de  Newton,  la  cual 
relaciona  el  esfuerzo  cortante  con  la  tasa  de  deformación  angular.  Numero  de 
reynolds (R<=500). 

FLUJO TURBULENTO: en flujos turbulentos, las partículas de fluido se mueven en 
trayectorias  muy  irregulares,  causando  un  intercambio  de  momentum  de  una 
porción  del  fluido  a  la  otra.  Los  flujos  turbulentos  tienen  un  gran  potencial  de
mezcla  e  involucran  un  amplio  rango  de  escalas  longitudinales  de  remolinos 
numero de reynolds (12500<=R). 

FLUJO TRANSICIÓN: un flujo de transición es aquel clasificado ni como laminar ni 
turbulento numero de reynolds (500<=R <=12500) 

FLUJO CRÍTICO: el estado crítico del flujo a sido definido como la condición para 
la cual el numero de Froude es igual a la unidad o también se podría decir que es 
el  estado  de  flujo  para  el  cual  la  energía  especifica  es  mínima  para  un  caudal 
determinado. 

FLUJO SUBCRÍTICO: en canales abiertos, el flujo se define como subcrítico si su 
profundidad es mayor que la profundidad del flujo critico. En la práctica, los flujos 
subcriticos se controlan por las condiciones de flujo aguas abajo. 

FLUJO  SUPERCRÍTICO:  en  un  canal  abierto,  cuando  la  profundidad  del  flujo  es 
menor  que  la  profundidad  del  flujo  critico,  el  flujo  es  supercrítico  y  el  número  de 
froude es mayor que 1. Los flujos supercríticos se controlan desde aguas arriba. 

FUERZA TRACTIVA: Cuando el agua fluye en un canal, se desarrolla una fuerza 
que  actúa  sobre  el lecho de  este  en la  dirección  del  flujo.  Esta  fuerza, la  cual  es 
simplemente  el  empuje  del  agua  sobre  el  área  mojada,  se  conoce  como  fuerza 
tractiva. 

FUERZAS  INERCIALES:  son  las  fuerzas  generadas  debido  al  movimiento  del 
fluido  ya  que  todos  los  cuerpos  tienden  a  no  modificar  su  estado  de  reposo  o 
movimiento si no es debido a esta fuerza. 

FROUDE:  William  Froude  (1810­1879),  arquitecto  naval  e  hidrodinámico  ingles 


que  invento  el  dinamómetro  lo  utilizo  para  la  prueba  de  modelos  navales  en
tanques  de  remolque.  Fue  ayudado  por  su  hijo  Robert  Edmund  Fraude  quien, 
después de la muerte de su padre, continúo con algunos de sus trabajos. En 1868, 
utilizo la ley de similitud de Reech para estudiar la resistencia en modelos navales. 

GEOMORFOLOGÍA: Estudio de las características propias de la corteza terrestre. 

INFILTRACION: movimiento intersticial de agua que puede ocurrir a través de una 
presa, su cimentación o sus estribos. 

LA CAÍDA HIDRÁULICA: la caída es similar a la rápida que es un canal que tiene 
altas pendientes, pero el cambio en elevación se efectúa en una distancia corta. 

LEY  DE  DARCY:  ley  para  el  movimiento  del flujo  de aguas  subterráneas, la  cual 
establece  que  el  flujo  infiltrado  es  proporcional  a  la  relación  entre  la  pérdida  de 
energía  a  lo  largo  de  la  longitud  de  la  trayectoria  del  flujo.  Fue  descubierta  por 
H.P.G.Darcy (1856) quién estableció que, para el flujo de un liquido a través de un 
medio poroso, el caudales directamente proporcional ala diferencia de presiones. 

LINEA DE ENERGIA: es la representación grafica de la energía total que hay en 
un flujo entre dos puntos. 

MANNING:  Robert  Manning  (1816­1897),  ingeniero  jefe  de  la  oficina  de  obras 
publicas  de  Irlanda.  En  1889,  presento  dos  formulas  (manning,  1890,  una  de las 
cuales la ‘’formula de Gauckler­Manning’’, aunque Robert Manning prefirió utilizar 
la segunda ecuación presentada en su articulo. Debe anotarse que la formula de 
Gauckler­Manning  fue  propuesta  por  primera  vez  por  el  francés  P.G.  Gauckler 
(Gauckler, 1867). 

MOMENTUM:  Se  define  al  momentum  como  la  fuerza  que  ejerce  un  fluido  y  la 
cual genera un cambio masico es decir en la masa, da como resultado un cambio
masico.  Esto  debido  a  las  fuerzas  aplicadas,  entonces  se  dice  que  sinónimo  de 
momentun  es  la  fuerza  en  un  liquido,  estas  fuerzas  se  miden  o  calculan  en  una 
región  del  espacio  definida  llamada  volumen  de  control.  También  se  puede 
determinar como la ecuación que sirve para determinar las pérdidas debidas a las 
fuerzas externas ejercidas por el agua sobre las paredes del canal. 

NUMERO  DE  FROUDE:  el  numero  de  froude  es  proporcional  a  la  raíz  cuadrada 
de la relación de las fuerzas inerciales con respecto al peso del fluido, en general, 
el numero de froude se utiliza para escalarlos flujos a superficie libre, los canales 
abiertos y las estructuras hidráulicas. A pesar de que el numero adimensional fue 
bautizado en honor a William froude algunos investigadores franceses lo utilizaron 
con anterioridad. Dupuit (1848) y Bresse (1860) enfatizaron la importancia de este 
numero  para  diferenciar  los  regimenes  de  flujo  en  canales  abiertos  Bazin  (1865) 
confirmo  estos  resultados  experimentalmente.  Ferdinand  Reech  introdujo  el 
numero  adimensional  para  la  prueba  de  buques  y  hélices  en  1852.  En  Francia 
este número se conoce como el número de Reech­Froude. 

NUMERO DE  REYNOLDS: numero adimensional proporcional a la relación entre 
las fuerzas inerciales y fuerzas viscosas. 

PERDIDAS DE ENERGÍA: fenómeno aerodinámico causado por una disrupción(es 
decir,  separación)  del  flujo  alrededor  de  una  ala  asociado  con  la  perdida  de 
elevación. 

PERÍMETRO  MOJADO:  el  perímetro  mojado  es  la  longitud  de  la  línea  que  es  la 
interfase entre el fluido y el contorno del canal. 

PENDIENTE;  lado  de  una  colina;  cara  inclinada  de  un  canal  (por  ejemplo  canal 
trapezoidal); inclinación con respecto a la horizontal del fondo del canal.
PRESA  DE  GRAVEDAD:  presa  que  depende  de  su  propio  peso  para  su 
estabilidad.  Normalmente  este  término  se  refiere  a  una  presa  de  mampostería  o 
de concreto. 

PROFUNDIDAD CRÍTICA:  profundidad  de  flujo  para la  cual la  energía  específica 


es mínima. 

PROFUNDIDADES SECUENTES O CONJUGADAS: en flujo en canales abiertos, 
la solución de la ecuación de momentum en una transición entre flujo supercrítico 
subcrítico  da  dos  profundidades  de  flujo  (profundidades  de  flujo  aguas  arriba  y 
aguas abajo), las cuales se conocen como profundidades secuentes. 
RADIO  HIDRÁULICO:  el  radio  hidráulica  es  la  relación  del  área  hidráulica  y  el 
perímetro mojado. 

REMANSO:  En  el  movimiento  del  flujo  tranquilo,  es  decir  flujo  subcritico,  el  perfil 
longitudinal del flujo esta controlado por las condiciones de flujo aguas abajo: por 
ejemplo  un  obstáculo,  una  estructura,  o  un  cambio  en  la  sección  transversal. 
Cualquier  estructura  de  control  aguas  abajo  (pilas  de  un  puente,  vertederos) 
induce  un  efecto  de  remanso.  En  general,  los  términos  cálculos  de  remanso  o 
perfil  de  remanso  se  refieren  al  cálculo  del  perfil  de  flujo.  Este  término  se  utiliza 
comúnmente para el movimiento tanto del flujo supercrítico como subcritico. 

RESALTO  HIDRÁULICO:  transición  de  movimiento  rápido  (flujo  supercrítico).  A 


pesar de que el resalto hidráulico fue descrito  por Leonardo da vinci, los primeros 
trabajos  experimentales  fueron  publicados  por  Giorgio  Bidone  en  1820.la  teoría 
actual  del  resalto  hidráulico  fue  desarrollada  por  Belanger    (1828)  y  ha  sido 
verificada  experimentalmente  por  numerosos  investigadores  (por  ejemplo, 
Bakhmeteff y Matzke, 1936).
REYNOLDS:  Osborne  Reynolds  (1842­1912),  físico  y  matemático  británico  que 
expreso  primero  el  numero  de  Reynolds  (Reynolds  1883)  y  posteriormente  el 
esfuerzo de Reynolds (es decir, el esfuerzo cortante turbulento). 

RUGOSIDAD:  cuando  la  superficie  de  un  canal  se  compone  de  picos  y  valles 
irregulares a estas se les llama rugosidad, la altura efectiva de las irregularidades 
que forman los elementos de la rugosidad se conoce como altura de rugosidad. 
SECCION  DE  CONTROL:  en  un  canal  abierto  es  la  sección  transversal  donde 
ocurren  condiciones  de  flujo  crítico.  Los  conceptos  de  ‘’control’’  y  ‘’sección  de 
control’’ se utilizan con el mismo significado. 

SEDIMENTO: cualquier material movido en suspensión por el flujo o como carga 
de lecho que puede asentarse en el fondo en ausencia de movimiento del fluido. 

SUPERFICIE  LIBRE:  interfase  entre  un  líquido  y  un  gas.  En  general,  una 
superficie  libre  es  la  interfase  entre  el  fluido  (en  reposo  o  en  movimiento)  y  la 
atmósfera.  En  flujo  de  dos  fases  gas­liquido,  el  termino  ‘’superficie libre’’  también 
incluye la interfase aire­agua de burbujas de gas y gotas de liquido. 

SOCAVACION:  remoción  de  material  del  lecho  causado  por  el  poder  erosivo  del 
flujo. 

TIRANTE HIDRAULICO: el tirante hidráulico es la relación del área hidráulica con 
el ancho superficial. 

TERRAPLEN:  material  de  relleno  (tierra,  roca)  colocado  con  lados  pendientes  y 
con una longitud mayor que su altura.
TURBULENCIA:  movimiento  de  flujo  caracterizado  por  su  comportamiento  no 
impredecible,  propiedades  de  mezclas  fuertes  y  un  amplio  espectro  de  escalas 
longitudinales (Lesieur 1994). 

VISCOSIDAD: propiedad de los fluidos que caracteriza la resistencia del fluido al 
esfuerzo cortante: es decir, resistencia a un cambio en forma o en movimiento de 
los alrededores. 
VERTEDEROS:  presa  pequeña  en  un  rió  utilizada  para  elevar  el  nivel  de  agua 
aguas  arriba.  Vertederos  de  medición  se  construyen  a  lo  largo  de  las  corrientes 
con el propósito de medir el flujo. 

VOLUMEN DE CONTROL: el volumen de control es una zona, región del espacio 
o volumen representativo donde se tiene en cuenta las fuerzas. 

WEISBACH:  Julios  Weisbach  (1806­1871)  alemán  especialista  en  matemática 


aplicada e hidráulico. 

TALUD: Inclinación del paramento de un muro o de un terreno. 

ZONA PERMEABLE: parte de la sección transversal de un terraplén que contiene 
materia de alta permeabilidad.
INTRODUCCIÓN 

En  la  génesis  de  la  ingeniería  no  se  contaba  con  los  recursos  técnicos  ni 

tecnológicos con los que cuenta la ingeniería en la actualidad; hubo épocas en la 

historia  de  la  ingeniería  para  las  cuales  el  desarrollo  de  un    calculo  matemático 

con un nivel considerable o el calculo y diseño de alguna estructura involucraba el 

gasto  de  varias  horas  para  su  ejecución,  en  aquellos  días  era  común  el  uso  de 

tablas y nomogramas en los cuales se resumía información relevante. 

El  proceso  de  cálculo  se  efectuaba  generalmente  con  reglas  de  cálculo  y 

calculadoras  de  bolsillo;  donde  el  uso  continuo  y  prolongado  de  estos  elementos 

probablemente  conllevaba  a  errores  que  el  diseñador  obviaba  no  por  omisión 

propia  sino  muy  seguramente  por  cansancio  o  fatiga  al  efectuar  procesos  tan 

repetitivos y desgástantes. 

En  la  actualidad se  cuenta  con poderosas  maquinas  cuyos  hardware  permiten la 

implementación de software especializados para cada tipo de necesidades donde 

la  función  del  ingeniero;  no  será  la  de  realizar  cálculos  tediosos,  sino  por  el 

contrario  es  la  de  interpretar  resultados,  y  decidir  si  los  resultados  que  le  son 

arrojados  por  el  software  tienen  sentido  dentro  del  marco  referencial  de  la 

ingeniería,  el  cual  corresponde  a  las  leyes  y  planteamientos  teóricos  que  son 

aceptados por la comunidad educativa y profesional.
El ingeniero  con los  resultados  que  ha  analizado  en  forma  responsable, debe de 

poder formular respuestas y soluciones según sean las necesidades o condiciones 

que le imponga el rigor del ejercicio de la profesión y así lograr el bienestar de la 

comunidad y por ende de la humanidad misma. 

Bien  es  reconocido  y  aceptado  que  esta  es  la  era  de  la  información  y  que  el 

desarrollo de un proyecto depende de gran manera en la forma en se distribuyan y 

utilicen los recursos disponibles, como es el tiempo. 

El  software  en  la  ingeniería  se  remontan  a  el  inicio  propio  de  la  era  de  los 

computadores pues el desarrollo de estos sistemas siempre tiene el mismo fin, el 

cual  es la  solución  de  problemas  de  la  vida cotidiana  bajo  modelos  matemáticos 

que  modelen  y/o  predigan  el  comportamiento  de  las  variables  que  se  estén 

tratando. 

En  este  orden  de  ideas  este  trabajo  busco  crear  un  software  que  permite  el 

diseño de canales y que tiene como valor agregado la posibilidad de ser utilizado 

como  herramienta  pedagógica  y  didáctica  para  el  aprendizaje  de  la  hidráulica  de 

canales,  y  así  mejorar  el  nivel  académico  del  estudiante,  optimiza  el  tiempo  del 

ingeniero  y  permite  al  docente  manejar  una  herramienta  para  el  desarrollo  de  su 

cátedra.
En el presente documento escrito se desarrollan los temas básicos de la hidráulica 

de  canales,  con  un  enfoque  teórico  y  practico.  En  el  enfoque  teórico  se  hace 

mención  de  los  temas  que  deben  ser  conocidos  por  cualquier  ingeniero  civil,  se 

tratan  estos  temas  con  la  seriedad  del  caso  y  no  se  escatiman  esfuerzos  por 

realizar las demostraciones que sean de interés para el lector. 

En el enfoque práctico se desarrolla el software para el diseño y el aprendizaje de 

la  hidráulica  de  canales  abiertos,  complementado  por  un  escrito  donde  se  hace 

énfasis  en  las  principales  metodologías  de  diseño  de  canales  abiertos,  con  su 

respectiva descripción  y análisis de cada método.
1.  EL PROBLEMA 

1.1 LÍNEA 

El  proyecto  de  investigación  que  se  realizó,  corresponde  a  la  línea  de  desarrollo 
tecnológico según las líneas establecidas por Facultad de Ingeniería Civil. 

1.2  TÍTULO 
Software con herramientas hidráulicas para el diseño de canales. 

1.3 DESCRPCIÓN DEL PROBLEMA 

Al  analizar  la  etapa  se  diseño  de  canales  abiertos  se  han  encontrado  procesos 
repetitivos  e  iterativos  que  conducen  a  errores  debidos  al  factor  humano,  estos 
procesos  pueden  ser mejorados u optimizados a través del uso de algún paquete 
informático o software. 

En  el  diseño  de  canales  regularmente  se  recure  a  tablas  o  nomogramas 
predefinidos  en  los  libros  de  texto  los  cuales  contienen  las  correlaciones 
necesarias para un diseño racional de un canal, pero generalmente este proceso 
queda  sujeto  ala  interpretación  que  le  da  el  ingeniero  o  diseñador;  al  quedar  el 
diseño de un canal en función de la lectura de un conjunto de datos que toma el 
diseñador  se  presentan  errores  típicos  como  lo  son,  una  lectura  incorrecta, 
aproximaciones numéricas injustificadas. 

Esto  se  debe  básicamente  a  un  error  denominado  error  de  paralaje  el  cual  es 
resultado  de  la  percepción  óptica,  personal  y  subjetiva  que  tiene  cada  individuo, 
del  ambiente  en  que  se  encuentra,  patrones  ambientales,  sociales,  económicos,
culturales  y  psicológicos.  Estos  factores  externos  pueden  influir  en  la  toma  de 
decisiones ala hora de diseñar una estructura tan importante como es un canal. 

Otro factor preponderante en el diseño de canales es un recurso que en el ámbito 
profesional  es  de  suma  importancia,  se  hace  referencia  al  tiempo.  Como  fue 
mencionado  anteriormente  en  el  diseño  de  canales  hay  procesos  que  son 
iterativos, repetidos los cuales consisten en cálculos matemáticos que se basan en 
correlaciones  o  ecuaciones  definidas  por  la  comunidad  educativa,  gremial,  legal, 
en las cuales su dominio son variables conocidas de antemano por el diseñador. 

Según lo anterior el papel del diseñador en algún momento del proceso de diseño 
pasara a un segundo plano y  preponderara la parte matemática en pro de realizar 
cálculos  siendo  este  proceso  muy  tedioso  pues  genera  en  el  diseñador  fatiga,  y 
cansancio  esta  perdida  de  tiempo  y  energía  se  traduce  en  un  detrimento  de 
recursos  y  en  un  proyecto  puede  marcar  la  diferencia  a  la  hora  de  ser 
competitivos. 

Actualmente  se  cuenta  con  hojas  de  cálculo  las  cuales  son  de  gran  ayuda  pero 
como  su  nombre  lo  indica  son  simples  hojas;  ya  que  no  cuentan  con  ninguna 
interfaz grafica que muestre como seria el comportamiento del diseño a tratar, no 
correlacionan  resultados  en  forma  eficiente,  no  puede  generar  ningún  tipo  de 
sugerencia respecto al diseño; es decir ayudan en el proceso iterativo pero aun se 
queda con la limitante de la correlación de datos y en la valoración que se la da a 
los resultados los cuales para fines prácticos es mejor visualizarlos. 

Obviamente  para  evaluar,  concebir  y  diseñar  un  canal  se  debe  tener  un 
conocimiento claro y completo de la hidráulica de canales, por cuanto el software a 
diseñar debe pasar por un proceso de factibilidad, análisis y diseño hasta alcanzar 
el nivel deseado para que pueda ser utilizado, objeto de  la  investigación.
1.4 FORMULACIÓN DEL PROBLEMA 

¿Cómo  optimizar  los  procesos  de  cálculo,  análisis  y  diseño  en  la  concepción  de 
canales abiertos a través de un software con herramientas hidráulicas? 

1.5 JUSTIFICACIÓN 

La  razón  por  la  cual  se  investigo  en  el  área  de  la    hidráulica  de  canales,  es  la 
necesidad  que  tienen  los  diseñadores  de  canales  para  disminuir  el  tiempo 
involucrado  a  la  hora  de  concebir  y  diseñar  los  canales  dentro  de  un  marco 
referencial  el  cual  esta  limitado  por  la  normatividad  y  los  aspectos  teóricos 
aceptados. 

Al hacer referencia respecto al diseño de canales  se debe de mencionar el tipo de 
canal,  nombrar  si  es  o  no  erosionable;  la  sección  transversal,  la  geometría,  el 
revestimiento  y  la  pendiente.  Conocer  variables  como  el  caudal,  las  velocidades 
máximas y mínimas permisibles, el coeficiente de rugosidad, la longitud del canal. 

Con  estas  variables  se  inicia  un  proceso  matemático  e  iterativo  en  el  cual 
convergen  datos  captados  de  tablas  y  nomogramas  entre  los  cuales  resaltan  el 
espesor  de  la  placa  o  revestimiento,  borde  libre  y  altura  de  bancas;  esto  si 
hablamos del diseño de canales revestidos. 

Estos datos, ecuaciones y tablas; son programadas, almacenados y cargadas en 
bases de datos los cuales son la esencia del software para el diseño de canales, 
como  herramienta  didáctica    en  la  cátedra  y  en  el  laboratorio  de  hidráulica  de 
canales. 

Con el pleno funcionamiento del software para el diseño de canales, éste será un 
producto  de  alta  calidad  generado  por la  Universidad  De  La  Salle  y  por  el  grupo
investigador  el  cual  podría  ser  comercializado  ante  la  comunidad  educativa  y 
profesional como respuesta al creciente mercado del software de ingeniería. 

1.6 OBJETIVOS 

1.6.1  Objetivo general 

Diseñar un software con herramientas hidráulicas para el diseño de canales. 

1.6.2  Objetivos Específicos:

· Reconocer  los  procesos  más  repetitivos  e  incidentes  en  la  concepción  y 

diseño de canales.

· Aportar  a  la  ingeniería  civil  una  herramienta  que  facilite  los  cálculos 

involucrados en el diseño de los mismos.

· Brindar  a  la  comunidad  estudiantil  una  tecnología  apropiada  para  el 

desarrollo académico y profesional.

· Implementar  el  software  en  la  cátedra  y  el  laboratorio  de  hidráulica  de 

canales  como  herramienta  didáctica  para  el  aprendizaje  de  dicha 

asignatura.

· Generar gráficos donde se muestre los factores incidentes en el diseño de 

un canal.

· Generar bases de datos referentes a la hidráulica.
· Demostrar las ecuaciones básicas de la hidráulica de canales.

· Crear  un  documento  de  referencia  guía  para  estudiar  la  hidráulica  de 

canales.
2.  MARCO REFERENCIAL 

El  presente  documento  escrito  es  inspiración  de  los  integrantes  del  equipo 
investigador,  razón  por  la  cual,  se  informa  al  amable  lector  que  lo  juzgue  con 
imparcialidad y sin menospreciar el esfuerzo puesto a tan noble empresa. 

2.1 MARCO TEORICO 

Los canales abiertos han estado presentes en las grandes culturas y civilizaciones 
a lo largo de la historia misma de la humanidad, el éxito o fracaso de una cultura 
esta en gran mediada determinado por el manejo, uso y posesión de los recursos 
hídricos. 

Las  primeras  presas  fueron  construidas  en la  región  comprendida  entre  Egipto  e 
Irak alrededor del año 3000 a.C. y con ellas los primeros sistemas de distribución 
de  agua  por  medio  de  canales  abiertos,  las  culturas  que  se  desarrollaron  y 
prosperaron en esta región tenían conocimientos en ingeniería, pues desarrollaron 
infraestructura para el transporte del agua para la irrigación de tierras cultivables, 
así como para el control de niveles de ríos, como el caso del Nilo. 

Uno  de  los primeros  canales  de  gran  magnitud  se  encuentra  en  Egipto,  este  era 
un  canal  que  conectaba  al  río  Nilo  con  una  depresión  en  el  antiguo  Egipto 
(depresión Fayum), su construcción se inicio en el año 2300 a.C. bajo la orden del 
Rey  Amenembat,    el  canal  inicialmente  bordeaba  una  montaña  por  medio  de  un 
corte  natural  en  el  desierto  Libio,  este  tenía  una  sección  transversal  de  tipo 
trapezoidal, una longitud de 16 km, con una profundidad de 5 m, ancho de base de 
600 m, con taludes de 1 a 10, el fondo estaba compuesto por piedras cortadas y 
unidas con cemento, su pendiente era de alrededor 0.01°.
Según los relatos bíblicos recopilados y narrados en el libro del Génesis, hubo una 
gran hambruna en Egipto en épocas de José, estas se debieron a la rotura y toma 
de  la presa (Ha  –  Uar)  por parte del  Rey  del  bajo  Egipto,  esta  presa  regulaba el 
sistema de irrigación en el alto Egipto,  la hambruna termino cuando la presa fue 
recuperada y según la tradición judeo­cristiana, José alrededor del año 1730 a.C. 
trabajo en la reconstrucción del canal y las presas. 

En  América  también  hubo  varias  culturas  especializadas  en  el  manejo  de  los 
recursos hídricos, de los cuales sobresalen los Incas, los Taironas, los Mochicas. 
En  la  región  que  actualmente  corresponde  al  valle  costero  del  norte  del  Perú  se 
desarrollo  la  cultura  Mochica  entre  los  años  (200  –  1000)  d.  C  y,  luego  ocupado 
por  los  Chimus  en  los  años  (1000  ­  1466)  d.  C,  estas  culturas  desarrollaron 
amplias zonas de irrigación utilizando canales que alimentaban con los ríos Moche 
y  Chicama,  en  el  año  de  1466,  los  Incas  invadieron  el  imperio  Chimu  tomando 
toda  su  cultura  y  conocimientos  ingenieriles,  en  esta  región  sobresalen  dos 
canales por su magnitud e importancia, el canal Vichansao con una longitud total 
aproximadamente de 45 Km., con 2 m de ancho y el canal ínter valle, el cual llego 
a tener una longitud aproximada de 139 Km., este canal se conectaba con el canal 
Vichansao, el cual tenia 7 m de ancho y 2 m de profundidad. 

Como se puede apreciar el manejo de la hidráulica de canales es en gran medida 
un  índice  de  prosperidad  para  una  región,  una  cultura  ó toda una  civilización.  Es 
por  este  motivo  que  es  necesario  hacer  un  recuento  teórico  de  los  conceptos 
primordiales  de  la  hidráulica  de  canales,  para  luego  realizar  el  objeto  de  este 
proyecto,  un  software,  el  cual  es  una  herramienta  para  el  análisis  y  diseño  de 
canales abiertos. 

2.1.1  Flujo  en  canales  abiertos,  el  flujo  a  superficie  libre  o  flujo  libre  se  presenta 
cuando los líquidos fluyen por la acción de la gravedad y solo están parcialmente 
contenidos por un contorno sólido.
El  conducto  por  el  cual  circula  un  líquido  con  flujo  libre  se  llama  canal,  el  que 
puede ser cerrado o abierto. Las características generales del flujo libre o flujo en 
canales  son:

· Presenta  una  superficie  del  líquido  en  contacto  con  la  atmósfera,  llamada 
superficie libre.

· La superficie libre coincide con la línea piezométrica.

· Cuando  el  fluido  es  agua  a  temperatura  ambiente,  el  régimen  de  flujo  es 
usualmente turbulento. 

Es decir el flujo libre incluye todos los casos de flujo en los cuales la superficie del 
liquido  esta  abierta  a  la  atmósfera  y  cumple  con  las  características  ya 
mencionadas estas características se aprecian en la figura 1. 

Figura 1 Flujo libre 
PIEZOMETRO  LINEA DE ENERGIA 

SUPERFICIE DEL AGUA 

L.P 
CANAL  y  y 

FONDO DEL CANAL 

DATUM O NIVEL DE REFERENCIA 

2.1.1.1 Tipos de flujo,  el flujo a superficie libre se puede clasificar en muchos tipos 
y  clasificarse  de  distintas  formas  cada  una  teniendo  en  cuenta  distintas 
valoraciones, en el presente documento se clasificara  teniendo como parámetros
el tiempo  y  el  espacio,  esto  debido  a que las  condiciones  de flujo  en los  canales 
abiertos  se  complican  por  el  hecho  de  que  la  configuración  de  la  superficie  libre 
pueden cambiar con el tiempo y con el espacio, y también por el hecho de que la 
profundidad  del  flujo,  el  caudal,  las  pendientes  del  fondo  y  de  las  paredes  del 
canal, y la superficie libre son independientes. 

La  clasificación  se  hace  en  función  del  cambio  o  variación  en  la  profundidad  del 
flujo con respecto al tiempo y al espacio. 

2.1.1.1.1  Flujo  uniforme,  en  el  flujo  uniforme  se  tiene  como  parámetro  o  criterio 
para considerarlo como flujo uniforme es el espacio. 

Se  dice  que  en  un  canal  se  presenta  flujo  uniforme  si  los  parámetros  hidráulicos 
de  flujo  (velocidad,  profundidad)  permanecen  constantes  alo  largo  del  canal  o 
conducto, es decir que el flujo es uniforme si la profundidad del flujo es la misma 
en cada sección del canal. 
Ecuación 1 Derivada parcial de la velocidad respecto a la longitud 
¶V 
 
=0
¶L 

Ecuación 2 Derivada parcial de la profundidad del flujo respecto a la longitud 
¶ y 
=0
¶L 

Ecuación 3 Derivada parcial del caudal respecto a la longitud 
¶Q 
 
=0
¶L 

El flujo de líquidos en canales de sección constante y gran longitud se considera 
uniforme.
Figura 2 Flujo uniforme en un canal de laboratorio 

2.1.1.1.2 Flujo variado,  en el flujo variado se tiene como criterio para considerarlo 
como flujo variado es el espacio. 

Para  que  se presente  flujo  variado los  parámetros  hidráulicos  de  flujo  (velocidad, 
profundidad)  varían  a  lo  largo  del  conducto,  es  decir  el  flujo  es  variado  si  la 
profundidad de flujo cambia a lo largo de la conducción o canal. 

Ecuación 4 Derivada parcial de la velocidad respecto a la longitud 
¶V 
 
¹0
¶L 
Ecuación 5 Derivada parcial de la profundidad del flujo respecto a la longitud 
¶y 
 
¹0
¶L 

Un  ejemplo del flujo variado se presenta en controles en los canales como son las 
compuertas, presas  y cambios de pendiente.
Figura 3 Flujo variado 

2.1.1.1.3  Flujo  permanente,  en  el  flujo  permanente  el    criterio  que  se  toma  para 
considerarlo como flujo permanente es el tiempo. 

Para considerar un flujo en un canal como flujo permanente se debe cumplir que 
los  parámetros  hidráulicos  del  flujo  (velocidad,  profundidad)  permanecen 
constantes en el tiempo es decir que la velocidad de las partículas que ocupan un 
punto dado es la misma en cada instante. 

Dicho de otra manera el flujo permanente se presentara si la profundidad del flujo 
no  cambia  o  puede  suponerse  constante  durante  el  intervalo  de  tiempo  a 
consideración.
Ecuación 6 Derivada parcial de la velocidad respecto al tiempo 
¶V 
 
=0
¶t 

Ecuación 7 Derivada parcial de la profundidad del flujo respecto al tiempo 
¶y 
 
=0
¶t 

Ecuación 8 Derivada parcial del caudal respecto al tiempo 
¶Q 
 
=0
¶t 

Figura 4 Flujo permanente 

En  la  mayoría  de  los  problemas  prácticos  se  presentan  condiciones  de  flujo 
permanentes,  como  por  ejemplo  el  transporte  de  líquidos  bajo  condiciones 
constantes de altura de carga. 

2.1.1.1.4  Flujo  no  permanente,  en  el  flujo  no  permanente  el   criterio  que  se  toma 
para considerarlo como flujo no permanente es el tiempo. 

En  el  flujo  no  permanente  los  parámetros  hidráulicos  (velocidad,  profundidad) 
varían en el tiempo.
Ecuación 9 Derivada parcial de la velocidad respecto al tiempo. 
¶V 
 
¹0
¶t 

Ecuación 10 Derivada parcial de la profundidad del flujo respecto al tiempo. 
¶y 
 
¹0
¶t 

Figura 5 Flujo no permanente 

En  el  estudio  y  diseño  de  canales  se  hace  necesario  estudiar el  comportamiento 
del flujo solo bajo condiciones de flujo permanente. Sin embargo la variación en el 
estado  o  condición  del  flujo  con  respecto  al  tiempo  es  importante,  el  flujo  debe 
tratarse como no permanente, el nivel del flujo varía de manera tal que las ondas 
pasan y el factor tiempo se vuelve de gran importancia en el diseño y concepción 
de estructuras de control. 

2.1.1.1.5  Flujo  uniforme  permanente,  en  el  flujo  uniforme  permanente  el    criterio 
que se toma para considerarlo como  flujo uniforme permanente es el espacio.
El flujo uniforme no permanente se presenta cuando los parámetros hidráulicos de 
flujo (velocidad, profundidad) permanecen constantes en el espacio y el tiempo, es 
decir  la  profundidad  del  flujo  no  cambia  durante  el  intervalo  de  tiempo  bajo 
consideración. 

Figura 6 Flujo uniforme permanente 

Es el tipo de flujo mas importante en la hidráulica de canales abiertos, pues es el 
tipo flujo fundamental que se estudia en hidráulica de canales. 

2.1.1.1.6  Flujo  uniforme  no  permanente,  en  el  flujo  uniforme  no  permanente  el 
criterio  que  se  toma  para  considerarlo  como    flujo  uniforme  no  permanente  es  el 
espacio. 

Se dice que se presenta un flujo uniforme no permanente cuando los parámetros 
hidráulicos  del  flujo  (velocidad,  profundidad)  se  mantienen  constantes  en  el 
espacio  pero  no  en  el  tiempo.  Para  que  se  presente  flujo  uniforme  y  no 
permanente se necesita que la superficie del líquido este cambiando o fluctuando 
de tiempo en tiempo mientras permanece paralela al fondo del canal.
Este comportamiento es poco probable encontrarlo en la naturaleza, esto se debe 
a que estos cambios en el tiempo tendrían que suceder a lo largo del canal para a 
su vez permanecer constantes la profundidad y la velocidad del flujo. 

Figura 7 Flujo uniforme no permanente. 

2.1.1.1.7 Flujo variado permanente, en el flujo variado permanente, el  criterio que 
se toma para considerarlo como  flujo variado permanente es el espacio. 

En  este  tipo  de  flujo  los  parámetros  hidráulicos  del  flujo  (velocidad,  profundidad) 
varían  en  el  espacio  pero  no  en  el  tiempo,  es  decir  se  presentara  flujo  variado 
permanente si la profundidad del flujo cambia a lo largo del canal. 

El flujo variado permanente se puede clasificar a su vez como flujo gradualmente 
variado y como flujo rápidamente variado.
Figura 8 Flujo variado. 

R.V.F = rapid varied flow = FRV = flujo rápidamente variado. 
G.V.F. = gradual varied flow = FGV = flujo gradualmente variado. 

Un  flujo  rápidamente  variado  se  presenta  si la  profundidad  del líquido  cambia  de 
manera  repentina  en  distancias  relativamente  cortas,  de  otro  modo  el  flujo  es 
gradualmente variado. En la práctica un flujo rápidamente variado se conoce como 
fenómeno local, estos son entre otros el resalto hidráulico y la caída hidráulica. 

2.1.1.1.8  Flujo  variado  no  permanente  o  inestable  o  flujo  no  permanente,  se 
presenta flujo  variado  no  permanente  cuando  los  parámetros  hidráulicos  del  flujo 
(velocidad, profundidad) cambian en el espacio y en el tiempo. Este tipo de flujo no 
es muy recurrente en la naturaleza y de hecho prácticamente no existe, motivo por 
el  cual  al  flujo  variado  no  permanente  se  le  conoce  como  flujo  no  permanente  o 
como flujo inestable. 

Las olas y las mareas en flujo libre son ejemplos de flujo variado no permanente.
Figura 9 Flujo variado no permanente. 

2.1.1.1.9 Flujo  espacialmente  variado,  el  flujo  espacialmente  variado  se  presenta 


cuando  el  caudal  varía  a  lo  largo  del  canal  o  conducción  pero  permanece 
constante en el tiempo. 

Ecuación 11 Derivada parcial del caudal respecto a la longitud. 
¶Q 
 
¹0
¶L 

Figura 10 Flujo espacialmente variado. a) Sumidero con descarga completa. 
b) Sumidero con descarga parcial. 

2.1.2.  Influencia  de  la  viscosidad,  la  densidad  y  la  gravedad  sobre  el  flujo,  el 
comportamiento  del  flujo  en  canales  abiertos  esta  determinado  o  gobernado 
básicamente  por  los  efectos  de  la  viscosidad  y  la  gravedad  con  relación  a  las
fuerzas  inerciales  del  flujo  las  cuales  se  correlacionan  directamente  con  la 
densidad del liquido que transporte el canal o conducto. Es decir se puede hablar 
de un efecto de la viscosidad, la densidad y la gravedad sobre el flujo en el canal, 
el cual determinara su estado, generando comportamientos únicos que lo permiten 
clasificar. 

2.1.2.1  Efecto  de  la  viscosidad  sobre  el  flujo,  haciendo  mención  a  los  conceptos 
básicos de la mecánica de los fluidos, un flujo se puede clasificar como laminar, en 
transición  o  turbulento  según  la  magnitud  de  las  fuerzas  inerciales  sobre  las 
fuerzas de viscosidad. La clasificación de cada tipo de flujo esta montada sobre la 
magnitud  del  número  de  Reynolds  el  cual  es  uno  de  los  parámetros 
adimensionales  notables.  En  el  régimen  de  flujo  laminar  las  fuerzas  viscosas 
predominan en el flujo pues las partículas del fluido se mueven en capas paralelas 
en una dirección determinada conceptos básicos de la mecánica de los fluidos, un 
flujo  se  puede  clasificar  como  laminar,  en  transición  o  turbulento  según  la 
magnitud de las fuerzas inerciales sobre las fuerzas de viscosidad. La clasificación 
de  cada  tipo  de  flujo  esta  montada  sobre  la  magnitud  de  cada  relación 
adimensional como lo es el numero de Reynolds. 

En  el  régimen  de  flujo  turbulento,  las  fuerzas  inerciales  son  tan  grandes  que  las 
fuerzas de viscosidad no pueden amortiguar las perturbaciones y las partículas del 
fluido se mueven siguiendo trayectorias aleatorias. 

Ecuación 12 Numero de Reynolds
V * L 
NR =

Según la ecuación 12 se tiene que: 
NR = Número de Reynolds 
V    = Velocidad del flujo 
L     = Longitud característica
u = Viscosidad cinemática
Al reemplazar en al ecuación 12 al radio hidráulico (R) como longitud característica 
se  obtiene  una  expresión  para  el  número  de  Reynolds  en  canales  abiertos 
(ecuación 13). 

Ecuación 13 Numero de Reynolds para canales abiertos
V * R H 
NR =

Los  valores  limites  de  la  ecuación  13,  para  la  clasificación  o  caracterización  del 
flujo son: 
Flujo laminar NR < 500 
Flujo turbulento NR > 1000 
Flujo transición 500 < Re < 1000 
Es de mencionar y aclarar que en experimentos se ha demostrado que el régimen 
de flujo puede variar de laminar a turbulento en un intervalo entre 500 y 12500 del 
NR  (Numero  de  Reynolds)  cuando  se  ha  trabajado  con  el  radio  hidráulico  como 
longitud  característica,  motivo  por  el  cual  algunos  investigadores  toman  los 
siguientes límites del NR, a saber: 

Flujo laminar NR < 500 
Flujo turbulento NR > 12500* 
Flujo transición 500 < NR < 12500 
* El límite superior no está definido. 

Si se toma como longitud característica (ecuación 12) un valor  de cuatro veces el 
radio hidráulico, (L = 4RH) la ecuación 12 toma la siguiente forma: 

Ecuación  14  Numero  de  Reynolds  para  una  longitud  característica  de  cuatro  veces  el  radio 
hidráulico
4VR 
NR =

En la ecuación 14 tiene como limites para clasificar el flujo los siguientes valores: 

Flujo laminar NR < 2000 
Flujo turbulento NR > 4000 
Flujo transición 2000 < NR < 4000 

El régimen de flujo en canales es generalmente de tipo turbulento. 

2.1.2.2 Efecto de la densidad del líquido sobre el flujo, el cambio en la densidad de 
los líquidos hace que el flujo sea clasificado como homogéneo o estratificado. 

La  falta  de  un  gradiente  de  densidad  en  la  mayoría  de  los  flujos  de  los  canales 
abiertos en estado natural demuestra de manera significativa que la velocidad del 
flujo es lo suficientemente buena para mezclar completamente o en su totalidad el 
fluido  respecto  a  su  densidad  o  que  los  fenómenos  que  tienden  a  introducir  el 
gradiente de densidad no son importantes, motivo por el cual los flujos en canales 
o flujos libres se consideran como homogéneos en la mayoría de los casos. 

2.1.2.3 Efecto de la gravedad sobre el flujo, según sea la magnitud de las fuerzas 
de gravedad e inercia, un flujo es clasificado como subcrítico, crítico y supercrítico; 
el parámetro adimensional sobre el cual es ejercida esta clasificación es el número 
de  Froude  (NF).  Se  puede  concluir  que  el  efecto  de la  gravedad  sobre  el  estado 
del flujo es el resultado de la relación entre la acción de las fuerzas inerciales y las 
fuerzas gravitacionales. 

Ecuación 15 Numero de Froude 
ma  V  A  v 
NF =  \ NF  = Ù c = gy h  , y h  = \ NF  =
mg  c  B  gy h 
Según la ecuación 15 se tiene que:
yh =  Profundidad hidráulica 
c  =  Velocidad de la onda de gravedad 
A  =  Área de la sección transversal 
B  =  Ancho de la superficie libre del flujo 

2.1.2.3.1  Flujo  subcrítico,  el  flujo  subcrítico  o  flujo  lento  es  aquel  en  el  cual  la 
velocidad  del  flujo  es  menor  que  la  velocidad  de  la  onda  de  gravedad,  el 
parámetro adimensional NF<1. 

2.1.2.3.2 Flujo critico, el flujo critico se presenta cuando la velocidad del flujo es 
igual que la velocidad de la onda de gravedad, el parámetro adimensional NF=1. 

2.1.2.3.3 Flujo supercrítico, el flujo supercrítico o flujo rápido es aquel en el cual la 
velocidad del flujo es mayor que la velocidad de la onda de gravedad, el parámetro 
adimensional NF>1. 

2.1.3  Clases  de  canales  y  sus  propiedades,  se  define  a  un  canal  como  la 
conducción  o  conducto  en  el  cual  fluye  un líquido,  con  una  superficie libre  o  con 
contacto con la atmósfera. 

Un  canal  se  puede  clasificar  teniendo  en  cuenta  varios  criterios  entre  ellos  su 
origen,  sección  transversal;  y  a  su  vez  según  el  origen  los  clasificaremos  como 
naturales  o  artificiales,  estos  pueden  ser  revestidos  o  no  revestidos;  teniendo  en 
cuenta  la  sección  transversal  se  habla  de  canales  prismáticos  y  de  canales  no 
prismáticos. 

2.1.3.1  Canales  naturales,  esta  clasificación tiene  como  criterio  el origen,  cuando 


se dice que un canal es de origen natural se refiere a todas aquellas conducciones 
donde el agua, u otro liquido; fluyen de manera natural en la tierra a través de las 
depresiones  y  características  propias  de  la  geomorfología  local  que  se  presente, 
los  cuales  incluyen  desde  pequeños  arroyuelos  en  zonas  montañosas  hasta 
quebradas, arroyos, ríos pequeños y grandes, estuarios de mareas.
Las corrientes subterráneas que transportan agua con una superficie libre también 
se consideran como canales abiertos de origen natural. 

Las  características hidráulicas  en  un  canal natural  son  por  lo  general irregulares, 


motivo  por  el  cual  para  su  estudio  se  suelen  hacer  sus  pociones  empíricas 
razonables  y  consistentes  con  las  observaciones  y  experiencias  reales,  de  este 
modo  las  condiciones  de  flujo  en  estas  conducciones  o  canales  se  vuelven 
manejables mediante un estudio y un tratamiento analítico de la hidráulica teórica. 

Imagen 1. Canal natural, río Atráto a la altura del municipio de Quibdo 

2.1.3.2  Canales  artificiales,  en  los  canales  artificiales  se  tiene  como  parámetro 
para  su  clasificación  el  origen,  entonces  un  canal  artificial  es  toda  aquella 
conducción  o  canal  que  han  sido  construidos  o  desarrollados  mediante  el 
esfuerzo,  y  el  ingenio  humano;  a  esta  clasificación  pertenecen  los  canales  de 
navegación,  canales  de  centrales  hidroeléctricas,  canales  y  canaletas  de
irrigación,  cunetas  de  drenaje,  vertederos,  canales  de  desborde,  canaletas  de 
madera,  cunetas  a  lo  largo  de  carreteras,  modelos  de  laboratorio  para  realizar 
practicas  y  experimentar  con  las  propiedades  hidráulicas,  pues  en  estos  canales 
se controlan las variables que intervienen y así lograr un propósito determinado. 

Las teorías hidráulicas se aplican en la concepción y diseño de canales artificiales 
produciendo resultados con un alto grado de similitud con la realidad. 

Los canales artificiales se clasifican como no revestidos y revestidos. 

Los no revestidos o canales artificiales erosionables son utilizados principalmente 
en  cultivos  para transporte  de agua,  estos  son  excavados  en  el  terreno  natural  y 
se usan principalmente con sección transversal trapezoidal su pendiente depende 
en  gran  medida  del  tipo  de  terreno  en  el  cual  se  realice  debido  a  su  uso  no  se 
revisten y no se tienen en cuenta las pérdidas por infiltración ocasionadas.
Imagen 2. Canalización quebrada la Chiguaza, localidad de Tunjuelito, Bogotá 

Los  canales  artificiales  no  erosionables  o  revestidos  utilizan  diversos  materiales 


para  el  recubrimiento  la  elección  del  material  depende  de  factores  económicos, 
hidráulicos,  dentro  de  los  recubrimientos  mas  utilizados  se  tiene la  mampostería, 
la  piedra,  el  concreto  y  el  acero;  la  razón  fundamental  por  la  cual  se  revisten  es 
evitar las pérdidas por infiltración.
Imagen 3 Canal artificial revestido, canal de transporte acueducto de Ibagué
Imagen  4  Canal  artificial,  modelo  hidráulico  para  experimentación,  laboratorio  de  hidráulica, 
Universidad De La Salle, Bogota. 

2.1.4 La sección transversal en los canales abiertos, la sección transversal o forma 
de un canal puede ser irregular, prismática o no prismática. Para que un canal sea 
considerado  como  prismático  debe  poseer  una  sección  transversal  invariable  y 
una pendiente de fondo constante; en caso contrario será un canal no prismático 
es  decir  es  aquel  en  el  cual  la  geometría  o  la  pendiente  de  fondo  cambiara,  un 
ejemplo típico de canal no prismático es un vertedero con un ancho variable y un 
alineamiento curvo.
Figura 11 Sección transversal de un cause irregular 

Figura 12 Sección transversal de un cauce prismático de forma trapezoidal. 

Las secciones transversales más utilizadas en los canales abiertos son:
· Rectangulares
· Triangulares
· Trapezoidales
· Circulares
· Parabólicos. 
La sección trapezoidal es la forma más común en canales con bancas en tierra sin 
recubrimiento,  esto  debido  a  que  poseen  las  pendientes  necesarias  para  la 
estabilidad. 
La sección triangular y rectangular son casos partículares del trapecio; la sección 
rectangular tiene lados verticales es decir el talud es cero, por lo general se utiliza
para  canales  construidos  para  materiales  estables,  como  es  la  mampostería,  la 
roca, algunos metales o la madera; la sección triangular  posee un fondo de canal 
igual a cero, se utiliza generalmente para canales de transporte de aguas lluvias el 
las vías, como cunetas, pequeñas asqueas y en trabajos de laboratorio. 

La  sección  circular  es  la  forma  más  común  para  obras  de  alcantarillados  y 
alcantarillas de tamaño pequeño y medio. 

Figura 13 Secciones comunes en canales prismáticos 

2.1.4.1  Elementos  geométricos  de  la  sección  de  un  canal,  los  elementos 
geométricos son las propiedades que caracterizan cada sección transversal en un 
canal y son definidos por completo por la geometría de la sección y la profundidad 
del  flujo.  Estos  elementos  son  de  gran  importancia  y  se  utilizan  con  recurrencia 
para el diseño de los canales pues aportan información de la sección. 

2.1.4.1.1 Profundidad del agua, la profundidad del agua o tirante del flujo (y), es la 
distancia vertical desde el punto mas bajo de la sección de un canal a la superficie 
del agua si el canal tiene una pendiente relativamente baja.
En  los  canales  que  poseen  pendientes  altas,  se  usa  la  profundidad  del  agua  o 
tirante  del  flujo  medido  de  forma  perpendicular  con  el  fondo  del  canal  (d).  Existe 
una relación entre (y) y (d) esta es: 

Ecuación 16 Relación entre la profundidad del agua y el ángulo de la pendiente del fondo del canal.

y=
cos q 

Figura 14 Relación entre la profundidad (y) y la profundidad (d) 

Según la figura 14 se tiene que: 
θ = Angulo de la pendiente del fondo del canal con una línea horizontal. 
Si θ  es pequeño  y @ d  .
" = Nivel  del  agua;  es  la  elevación  de la  superficie  libre  del  agua  respecto  a  un 
plano  de  referencia  o  datum.  Si  el  plano  de  referencia  se  toma  en  el  punto  mas 
bajo  del  canal,  coincidirá  el  nivel  del  agua  y  el  tirante  del  flujo  o  profundidad  del 
agua. 

En un canal se tiene una pendiente baja si la pendiente So £ 0.01, y se tiene una 
pendiente alta si So  > 0.01.
2.1.4.1.2  Área  mojada,  el  área  mojada  o  área  hidráulica  (A),  de  una  sección  es 
aquella  área  correspondiente  a  una  sección transversal  del  flujo,  la  cual  se  tomo 
normalmente a la dirección del flujo. 

2.1.4.1.3  Perímetro  mojado,  se  define  al  perímetro  mojado  (P),  como  la    longitud 
de una línea que limita el área transversal de flujo, menos el ancho de la superficie 
libre. 

2.1.4.1.4 Radio hidráulico, el radio hidráulico (R), se define como la relación entre 
el área mojada con respecto a su perímetro mojado. 

Ecuación 17 Definición del radio hidráulico 

R=

2.1.4.1.5 Ancho superficial, el ancho superficial (T), de la sección del canal es la 
longitud de la línea correspondiente a la superficie libre de agua. 

2.1.4.1.6 Profundidad hidráulica, la profundidad hidráulica (D), de una sección de 
un canal es la relación entre el área mojada y el ancho superficial. 

Ecuación 18 Definición de la profundidad hidráulica. 

D=

2.1.4.1.7 Talud de la pared lateral del canal, el talud de la pared lateral del canal 
(z), toma los siguientes valores según el canal: 
En canales rectangulares z = 0. 
En canales trapezoidales o triangulares simétricos, z1 = z2 = z 

2.1.4.1.8 Ancho del fondo del canal, como su nombre lo indica el ancho del fondo 
del canal (b), es la longitud de la línea correspondiente al ancho inferior de la 
sección transversal. 
b = 0 en canales triangulares
2.1.4.1.9  Factor  de  sección  para  el  cálculo  del  flujo  critico,  el  factor  de  sección 
para el cálculo del flujo crítico (Z), se define como el producto del área mojada y la 
raíz cuadrada de la profundidad hidráulica. 

Ecuación 19 Definición de factor de sección 

Z = A  D  = A 

2.1.4.1.10 Factor de sección para el cálculo de flujo uniforme, el factor de sección 

para  el  cálculo  del  flujo  uniforme  ( AR  3 ) ,  se  define  como  el  producto  del  área 
mojada y el radio hidráulico elevado a la potencia  2  . 

2.1.4.1.11  Elementos  geométricos  de  secciones  de  canales,  los  principales 


elementos geométricos, se presentan en la tabla que se muestran a continuación.
Tabla 1 Relaciónes geométricas para las secciones transversales en canales más usados. 

2.1.5 Características del flujo en las secciones más usadas 

2.1.5.1  Flujo  en  un  canal  de  sección  circular,  si  se  tiene  un  canal  circular  de 
diámetro  do,  la  descarga  máxima  ocurre  aproximadamente  para  una  profundidad 
de flujo igual a y = 0.938do, y la velocidad máxima esta ubicada a una profundidad 
de flujo igual y = 0.81do. 

2.1.5.2  Flujo  en  canales  rectangulares  muy  anchos,  en  un  canal  rectangular  el 
radio hidráulico esta dado por la siguiente ecuación.
Ecuación 20 Radio hidráulico para un canal de sección rectangular. 
by 
R =
b + 2 y 

Si el canal es muy ancho, el factor (2y) presente en el denominador se hace casi 
despreciable en comparación con el ancho (b), motivo por el cual el radio 
hidráulico (R) se puede aproximar a al profundidad del flujo. 

Ecuación 21 Aproximación del radio hidráulico en un canal de sección rectangular 
R @ y @ y h 

Esta  aproximación  es  valida  generalmente  para  canales  rectangulares  donde  el 
ancho del canal es mayor a 10 veces la profundidad del flujo, pues esta condición 
hace que el canal sea considerado como ancho. 

2.1.6  Distribución  de  la  velocidad  en  la  sección  de  un  canal,  en  los  canales  la 
presencia  de  una  superficie  libre  y  el  hecho  de  estar  contenido  el  flujo  en  un 
conducto en el cual se presenta fricción entre el flujo y las paredes del canal estas 
condiciones hacen que la velocidad en un canal no sea uniforme en el conducto, 
presentando  zonas  de  distintas  velocidades  siendo  recurrente  que  la  velocidad 
máxima medida en canales comunes, generalmente ocurre debajo de la superficie 
libre del agua a una distancia que varia entre los 0.05 a 0.25 de la profundidad  y .
Figura 15. Distribución de velocidades en secciones transversales de diferente forma. Tomado de 
hidráulica de canales abiertos. Chow, V. T 2000 

La  figura  anterior  muestra  la  distribución  de  velocidades  para  canales  de 
diferentes secciones transversales, en esta figura se aprecia como la velocidad va 
en aumento desde las regiones exteriores hasta llegar a un valor máximo ubicado 
en o por debajo de la superficie libre del flujo coincidiendo con la mayor vertical de 
la sección transversal o con la línea al centró para los canales prismáticos. 

En  un  canal  la  distribución  de  velocidad  depende  de  varios  factores  los  cuales 
intervienen  en  diferente  magnitud,  estos  factores  son;  la  forma  del  canal,  la 
rugosidad de las paredes del canal, la presencia de curvas y codos, el viento. 

Existe  una  relación  entre la  profundidad  del  canal  y la  localización  de la  máxima 
velocidad  de  flujo  en  el  canal,  dicha  relación  muestra  que  cuando  la  conducción 
sea  ancha,  baja  y  rápida  o  de  paredes  lisas,  la  máxima  velocidad  se  localizara
muy  cerca  de  la  superficie.  En  un  canal  profundo  la  máxima  velocidad  se 
localizara a mayor distancia de la superficie libre del flujo. 

La rugosidad de las paredes del canal provoca un incremento en la curvatura de la 
curva  que  representa  la  distribución  vertical  de  la  velocidad,  esto  se  puede 
visualizar en la siguiente figura. 

Figura 16 Efecto de la rugosidad en la distribución de velocidades en un canal abierto. Tomado de 
hidráulica de canales abiertos de Chow V.T. 2000 

En  las  curvas  la  distribución  de  velocidades  se  ve  afectada  por  la  acción  de  la 
fuerza centrifuga, la velocidad tiende a ser mayor en la parte externa o convexa de 
la curva y tiende a ser menor en la parte interna o cóncava de la curva. 

El  viento  tiene  muy  poco  efecto  sobre  la  distribución  de  velocidades,  esto  se 
mantiene mientras la velocidad del viento no sea lo suficientemente grande como 
para causar una influencia directa sobre el comportamiento del flujo. 

El escurrimiento para un canal prismático es tridimensional, este se manifiesta con 
un  movimiento  que  sigue  una  trayectoria  en espiral,  la  componente  de  velocidad 
en  la  sección  transversal  del  canal  es  pequeña  en  comparación  con  las 
componentes  de  velocidad  longitudinales.  Se  idealiza  la  distribución  de
velocidades  en  canales  anchos  y  se  asume  que  es  la  misma  que  se  presentaría 
en un canal rectangular de ancho infinito. 

2.1.6.1  Medición  de  la  velocidad  en  un  canal  abierto,  para  la  medición  de  las 
corrientes  y  la  velocidad  media  del  flujo,  se  nombra  la  metodología  de  la,  U.S. 
Geological  Survey,  en  esta  metodología  la  sección  transversal  del  cause  es 
dividida  en  franjas  verticales  mediante  el  trazado  de  varias  verticales,  creando 
elementos de área, en cada vertical se medirá las velocidades, se utiliza para este 
fin  el  correntómetro  o  molinete.  Se  puede  subdividir  esta  metodología  en  dos 
métodos cada uno para casos específicos el primero es conocido como el método 
0.6y, y el segundo es denominado el método 0.2y­0.8y. 

2.1.6.1.1 Método 0.6y, este método proporciona resultados aceptables se usa para 
profundidades menores a 0.6y, en este caso la velocidad media se toma como la 
velocidad que se obtiene al realizar la lectura o medición a 0.6y desde la superficie 
o a 0.4y desde el fondo. 

2.1.6.1.2 Método 0.2y – 0.8y, este método consiste en medir la velocidad a una 
profundidad de (0.2y) y de (0.8y) desde la superficie del flujo, la velocidad media 
del flujo en la vertical será el promedio aritmético de ambas velocidades. 

2.1.6.1.3  Condiciones  generales  de  los  métodos  para  medir  la  velocidad,  para 
desarrollar  la  metodología  del  U.S.  Geological  Survey,  se  deben  cumplir  con 
algunas condiciones referentes a la forma de tomar y procesar la información. 

Las verticales deberán cumplir con las siguientes características:
· El ancho de cada vertical no deberá superar un rango comprendido entre 
1/15 a 1/20 del ancho total de la sección.
· El caudal que pasa por cada elemento de área de influencia Ai,  no podrá 
superar el 10% del caudal total.
· La diferencia entre la velocidad de las verticales no deberá sobrepasar el 
20%. 

Para obtener el caudal de cada franja o elemento de área de influencia Ai, se debe 
obtener  el  promedio  de  las  velocidades  medias  de  dos  verticales  consecutivas  o 
adyacentes  este  promedio  de  velocidades  será  multiplicado  por  el  área  que  se 
encuentra entre las dos verticales es decir el elemento de área de influencia Ai. 

El  caudal  total  de  la  sección  transversal  corresponderá  a  la  sumatoria  de  los 
caudales de cada una de las franjas, la velocidad media en la sección transversal 
del  canal  corresponderá  a  la  relación  entre  el  caudal  total  y  el  área  total  de  la 
sección. 

Figura 17 Sección transversal de un cauce dividido en franjas.


Q = å1  Q i 
Q i  = A i V i 

A = å1  A i 
Entonces la velocidad media será calculada utilizando la ecuación 22. 

Ecuación 22 Velocidad media en un cause dividido por franjas 

V=

Según el anterior análisis, se tiene que:
V  = Velocidad media 
Q  = Caudal total de la sección transversal 
A  = Área total 
Qi  = Caudal de cada franja 
Ai  = Área de cada franja 
Vi  = Velocidad media de cada franja 
N = Numero de franjas 

2.1.6.2  Coeficientes  de  distribución  de  velocidad,  la  distribución  no  uniforme  de 

velocidades  sobre la sección de un canal afecta la altura velocidad del flujo, y el 

cálculo  del  momentum;  es  por  este  motivo  que  la  altura  velocidad  del  flujo  y  el 

momentum  de  un  fluido  en  un  canal  sean  corregidos  mediante  unos  coeficientes 

de energía y de momentum. 

2.1.6.2.1  Coeficiente  de  Energía,  el  coeficiente  de  energía  o  coeficiente  de 
Coriolis, es un coeficiente que corrige el valor de la altura de la velocidad del flujo 
el cual en canales abiertos es generalmente mayor al que se determina según la 
expresión (V 2 /2g), siendo V la velocidad media del flujo. 

Es  por  este  motivo  que  la  altura  de  velocidad  del  flujo  es  corregida  mediante  un 
coeficiente  de  energía  α  o  coeficiente  de  Coriolis,  este  coeficiente  para  un  flujo 
libre varia entre 1.1 y 2.0, datos experimentales hablan de valores que se mueven 
entre 1.03 y 1.36 para canales prismáticos casi rectos, en general el valor es alto 
para canales pequeños y bajo para corrientes grandes con profundidad constante. 
Aguas  arriba  de  vertederos,  cerca  de  obstrucciones  o  cerca  de  irregularidades 
pronunciadas en el alineamiento se han observado valores de α>2.

DA            = Elemento diferencial de área en el área mojada total A. (1)
g = Peso unitario del líquido. (2)
gDAv        = Peso del liquido que pasa a través  de DA por unidad de tiempo con 
una velocidad v, resulta de multiplicar (1) y (2). (3) 
v 2 /2g         =  La altura de velocidad del flujo. (4)
gDAv 3 /2g  = Energía cinética del liquido que pasa a través de DA por unidad de 
tiempo, resulta de multiplicar (3) y (4). (5)
SgDAv 3 /2g = Energía cinética total para el área mojada completa, resulta de hacer 
la sumatoria a cada electo diferencial de energía en cada elemento 
fundamental de área. (6) 
A               = Área completa. (7) 
V               = Velocidad media. (8)
aV 2 /2g       = La altura de velocidad del flujo corregida para el área completa. (9)
agDAV 3 /2g = Energía cinética total del liquido que pasa a través de A por unidad 
de tiempo. (10) 

Ecuación 23 Coeficiente de energía 
3 3 

a=
ò v  dA » å v  DA 
V 2 A  V 3 A 

2.1.6.2.2 Coeficiente de Momentum, el coeficiente de momentum o coeficiente de 
Boussinesq, es un coeficiente que corrige el cálculo del momentum o cantidad de 
bgQV
movimiento  esta  magnitud  se  calcula  con  la  expresión  ;  donde b es  el 

coeficiente de momentum, g es el peso unitario del líquido, Q es el caudal y V es la 
velocidad media del flujo en la sección transversal. 

Este  coeficiente  toma  valores  que  van  desde  1.01  hasta  1.12  en  canales 
prismáticos aproximadamente rectos, en flujo libre el coeficiente varia entre 1.03 y 
1.33.

DA            = Elemento diferencial de área en el área mojada total A. (a) 
v               = Velocidad media del flujo (b)
gDAv/g      = Masa del liquido que pasa a través  de DA por unidad de tiempo con 
una velocidad v. (c)
gDAv 2 /g     = Momentum del liquido que pasa a través  de DA por unidad de tiempo, 
es el producto de la masa y la velocidad. (d)
SgDAv 2 /g   = El Momentum total del liquido. (e)
bgAV 2 /g     = Momentum corregido para el área total A. (f) 

Al  igualar  las  expresiones  (e)  y  (f),  y  reducir  se  obtiene  una  expresión  para  el 
coeficiente de momentum. 

Ecuación 24 Coeficiente de momentum. 
2 2 

b=
ò v  dA  » å v  DA 
V 2 A  V 2 A 

2.1.7  Distribución  de  presiones  en  la  sección  de  un  canal,  en  la  sección 
transversal  de    un  canal  de  pendiente  pequeña  la  presión  se  puede  medir  en 
cualquier  punto  de  la  sección,  esta  se  mide  por  la  altura  de  la  profundidad  del 
agua  en  un  tubo  piezométrico  instalado  en  el  punto  donde  se  quiere  realizar  la 
lectura. 

Si se omiten los disturbios menores debidos a la turbulencia, la columna de agua 
en  el  piezómetro  se  debe  alzar  desde  el  punto  de  la  lectura  o  medida  hasta  la 
línea de la superficie del líquido, es decir la distribución de presiones en un canal 
es  de  forma  prismática  esto  quiere  decir  que  prevalece  el  principio  de  la 
hidrostática de presiones y la distribución es lineal. La ley de la hidrostática de la 
distribución de presiones en un canal abierto es aplicable para el flujo uniforme y 
el flujo gradualmente variado. 

Cuando se presenta  flujo rápidamente variado, la distribución de las presiones en 
el  canal  no  se  pueden  considerar  hidrostáticas  pues  el  cambio  de la  profundidad
del  flujo  es  tan  rápido  y  abrupto  que  las  líneas  de  corriente  poseen  curvaturas  y 
divergencias. 

El flujo se clasifica según el comportamiento de las líneas de corriente de flujo este 
puede ser flujo paralelo y flujo curvilíneo. 

2.1.7.1  Flujo  paralelo,  la  aplicación  de  la  ley  hidrostática  en  un  canal  abierto  es 
valida  siempre  que  los  filamentos  del  flujo  no  tengan  componentes  se  la 
aceleración en el plano de la sección transversal.  Este tipo de flujo se denomina 
flujo  paralelo,  ya  que  este  las  líneas  de  corriente  de  flujo  no  presentan  una 
curvatura representativa ni divergente. 

2.1.7.2 Flujo curvilíneo, el flujo curvilíneo se presenta siempre que la curvatura de 
las líneas de corriente de flujo sea pronunciada, la curvatura ejerce un efecto que 
produce  componentes  representativas  de  aceleración  o  de  fuerza  centrifuga  que 
son normales a la dirección del flujo en ese caso la  distribución de presiones no 
seria hidrostática ni prismática. El flujo curvilíneo se clasifica en flujo convexo y en 
flujo cóncavo. 

2.1.7.2.1  Flujo  convexo,  el  flujo  convexo  se  presenta  en  un  canal  cuando  las 
fuerzas centrifugas actúan en sentido opuesto a la línea de acción de la gravedad, 
motivo por el cual la presión resultante tiende a ser menor que en el flujo paralelo. 

2.1.7.2.2  Flujo  cóncavo,    el  flujo  cóncavo  se  presenta  en  un  canal  cuando  las 
fuerzas  centrifugas  se  mueven  el    sentido  de  la  acción  de  la  gravedad  este 
reforzamiento de la gravedad produce una presión resultante mas grande que en 
un flujo paralelo. 

Figura  18  Distribución  de  presiones  en  canales  rectos  y  curvos  con  pendiente  pequeña  u 
horizontal. a) Flujo paralelo, b) Flujo convexo, c) Flujo cóncavo. Tomado de hidráulica de canales 
abiertos de Chow V.T. 2000 Chow, V. T. 2000
Para la figura 18, se tiene que: 
h    = Altura piezométrica 
hs  = Altura hidrostática 
c     = Corrección de altura de presión debido a la curvatura 
AB  = Distribución recta de presión en flujo paralelo 
AB’ = Distribución no lineal de presión en flujo curvilíneo 

2.1.7.3 Efecto de la pendiente del canal sobre la distribución de presiones, en un 
canal  inclinado  recto  de  ancho  unitario  y  ángulo  de  pendiente  θ,  tal  como  se 
observa en la figura 19, el peso de un elemento de agua de longitud  dL es igual a 
g  × y × cos q × dL ,  la  presión  que  se  genera  debido  a  este  peso  es  igual  a 
g × y × cos 2 q × dL , y la presión unitaria es g × y × cosq donde la altura y la profundidad 
esta dada por las siguientes ecuaciones: 

Ecuación 25 Altura piezométrica en función de la profundidad medida verticalmente
h = y × cos 2 q 
Ecuación 26 Altura piezométrica en función de las profundidad medida perpendicularmente
h = d × cosq 

Para las ecuaciones 25 y 26, se tiene que: 

h = altura piezométrica 
y = profundidad medida verticalmente 
d = profundidad medida perpendicularmente desde la superficie del agua 

De  la  ecuación  25  se  concluye  que  la  altura  de  presión  a  cualquier  profundidad 
vertical es igual a esta profundidad multiplicada por in factor de corrección cos 2 q  .
Si se presenta un canal donde la pendiente del fondo sea pequeña, menor que el 
10%,  el  factor  de  corrección  de  presión  por  efecto  de  la  pendiente,  se  puede 
despreciar.  Entonces  en  canales  de  baja  pendiente  la  presión  hidrostática  se 
puede medir con la vertical del agua o la profundidad normal al fondo del canal. 

En la gran mayoría de los casos de flujo libre, la pendiente es menor que el 10%, y 
la  corrección  de  presión  por  efecto  de  la  pendiente  se  puede  suprimir  es  decir 
h @ y @ d . 

En  canales  que  poseen  pendientes  altas,  la  velocidad  del  flujo  es  generalmente 
grande  y  mayor  que  la  velocidad  critica.  Cuando  la  velocidad  alcanza  cierta 
magnitud,  el  liquido  que  se  transporta  en  especial  el  agua,  atrapa  aire  esta 
captación  de  aire  hace  que  se  produzca  un  hinchamiento  en  el  volumen  y  por 
ende un incremento en la profundidad. 

Figura 19 Distribución de presiones en un flujo paralelo en canales de pendiente alta. Tomado de 
hidráulica de canales abiertos de Chow V.T. 2000.
2.1.8 Energía y momentum, de los conceptos básicos de hidráulica, se sabe que la 
energía  total  del  liquido  esta  expresada  en  metros­newton  por  newton  para 
cualquier  línea  de  corriente  que  pasa  por  una  sección  de  canal,  esta  se  puede 
escribir como la altura total en metros de liquido y que es igual a la sumatoria de la 
elevación  por  encima  del  nivel  de  referencia,  la  altura  de  presión  y  la  altura  de 
velocidad. 

Se  tiene  un  canal  como  el  de  la  figura  20,  con  respecto  al  nivel  de  referencia, la 
altura total H de la sección que se esta analizando puede escribirse como: 

Ecuación 27 Energía total para en un canal abierto con flujo gradualmente variado 
V 2
H  = z + d × cos q +
2 g 

En la ecuación 27, y en la figura 20 se tiene que:

z  =  Es la elevación del punto donde se esta analizando.
d  =  Es  la  profundidad  del  punto  donde  se  esta  analizando  por  debajo  de  la 
superficie del agua medida a lo largo de la sección del canal.
q= Es el ángulo de la pendiente del fondo del canal.
V 2 
=  Es la altura de velocidad del flujo. 
2 g 

En  un  canal  la  distribución  de  velocidades  es  no  uniforme  razón  por  la  cual  la 
velocidad  en  cada  línea  de  corriente  del  flujo  será  diferente,  en  un  flujo  paralelo 
ideal con una distribución uniforme de velocidad la altura de velocidad será  igual 
en todos los puntos de la sección transversal. 

En  el  flujo  gradualmente  variado  por  motivos  de  simplicidad  se  supone  que  las 
alturas de velocidad en todos los puntos de la sección del canal son iguales, pero 
teniendo en cuenta la distribución no uniforme de velocidades se puede utilizar el 
coeficiente  de  energía  o  coeficiente  de  coriolis  para  corregir  este  efecto.  En  ese
orden  de ideas  la  energía  total  para la  sección  del  canal  que  se  esta  analizando 
será: 
Ecuación 28 Energía total en un canal 
V 2
H  = z + d × cos q + a ×
2 g 

Para canales que tengan pendientes bajas, cuando  cosq » 0 , la energía total en la 


sección de canal será: 
Ecuación 29 Energía total para canales con pendientes bajas 
V 2
H  = z + d + a ×
2 g 

Figura 20 Energía total para canales abiertos 

En la figura 21 se muestra un canal prismático con una pendiente alta, la línea que 
representa la  elevación  de  la  altura  total  de flujo  es  la línea  de  energía  donde la 
pendiente de esta línea se denomina gradiente de energía, simbolizada por  S f  .
La pendiente de la superficie del liquido que para el agua se representa por  S w  y la 

pendiente  del  fondo  del  canal  se  representa  por S o = sen q  ,  por  lo  general  la 

pendiente se define como tan q , pero por el rango de valores que se manejan los 
cuales son pequeños se define como Sen q  . 
Para el flujo uniforme se cumple que S f = S w  = S o  = sen q  . 
Figura 21 Energía de un flujo gradualmente variado en canales abiertos 

Teniendo en cuenta el principio de conservación de la energía, la altura de energía 
total  ubicada  en  la  sección  1  aguas  arriba  debe  ser  igual  a  la  de  energía  total 
ubicada en la sección 2 aguas abajo, más las pérdidas de energía  h f  entre las dos 

secciones. 

Ecuación 30 Energía total entre dos puntos en un canal 
V 1 2 V 2 2 
z1 + d 1  × cos q + a1  = z 2  + d 2  × cos q + a 2  × + h f 
2 g  2 g 

La  ecuación  30  se  aplica  para  flujos  paralelos  o  gradualmente  variados,  en  un 
canal cuya pendiente sea pequeña la ecuación 30 toma la siguiente forma:
Ecuación 31 Energía total entre dos puntos en un canal de pendiente pequeña 
V 1 2 V  2 
z1 + y 1  + a1  = z 2  + y 2  + a 2  × 2  + h f 
2 g  2 g 

Las  ecuaciones  30  y  31,  son  conocidas  como  la  ecuación  de  energía,  cuando 
h f  = 0 y  a1 = a 2  = 0 la ecuación 31 se convierte en: 
Ecuación 32 Ecuación de energía de Bernoulli 
V 1 2 V  2 
z1  + y 1  + = z 2  + y 2  + 2  = const . 
2 g  2 g 

2.1.8.1 Energía especifica, se define energía específica como aquella energía, en 
la  cual  ha  sido  tomado  como  nivel  de  referencia  el  fondo  del  canal,  es  decir  es 
aquella  energía  por  unidad  de  peso  del  líquido  en  movimiento  con  relación  al 
fondo del canal. 

Ecuación 33 Energía especifica en un canal abierto, en función de la altura piezométrica. 
V 2
E = h + a
2 g 
Ecuación 34 Energía especifica en un canal abierto, en función de la profundidad 
perpendicular al fondo del canal desde la superficie del liquido 
V 2
E = d cos q + a
2 g 
Ecuación 35 Energía especifica en un canal abierto, en función de la profundidad 
vertical del liquido al fondo del canal. 
V 2 
E = y × cos 2 q + a
2 g 

Si se tiene un canal de pendiente baja la ecuación 35 toma la siguiente forma: 
Ecuación  36  Energía  especifica  para  un  canal  de  baja  pendiente,  en  función  de  la  profundidad 
vertical del liquido 
V 2
E = y + a
2 g 
Según las ecuaciones anteriores, se tiene que:

E  =  Energía especifica
h =  Altura piezométrica
d  =  Profundidad medida perpendicularmente al fondo del canal desde la superficie 
del agua
y =  Profundidad de lámina de agua del líquido medida verticalmente

q = Pendiente del fondo del canal
a = Coeficiente de velocidad o Coriollis
V  =  Velocidad media del flujo
g  =  Aceleración debida a la gravedad 

Para un flujo libre a puede variar entre 1.1 y 2.0, en la mayoría de los cálculos se 
toma a como 1.0 lo que no introduce errores significativos en los resultados, pues 
la  cabeza  de  velocidad  representa  generalmente  un  pequeño  porcentaje  de  la 
energía total. 

Figura 22 Componentes de la energía especifica 

La energía total entre dos secciones consecutivas en un canal tiende a disminuir 
esto es debido a las pérdidas que se presentan, pero la energía específica puede
aumentar o disminuir dependiendo de varios factores como la resistencia al flujo, 
la sección transversal, etc. 

Ecuación 37 Ecuación de continuidad 
Q = V × A 

Ecuación 38 Velocidad en función del caudal 

V=

Ecuación 39 Ecuación general de energía especifica 
Q 2 
E =  y +
2 × A 2  × g 

Para canales de sección rectangular, como el que se muestra en la figura 23, se 

puede utilizar un caudal unitario o caudal por unidad de ancho  q = , la ecuación 

39 se transforma y quedaría así: 
Ecuación 40 Energía especifica en un canal en función de un caudal unitario 
q 2 
E = y +
2 × g × y 2 
Figura 23 Canal de sección rectangular 

T

Siempre que el caudal sea constante y el canal tenga como sección transversal la 
rectángula,  su  energía  especifica  será  función  únicamente  de  la  profundidad  del 
flujo o  y . 

La ecuación 40 es una ecuación cúbica y posee tres raíces o valores posibles de 
y para  un  caudal  constante,  los  tres  valores  posibles  solo  hay  dos  que  tienen 
sentido  y  validez  desde  el  punto  de  vista  hidráulico.  De  esta  ecuación  se  puede 
observar el siguiente comportamiento: 

Si, y Þ 0 , E Þ ¥

Si, y Þ ¥, E Þ ¥

2.1.8.1.1  Curva de  energía  especifica, es la representación grafica  del  régimen  y 


estado  de  flujo  en  un  canal,  es  decir  es  la  visualización  de  cómo  cambia  de 
energía cada vez que se cambia la profundidad. 

2.1.8.1.2  Características  de  la  curva  de  energía,  la  representación  grafica  de  la 
curva de energía específica se muestra en la siguiente figura, esta curva posee las 
siguientes características:

· La parte superior de la curva representa el flujo subcrítico porque el número 
de Froude es menor que la unidad, NF  < 1 y la profundidad normal es mayor 
que la profundidad crítica  yN  > y C  .

· El  punto  de  inflexión  en  la  curva  corresponde  al  estado  crítico  del  flujo 
entendiendo  que  el  estado  crítico  del  flujo  sucede  cuando  el  número  de 
Froude sea igual a la unidad  NF  = 1 .
· La parte inferior de la curva corresponde al estado supercrítico del flujo, es 
decir  que  el  número  de  Froude  es  mayor  que  la  unidad, NF  > 1 y  la 
profundidad normal es menor que la profundidad critica  yN  < y C  .
· Cada  caudal  tiene  su  propia  curva  de  energía  específica,  es  decir  que  la 
curva se desplaza.
· Cuando  existe  proporcionalidad  entre  la  profundidad  del  flujo  y  la  energía 
especifica, se formara una recta a 45° y el estado de flujo subcrítico tiende 
a ser asintótico a esta recta.
· En general la recta posee dos ramales, uno asintótico al eje de las abscisas 
y otro, asintótico a una línea que forma un ángulo de 45° con relación a la 
horizontal.
· Cuando  se  presente  flujo  subcrítico,  siempre  que  se  aumente  la 
profundidad del flujo, la energía especifica  aumentara y viceversa.
· Cuando  se  presente  flujo  supercrítico,  siempre  que  se  aumente  la 
profundidad del flujo, la energía especifica  disminuirá y viceversa. 

Cuando  se  presentan  los  flujos  subcríticos  y  supercríticos,  las  velocidades  son 
menores y mayores que la velocidad critica, respectivamente , entonces en el flujo 
subcrítico  aparecen  pequeñas  ondas  superficiales  avanzando  aguas  arriba, 
mientras  que  el  flujo  supercrítico  dichas  ondas  serán  barridas  aguas  abajo, 
formando  un  ángulo b ;  estas  ondas  son  llamadas  comúnmente  como  ondas 
diamante.
Figura 24 Curva de energía específica 

Se  puede  concluir,  que  para  una  energía  específica  dada,  es  posible  tener  dos 
profundidades, una con el flujo subcrítico y otra con el flujo supercrítico; estas dos 
profundidades se conocen con el nombre de profundidades secuentes o alternas. 

2.1.8.2  Clasificación  del  flujo,  según  la  profundidad  del  flujo  y  de  acuerdo  a  la 
curva de energía específica el flujo se puede clasificar en:
2.1.8.2.1 Flujo subcrítico, el flujo subcrítico o flujo lento es aquel que se presenta 
cuando la velocidad del flujo es  menor que la velocidad de la onda de gravedad, 
es decir el número de Froude es menor que la unidad  NF  < 1 . 
Se cumple con las siguientes condiciones: 

y >  y C 
V  < V C 
NF  < 1 
S O  < S C 
Como el número de Froude es menor que uno se cumple que: 

NF =  < 1 
g × y 
V  < c 
c = g × y 
Figura 25 Flujo subcrítico 

2.1.8.2.2 Flujo critico, el flujo critico es aquel que se presenta cuando la velocidad 
del flujo es igual que la velocidad de la onda de gravedad, es decir el número de 
Froude es igual que la unidad  NF  = 1 . 

Se cumple con las siguientes condiciones: 
y =  y C 
V  = V C 
NF  = 1
S O  = S C 
Como el número de Froude es igual que uno se cumple que: 

NF =  = 1 
g × y 
V  = c 
c = g × y 
Figura 26 Flujo crítico 

2.1.8.2.3  Flujo  supercrítico,  el  flujo  supercrítico  o  flujo  rápido  es  aquel  que  se 
presenta  cuando  la  velocidad  del  flujo  es  mayor  que  la  velocidad  de  la  onda  de 
gravedad, es decir el número de Froude es mayor que la unidad  NF  > 1 . 

Se cumple con las siguientes condiciones: 
y <  y C 
V  > V C 
NF  > 1 
S O  > S C 
Como el número de Froude es mayor que uno se cumple que: 

NF =  >1
g × y 
V  > c 
c = g × y 
Figura 27 Flujo supercrítico 

Para las anteriores figuras y ecuaciones que caracterizan el flujo según la relación 
con la profundidad critica, se tiene que:

NF  =  Numero de Froude

y =  y N  = Profundidad normal del flujo uniforme

y C  =  Profundidad crítica

V  =  Velocidad media del flujo

V o  =  Velocidad crítica
c =  Velocidad de la onda de gravedad

S O  =  Pendiente del fondo del canal

S C  =  Pendiente crítica
2.1.8.3  Determinación  del  flujo  critico,  para  que  se  presente  un    estado  de  flujo 
crítico, se ha de cumplir la condición en la cual en número de Froude sea igual a 
uno, bajo este estado de flujo se tiene que la energía especifica es mínima para un 
caudal  determinado  además  de  esto  se  presenta  que  la  corriente  es  inestable  y 
esta sujeta a fluctuaciones en la profundidad del liquido. 

Es por este motivo que no se debe diseñar canales con flujo critico sino con flujo 
subcrítico o supercrítico, esto en función de la pendiente que se tenga en el canal, 
en  el  diseño  se  deben  buscar  profundidades  en  un  rango  de  1. 1 y c  < y < 0 . 9 y c  con 

y ¹ y C  . 

En  la  curva  de  energía  específica  se  observa  que  la  profundidad  crítica  se 
presenta cuando la energía específica es mínima, es decir que la ecuación general 
de flujo crítico se obtiene al derivar la ecuación de energía específica con respecto 
a la profundidad del flujo e igualarla a cero. 

Ecuación 41 Ecuación diferencia del flujo critico 
dE 
= 0
dy 

Ecuación 42 Energía especifica 
Q 2 
E = y +
2 × g × A 2 

Haciendo  loa  arreglos  matemáticos  necesarios,  se  deriva  la  energía  específica  y 
se iguala a cero.
Q 2  × A - 2 
E = y +
2 × g 

dE  Q 2 dA 


= 1 + ( -2 A 3 ) × = 0 
dy  2 × g  dy 

Q 2 dA 
1 -  × = 0 
g × A 3  dy 

Si se tiene un elemento diferencial de área mojada cerca de la superficie libre de 
agua, como de ve en la figura 27, se tiene que  dA = Tdy . 

Figura 28 Elemento diferencial en la sección de un canal 

Entonces la ecuación de flujo crítico será: 

Ecuación 43 Ecuación general del flujo crítico 
Q 2
× T  = 1 
g × A 3 
Con  la  ecuación  43,  dejando  el  caudal  en  términos  de  la  velocidad  se  puede 
determinar  el  estado  del  flujo,  esto  es  determinado  como  se  muestra  a 
continuación: 

Q2 Q 

× T  = 1 Ù V  =
g × A  A 
V 2  A 
× T  = 1 Ù T  =
g × A  D 
V 2
= 1 
g × D 

V 2
= 1 
g × D 

=1
g × D 
Donde  se  concluye  que,  el  estado  critico  de  flujo  esta  descrito  por  la  siguiente 
ecuación: 
Ecuación 44 Estado crítico de flujo 

=1
g × D 

Si  en  la  ecuación  43  separamos  las  variables  geométricas  de  la  que  no  son 
geométricas, se llega a la condición general del flujo crítico. 

Ecuación 45 Condición general del flujo crítico 
Q 2 A 3 
=
g  T 

2.1.8.3.1  Propiedades  generales  del  flujo  crítico,  el  flujo  crítico  presenta  las 
siguientes propiedades o características las cuales permiten comprender el estado 
del flujo crítico, estas propiedades son:

· Para un caudal constante la energía específica será la mínima.
· La  cabeza  de  velocidad  es  igual  a  la  mitad  de  la  profundidad  hidráulica 
2
VC   1  A 
crítica,  = y H  donde  y H = , es la profundidad crítica.
2 g  2  B 

· La velocidad crítica es igual a  g × y H  .
· El número de Froude, el cual es la relación entre la velocidad del flujo y la 

velocidad crítica  V C  , es igual a la unidad  NF  =  = 1.
g × y H 
· Si se tiene que la energía específica es constante, en la condición de flujo 
critico su caudal será máximo. Esto se demuestra derivando el caudal con 
respecto a  y  e igualando a cero, tal como se muestra a continuación 

Q 2 
E =  y +
2 × g × A 2 
Q 2  = 2 × g × A 3 ( E - y ) 

dQ 
La condición de caudal máximo sedara cuando  = 0 , entonces igualando a cero 
dy 
y derivando el caudal respecto a la profundidad. 

dQ  dA 
2 Q ×  = 4 × g × A × ( E - y ) - 2 × g × A 2 = 0 
dy  dy 
dA 
4 × g × A × ( E - y ) - 2 × g × A 2 = 0 
dy 
A = Tdy 
2T
  ( E - y ) = A 
1  A 
E =  y  + ×
2  T 
1
E  = y + y H 

VC  2 1 
Por lo cual se cumple la condición de flujo critico  = y H 
2 g  2 
Las  ecuaciones  anteriores  muestran  que  el  caudal  para  una  energía  específica 
constante  es  función  de  la  profundidad  y  que  el  caudal  es  máximo  para  la 
profundidad de flujo critica, este estado de flujo es de gran utilidad en el diseño de 
secciones  con  descarga  máxima  como  son  los  vertederos,  salidas  de  depósitos 
entre otros.
2.1.8.3.2 Flujo crítico en una sección rectangular, en un canal rectangular se tiene 
que el fondo del canal es igual que el ancho superficial, es decir  b = T  . Este canal 
se puede ver en la siguiente figura 23. 

Se tiene además un caudal unitario el cual se define como el caudal por unidad de 
L3  
ancho  con  unidades  de  T  ,  no  se  deben  eliminar  las  unidades  por  que  es  un 


caudal unitario se dice entonces que el caudal unitario es  q = . 

Ecuación 46 Caudal total en un canal rectangular, en función del caudal unitario. 
Q = q × b 

La ecuación 45 nos mostraba la condición general del flujo critico, entonces para 
un canal rectangular de ancho infinito se utilizara el caudal unitario , así como se 
muestra: 
Q 2 A 3 

g  T 
q 2 × b 2  b 3 y C3  
=
g  b 
q 2 
=  y C 3 

q 2 
y C = 3 

Se  tiene  que  la  profundidad  crítica  en  un  canal  de  sección  rectangular  se 
determina con la siguiente ecuación: 
Ecuación 47 Profundidad crítica para una sección rectangular. 
q 2 
y C = 3 


Además en un canal rectangular la energía mínima es igual a  de la profundidad 

critica  y C  , esto se demuestra a continuación: 

Q 2 
E =  y +
2 × g × A 2 

q 2  × b 2 
Emin  =  y C  +
2 × g × b 2  × y C 2 

y C 3 
Emin  =  y c  +
2 × y C 2 
y C 
E min  = y C  +

Ecuación 48 Energía mínima en un canal rectangular, en función de la profundidad 

critica. 


E min = y C 

2.1.8.4 Fenómenos locales, un fenómeno local es aquel fenómeno hidráulico que 
se presenta cuando la profundidad del flujo, varia o cambia de un valor alto a bajo, 
o  viceversa,  se  presenta  un  fenómeno  hidráulico  en  un  sitio  especifico  de  hay  el 
nombre de fenómeno local. 

2.1.8.4.1  Caída  hidráulica,  una  caída  hidráulica  o  libre  se  presenta  cuando  la 
profundidad  de  flujo  cambia  o  varia  de  un  valor  alto  a  uno  bajo,  se  presenta  un 
fenómeno local llamado caída libre.
Figura 29 Caída hidráulica con su respectiva curva de energía específica 

2.1.8.4.2 Salto hidráulico, se presenta el salto hidráulico cuando, la profundidad de 
flujo  cambia  o  varia  de  un  valor  bajo  a  un  valor  alto,  entonces  se  presenta  una 
turbulencia o remolino denominado salto o resalto hidráulico. 

El  salto  hidráulico  se  aprovecha  como  aforador  de  caudal  y  como  mezclador 
hidráulico.
Imagen  5  Salto  hidráulico  como  mezclador  hidráulico.  Planta  de  tratamiento 
Ibagué, Tolima. 

Figura  30  Resalto  hidráulico  con  sus  curvas  de  energía  especifica  y  fuerza 
especifica. 

En el salto o resalto hidráulico se presenta una pérdida de energía, se dice que la 
energía  es  igual  pero  hay  un  cambio  en  la  cabeza  de  velocidad  y  en  la 
profundidad.
2.1.8.4.3  Profundidades  Alternas,  se  dice  que  dos  profundidades  son  alternas  si 
tienen  el  mismo  valor  de  energía  específica,  esta  es  una  deducción  directa  del 
salto hidráulico. La siguiente figura ilustra dos profundidades alternas en una curva 
de energía específica. 

Figura 31 Profundidades alternas en la curva de energía específica. 

Para  determinar las  alturas  alternas  se  calcula la energía  específica  en un  punto 


para  luego  igualarlo  con  otro  bien  sea  aguas  arriba  o  aguas  abajo,  el 
procedimiento es el siguiente:
Ecuación 49 Relación de energía especifica, para determinar las alturas alternas 
E 0  =  E 1 
Q 2 
E =  y +
2 × g × A 2 

q 2  × b 2 
E1  =  y + 2
2 × g × b 2  × y 1 

q 2 
E1  =  y + 2
2 × g × y 1 

q 2 
E1  -  2
= y 
2 × g × y 1 
Ecuación 50 Ecuación para el cálculo de las profundidades alternas 
q 2
y ai  = 
2 × g × ( E - y ai +1 ) 

La  ecuación  50  es  una  ecuación  iterativa,  se  debe  nivelar  la  ecuación  y  así  se 
obtienen los valores de las profundidades alternas. 

2.1.8.5 Momentum, se define al momentum como la fuerza que ejerce un fluido y 
que genera un cambio masico es decir en la masa, da como resultado un cambio 
masico  esto  debido  a  las  fuerzas  aplicadas  entonces  se  dice  que  sinónimo  de 
momentun  es  la  fuerza  en  un  liquido,  estas  fuerzas  se  miden  o  calculan  en  una 
región  del  espacio  definida  llamada  volumen  de  control.  Para  el  cálculo  del 
bgQV
momentum o cantidad de movimiento se utiliza  la expresión  ; donde b es el 

coeficiente de momentum, g es el peso unitario del líquido, Q es el caudal y V es la 
velocidad media del flujo en la sección transversal. 

2.1.8.5.1  Volumen  de  control,  el  volumen  de  control  es  una  zona,  región  del 
espacio o volumen representativo donde se tiene en cuenta las fuerzas. 
La ecuación de momentun quedara definida en un volumen de control, la ecuación 
toma la siguiente forma según la figura 32:
( å F ) V . C  = M Salida  - M Entrada 

( å F ) V. C  = DM 

Ecuación 51 Ecuación de aplicación del principio de momentum 
F 1  + F W - F F  - F 2  = rQV 1  - rQV 2 

Donde se tiene que:

F W = W × Sen q 


Figura 32 Aplicación del principio de momentum 

Si se tiene un canal con la pendiente del fondo del canal baja y con la superficie 
casi lisa, entonces la ecuación 51 quedara de la siguiente forma: 

Ecuación 52 Ecuación de aplicación del principio de momentum para canales lisos 
y de baja pendiente. 
F1  - F 2  = rQV 1  - rQV 2 
2.1.8.5.2  Ecuación  de  fuerza  especifica,  siguiendo  el  proceso  analítico  sobre  la 
ecuación 52, se obtendrá la expresión que describe la fuerza específica. 

F1  - F 2  = rQV 1  - rQV 2 

Ecuación 53 Definición de la fuerza hidrostática. 
F = g × h × A 


Q = A × V  ® V  =

La  ecuación  52  en  términos  de  caudal,  y  sustituyendo  la  definición  de    fuerza 
hidrostática, toma la siguiente forma: 

F1  - F 2  = rQV 1  - rQV 2 


Q  Q 
g × h × A 1  + r × Q × = g × h × A 2  + r × Q ×
A 1  A 2 
Ecuación 54 Fuerza especifica por unidad de ancho. 
fe 1  = f e 2 
Ecuación 55 Ecuación de fuerza especifica. 

F = g × h × A 1  + r × Q ×
A 1 
2.1.8.5.3 Fuerza especifica en un canal de sección rectangular, para el canal que 
se muestra en la siguiente figura el análisis de fuerza específica es el siguiente:
Figura 33 Canal de sección rectangular. 

Reemplazando en la ecuación 54, dejando el área y el centroide en términos de la 
profundidad y del ancho del fondo del canal se tiene: 

Ecuación 56 Ecuación de fuerza especifica 

F = g × h × A 1  + r × Q ×
A 1 

A = b × y Ù Q = q × b Ù y =

g
g = r * g \ r =

y  g q 2  × b 2 
F = g × × b × y + ×
2 g  b × y 
2
g  × b × y 1  g × q 2  × b 
F1  = +
2  y 1 

g  × b × y 2  g × q 2  × b 
F2  = +
2  y 2 
2 2 
g  × b × y 1  g × q 2  × b  g × b × y 2  g × q 2  × b 
+ = +
2  y 1  2  y 2 
2 2 
y1  q 2  y 2  q 2 
+  = +
2  y 1  2  y 2 

fe 1  =  f e 2 
F1  - F 2  = r × Q ×V 2  - r × Q ×V 1 
F1  = g × h × A 1 
F2  = g × h × A 2 
g g
g × h × A 1  - g × h × A 2  = × Q × V 2  - × Q × V 1 
g  g 

Ecuación 57 Ecuación de fuerza especifica para las secciones (1) y (2), figuras 32 
y 33. 
Q 2  Q 2 
h × A 1  + = h × A 2  +
g × A 1  g × A 2 

De  esta  última  expresión  obtenemos  la  ecuación  de  fuerza  específica  para  un 
canal de sección rectangular. 

Ecuación 58 Ecuación de fuerza específica para un canal de sección rectangular. 
Q 2 
F e = h × A +
g × A 

Utilizando  el  concepto  de  fuerza  por  unidad  de  ancho,  lo  cual  es  la  fuerza 
especifica  que  hay  por  unidad  de  sección,  esto  se  hace  con  el  cociente  de  la 
fuerza específica y el ancho del fondo del canal.
Q 2 
F e = h × A +
g × A 
y  q 2  × b 2 
F e =  × b × y +
2  g × b × y 
y 2  q 2 
F e = b × (  + ) 
2  g × y 

F e y 2  q 2 


= (  + ) 
b  2  g × y 

Ecuación 59 Fuerza especifica por unidad de ancho 
y 2 
q 2 
f e =  +
2  g × y 

2.1.8.5.4  Curva  de  fuerza  especifica,  la  curva  de  fuerza  específica  es  la 
representación grafica de la variación de la fuerza específica a lo largo del canal. 

Para  un  valor  dado  de  fuerza  específica,  la  profundidad  crítica  da  el  máximo 
caudal o, viceversa para un caudal dado, la energía específica es mínima para la 
profundidad  crítica.  Según  lo  anterior  la  condición  de  caudal  máximo  sedara 
df e 
cuando  = 0 ,  entonces  con  la  ecuación  de  fuerza  específica  por  unidad  de 
dy 
ancho, para un canal de ancho infinito, la ecuación de fuerza específica se iguala 
a cero y se  deriva respecto a la profundidad. 

y 2  q 2 
f e =  +
2  g × y 
df e  2 y C  q 2 1 
=  + × ( - 2  ) = 0 
dy  2  g  y C 

q 2
yC  -  = 0 
g × y C 2 
q 2 
yC  = 
g × y C 2 

3 q 2 
y  C  =

Ecuación  60  Profundidad  critica  de  flujo  de  un  canal,  en  función  del  caudal 
unitario. 
q 2 
y C = 3 

La  fuerza  específica  mínima  se  da  para  la  profundidad  crítica,  entonces 
reemplazando  la  ecuación  (60)  en  la  ecuación  (59)  se  obtendrá  la  fuerza 
específica mínima. 


y  q 2 
f e min  =  C  +
2  g × y C 

y C  y C 3 
f e min  =  +
2 y C 

y C 2  2 
fe min  = + y C 

Ecuación 61 Fuerza especifica mínima para el flujo en un canal abierto. 

f e min = y C 

Figura 34 Curva de fuerza específica para flujo en canales abiertos. 

2.1.8.5.5 Profundidades secuentes, las profundidades secuentes o conjugadas se 
presentan  si  estas  tienen  el  mismo  valor  de  fuerza  especifica,  para  que  esto 
suceda en el flujo no debe interponerse ninguna otra fuerza mas que la del agua o 
hidrostática o especifica.
Figura  35  Profundidades  secuentes  o  conjugadas,  representadas  en  la  curva  de 
fuerza especifica. 

Para determinar estas profundidades, se debe de tener en cuenta que estas tienen 
la  misma  energía  especifica  entonces  la  ecuación  a  utilizar  es  la  de  la  energía 
especifica  entre  dos  secciones  o  puntos  a  través  de  un  canal,  se  igualan  sus 
fuerzas  especificas  además  se  debe  tener  expresado  el  número  de  Froude  en 
función del caudal unitario. El procedimiento es el siguiente: 

Número de Froude en función del caudal unitario: 
V  Q  q × b 
NF =  NF =  NF = 
g × D  A × g × D  A 
b × y × g ×

q 2  q 2 
( NF ) 2  =  ( NF ) 2  = 
A  b × y 
y 2  × g × y 2  × g ×
T  b 
Ecuación 62 Numero de Froude en función del caudal unitario 
q 2 
( NF ) 2  = 
y 3  × g 

F1  = F 2 

y1 2  q 2  y 2 2  q 2 


+  = +
2  gy 1  2  y 2 
2 2 
y1  y 2  q 2  q 2 
-  = -
2  2  g × y 2  g × y 1 
2 2 
y1  y 2  q 2  y 1  - y 2 
-  = × (  ) 
2  2  g  y 1  × y 2 
2 2 
y1  y 2  q 2  y 1  - y 2 
-  = × (  ) 
2  2  g  y 1  × y 2 

( y1  - y 2 )( y 1  + y 2 )  q 2  y 1  - y 2 


= × (  ) 
2  g  y 1  × y 2 

( y1  +  y 2 )  q 2  1 


= × (  ) 
2  g  y 1  × y 2 

2 × q 2 
( y1  +  y 2 ) × y 2  =
g × y 1 

2 × q 2 
y1  × y 2  + y 2 2  - = 0 
g × y 1 

2 2 × q 2 
y  2  +  y 1  × y 2  - = 0 
g × y 1 

æ - 2 × q 2  ö
- y 1  ± y 1 2  - 4 ×1 × çç ÷÷
è g × y 1  ø
y 2 = 
2 × 1 

8 × q 2 
2 × y2  = - y 1  + y 1 2  +
g × y 1 
8 × q 2  2 
2 × y2  = - y 1  + y 1 2  + × y 1 
g × y 3 1 

2 × y2  = - y 1  + y 1 2  + 8 × ( NF ) 2  × y 1 2 

Ecuación 63 Relación entre las profundidades secuentes o conjugadas 

y2  = 1  ( -1 + 1 + 8 × ( NF ) 2  ) 

2.1.8.6 Pérdida de energía en un resalto hidráulico, el resalto hidráulico es de gran 
importancia, y la pérdida de energía que se presenta en el resalto es un parámetro 
muy importante, estos tienen aplicaciones ingenieriles muy variadas entre las que 
se tienen:

· Incrementar  el  peso  sobre  el  fondo  de  la  estructura  y  así  poder  disminuir  las 
fuerzas debidas a la subpresión.
· Hacer mezclas químicas en plantas de tratamiento.
· Aireación del agua.
· Retirar  posibles  bolsas  de  aire de las líneas de  abastecimiento  de  agua  y  así 
prevenir o obstrucciones por aire,
· Destruir la mayoría de la energía cinética del flujo.
· Disipación  de  energía  en  flujos  sobre  estructuras  hidráulicas  como  son  los 
diques,  los  vertederos,  entre  otras  estructuras;  con  el  fin  de  prevenir 
socavación.
· Manejo de niveles de agua en canales abiertos para propósitos de distribución 
de agua, canalización en distrito de riego, presas y centrales hidroeléctricas. 

La pérdida de energía en un resalto se determina mediante la siguiente expresión:
Ecuación 64 Pérdidas de energía en un resalto hidráulico. 
( y  - y  ) 3 
DE = 2  1 
4 × y 1  × y 2 

Esta  expresión  se  deduce  al  aplicar  la  ecuación  de  energía  específica  entre  dos 
puntos y teniendo en cuenta las pérdidas de energía, DE según la siguiente figura, 
se tiene un canal y se presenta un resalto tal como se ilustra entonces la relación 
de energía  es la siguiente:
Figura 36 a) Pérdida de energía en un resalto. b) Longitud del resalto hidráulico. 
a) Pérdida de energía en un resalto. 

b) Longitud del resalto hidráulico. 

E1  = E 2  + DE 

Q 2  Q 2 
y1   +  2
= y 2  + 2 
+ DE 1 -2 
2 × g × A 1  2 × g × A 2 

q 2 b 2  q 2 b 2 
y1   +  2 
= y 2  + 2 
+ DE 1 - 2 
2 × g × b 2  × y 1  2 × g × b 2  × y 2 

q 2  q 2 
y1  +  2
= y 2  + 2 
+ DE 1 -2 
2 × g × y 1  2 × g × y 2 
q 2  q 2 
y1   -  y 2  + 2
- 2 
= DE 1 - 2 
2 × g × y 1  2 × g × y 2 

q 2  æ 1  1  ö
y1  - y 2  + ×ç - ÷ = DE 1 -2 
2 × g  çè y 1 2  y 2 2  ÷ø

q 2  æ y 2 2  - y 1 2  ö


DE1 - 2  = y 1  - y 2  + ×ç ÷
2 × g  çè y 1 2  × y 2 2  ÷ø

q 2  æ y 2 2  - y 1 2  ö q 2  y  ( y  + y 1 ) 


DE 1 - 2  = y 1  - y 2  + ×ç ÷ Pero se tiene que  = 2 × 2 
2 × g  çè y 1 2  × y 2 2  ÷ø 2 × g  4 
y 2 × ( y 2  + y 1 )  æ y 2 2  - y 1 2  ö
DE1  - 2  = y 1  - y 2  + × çç 2  2  ÷÷
4  è y 1  × y 2  ø
4 × y 1  × y 2  × ( y 1  - y 2 ) + ( y 1  + y 2 ) × ( y 2 2  - y 1 2 ) 
DE1 - 2  =
4 × y 1  × y 2 

4 × y1  × y 2  × DE 1 - 2  = 4 × y 2 1  × y 2  - 4 × y 1  × y 2 2  + y 1  × y 2 2  - y 3 1  + y 3 2  - y 2  × y 2 1 

4 × y1  × y 2  × DE 1 - 2  = 3 × y 2 1  × y 2  - 3 × y 1  × y 2 2  - y 3 1  + y 3 2 

( y 2  - y 1 ) 3 
D E =
4 × y 1  × y 2 

DE = E 1  - E 2 
La eficiencia del salto hidráulico, será el cociente de las energías en caga punto. 
E2 
h=
E 1 
2.1.8.6.1  La  longitud  del  resalto,  la  longitud  del  resalto  hidráulico  es  aquella 
longitud  o  distancia  que  tiene el remolino,  dicho  de  otra  manera  se  puede  definir 
como la distancia que existe entre la cara frontal del resalto es decir donde inicia 
hasta  un  punto  inmediato  sobre  la  superficie  del  flujo  aguas  debajo  de  la  ola 
asociado con el resalto.
Esta longitud se suele simbolizar por  L j  , esta longitud se puede observar con sus 

componentes en la figura 36b, en la cual se tiene que  L r  es la longitud de la ola, 


V 1  es la velocidad media para la profundidad  y 1  y  Q  es el caudal. 

Para  la  determinación  de  la  longitud  del  resalto  hidráulico,  se  utilizan  los 
resultados  de  las  investigaciones  que  se  han  realizado,  estas  investigaciones 

determinan  que la  relación  L J  Y  es  una  función que  depende  de las  condiciones 

del  flujo  aguas  arriba  en  especial  del  numero  Froude  supercrítico,  este  aporte 
teórico fue desarrollado por Silvestre, R; en el año de 1964. Su estudio se resume 
en la siguiente ecuación: 

Ecuación 65 Relación  L j  y 1  para canales prismáticos de cualquier forma.

L j G
= s ( NF 1  - 1 )
y 1 
La  cual  describe  la  longitud  de  un  resalto  hidráulico  en  un  canal  prismático  de 
cualquier forma, en esta ecuación s y G , son factores de forma. La siguiente tabla 
resume los valores de los factores de forma para la ecuación de Silvestre. 

Tabla 2 Factores de forma para la ecuación 65 
Sección s G
Rectangular  9.75  1.01 
Triangular  4.26  0.695 
Parabólico  11.7  0.832
La  longitud  del  remolino  del  resalto  hidráulico,  es  determinada  mediante  una 
ecuación propuesta por HAGER, W. H., BREMEN, R., y KAWAGOSHI, N en 1990, 

en la cual la relación 
L r 
Y 1  es una función que depende de las condiciones del flujo 
aguas  arriba  en  especial  del  numero  Froude  supercrítico,  para  un  canal  ancho 
esta ecuación es: 

Ecuación 66 Relación  L r  y 1  para canales anchos 


L r  æ NF ö
= 160 × Tanh ç ÷ - 12  Es valida siempre que  2 < NF  < 16 
y 1 è 20  ø

Existen  otras  correlaciones  para  determinar  la  longitud  del  salto  hidráulico  como 
son L j = 6 . 9 × ( y 2  - y 1 )  o L j = 2 . 5 × (1 . 9 × y 2  - y 1 ) ,  y  para  determinar  la  altura  del  salto 

se suele utilizar la siguiente ecuación  y s = y 2  - y 1 . 

2.1.8.6.2  Potencia  disipada,  La  potencia  hidráulica  esta  definida  por  la  siguiente 
expresión  P = g × Q × H B , donde:

P  = Potencia  (wattio ) 
N
g = Peso específico  (  3  ) 

m3  
Q = Caudal  (  ) 

m × N 
H B  = Altura de la cabeza de líquido que se ha disipado  (  ) 

Para un resalto la potencia esta en función de las alturas secuentes es decir, de la 
pérdida  de  energía  que  es  la  magnitud  que  cae  la  línea  de  energía  del  flujo,  la 
ecuación es la siguiente:
Ecuación 67 Potencia disipada en un resalto 
P = g × Q × DE 1-2 

2.1.8.7 Fuerza sobre la estructura en el resalto, para determinar la fuerza que se 
debe  ejercer  sobre  una  estructura,  donde  se  presente  un  resalto  hidráulico  se 
utilizara el principio del momentum sobre un volumen de control tal como lo ilustra 
la siguiente figura. 

Figura 37 Fuerza sobre la estructura en un resalto hidráulico. 

Se  utilizara la  ecuación  del  momentum,  se  deben  hacer  algunas  restricciones  tal 
como se muestra: 
(å F ) V. C  = DM 
Ecuación  68  Ecuación  de  aplicación  de  momentum  para  determinar  la  fuerza 
sobre una estructura 
- F + F 0  + F W - F F  - F 1  = rQV 1  - rQV 0 

Canal de baja pendiente: 
FW  = W × Sen q Þ Sen q = 0 \ F W  = 0 
Canal de superficie libre: 
F F  = 0
La  ecuación  66  toma  la  siguiente  forma,  con  las  anteriores  restricciones  por 
pendiente de fondo de canal y por superficie. 

Ecuación  69  Ecuación  de  aplicación  de  momentum  para  determinar  la  fuerza 
sobre una estructura en un canal de baja pendiente y liso. 
- F + F 0  - F 1  = rQV 1  - rQV 0 

Según  las  figuras  33  y  37,  y  la  ecuación  67  se  hace  el  análisis  de  fuerzas  en  el 
volumen de control, con el fin de determinar la fuerza sobre la estructura. 

- F + F 0  - F 1  = rQV 1  - rQV 0 

Q  Q 
- F + g × h 0  × A 0  - g × h 1  × A 1  = rQ  - rQ 
A 1  A 0 
y 0  y 1  g Q 2  g Q 2 
- F + g × × A 0  - g × × A 1  = -
2  2  g  b × y 1  g  b × y 0 

y 2 0  y 2 1  g q 2  × b 2  g q 2  × b 2 


- F + g  × × b - g × × b = -
2  2  g  b × y 1  g  b × y 0 

y 2 0  y 2 1  g q 2  × b 2  g q 2  × b 2 


- F + g  × × b - g × × b - + = 0 
2  2  g  b × y 1  g  b × y 0 

y 2 0  y 2 1  g q 2  × b 2  g q 2  × b 2 


F =g × × b - g × × b - +
2  2  g  b × y 1  g  b × y 0 

é y 2 0  y 2 1  q 2  q 2  ù


F = g × b ê - - + ú
ë 2  2  g × b × y 1  g × b × y 0  û
é y 2 0  q 2  y 2 1  q 2  ù
F = g × b ê + - (  + ) ú
ë 2  g × b × y 0  2  g × b × y 1  û

Ecuación 70 Ecuación general para determinar la fuerza sobre una estructura. 
F = g × b ( f e 0  - f e  ) 

2.1.9  Flujo  uniforme,  se  define  como  flujo  uniforme  o  flujo  normal  en  canales  al 
movimiento  que  se  presenta  en  el  flujo  cuando  las  fuerzas  de  fricción  generadas 
por la interacción del líquido y la superficie sólida se equilibran por la acción de la 
componente del peso del agua en la dirección del flujo, manteniendo la velocidad 
constante. 

Es decir el flujo en un canal es uniforme si las características hidráulicas del flujo, 
como  la  profundidad,  velocidad  y la  distribución  de  velocidades,  no  cambian  a lo 
largo del canal en dirección del flujo. 

El flujo libre y uniforme o flujo normal  posee las siguientes características:
· La profundidad de la lámina de agua será constante a lo largo del canal.
· Las  líneas  que  corresponden  al  fondo  del  canal,  la  superficie  libre  del 
liquido  y  la  altura  total  es  decir  la  energía  son  paralelas  esto  quiere  decir 
que tienen una misma pendiente o inclinación.
· El  gradiente  de  energía  es  igual  al  gradiente  piezométrico  y  ala  pendiente 
del canal.
· El gradiente hidráulico es igual al gradiente de energía y a su vez igual ala 
pendiente de la línea de altura total.
· Resumiendo  las dos  características anteriores  que  en  realidad  traducen la 
misma información, las pendientes son iguales, esto se puede escribir de la 
G. P = S f  = S 0  = S w 
siguiente, manera:  , donde :

G. P = Gradiente piezométrico
S f  = 
Pendiente de la línea de energía
S 0  =  Pendiente del fondo del canal

S w  = Pendiente de la superficie del líquido, el subíndice w índica agua

· La  profundidad,  el  área  mojada,  la  velocidad  y  el  caudal  en  cada  sección 
del canal son constantes.
· Las  pérdidas  de  carga  por  fricción  para  un  tramo  dado  son  iguales  al 
cambio o variación o pérdida el la cota del fondo del canal, es decir  h f = Dz .

· Para  pendientes  bajas  en  el  fondo  del  canal,  S o  < 10%  o  6°,  la  altura 
piezométrica es igual a la profundidad del agua medida verticalmente. 

2.1.9.1 Tipos de flujo uniforme, el flujo uniforme se clasifica teniendo en cuenta los 
criterios, del efecto que ejercen sobre el flujo de gravedad y la viscosidad. 
Teniendo en cuenta el efecto de la viscosidad sobre el flujo, el flujo se clasifica en:

· Flujo laminar , para NR < 500
· Flujo turbulento, para NR > 500 

Donde  NR  es el número de Reynolds y es mostrado en la ecuación 13, es decir


V * R H 
NR = .  En  flujos  con  perturbaciones  que  son  pequeñas,  el  número  de 

Reynolds crítico puede ser mayor que 500, es decir NR > 500 . 

Si se clasifica el flujo teniendo en cuenta el efecto que ejerce la gravedad sobre el 
flujo, se tienen los siguientes tipos de flujo:
· Flujo subcrítico, para NF < 1 y  y n  > y C 

· Flujo supercrítico, para NF > 1 y  y n  < y C 


Donde  NF  es el número de Froude y es mostrado en la ecuación 15, es decir 

NF = . 
gy n 

Y  clasificando  el  flujo  según  en  función  de  la  estabilidad  de  la  corriente,  esto  se 
refiere ala formación de las ondas de Froude, se tienen los siguientes tipos:
· Flujo estable, sin ondas de Froude
· Flujo  inestable,  con  ondas  de  Froude,  el  flujo  uniforme  en  un  canal  se 
vuelve  inestable  cuando  se  sobrepasa  un  valor  critico  del  numero  de 
Froude,  el  limite  de  inestabilidad  esta  cerca  de  NF  @ 2 se  encuentra  en 
función  de  la  rugosidad  y  de  forma  del  canal.  En  un  flujo  inestable  la 
formación de ondas no permite un flujo estacionario. 

2.1.9.2  Ecuaciones  de  velocidad  de  flujo,  para  determinar  la  velocidad  media  en 
una corriente se utilizan ecuaciones de origen empírico, las cuales son función de 
un  coeficiente  de  resistencia.  Este  coeficiente  de  resistencia  tiene  en  cuenta 
diversas variables de tipo hidráulico, de las cuales resaltan:

· La velocidad media
· La geometría del canal
· La sección transversal
· La profundidad del flujo
· El radio hidráulico
· La rugosidad del canal
· Las curvas presentes en el canal
· La sinuosidad del canal
· La viscosidad del fluido
Las ecuaciones o fórmulas empíricas que se utilizan para determinar la velocidad 
media del flujo en el canal, se expresan mediante la siguiente  forma general: 

Ecuación 71 Forma general de las ecuaciones de velocidad en flujo uniforme. 
V = C × R x  × S f y 

De la ecuación 71, se tiene que:

V  =  Velocidad media
C  =  Factor de resistencia al flujo
R  =  Radio hidráulico
S f  =  Pendiente de la línea de energía

S 0  =  Pendiente del fondo del canal 

S f = S 0  En flujo uniforme

x, y =  Exponentes 

2.1.9.3  Ecuación  de  Chézy,  la  ecuación  de  Chézy,  es  una  ecuación  de  flujo 
uniforme  que  fue  desarrollada  por  el  ingeniero  francés  Antoine  Chézy  en  1769, 
esta ecuación se expresa de la siguiente forma: 

Ecuación 72 Ecuación de Chézy 
V = C × R × S f 

Si se tiene un flujo uniforme la ecuación 70, seria entonces: 

Ecuación 73 Ecuación de Chézy para flujo uniforme 
V = C × R × S 0 
En  las  ecuaciones anteriores  se  tiene que  V  es  la  velocidad  media,  R es  el  radio 
hidráulico,  S f  es la pendiente de la línea de energía,  S 0  es la pendiente del fondo 

del canal y  C  es el factor de resistencia al flujo. 

Originalmente la ecuación fue de carácter empírico, pero posteriormente se pudo 
demostrar mediante bases teóricas, para la deducción analítica de la ecuación de 
Chézy se tienen en cuenta dos suposiciones. 
En  primera  instancia  se  establece  que  la  fuerza  que  resiste  al  flujo  por  cada 
unidad de área del lecho de la corriente es directamente proporcional al cuadrado 
de  la  velocidad  media,  es  decir  que  esta  fuerza  es  igual  a  KV 2  ,  siendo  V  la 
velocidad  media  y K una  constante  de  proporcionalidad,  esta  suposición  fue 
propuesta por el ingeniero Chézy. 

Teniendo  en  cuenta  la  siguiente  figura,  la  superficie  de  contacto  del  flujo  con  el 
fondo de la corriente o flujo esta determinada por el producto del perímetro mojado 
y la longitud del tramo del canal lo que seria  P × L , es decir la fuerza tota que se 
resiste al flujo es igual a  K × V 2  × P × L . 

Ecuación 74 Fuerza total resistente al flujo en un canal con flujo uniforme 
K × V 2 × P × L 
Figura 38 Demostración de la ecuación de Chézy para un canal con flujo uniforme. 

Para la segunda suposición se hace uso del principio básico del flujo uniforme, el 
cual  dice  que  en  un  flujo  uniforme  la  componente  de  la  fuerza  de  gravedad  que 
causa el flujo debe ser igual a la fuerza total de resistencia, según la figura anterior 
la  componente  de  la  fuerza  de  gravedad  es  paralela  al  fondo  del  canal  y  esta 
expresada por  g × A× L × sen q = g × A × L × S o  , donde g es el peso especifico del liquido, 

A  es  el  área  mojada, q es  el  ángulo    de  la  pendiente  y  S o es  la  pendiente  del 

canal, y para pendientes bajas se define que S o = sen q . 

Entonces si aplicamos este principio, el modelo seria el siguiente: 


g × A × L × S o = K × V 2 × P × L  , donde el radio hidráulico es  R = y el factor  C se genera 

g
al  hacer  la  siguiente  sustitución C = ,  al  reemplazar  y  despejar  la  velocidad 

media se llega a la ecuación de Chézy. 

g × A × L × S o = K × V 2 × P × L 



g  × × S o = K × V 2 

g  × R × S o = K × V 2 

× R × S o = V 2 


× R × S o = V 

V = C × R × S o 

2.1.9.4  Expresiones  para  el  factor  de  resistencia  C  en  la  ecuación  de  Chézy,  el 
coeficiente  C  de  resistencia  al  flujo  en  la  ecuación  de  Chézy,  ha  tenido  un  gran 
número  de  aproximaciones  o  soluciones  que  han  contado  con  el  trabajo  de 
notables  investigadores  de  la  hidráulica,  de  los  cuales  resaltan  los  trabajos  de 
Manning, Kutter – Ganguillet, Kutter, Bazin, Darcy – Weisbach. 

2.1.9.4.1  Fórmula  de  Kutter  –  Ganguillet,  esta  fórmula  fue  desarrollada  por  los 
ingenieros  suizos  Kutter  y  Ganguillet,  en  el  año  de  1869,  esta  fórmula  esta 
realizada  con  base  en  los  trabajos  realizados  por  Darcy,  Bazin  y  en  sus  propias 
experiencias. 

En  esta  fórmula  se  propone  un  C que  esta  en  función  de  la  rugosidad  del  canal 
(n ) , de la pendiente del fondo del canal  ( S 0 ) y del radio hidráulico. Esta fórmula es 
aplicable  principalmente  a  canales  de  sección  rectangular  y  trapezoidal,  esta 
fórmula se describe según la siguiente expresión:
Ecuación  75  Fórmula  de  Kutter  –  Ganguillet,  para  unidades  del  sistema 
internacional 
1  0 . 00155 
23 + +
n  S 0 
C = 
æ 0 . 00155 ö n 
1 + çç 23 + ÷×
è S 0  ÷ø R 

2.1.9.4.2 Fórmula de Kutter, esta fórmula fue  desarrollada en el año de 1870, esta 
expresión se genera como  una simplificación del trabajo de Kutter y Ganguillet. Es 
valida siempre que la pendiente del fondo del canal no sea menor que 0.0005, es 

decir  S 0 > 0 . 0005 . 

Esta  fórmula  propone  un  C  en  función  del  radio  hidráulico  y  de  la  rugosidad  del 
canal.  La  fórmula  se  aplica  a  todo  tipo  de  canales  exceptuando  aquellos  canales 
que  no  cumplan  con  la  restricción  por  pendiente  de  fondo,  la    expresión  es  la 
siguiente: 

Ecuación 76 Fórmula de Kutter, para unidades del sistema internacional
100 × R 
C = 
(100 × n - 1 ) + R 

2.1.9.4.3  Fórmula  de  Manning,  esta  fórmula  fue  desarrollada  por  el  ingeniero 
Irlandés  Robert  Manning  en  el  año  de  1889,  la  ecuación  original  se  ha  ido 
modificando hasta llegar a su forma actual. 

Esta  fórmula  propone  un  C  en  función  del  radio  hidráulico  y  de  la  rugosidad  del 
canal.
Ecuación 77 Fórmula de Manning, para unidades del sistema internacional 

1  6 
C = × R 

La  ecuación  de  Chézy  en  combinación  con  el  coeficiente  C  de  la  fórmula  de 
Manning, toma la siguiente forma para unidades del sistema internacional. 

V = C × R × S o  Ecuación de Chézy 

æ 1  1 6  ö
V = çç × R  ÷÷ × R × S o  Ecuación de Chézy sustituyendo el  C  de la fórmula de Manning 
è n  ø

Ecuación 78 Ecuación de Manning para flujo uniforme en unidades del sistema 
internacional 

1  3  1 2 
V = × R  × S 0 

Utilizando  la  ecuación  de  continuidad  (ecuación  37),  la  ecuación  de  Manning 
queda de la siguiente forma: 

Ecuación 79 Ecuación de Manning para caudal en unidades del sistema 
internacional 

A  3  1 2 
Q= × R  × S 0 

Si  ala  ecuación  anterior  hacemos  una  separación  de  variables  teniendo  como 
criterio  las  variables  geométricas  y  las  variables  hidráulicas  la  ecuación  de 
Manning o (ecuación 76) toma la siguiente forma: 

Ecuación 80 Ecuación general de Manning 

Q × n 
= A × R 3 
S 0 
La  fórmula  para  el  C  de  Manning,  se  desarrolló  de  siete  formas  distintas,  las 
cuales  se  basaron  en  los  datos  experimentales  que  recopilo  Bazin  que  luego 
fueron  verificadas  por  170  observaciones.  La  fórmula  de  Manning  es  de  gran 
simplicidad y genera resultados de gran exactitud para las aplicaciones practicas, 
esta fórmula es de las mas usadas entre las fórmulas para flujo uniforme. 
El mayor impedimento en el uso de esta y otras fórmulas, radica en la estimación 
de  n  pues no hay un método exacto y establecido para calcularlo,  n  toma valores 
muy diversos esto debido a que depende de varios factores:
· Rugosidad de la superficie
· Vegetación presente
· Irregularidades en el cause
· Alineamiento del canal
· Depósitos en el canal
· Socavaciones en el canal
· Obstrucciones en el canal
· Sección del canal
· Tamaño y forma del canal
· Profundidad del flujo
· Caudal que transporta el canal
· Transiciones en el canal
· Material suspendido
· Transporte de fondo 

EL  valor  de  n  es  muy  variable,  y  por  lo  general  se  admiten  cinco  métodos  o 
modelos  para  poder  estimar  el  valor  de  la  rugosidad  del  canal  o  n  que  esta  en 
función de tantas variables.  Estos métodos se nombran a continuación: 

1.  Se deben de comprender los factores que afectan para cada caso en 
particular  el  valor de  n  y  así  tener  el  conocimiento  básico,  general 
del  problema  para  luego  reducir  las  suposiciones,  es  un  método
deductivo  donde  la  recopilación  de  información  y  su  pertinente 
procesamiento  permite  llegar  a  un  conjunto  de  soluciones  donde  el 
conocimiento del  problema  permite  elegir la solución  partícular  para 
cada caso. 
2.  Consultar cuadros y tablas de los valores típicos de  n , para canales 
de varios tipos. En estas tablas se encuentran valores de rugosidad 
para  canales  en  flujo  a  superficie  libre  para  conductos  cerrados, 
canales  revestidos  y  canales  sin revestir,  se  hace  énfasis  en  el  tipo 
de  material  que  constituye  al  canal.    Se  presenta  una  tabla  de 
valores típicos para  n , ver tabla 3. 
3.  Reconocer los coeficientes de algunos canales de constitución típica, 
es decir se debe examinar y hacerse familiar a las características de 
los  tipos  de  canales  de  mayor  uso  para  los  cuales  sus  coeficientes 
de  rugosidad  son  conocidos  y  están  registrados  en  manuales 
técnicos, fotografías. 
4.  Utilizar conceptos teóricos, es decir se puede determinar el valor de 
n  por medio de procedimientos analíticos teniendo como principio la 
distribución teórica de velocidades en la sección transversal un canal 
y  apoyarse  sobre  datos  de  medidas  de  velocidad  o  de  rugosidad 
para establecer correlaciones entre los datos recopilados y el modelo 
analítico obtenido. 
5.  Hacer  uso  de  ecuaciones  de  origen  empírico,  que  han  sido 
desarrolladas  para  casos  similares  o  con  características  afines, 
algunas  de  estas  ecuaciones  están  recopiladas  en  manuales 
técnicos y en información particular de diseñadores. 

Tabla 3 Valores del coeficiente de rugosidad n de Manning. Tomados de hidráulica 
de canales abiertos de Chow V.T. 2000 
VALORES DE COEFICIENTE DE n PARA USO EN LA ECUACION DE MANNING
TIPO DE CANAL Y DESCRIPCION  MINIMO  NORMAL  MAXIMO 
CONDUCTOS CERRADOS QUE FLUYEN PARCIALMENTE LLENOS 
METALES 
latón, liso  0.009  0.010  0.010 
acero
estriado y soldado  0.010  0.012  0.014 
ribeteado y e espiral  0.013  0.016  0.017 
hierro fundido 
recubierto  0.010  0.013  0.014 
no recubierto  0.011  0.014  0.016 
hierro forjado 
negro  0.012  0.014  0.015 
galvanizado  0.013  0.016  0.017 
metal corrugado 
subdrenaje  0.017  0.019  0.021 
drenaje de aguas lluvias  0.021  0.024  0.030 
NO METAL 
lucita  0.008  0.009  0.010 
vidrio  0.009  0.010  0.013 
cemento 
superficie pulida  0.010  0.011  0.013 
mortero  0.011  0.013  0.015 
concreto 
alcantarilla, recta y libre de basuras  0.010  0.011  0.013 
alcantarilla con curvas, conexiones y algo de basuras  0.011  0.013  0.014 
bien terminado  0.011  0.012  0.014 
alcantarillado de aguas residuales, con pozos de inspección etc.  0.013  0.015  0.017 

sin pulir, formaleta o encofrado metálico  0.012  0.013  0.014 


sin pulir, formaleta o encofrado en madera lisa  0.012  0.014  0.016 
sin pulir, formaleta o encofrado en madera rugosa  0.015  0.017  0.020 
madera 
machihembrada  0.010  0.012  0.014 
laminada, tratada  0.015  0.017  0.020 
arcilla 
canaleta común de baldosa  0.011  0.013  0.017 
alcantarilla vitrificada  0.011  0.014  0.017 
alcantarilla vitrificada con pozas de inspección, entrada etc.  0.013  0.015  0.017 

subdrenaje vitrificado con juntas abiertas  0.014  0.016  0.018 


mampostería en ladrillo 
barnizada o lacada  0.011  0.013  0.015 
revestida con mortero de cemento  0.012  0.015  0.017
alcantarillados sanitarios recubiertos con limos y babas de aguas  0.012  0.013  0.016 
residuales con curvas y conexiones 
alcantarillado con batea pavimentada, fondo liso  0.016  0.019  0.020 
mampostería de piedra, cementada  0.018  0.025  0.030 
CANALES REVESTIDOS O DESARMABLES 
METALES 
superficie lisa de acero 
sin pintar  0.011  0.012  0.014 
pintada  0.012  0.013  0.017 
corrugado  0.021  0.025  0.030 
NO METAL 
cemento 
superficie pulida  0.010  0.011  0.013 
mortero  0.011  0.013  0.015 
madera 
cepillada sin tratar  0.010  0.012  0.014 
cepillada, creosotada  0.011  0.012  0.015 
sin cepillar  0.011  0.013  0.015 
laminas con listones  0.012  0.015  0.018 
forrada con papel impermeabilizante  0.010  0.014  0.017 
concreto 
terminado con llana metálica  0.011  0.013  0.015 
terminado con llana de madera  0.013  0.015  0.016 
pulido, con gravas en el fondo  0.015  0.017  0.020 
sin pulir  0.014  0.017  0.020 
lanzado, sección buena  0.016  0.019  0.023 
lanzado, sección ondulada  0.018  0.022  0.025 
sobre roca bien excavada  0.017  0.020 
sobre roca irregularmente excavada  0.022  0.027 
fondo de concreto terminado con llana de madera y con lados de: 
piedra labrada en mortero  0.015  0.017  0.020 
piedra sin seccionar, sobre mortero  0.017  0.020  0.024 
mampostería de piedra cementada, recubierta  0.016  0.020  0.024 
mampostería de piedra cementada  0.020  0.025  0.030 
piedra suelta  0.020  0.030  0.035 
fondo de gravas con lados de: 
concreto encofrado  0.017  0.020  0.025 
piedra sin seleccionar, sobre mortero  0.020  0.023  0.026 
piedra suelta  0.023  0.033  0.036 
ladrillo 
barnizado o lacado  0.011  0.013  0.015 
en mortero de cemento  0.012  0.015  0.018 
mampostería 
piedra partida cementada  0.017  0.025  0.030 
piedra suelta  0.023  0.032  0.035
bloques de piedra labrados  0.013  0.015  0.017 
asfalto 
liso  0.013  0.013 
rugoso  0.016  0.016 
revestimiento vegetal  0.030  …..  0.500 
EXCAVADO O DRAGADO 
en tierra , recto y uniforme 
limpio, recientemente terminado  0.016  0.018  0.020 
limpio, después de exposición a la intemperie  0.018  0.022  0.025 
con gravas, sección uniforme limpio  0.022  0.025  0.030 
con pastos cortos, algunas malezas  0.022  0.027  0.033 
en tierra serpenteante y lento 
sin vegetación  0.023  0.025  0.030 
con pastos cortos, algunas malezas  0.025  0.030  0.033 
malezas densas o plantas acuáticas en canales prof.  0.030  0.035  0.040 
fondo en tierra con paredes en piedra  0.028  0.030  0.035 
fondo pedregoso y bancas con malezas  0.025  0.035  0.040 
fondo en cantos rodados y lados limpios  0.030  0.040  0.050 
excavado con pala o dragado 
sin vegetación  0.025  0.028  0.033 
matorrales ligeros en las bancas  0.035  0.050  0.060 
cortes en roca 
lisos y uniformes  0.025  0.035  0.040 
afilados e irregulares  0.035  0.040  0.050 
canales sin mantenimiento, malezas y matorrales sin cortar 
malezas densas tan altas como la prof. del flujo  0.050  0.080  0.120 
fondo limpio, matorrales en los lados  0.040  0.050  0.080 
igual, nivel máximo de flujo  0.045  0.070  0.110 
Matorrales densos, alto nivel.  0.080  0.100  0.140 
CORRIENTES NATURALES 
CORRIENTES MENORES 
corrientes en planicies 
limpias, rectas, máximo nivel, sin montículos ni pozos profundos  0.025  0.030  0.033 

Igual que el anterior pero con mas piedras.  0.030  0.035  0.040 


Limpio, serpenteante, algunos pozas y bancos de arena.  0.033  0.040  0.045 
Igual que el anterior pero con unos matorrales y piedras  0.035  0.045  0.050 
Igual al anterior, niveles bajos, pendiente y secciones más  0.040  0.048  0.055 
ineficientes. 
Igual al anterior pero con mas piedras  0.045  0.050  0.060 
Tramos lentos, con malezas y pozas profundos.  0.050  0.070  0.080 
Tramos con mucha maleza, pozos profundos o canales de  0.075  0.100  0.150 
crecientes con muchos árboles con matorrales bajos. 

Corrientes montañosas, sin vegetación n el canal, bancas usualmente
empinadas, árboles y matorrales a lo largo de las bancas sumergidas 
en niveles altos. 
Fondo: gravas, cantos rodados y algunas rocas.  0.030  0.040  0.050 
Fondo: cantos rodados con rocas grandes.  0.040  0.050  0.070 
PLANICIES DE INUNDACION 
pastizales, sin matorrales 
pasto corto  0.025  0.030  0.035 
pasto alto  0.030  0.035  0.050 
áreas cultivadas 
sin cultivos  0.020  0.030  0.040 
cultivos en línea maduros  0.025  0.035  0.045 
campos de cultivos maduro  0.030  0.040  0.050 
matorrales 
matorrales dispersos, mucha maleza  0.035  0.050  0.070 
poco matorrales y árboles, en invierno  0.035  0.050  0.060 
poco matorrales y árboles, en verano  0.040  0.060  0.080 
matorrales medios a densos, en invierno  0.045  0.070  0.110 
matorrales medios a densos, en verano  0.070  0.100  0.160 
árboles 
sauces densos, rectos y en verano  0.110  0.150  0.200 
Terreno limpio con tronco sin retoño.  0.030  0.040  0.050 
Igual que el anterior pero con una gran cantidad de retoños.  0.050  0.060  0.080 

Gran cantidad de árboles algunos troncos caídos, con poco  0.080  0.100  0.120 


crecimiento de matorrales, nivel agua por debajo de las ramas. 

Igual que el anterior pero con el nivel por encima de las ramas.  0.100  0.120  0.160 

2.1.9.4.4  Fórmula  de  Bazin,  esta  fórmula  desarrollada  en  el  año  de  1897  por  el 
ingeniero  H.  Bazin,  se  genero  en  base  a  datos  obtenidos  en  canales 
experimentales  de  pequeñas  dimensiones,  esta  fórmula      propone  un  C  en 
función del radio hidráulico y de la rugosidad del canal denominado  m  excluyendo 
la pendiente del canal  S 0  . 

Esta fórmula en unidades del sistema internacional es la siguiente:
Ecuación 81 Fórmula de Bazin, para unidades del sistema internacional. 
87 
C = 

1 +

Los  valores  del  coeficiente  de  rugosidad  del  canal  m propuestos  por  Bazin  se 
muestran en la siguiente tabla. 

Tabla 4 Valores propuestos para el m de Bazin. Tomados de hidráulica de canales 
abiertos de Chow V.T. 2000 
VALORES PROPUESTOS PARA EL m DE BAZIN 

DESCRIPCION DEL CANAL  m de Bazin 
cemento muy suave con formaleta de madera cepillada  0.11 
madera sin cepillar, concreto o ladrillo  0.21 
mampostería en bloque de piedra o de piedra y ladrillo mal acabado  0.83 
canales en tierra en perfectas condiciones  1.54 
canales en tierra en normales condiciones  2.36 
canales en tierra en condiciones rugosas  3.17 

Su aplicación da resultados que son inferiores en comparación a las fórmulas de 
Kutter­Ganguillet, Kutter y Manning. 

2.1.9.4.5  Fórmula  logarítmica,  en  esta  fórmula  se  tiene  en  cuenta  el 
comportamiento  hidráulico  de  la  conducción,  sin  importar  que  sea  liso  o  rugoso, 
esta  configuración  depende  de  la  relación  existente  entre  las  rugosidades 
absolutas del lecho e y el espesor de la sub­capa laminar viscosa,  d 0 . 

El coeficiente  C  esta en función del radio hidráulico  R , y de la relación entre las 


rugosidades  absolutas  del  lecho e y  el  espesor  de  la  sub­capa  laminar 
viscosa, d 0 .La  fórmula  para  unidades  del  sistema  internacional  es  de  la  siguiente 

forma:
Ecuación 82 Fórmula Logarítmica para unidades del sistema internacional.
æ 6 × R ö
C = 5 . 75 × g × Log ç ÷
è a  ø

Ecuación  83  Fórmula  Logarítmica  generalizada  para  unidades  del  sistema 


internacional.
æ 6 × R ö
C = 18 × Log ç ÷
è a  ø

El  coeficiente  a  de  la  fórmula  logarítmica,  representa  la  relación  entre  las 
rugosidades  absolutas  del  lecho e y  el  espesor  de  la  sub­capa  laminar  viscosa, 
d 0 .Esta  relación  clasifica  el  comportamiento  hidráulico  de  la  conducción,  esta 
clasificación es la siguiente:
· Si el conducto es hidráulicamente liso (CHL) el coeficiente  a  de la fórmula 
logarítmica será  a = d 0 7 .

· Si  el  conducto  es  hidráulicamente  rugoso  (CHR)  el  coeficiente  a  de  la 
fórmula logarítmica será  a = e 2 .
· SI existen condiciones de transición es decir se presenta una influencia por 
parte  de  la  viscosidad  del  liquido  y  de  la  rugosidad  de  la  conducción  o 
canal, el coeficiente  a  de la fórmula logarítmica será  a = e 2 + d 0 7 . 

Para  definir  el  comportamiento  hidráulico  de  la  conducción  (si  es  un  conducto 
hidráulicamente liso o rugoso), se pueden utilizar los siguientes rangos:
· Si  e > 6. 1 × d 0  el conducto es hidráulicamente rugoso (CHR).

· Si  e > 0. 305 × d 0  el conducto es hidráulicamente liso (CHL).

· Si  0. 305 × d 0  < e < 6 . 1 × d 0  el conducto se encuentra en transición. 


Donde se tiene la siguiente nomenclatura:

e = Es la relación entre las rugosidades absolutas del lecho 
d 0 = Es el espesor de la sub­capa laminar viscosa
11 . 6 ×u t g × R × S f 
d 0 =  Ù V Cor tan te  = Ù t = g × R × S f  \V Cor tan te  =
VCor tan te  r r

Ecuación 84 Esfuerzo cortante en el fondo del canal 
t  = g × R × S f 

11 . 6 ×u
d 0 =
g × R × S f 

u = Es la viscosidad cinemática 
R  = Es el radio hidráulico 
S f  = Es la pendiente de línea de energía 

g  = Es la aceleración debida ala gravedad 

El  flujo  en  canales,  si  es  muy  liso  ( e = 0 ),  el  comportamiento  e  un  canal  es 
generalmente  de  tipo  rugoso  por  lo  que  se  utilizara  en  la  fórmula  logarítmica  un 
a = e 2 . 

2.1.9.4.6  Ecuación  de  Darcy­Weisbach,  el  coeficiente  C  esta  en  función  del 
coeficiente  de  fricción  f  ,  y  de  la  aceleración  debida  a  la    gravedad  g ,  la 

aceleración se asume como constante lo cual indica que el coeficiente  C  estará 
únicamente bajo la influencia de directa de  f  o coeficiente de fricción. 

Esta fórmula se muestra a continuación: 

Ecuación  85  Coeficiente  de  resistencia  al  flujo,  según  la  ecuación  de  Darcy­ 
Weisbach 
8 × g 
C = 

La  ecuación  de  Darcy­Weisbach  es  muy  utilizada  en  flujo  a  presión,  pero  es 
aplicable  para  flujo  libre,  para  ello  se  realizan  algunas  modificaciones  sobre  la 
ecuación,  de  las  modificaciones  hechas  sobre  la  ecuación  de  Darcy­Weisbach, 
resaltan las realizadas por F. M. Henderson en 1966, en esta ecuación resultante 
el coeficiente  C  esta en función del radio hidráulico y de numero de Reynolds la 
ecuación se muestra a continuación: 

8 × g  C  1 
C  = \ =
f  8 × g  f 

Ecuación 86 Ecuación de Darcy­Weisbach 
L  V 2 
h f =  f  × ×
D 0  2 × g 

Ecuación 87 Ecuación de Colebrook Y White
1
é æe ù
1 . 97  ö÷ú
= ê- 2 × log ç D  +
f  ê ç 3 . 7  NR × f  ÷ú
ë è øû

Combinando las  ecuaciones  85  y  87,  se  obtiene la    expresión  para el  coeficiente 


C  . 

Ecuación  88  Coeficiente  de  resistencia  al  flujo,  según  la  ecuación  de  Darcy­ 
Weisbach
C  1  é æ k  2 . 5  ö÷ù
= = ê - 2 × log çç s  + ÷ú
8 × g  f  êë è 12 × R  NR × f  øúû

Donde  k s  es  la  rugosidad  equivalente,  R el  radio  hidráulico,  NR  el  número  de 

Reynolds y  f  es el coeficiente de fricción. 

El factor que multiplica al radio hidráulico varía con el cambio en la profundidad del 
líquido,  pues  el  radio  hidráulico  es  función  de  la  profundidad,  el  factor  se  puede
dejarse  en  12  como  lo  sugiere  Henderson  cuando la  profundidad  del liquido  esta 
entre  la  profundidad  a  tubo  lleno  y  cuando  este  funcionando  con  sección 
hidráulicamente  óptima,  es  igual  a  14.8  cuando  esta  en  cualquiera  de  las  estas 
dos posiciones. 

2.1.9.5 Canales con rugosidades compuestas, un canal con rugosidad compuesta 
es  aquel  canal  cuya  rugosidad  puede  ser  distinta  alo  largo  de  su  perímetro 
mojado, pero su velocidad se puede calcular con las ecuaciones de flujo uniforme 
usando  un  valor  equivalente  de  rugosidad  n  de  Manning,  el  n  de  Manning  se 
puede  determinar  siguiendo  el  concepto  de  superposición  o  dividir  la  sección 
transversal en subsecciones que coincidan con los cambios de revestimiento. 

Figura 39 Canal con rugosidad compuesta 

2.1.9.5.1  Principio  de  superposición,  para  determinar  el  n  de  Manning,  bajo  el 
principio  de  superposición  se  tienen  como  principio  rector  realizar  suposiciones 
sobre  las  propiedades  hidráulicas  de  la  sección  y  el  flujo,  es  decir  se  idealiza  el 
comportamiento hidráulico. Existen varias metodologías las cuales se estructuran 
en la velocidad, en la fuerza resistente al flujo y en el caudal. Estas metodologías 
se ilustran a continuación: 

1.  Según la velocidad del flujo; en esta metodología se divide el área mojada en 
N  partes,  cada  una  con  un  perímetro  mojado  P1  , P 2 , P 3 ,....., P N  y  con  sus
respectivos  n1   , n 2 , n 3 ,....., n N  coeficientes  de  rugosidad  .Se  supone  que  cada 

elemento o parte de área  A1  , A 2 , A 3 ,....., A N  tiene la misma velocidad media, las 

cuales  son  semejantes  ala  velocidad  media  de  la  sección  completa  A ,  de  lo 
cual se concluye,  V1  , V 2 , V 3 ,....., V N  . Este modelo fue desarrollado por los trabajos 

de  Robert  E.  Horton  en  1933  y  H.  A.  Einstein  1934,  y  con  base  a  esta 
suposición, el coeficiente de rugosidad  n  se puede determinar por la siguiente 
expresión: 
Ecuación  89  Coeficiente  de  rugosidad  equivalente  para  canales  de  sección 
compuesta 


é 1 . 5  ù

ê å (P n n N  )ú

n = ê 1 
(P 
n 1 . 5 
ú = 1  1 
+ P n 1 . 5 
2  2  + × × × × × × × + P  n 
N  N  ) 
1 . 5  3 


ê P  ú
êë úû P 3 
2.  Según la fuerza resistente al flujo; en este método el área mojada se divide en 
N  partes  cada  una  de  las  cuales  tienen  un  área  A1  , A 2 , A 3 ,....., A N  con  sus 
respectivos  n1   , n 2 , n 3 ,....., n N  coeficientes de rugosidad. Se supone que la fuerza 
total  resistente  al  flujo,  la  cual  se  muestra  en  la  figura  38  y  se  calcula  con  la 
expresión  K × V 2  × P × L  (ecuación  72),  es  el  resultado  de  la  sumatoria  de  cada 
una de las fuerzas de resistencia al flujo que se presentan en cada uno de los 
elementos de área o  A1  , A 2 , A 3 ,....., A N  . Esta suposición fue desarrollado por los 

trabajos  de  por  de  N.  N.  Pavlovskiĭ  en  1931,  L.  Mühlhofer  en1933,  H.  A. 
Einstein  y  R.B  Banks  en  1950.  De  acuerdo  a  lo  anterior,  el  coeficiente  de 
rugosidad equivalente  para un canal con rugosidad compuesta se calcula con 
la siguiente ecuación: 

Ecuación  90  Coeficiente  de  rugosidad  equivalente  para  canales  de  sección 
compuesta

é N  2  ù

ê å (P 
N n  N  )ú (

P 1 n 1 1 . 5  + P 2 n 1 2 . 5  + × × × × × × + P N n 1 N . 5 ) 2 
n = ë 1  û =
1  1 
P 2  P 2 

3.  Según el caudal del flujo; en este método el área mojada del canal se divide en 
N  partes para cada una de las cuales se determina su área  A1  , A 2 , A 3 ,....., A N  , 
radio  hidráulico  R1  , R 2 , R 3 ,....., R N  ,  perímetro  mojado  P1  , P 2 , P 3 ,....., P N  y  sus 

respectivos coeficientes de rugosidad  n1   , n 2 , n 3 ,....., n N  . Entonces se supone que 

el caudal total del flujo es igual a la sumatoria de cada uno de los caudales de 
los elementos de área o  A1  , A 2 , A 3 ,....., A N  . Esta suposición fue desarrollado por 

el  trabajo  de  G.  K.  Lotter  en  1933.  Según  esto,  el  coeficiente  de  rugosidad 
equivalente    para  un  canal  con  rugosidad  compuesta  se  calcula  con  la 
siguiente ecuación: 

Ecuación  91  Coeficiente  de  rugosidad  equivalente  para  canales  de  sección 
compuesta

é N  2  ù

ê å (P 
N n  N  )ú (

P 1 n 1 1 . 5  + P 2 n 1 2 . 5  + × × × × × × + P N n 1 N . 5 ) 2 
n = ë 1  û =
1  1 
P 2  P 2 

2.1.9.5.2  Dividir  la  sección  transversal,  este  método  propone  que  la  sección 
transversal va ha ser dividida en subsecciones que corresponderán a los cambios 
en  la  rugosidad  de las  distintas  superficies  en  el  canal, las relaciones  hidráulicas 
se realizan con el caudal que se encuentra circulando en cada uno de los tubos de 
corriente.  El  caudal  total  será  igual  ala  sumatoria  de  los  caudales  parciales,  y  la 
velocidad media para toda la sección transversal será igual al cociente del caudal 
total y el área mojada total.
2.1.9.6  Pérdidas  de  energía  en  un  canal,  existen  dos  diferentes  formas  de 
pérdidas  de  energía; las  que  se  encuentran concentradas  o  ubicadas localmente 
(pérdidas  locales),  y  la  que  se  encuentran  distribuidas  en  forma  uniforme  o 
continua (pérdidas por rozamiento). 

Las pérdidas locales de energía se originan en primera instancia por el efecto de 
los esfuerzos cortantes internos, que se producen en las zonas donde se separa el 
flujo, estas zonas cuales son de dimensiones limitadas. 

Un  ejemplo  típico  de  pérdidas  locales  es  el  salto  hidráulico,  la  ecuación  de 
( y 2  - y 1 ) 3 
pérdidas en un resalto (ecuación 64)  DE = , determina las pérdidas en un 
4 × y 1  × y 2 
fenómeno local. 

Las pérdidas por rozamiento se originan debido a los esfuerzos cortantes, que se 
producen  en  los  alrededores  del  canal  es  decir  en  el  perímetro  mojado,  la 
superficie puede ser de tipo lisa o rugosa. 

Esto  se  explica  cuando  un  líquido  se  mueve  de  un  punto  a  otro  en  el  canal,  su 
energía total va disminuyendo debido a la fricción que se genera por el movimiento 
del agua en el canal, se describe según la siguiente expresión: 

Ecuación 92 Pérdidas por fricción en canales 
h f = S f  × L 

Donde  S f  ,  es  el  gradiente  hidráulico  o  pendiente  de  la  línea  de  energía  el  cual 

esta en función del caudal, viscosidad del fluido, diámetro efectivo y la rugosidad 
en el interior del conducto o canal, y  L es la longitud real del conducto o canal
2.1.10 Diseño de canales en flujo uniforme, el diseño de un canal consiste en 
elegir la forma y las dimensiones de la sección transversal de tal manera que 
cumplan con requisitos hidráulicos y económicos. 

Cuando  se  diseña  un  canal  en  flujo  uniforme,  la  profundidad  de  diseño  será  la 
profundidad  normal  se  busca  que  el  flujo  que  se  transportara  en  el  canal  se 
comporte sin fluctuaciones ni irregularidades, es  decir evitando flujo critico. 

Durante el diseño de un canal abierto la sección transversal del canal, la rugosidad 
y la pendiente del fondo del canal son conocidas, el objetivo primordial del diseño 
es  determinar  la  magnitud  de  la  velocidad  media  del  flujo,  la  profundidad  y  el 
caudal sea conocido cualquiera de ellos. 

2.1.10.1 Criterios para el diseño de canales, en el diseño de canales se debe tener 
en cuenta, algunos de los siguientes criterios, tales como:

· EL canal se diseña por tramos con flujo uniforme
· En canales de transporte se prefieren zonas de baja pendiente
· La  velocidad  debe  ser  lo  suficientemente  alta  como  para  impedir  la 
sedimentación de las partículas que se transportan en el agua, bien sea en 
el fondo o en suspensión.
· La velocidad debe ser lo suficientemente baja con lo cual se debe impedir 
la erosión de las paredes y el fondo del canal.
· En  primera  instancia  se  definen  las  dimensiones  del  canal  bajo  los 
parámetros  establecidos  en  el  flujo  uniforme  y  luego  se  ajustan  las 
dimensiones definitivas alas condiciones y características del proyecto esto 
con el fin de hacerlas practicas constructivamente.
· Las  dimensiones  definitivas  del  diseñó  deben  de  evitar  profundidades 
cercanas a la critica.
· Información  básica  de  diseño,  es  aquella información  con la  cual  se  debe 
dimensionar  los  alcances  del  proyecto,  se  encuentra  información  relativa 
del área de influenza del canal así como de la población a beneficiar.
· Parámetros  básicos  de  diseño,  son  aquellas  características  del  canal  que 
lo  hacen  estable  e  hidráulicamente  optimo  a  esta  categoría  pertenecen 
variables  como,  la  sección  hidráulica  óptima,  fuerza  tractiva,  la  velocidad 
máxima permisible, la velocidad mínima permisible, pendientes de fondo y 
laterales  en  el  caso  de  canales  trapezoidales,  borde  libre,  la  altura  y 
espesor de recubrimiento en canales revestidos.
· Valoración  de  efecto  del  canal  sobre  el  medio  ambiente,  esta información 
es referente al impacto del canal sobre los factores abióticos y bióticos del 
ecosistema. 

2.1.10.2  Información  básica  de  diseño,  en  la  información  básica  del  diseñó  se 
agrupan los  datos  que  permiten  predefinir  características  del  diseñó  como  son  el 
caudal  de  diseñó,  la  pendiente  del  canal  y  capacidad  de  transporte,  tal  como  se 
muestra a continuación: 

1.  Topografía,  define  las  longitudes  y  pendientes  medias  de  cada  uno  de  los 
tramos de canal. 
2.  Hidrología, define las variables hidrológicas como precipitación para conocer el 
caudal disponible en la fuente o fuentes de agua que se van a aprovechar. 
3.  Suelos,  definen  las  características  del  suelo  a  excavar  como  son  la 
clasificación del material de excavación, peso especificó del suelo, coeficientes 
de permeabilidad, velocidades máximas permisibles, coeficientes de rugosidad 
del  cause  presiones  activas.  Con  el  fin  de  prever  la  necesidad  de  un 
recubrimiento.
4.  Estudios de la demanda, definen el caudal de diseño para las necesidades del 
proyecto;  canales  para  riego,  centrales  hidroeléctricas,  drenaje,  recreación, 
transporte. 
5.  Estudios ambientales, definen el riesgo para el ambiente; usos del agua, riesgo 
para seres vivos, calidad del agua. 

2.1.10.3  Parámetros  de  diseñó,  los  parámetros  de  diseño  son  aquellas 
características  que  el  canal  debe  de  cumplir  para  que  este  sea  estable  e 
hidráulicamente óptimo, algunos de estos parámetros son: 

1.  Forma de la sección transversal: se escoge en función del tipo de suelo, si 
el canal es revestido o no, del método constructivo, del uso del canal, de la 
normatividad ambiental, del aspecto financiero y la economía. Por ejemplo, 
en la roca o con el concreto se pueden construir secciones transversales de 
cualquier forma, mientras que los canales en suelos arcillosos, finos u otros 
materiales tienen forma generalmente trapezoidal. Los canales se deben de 
cubrir  en  algunas  ocasiones,  por  diferentes  razones,  bien  sea,  para  evitar 
contaminación del agua, para permitir el paso de un lado a otro, etc. 
2.  Taludes laterales: están en función del suelo de excavación. El ángulo que 
forma  el  talud  lateral  del  canal  con  la  horizontal  debe  ser  menor  que  el 
ángulo de fricción interna del material. 
3.  Coeficiente  de  rugosidad:  depende  del  tipo  de  material  y  del  acabado   del 
revestimiento del canal. 
4.  Coeficiente de permeabilidad: se determina para el suelo natural en que se 
excava el canal haciendo pruebas "in situ" o en laboratorio.  
5.  Velocidad admisible del flujo: está limitada por la erosión y la sedimentación 
en  el  canal.  En  un  diseño  con la  velocidad máxima  no  erosionable  que  se 
logran  diseños  mas  económicos  y  se  garantiza  la  estabilidad  de  la 
estructura.  Esta  velocidad  máxima  no  erosionable  es  la  velocidad  media 
más  grande  que  no  causa  erosión  al  cuerpo  del  canal.  Los  canales
revestidos en concreto admiten velocidades más altas dependiendo de si el 
funcionamiento  es  permanente  (canales  de  conducción  de  agua)  o 
esporádico  (canales  para  evacuación  de  aguas  de  exceso),  casos  en  que 
las  velocidades  máximas  están  del  orden  de  4.0  m/s  y  de  15  m/s, 
respectivamente. 

Velocidad  mínima:  0.6  m/s  ­  0.9  m/s  para  prevenir  la  sedimentación  de 
partículas cuando la concentración de finos es pequeña. 

Velocidad mínima: 0.75 m/s para prevenir el crecimiento de la vegetación. 
6.  Borde  libre:  es  la  distancia  vertical  medida  desde  el  nivel  de  diseño  del 
agua hasta la parte superior de la estructura. Se debe considerar el efecto 
de  inexactitudes  en  la  información  disponible,  imprecisiones  en  el  diseño, 
cambios del nivel del agua. Se puede determinar con la siguiente expresión, 
donde  se  tiene  que  F  ,  es  el  borde  libre  y  esta  en  función  de  C  un 
coeficiente  de  corrección  y  de  profundidad  y .  El  coeficiente  C ,  esta  en 
función del caudal, los valores típicos del coeficiente  C  se  muestran en la 
tabla 5. 
Ecuación 93 Borde libre para canales 
F = C × y 

Tabla 5 Valores para el coeficiente  C , para determinar el borde libre  F  . 
C  coeficiente  Q m  ( )


1.5  0.57 
2.5  85 

2.1.10.4  Estudio  ambiental  y  ecológico,  la  construcción  de  un  canal  ejerce  un 
impacto  sobre  la  región  donde  se  desarrolle,  este  impacto  se  ve  reflejado 
principalmente sobre la tenencia de tierra, la vida salvaje y la vegetación.
a) Impacto sobre la tenencia de tierra 
Un canal ocupa un espacio y se requiere el pago de arriendos  en caso de que su 
alineamiento atraviese propiedades privadas; además, la construcción de un canal 
tiene  el  efecto  de  partir  la  tierra  lo  cual  no  siempre  resulta  conveniente  si  los 
propietarios  de  un  determinado  terreno  no  se  benefician  del  proyecto  de 
construcción  del  canal  y  consideran  al  canal  como  una  barrera  para  su 
desplazamiento. 

b) Impacto sobre la vida salvaje 
Aunque los canales no causan pérdida significativa de la fauna sí pueden ser una 
atracción para los animales migratorios o sedientos a menos que algunas medidas 
de control se tomen. El problema se presenta cuando los animales tratan de beber 
agua o cruzar el canal que ha interrumpido una ruta migratoria diaria o estacional. 
Un animal puede quedar atrapado y en el peor de los casos puede ahogarse en el 
canal.  Para  reducir  el  alcance de  este  problema,  se  pueden  construir  cercas  a lo 
largo de los canales, e incluso pueden cubrirse en áreas de alto uso, también se 
pueden  construir  puentes  para  permitir  el  paso  cada  cierta  distancia.  En  zonas 
donde  no  sea  posible  construir las  cercas  o cubrir  el  canal,  se  debe  aumentar la 
rugosidad de los lados para que estas zonas permitan el escape de animales. 

c) Impacto sobre la vegetación 
Los  herbicidas  y  plaguicidas  que  se  usan  en  ocasiones  para  esterilizar  el  suelo, 
controlar la  vegetación  en los  canales  y  disminuir la  población  de  plagas  afectan 
las  cosechas  mismas,  la  fauna  y  la  vegetación  a  lo  largo  de  las  estructuras  del 
canal.  La  apertura  de  una  canal  ocasiona  la  elevación  del  nivel  freático  lo  que 
puede  cambiar  las  condiciones  del  terreno  circundante.  Una  solución  para  evitar 
problemas de filtración es usar canales revestidos.
2.1.10.5  Casos  de  diseño,  el  diseño  de  canales  se  realiza  en  base  a  la 
clasificación  que  se  tiene  para  canales  según  el  origen  se  clasifican  como 
naturales o artificiales, estos pueden ser revestidos o no revestidos. 

2.1.10.5.1  Canales  revestidos  o  no  erosionables,  los  canales  revestidos  o  no 


erosionables  se  diseñan  usualmente  con  sección  hidráulicamente  óptima 
buscando  la  máxima  eficiencia  de  esta  relación,  siguiendo  lineamientos 
constructivos y económicos. 

Los  canales  revestidos  permiten  transportar  el  agua  a  más  altas  velocidades, 
requieren secciones transversales mas pequeñas, disminuyen las filtraciones para 
evitar las pérdidas de caudal y ascenso de los niveles freáticos, reducen el costo 
de operación y mantenimiento y aseguran la estabilidad de la sección transversal. 

Los  canales  revestidos  generalmente  no  tienen  limitaciones  de  pendiente  en 
zonas  de ladera  donde la  topografía facilita considerar  varias  alternativas,  lo  que 
no resulta posible en zonas más planas. 

Canales  que  han  sido  excavados  en  roca  o  en  materiales  cohesivos  muy 
resistentes  a  la  erosión,  facilitan  su  diseño  considerándolos  como  si  estuvieran 
revestidos. 

2.1.10.5.2  Canales  no  revestidos  o  erosionables,  el  diseño  de  canales  no 
revestidos  involucra  muchos  parámetros,  la  mayor  parte  de  los  cuales  no  son 
cuantificables  en  forma  precisa.  el  diseño  depende  no  solo  de  parámetros 
hidráulicos sino también de las propiedades de los materiales que forman el fondo 
y los taludes del canal y se busca que no ocurra ni sedimentación ni erosión. Hay 
varios  métodos  de  diseño,  los  cuales  se  basan  en  los  principios  de  la  velocidad 
máxima permisible y la fuerza tractiva.
2.1.10.6 Diseño de canales revestidos o no erosionables 

2.1.10.6.1 Sección hidráulicamente óptima, en el diseño de canales se involucra la 
selección de la forma del canal y la pendiente del fondo para transportar un caudal 
dado con una profundidad de flujo dada. 

Se tiene un caudal, una pendiente y una rugosidad, en el diseño se debe tratar de 
minimizar  el  área  de  la  sección  transversal  A  para  así  reducir  los  costos  de 
construcción. 

La conductividad o transito de agua  k en un canal, depende en gran medida de la 
relación  existente  entre  al  área  mojada  y  el  perímetro  mojado  en  un  canal.  Se 
define a la sección hidráulica óptima ( S . H . O ) como aquella sección que ocupa el 
menor perímetro mojado para un área determinada. 

Los  canales  revestidos  son  los  que  utiliza  sección  hidráulica  estable,  los  cuales 
son  revestidos  de  forma  que  se  puedan  adoptar  unas  dimensiones  tales  que  se 
logre la mayor eficiencia hidráulica. 
Algunas de las características de la sección hidráulicamente óptima son:

· El perímetro mojado es el mínimo para un caudal dado.

· El área de toda la excavación no es necesariamente menor con relación a 
un canal diseñado con otros criterios.

· Una  sección  hidráulica  estable  puede  requerir  generalmente  canales 


revestidos, por que el terreno natural puede ser inestable.

· El costo del revestimiento puede ser grande y comparable al de una mayor 
excavación necesaria si el canal se diseña por otros métodos.
· El costo de la excavación depende no solamente de la cantidad de material 
a remover, sino también de las fuentes de materia de recubrimiento, acceso 
y transporte al sitio de trabajo y del costo de los escombros.

· La  pendiente  del  canal  ( S o )  es  una  variable  o  parámetro  de  diseño.  Una 
pendiente  suave  puede  requerir  más  área  mojada  de  canal  pero  también 
menor costo de excavación.

· Diseñar los canales con sección hidráulicamente en algunos casos no es la 
mejor  opción.  Por  ejemplo,  si  la  pendiente  necesaria  calculada  por  la 
sección  hidráulicamente  óptima,  es  menor  que  la  pendiente  natural  del 
terreno,  se  deben  cambiar  las  dimensiones  del  canal  para  evitar 
velocidades muy altas lo cual se logra proyectando secciones más anchas. 
En caso contrario, la pendiente necesaria es mayor que la disponible en el 
terreno,  se  cambian  las  dimensiones  de  la  sección  transversal  se  pueden 
adoptar secciones más profundas y estrechas para aumentar la velocidad. 

La  siguiente  figura  muestra  las  secciones  transversales  de  los  canales  más 
recurrentes  en  la  práctica  en  flujo  uniforme,  también  se  aprecia  la  sección 
transversal más eficiente, línea discontinua, la sección circular.
Figura 40 Secciones transversales de caudal máximo 

La  forma  de  la  sección  hidráulica  óptima  es  la  circular,  esto  se  puede  demostrar 
verificando para cual sección se obtiene la menor relación de perímetro, este es el 
principio fundamental de la sección hidráulica óptima. 

Se tienen en la siguiente figura, las principales secciones transversales de canales 
prismáticos, cada uno con las dimensiones que se muestran, se demostrara que la 
sección circular es la mas eficiente. 

Figura 41 Propiedades de geométricas de las principales secciones 

Sección 

Rectangular  Triangular  Trapezoidal  Circular


1  a  p
A =  × a × × 3  A =  × D 2
2  2  4 

a  × 3  4 × A 
A = 3  D  =
4  A =  × b 2  × 3  p

4  A 
A = l 2  a = × A 
b =
2 × A  D  = 2 ×
3  p
l  = A  3 × 3 
a = 1 . 52 × A  P = p × D 
P = 4 × l  b = 0 . 62 × A 
P = 3 × a  A 
P = 4 × A  P = 6 × b  P = 2 × p ×
P = 3 × ( 1 . 52 × A )  p
P = 6 × ( 0 . 62 × A ) 
P = 4 . 56 × A  P = 2 × p × A 
P = 3 . 72 × A 
P = 3 . 54 × A 

En  resumen  se  tiene  que la  menor  relación del  perímetro  en  función  del  área  es 
para  la  sección  circular,  con  un  perímetro  de  P = 3 . 54 × A ,  es  decir  la  sección 
circular es la mas eficiente y de las secciones analizadas la de menor eficiencia es 
la triangular con un perímetro de  P = 4 . 56 × A . 

La  sección  circular  es  la  sección  hidráulica  óptima,  pero  su  uso  se  restringe  a 
pequeños  caudales  y  dentro  de  las  limitantes  que  presenta  esta  sección  se 
encuentran.
· La construcción de esta sección pues se requiere de una formaleta especial 
para cada caso en particular.

· El transporte del material para realizarla.

· Limitante  de  tipo  económico,  la  relación  costo  beneficio  es  muchas  veces 
no muy satisfactoria.
La sección hidráulicamente óptima que le sigue a la circular, según el análisis de 
la  relación  del  perímetro  con  el  área,  es  la  sección  hexagonal  pues  tiene  un 
perímetro  de  P = 3 . 72 × A ,  esto  nos  conlleva  a  que  la  sección  hidráulicamente 
óptima es la trapezoidal (medio hexágono) y además que es una sección que en 
términos constructivos no presenta mayores complicaciones. 

La  sección  hidráulicamente  óptima  en  canales  es  la  sección  trapezoidal,  esta 
sección  tiene  unos  elementos  que  definen  sus  características,  que  son  los 
parámetros a seguir en el diseño. Estos elementos se demuestran a continuación. 

En  una  sección  trapezoidal  simétrica  se  tiene  las  siguientes  relaciones,  que 
definen  los  elementos  geométricos  de  la  sección,  estas  son  las  expresiones 
generales de la sección:

·  y  = Profundidad del flujo

·  b  = Ancho de fondo del canal

·  z  = Pendiente lateral del canal 

Ecuación 94 Área de la sección trapezoidal 
A = ( b + z × y ) × y 

Ecuación 95 Perímetro mojado de la sección trapezoidal 
P = b + 2 × y × 1 + z 2 

P = Es el perímetro mojado de la sección, la denominaremos como ecuación (ii)
A - z × y 2  A 
De la ecuación (94) se tiene que,  b =  = - z × y 
y  y 

De la ecuación (95) se tiene que,  P = A × y -1  - z × y + 2 × y × 1 + z 2 

Ecuación 96 Perímetro mojado de una sección trapezoidal en función del área y la 
profundidad del flujo 
P = A × y -1  - z × y + 2 × y × 1 + z 2 

Si  se  considera  que  el  área  de  la  sección  A  y  la  pendiente  del  canal  z ,  son 

constantes,  la  ecuación  que  define  el  perímetro  P = A × y -1  - z × y + 2 × y × 1 + z 2  ,  se 
deriva con respecto a la profundidad del líquido, y así encontrar un mínimo. 

dP
= - A × y -2  - z × +2 × y  1 + z 2 
dy 

dP 
El perímetro mojado mínimo será  = 0 , entonces se tiene que: 
dy 
dP
= - A × y -2  - z × +2 × y  1 + z 2  =0 
dy 

Ecuación 97 Área de la sección trapezoidal en función de la pendiente lateral y la 
profundidad del flujo 
A = 2 × y 2  × 1 + z 2  - z × y 2 

Sustituyendo la ecuación (96) en la ecuación (95). 

Ecuación  98  Ancho  de  fondo  de  un  canal  trapezoidal  en  función  de  la  pendiente 
lateral y la profundidad del flujo 
b = 2 × y × 1 + z 2 - 2 × z × y 
La  ecuación  anterior  o  ecuación  (97),  muestra  la  base  del  canal  en  función  del 
talud  o  pendiente  lateral  y  de  la  profundidad  del  flujo.  El  perímetro  modado  en 
función  exclusivamente  de  la  pendiente  lateral  y  de  la  profundidad  del  flujo  será 
igual a, sustituir en la ecuación (93) la anterior expresión, ecuación (97). 

P = b + 2 × y × 1 + z 2 

P = 2 × y × 1 + z 2  - 2 × z × y + 2 × y × 1 + z 2 

Ecuación  99  Perímetro  mojado  de  una  sección  trapezoidal  en  función  de  la 
pendiente lateral y la profundidad del flujo 
P = 4 × y × 1 + z 2  - 2 × z × y 

El  valor  de  z  o  pendiente  lateral  del  canal,  con  el  cual  se  obtiene  un  perímetro 
3
mínimo  es  de  z  =  ,  esta  pendiente  corresponde  a  un  ángulo  de  una  sección 

hexagonal,  60°  con  la  horizontal.  Esto  se  demuestra  al  derivar  el  perímetro 
mojado,  ecuación (98), respecto a la pendiente e igualarla a cero. 

P = 4 × y × 1 + z 2  - 2 × z × y 


dP   z 
= 4 × y × - 2 × y = 0 
dz  1 + z 2

2 ×  = 1 
1 + z 2

2 × z = 1 + z 2 


4 × z 2  = 1 + z 2 
1
z = 

Ecuación  100  Pendiente  lateral  para  la  cual  se  obtiene  el  mínimo  perímetro 
mojado en un canal trapezoide cualquiera 
3
z = 

Utilizando este resultado, sustituirlo en las ecuaciones (98) y (99), se obtienen las 
siguientes correlaciones para canales trapezoidales con sección hidráulica óptima. 

Ecuación 101 Área en una sección trapezoidal con sección hidráulica óptima 

A = 3 × y 2 

Ecuación  102  Perímetro  mojado  para  una  sección  trapezoidal  con  sección 
hidráulica óptima 
P = 2 × 3 × y 

Ecuación  103  Radio  hidráulico  para    una  sección  trapezoidal  con  sección 
hidráulica óptima 

R=

Ecuación  104  Ancho  superficial  para  una  sección  trapezoidal  con  sección 
hidráulica óptima 
4 × 3 
T =  × y 

Para  el  diseño  de  canales  revestidos  basados  en  el  principio  de  la  sección 
hidráulicamente óptima se puede seguir el siguiente procedimiento: 

1.  Tener clara la función del canal, que tipo de servicio va a prestar, con esto 
se puede predimensionar el canal. 
2.  Determinar la pendiente del canal de la información topográfica, es decir de 
la información básica que se dispone. 
3.  Determinar  n  para  el  material  de  revestimiento  a  utilizar  en  el  canal  a 
diseñar.
4.  Determinar el caudal de diseño, en base a las necesidades del proyecto. 
5.  En  base  a  las  condiciones  de  uso,  topográficas  y  legales,  determinar  una 
velocidad de diseño. 
6.  Determinar el talud apropiado para el canal, teniendo en cuenta los criterios 
económicos, condiciones del suelo y de estabilidad. Se puede utilizar como 
parámetro  los  valores  que  se  encuentran  en  la  siguiente  tabla,  elaborada 
por CHOW, V.T en 1959. 

Tabla 6 Taludes recomendados para canales construidos en diferentes tipos de 
material. Tomados de hidráulica de canales abiertos de Chow V.T. 2000 y de 
Hidráulica de canales abiertos de FRENCH. R.H. 
Material  Talud 
Roca  1  : 1 

Suelos orgánicos, estiércol y suelos de turba  1  : 1  a  1 : 1 

Arcilla  dura  o  tierra  con  revestimiento  en  1 : 1 
concreto 
Tierra  con  recubrimiento  de  piedra  o  tierra  en 
1 1 2 : 1 
grandes canales 
Tierra arenosa suelta  2 : 1 
Limos arenosos o arcilla porosa  3 : 1 

7.  Conocer las  características  generales  del  proyecto, longitud,  disponibilidad 


de fuentes de materia, costos de transporte y rendimientos del material. 
8.  Según  la  siguiente  figura,  se  tiene  profundidad  de  flujo,  espesor  de 
revestimiento, borde libre, revestimiento encima del nivel del agua.
Figura 42 Componentes de un canal revestido. 



y  1 



e/2 

b' 

b'' 

9.  Determinar  el  área  hidráulica,  utilizando  la  ecuación  37  o  ecuación  de 
continuidad. 
10. Determinar  la  profundidad  del  flujo  y ,  con  las  expresiones  94  y  95,  al 
combinarlas y resolver para  y , se tiene que la profundidad del flujo será. 

Ecuación  105  Profundidad  del  flujo  para  el  diseño  de  un  canal  revestido  con 
sección hidráulicamente óptima. 

y=
- z + 2 × 1 + z 2 
11. Determinar  el  ancho  de  la  base  del  canal,  ancho  efectivo,  se  utiliza  la 
ecuación 94: 
Ecuación  106  Ancho  de  fondo  de  canal,  el  diseño  de  un  canal  revestido  con 
sección hidráulicamente óptima 

b= - z × y 

12. Teniendo en cuenta la figura 42, se determina el ancho  b ' '  y el ancho  b ' . Se 
utilizan las siguientes expresiones: 

Ecuación  107  Ancho  de  fondo  de  canal  a  medio  espesor  el  diseño  de  un  canal 
revestido con sección hidráulicamente óptima
é . - 1 æ 1 ö ù
ê Tan  ç z ÷ ú
b' ' = b + 2 eTan ê è øú
ê 2  ú
ê ú
ë û
Ecuación 108 Ancho de fondo total de canal, el diseño de un canal revestido con 
sección hidráulicamente óptima 
b ' ' +b 
b' =

13.  Determinar el borde libre  F  , adecuado según sea el caso se puede utilizar 

la  siguiente  expresión,  F = C × y  o  ecuación  93  y  hacer  uso  de  los 
coeficientes registrados en la tabla 5. 
14. Determinar  una  altura  adecuada  para  el  revestimiento  L  encima  del  nivel 
del agua. 
15. Para  determinar  el  volumen  que  se  debe  excavar,    se  utiliza  la  siguiente 
expresión: 
Ecuación 109 Volumen de materia a excavar para el diseño de un canal revestido 
con sección hidráulicamente óptima
" Exc = [b ' ' + z × (e + y + F )] × [L × (e + y + F )] × Long . 

Donde  " Exc es  el  volumen  a  excavar,  Long es  la  longitud  del  canal, 

longitud en planta. Para determinar el espesor  e , se utilizan las siguientes 
tablas según el tipo de revestimiento que se haga. 

Tabla 7 Espesor recomendado para canales en concreto simple, en función del 
caudal a transportar 


Q ( m  s )  e ( pu lg)  e (cm )  e (m ) 

0  –  5.7  2.0  5.1  0.051


5.7  –  14.2  2.5  6.4  0.064 

14.2 –  42.6  3.0  7.6  0.076 

42.6 –  99.3  3.5  8.9  0.089 

>   99.3  4.0  10.2  0.102 

Tabla 8 Espesor recomendado para canales en concreto reforzado, en función del 
caudal a transportar 


Q ( m  s )  e ( pu lg)  e (cm )  e (m ) 

0  –  14.2  3.5  8.9  0.089 

14.2 –  56.7  4.0  10.2  0.102 

>   56.7  4.5  11.4  0.114 

16. Determinar el costo de la excavación, en función del volumen a excavar el 
rendimiento  de  la  maquinaria  disponible,  del  factor  de  expansión  de  cada 
tipo de material y del costo. Se calcula con la siguiente expresión: 
Ecuación  110  Costo  de  la  excavación  para  el  diseño  de  un  canal  revestido  con 
sección hidráulicamente óptima
æ $ ö
( )
Costo Exc  = " Exc  m 3  × Costo Unidad ç 3  ÷ × Long material (m ) × R en dim iento 
è m  ø
17. Determinar el costo del transporte, expresándolo como la razón del costo y 

del volumen  $  3  . Para determinarlo se utiliza la siguiente expresión: 

Ecuación 111 Costo del transporte del material de la excavación para el diseño de 
un canal revestido con sección hidráulicamente óptima
æ $ ö
Costo çç ÷
è viaje ÷ø
Trans  = 
æ m 3  ö
Capacidad çç ÷÷
è viaje ø
18. Para  determinar  el  volumen  del  revestimiento  a  utilizar,  se  utiliza  la 
siguiente expresión: 

Ecuación 112 Volumen del material a utilizar como revestimiento el diseño de un 
canal revestido con sección hidráulicamente óptima 
é æ e  ö ù
" Re v = êb ' +2 × ç + y + L ÷ × 1 + z 2  ú × e × Long . 
ë è 2  ø û
Donde  " Re v  es el volumen del material de revestimiento. 

19.  Determinar el costo del revestimiento con la siguiente expresión: 
Ecuación  113  Costo  del  material  de  revestimiento  para  el  diseño  de  un  canal 
revestido con sección hidráulicamente óptima
æ $  ö
( )
Costo Re vest  = " Re ves  m 3  × Costo material ç 3  ÷ . 
è m  ø
20. Resumir los resultados obtenidos en un grafico. 

2.1.10.7 Diseño de canales no revestidos o erosionables, en el diseño de canales 
no  revestidos  o  erosionables  se  considerara  que  los  canales  depositan 
sedimentos, el comportamiento del flujo en un canal erosionable está determinado 
por  muchas  variables  como  son  los  factores  físicos  y  condiciones  de  campo  tan 
complejas e inciertas, es por esta razón que el diseño de canales no revestidos se 
hace mas difícil que si el canal estuviera revestido. 

Existen  varios  métodos  de  diseño,  de  los  cuales  sobresalen  por  ser  los  mas 
utilizados y por tener buenos resultados los siguientes métodos:

· Método de la velocidad máxima permitida

· Método de la fuerza tractiva
· Método de la sección hidráulicamente estable 

El  método  de la  velocidad  máxima  permitida  es  el  método  que  mas  se  ha  usado 
para  el  diseño  de  canales  erosionables  o  no  revestidos  en  los  Estados  Unidos, 
este  método  es  tan  utilizado  pues  se  requiere  la  eliminación  de  socavación.  El 
método de la fuerza tractiva ha sido mas usado en Europa. 

2.1.10.7.1 Método de la velocidad máxima permisible, este método esta basado en 
el  principio  de  la  velocidad  máxima  permisible  o  velocidad  no  erosionante,  esta 
velocidad se define como la velocidad media más grande que no causará erosión 
del canal. 

La  determinación  de  esta  velocidad  es  un  trabajo  muy  dispendioso,  pues  esta 
velocidad  se  ve  influenciada  por  factores  hidráulicos,  geométricos,  de  las 
propiedades  mecánicas  de  los  materiales  del  fondo,  de  la  pendiente  del  canal, 
entre otros, es por este motivo que la obtención de esta velocidad es muy incierta 
y  variable,  generalmente  se  obtienen  valores  de  esta  velocidad  a  través  de  la 
experiencia y buen un juicio. 

Las  primera  correlaciones  para  determinar  esta  velocidad    fueron  desarrolladas 


para agua cargada de limos, esta primera expresión fue desarrollada en 1895 por 
Robert  G.  Kennedy  esta  expresión  presentaba  una  seria  deficiencia  teórica  pues 
proponía la determinación de una velocidad no sedimentante y no erosionante. 

A  mediados de la década de 1920, se comprendió que debía existir una relación 
entre  cada  una  de  las  variables  que  se  encuentran  fluctuando  en  un  canal 
erosionable  de  las  cuales  el  caudal  o  la  velocidad  media,  las  propiedades 
mecánicas  del  material  de  fondo  y  los  taludes,  la  cantidad  y  tipo  de  material 
arrastrado por el flujo, y la estabilidad de la sección del canal.
Para esa época se realizo un estudio con la participación de varios ingenieros con 
larga  experiencia,  la  hipótesis  de  este  estudio  es  el  hecho  que  sí  había  una 
relación entre la velocidad media del flujo, el material del perímetro del canal, y la 
estabilidad de éste. 

El  resultado  de  este  estudio  se  publicó  en  1926  (Fortier  y  Scobey,  1925)  y  se 
convirtió en la base teórica de un método de diseño conocido como el método de 
velocidad máxima permisible. Los principales resultados del informe de S. Fortier y 
F. C. Scobey (1926) se encuentran resumidos en la tabla 9. 

Tabla 9 Velocidades máximas permisibles recomendadas por Fortier y Scobey 
para canales rectos con pendientes pequeñas 
Agua que transporta limos 
Agua limpia 
coloidales 
MATERIAL  n 

V = m  s  t  0  = N /  m 2 
V =  m  s  t  0  = N /  m 2 

Arena fina coloidal  0.020  0.457  1.290  0.762  3.590 


Marga arenosa no 
0.020  0.533  1.770  0.762  3.590 
coloidal 

marga limosa no 
0.020  0.610  2.300  0.914  5.270 
coloidal 

Limos aluviales no 
0.020  0.610  2.300  1.070  7.180 
coloidales 

Ceniza volcánica  0.020  0.762  3.590  1.070  7.180 

Arcilla rígida muy 
0.025  1.140  12.400  1.520  22.000 
coloidal 

Limos aluviales 
0.025  1.140  12.400  1.520  22.000 
coloidales 
Esquistos, pizarra y 
subsuelos de arcilla  0.025  1.830  32.100  1.830  32.100 
dura 

Grava fina  0.020  0.762  3.590  1.520  15.300 

Tierra negra 
graduada a  0.030  1.140  18.200  1.520  31.600 
piedritas cuando no 
es coloidal 
Limos gradados a 
cantos rodados,  0.030  1.220  206.000  1.680  38.300 
piedritas cuando es 
coloidal 
Grava gruesa no 
0.025  1.220  14.400  1.830  32.100 
coloidal 
Cantos rodados, 
piedritas y ripios de  0.035  1.220  43.600  1.680  52.700 
cantera 

El manejo  de  esta  tabla  tiene  los  siguientes  parámetros  de  uso,  esto  con  el  ánimo  de  realizar  el 
diseño con  la menor incertidumbre y error, las siguiente son un conjunto de sugerencias o reglas 
de  buena  ingeniería,  estas  han  sido  ampliadas  como  lo  hace  Emory  w.  Lane  en  1955  con  la 
proposición  de  coeficientes  de  reducción.  La  interpretación  de  estas  sugerencias  ha  sido 
interpretada para el caso de la ingeniería nacional aunque se mantendrán las unidades originales 
de estas reglas.
· Las  cifras  dadas  son  para  canales  con  tangentes  largas  recomendándose 
una reducción del 25% en la velocidad máxima permisible para canales con 
un alineamiento sinuoso.

· Se  recomienda  una  reducción  del  5%  canales  ligeramente  sinuosos,  13% 
para canales moderadamente sinuosos.
· Las  cifras  son  para  profundidades  menores  de  3ft.  (0.91m).  Para 
profundidades  mayores, la velocidad máxima permisible debe aumentarse 
por 0.5 ft/s (0.15 m/s).

· La velocidad de flujo en canales que transportan abrasivos, como pedazos 
de basalto, debe reducirse en 0.5 ft/s (0.15m/s).

· Los  canales  de  derivación  de  ríos  con  alta  carga  de  arcillas  como  el  río 
Magdalena deben diseñarse para velocidades  medias de 1 a 2 ft/s (0.30 a 
0.61 m/s)  mayores a las permitidas para el mismo  material perimetral si el 
agua no transportara sedimento. 

El trabajo de S. Fortier y F. C. Scobey (1926) ha servido como base de diseño de 
canales  por  muchos  años;  aunque,  esta  es  una  metodología  empírica  pues  esta 
basada  primordialmente  en  observaciones  y  experiencia  de  muchos  ingenieros, 
más que en principios físicos. 

METODOLOGÍA DE DISEÑO 

Usando  la  velocidad  máxima  permitida  como  criterio,  el  procedimiento  de  diseño 
para la sección de un canal, suponiendo que sea trapezoidal que la más común, 
consiste de los siguientes pasos:
1.  Se  tiene  el  canal,  se  debe  conocer  que  tipo  de  material  es  el  que  lo 
constituye  y  realizar  una  clasificación  del  mismo  para  así  conocer  sus 
propiedades mecánicas. 

2.  Para  la  clase  de  material  que  forma  el  cuerpo  del  canal,  se  determina  un 
valor congruente del coeficiente de rugosidad n , se determina la pendiente 
lateral  z , y la velocidad máxima permitida  V  . 
3.  Determinar la pendiente del canal de la información topográfica, es decir de 
la información básica que se dispone. 

4.  Calcular  el  radio  hidráulico  R  por  la  ecuación  de  Manning  o  ecuación  78 

Q × n 
= A × R 3  . 
S 0 

5.  Calcular  el  área  mojada  requerida  para  el  caudal  y  la  velocidad  permitida 
dadas, usando la ecuación de continuidad o ecuación 37  Q = V × A . 

6.  Calcular el perímetro mojado o  P = A R . 

7.  Con  las  ecuaciones  que  se  plantean  para  P y  A ,  resolver  el  sistema  de 
ecuaciones, se determinara  b y  y . 

8.  Agregar  un  borde  libre  adecuado,  tener  en  cuenta  la  información  básica 
prever crecidas, y modificar las dimensiones para que sean prácticas. 

2.1.10.7.2  Método  de  la  fuerza  tractiva,  como  se  observo  el  diseño  de  canales 
erosionables  por  velocidad  máxima  permisible  es  sencillo  pero  la  inexactitud  de 
sus  resultados  lo  deja  como  un  método  de  prediseño,  existe  otro  método  de 
diseño que esta basado en el análisis  de las fuerzas que provocan la erosión.
La  erosión  perimetral  del  canal  ocurre  cuando  las  partículas  del  perímetro  son 
sometidas  a  fuerzas  de  magnitud  considerable  para producir  el  movimiento  de la 
partícula. 

Cuando  una  partícula  descansa  en  el  fondo  del  canal,  la  fuerza  actuante  que 
causa  su  movimiento  es  el  resultado  del  flujo  de  agua  sobre  la  partícula.  Sobre 
una  partícula  que  descansa  sobre  el  talud  del  canal  no  solo  actúa  la  fuerza 
generada por el flujo, sino también la componente de gravedad que tiende a hacer 
que la partícula ruede o deslice por el talud. 

Si  la  resultante  de  estas  dos  fuerzas  es  mayor  que  las  fuerzas  que  resisten  el 
movimiento,  fricción  y  cohesión,  entonces  se  presenta  la  erosión  perimetral  del 
canal. 

Siempre que fluye un líquido a través de un canal, se genera una fuerza que actúa 
en  la  dirección  del  flujo  sobre  el  fondo  del  canal.  Esta  fuerza,  la  cual  es 
simplemente el jalar del agua sobre el área con agua, es conocida como la fuerza 
tractiva. Se define generalmente la fuerza tractiva o (fuerza cortante o de arrastre 
o  tangencial),  como  fuerza  que  actúa  sobre  las  partículas  que  componen  el 
perímetro del canal y es producida por el flujo del agua sobre estas partículas. En 
la práctica, la fuerza tractiva no es la fuerza sobre una partícula individual, sino la 
fuerza ejercida sobre un área perimetral del canal. 

Se cree que este concepto fue planteado por primera vez por P. du Boys en1879 y 
replanteado por E. W. Lane en1955. En un flujo uniforme en un canal como el de 
la  figura  39  la  fuerza  tractiva  es  igual  a  la  componente  efectiva  de  la  fuerza  de 
gravedad actuando sobre el cuerpo de liquido, paralela al fondo del canal e igual a 
g × A× L × S 0  .
El valor medio de la fuerza tractiva por unidad de área mojada, o la llamada fuerza 
tractiva unitaria, es igual a: 
g × A × L × S 0 
= g × R × S 0 
PL 
Donde se tiene que,  P  es el perímetro mojado y  R  es el radio hidráulico; es decir: 
t  = g × A× L × S 0 
t = g × R × S 0 

Las  cuales  son  las  ecuaciones  para  el  esfuerzo  cortante  en  el  fondo  de  canal,  o 
ecuación 84. Si se tiene un canal muy ancho es decir  b > 10 × y , el radio hidráulico 
R es igual a la profundidad del flujo  y , según esto la anterior ecuación será: 

Ecuación 114 Esfuerzo cortante en el fondo de un canal muy ancho 
t = g × y × S 0 

La  distribución  de  fuerza  tractiva  unitaria  es  uniforme  a  lo  largo  del  perímetro 
mojado en los canales anchos  b > 10 × y , mientras que en canales con dimensiones 
b £ 10 × y  la distribución es no uniforme. 

Una distribución típica de fuerza tractiva para un canal trapezoidal se muestra en 
la siguiente figura, figura  43, la seccion trapezoidal es la sección la más común en 
canales  no  revestidos,  el  esfuerzo  tractivo  se  presenta  en  el  fondo  con  una 
magnitud aproximada de  g × A× S 0  y en los taludes con  0 . 75 × g × A× S 0  .
Figura 43 Distribución típica de fuerza tractiva en un canal trapezoidal. Tomado de 
hidráulica de canales abiertos de Chow V.T. 2000. 

La  fuerza  tractiva  máxima  que  se  permite,  es  aquella  fuerza  tractiva  unitaria  que 
no  genere  erosión  del  material  que  constituye  el  fondo  del  canal  sobre  una 
superficie a nivel. 

La fuerza tractiva critica es aquella fuerza tractiva unitaria que es determinada en 
ensayos y practica controladas en laboratorios. 

En  condiciones  reales  los  canales  presentan  valores  altos  de  resistencia  a  la 
acción  de  la  fuerza  tractiva  critica,  esto  se  explica  por  la  acción  conjunta  de 
material orgánico, coloides y fitoplantas que proporcionan una fuerza de ligadura, 
entre las partículas que constituyen el fondo del canal. 

Para  la  determinación  de  la  fuerza  tractiva  permitida  se  tiene  en  cuebta  como 
criterios de análisis:
· El tamaño de la partícula para material no cohesivo

· La relación de vacíos para el material cohesivo.
· El índice de plasticidad

· La acción química 

En  un  canal  como  el  que  se  muestra  a  continuación,  figura  43,    se  muestran  las 
fuerzas que actúan en una partícula que se resiste al movimiento en el perímetro 
mojado de una canal. 

El  análisis  se  inicia  a  partir  de  momento  cuando  una  partícula  en  el  perímetro 
mojado  de  un  canal  está  a  punto  de  moverse,  las  fuerzas  que  producen  el 
movimiento están en equilibrio con las que resisten el movimiento. 

Una  partícula  cualquiera  en  el  fondo  nivelado  del  canal  está  sujeta  a  la  fuerza 
tractiva  a ×t L  , donde  t L es el esfuerzo tractivo sobre la superficie nivelada y  a  es 

el  área  efectiva.  El  movimiento  es  resistido  por  la  fuerza  gravitacional  W S 
multiplicada  por  un  factor  o  coeficiente  de  fricción  que  se  aproxima  por tan a  , 
donde  W S  es el peso de la partícula sumergida y a   es el ángulo de reposo de la 

partícula. 

Cuando el movimiento está a punto de iniciarse, se tiene:
a × t L  = W S  × tan a
W S  × tan a
t L =

Una  partícula  que  se  encuentra  en  el  talud  del  canal  está  sujeta  a  una  fuerza 
tractiva  a × t S  y  a  una  componente  hacia  abajo  del  talud W S × Sen f  donde  t S es 
cortante  del  talud  y f  es  ángulo  del  talud.  Donde  su  resultante  es 

W2 2  × Sen 2 f + a 2  ×t 2 S  , tal como se muestra en la figura 44.


Figura 44 Análisis de fuerzas actuantes en una partícula que esta suspendida en 
el fondo de un canal

f
W at

en
 S

e s 

s  S
n
f

W
W Cos

f at
s  at
W s  L 

2  2  2  2 
W Sen
s  f + a ts 
2  2  2 
W Sen
s  f + a t

f
La  fuerza  que  va  ha  resistir  el  movimiento  de  la  partícula  es  la  componente 
gravitacional multiplicada por el coeficiente de fricción  W S × (Cos f × Tan a ) . Al igualar 
las fuerzas que producen el movimiento con las que lo resisten, se obtiene: 

W S  × (Cos f × Tan a ) = W 2 2  × Tan 2 f + a 2  × t 2 S 


W 2 S  × (Cos f × Tan a ) 2  = W S 2  × Tan 2 f + a 2  × t 2 S 
W 2 S  × (Cos f × Tan a ) 2  - W S 2  × Tan 2 f = a 2  × t 2 S 
W 2 S  × (Cos f × Tan a - Tan f ) 2  = a 2  × t 2 S 

(Cos a × Sen f - Sen a × Cos 2 f ) 
W 2 S  ×  2  2 
= a 2  × t 2 S 
Cos  a × Cos  f


2  2  (Cos a × Sen f - Sen a × Cos 2 f ) 
t  S = W  S  ×
a 2  × Cos 2 a × Cos 2 f


2  W 2 S  (Cos a × Sen f - Sen a × Cos 2 f ) 
t  S = 2  ×
a  Cos 2 a × Cos 2 f

Ecuación 115 Fuerza tractiva unitaria en el talud de un canal
W S  Tan 2 f
t S = × Cos f × Tan a × 1 -
a  Tan 2 a

La fuerza tractiva sobre una superficie plana  t L , es la responsable del movimiento 
sobre  una  superficie  plana,  se  describe  con  la  ecuación  104,  que  es  igual  a  la 
ecuación anterior con  f = 0 . 

Ecuación 116 Fuerza tractiva unitaria en el fondo de un canal

t L = S  Tan a

La razón de la fuerza tractiva, es el cociente entre, la fuerza tractiva unitaria en el 
talud  del  canal  y  la  fuerza  tractiva  unitaria  en  el  fondo  del  canal,  esta  es  una 
relación que se debe tener en cuenta durante el diseño de canales. Dicha relación 
se escribe de la siguiente manera, tal como se muestra en la ecuación 105. 

Ecuación 117 Razón de la fuerza tractiva
W S  Tan 2 f
× Cos f × Tan a × 1 -
t  a  Tan 2 a Tan 2 f Sen 2 f
K  = S = = Cos f 1 - = 1 -
t L  W S  Tan 2 a Sen 2 a
Tan a

La razón de fuerza tractiva está en función del ángulo del talud f y  del ángulo de 
reposo del material perimetral a . Para el caso de los  materiales cohesivos o finos 
no  cohesivos,  el  ángulo  de  reposo  es  muy  pequeño  por  lo  que  se  puede  tomar 
como cero. 

En  la    siguiente  figura  o  figura  45  se  muestran  los  valores  de  los  esfuerzos 
tractivos  máximos  en  los  taludes  y  en  el  fondo  del  canal,  estos  valores 
preliminares  fueron  determinados  por  análisis  y  estudios  matemáticos,  que  se 
elaboraron como una función de la razón del ancho de fondo y de la profundidad o 
tirante.
Figura  45  Esfuerzos  tractivos  Esfuerzo  cortante  tractivo  máximo  en  función  de 
g × y × S o  . a) Para los taludes y b) para el fondo del canal. Tomado de Hidráulica de 
canales abiertos de French. R. H. 1988. 

Para  materiales  cohesivos  o  finos  no  cohesivos  las  fuerzas  de  cohesión  son 
significativamente  mayores  que  la  componente  gravitacional  que  tiende  a  hacer 
rodar las partículas por el talud. Varios investigadores como Emory W. Lane en el 
año  de  1955  encontró  que  el  ángulo  de  reposo  tiene  una  relación  entre  las 
propiedades  de  la  partícula,  esta  relación  establece  que  el  ángulo  de  reposo  es 
directamente proporcional al tamaño y angulosidad de la partícula. 

Con  los  resultados  experimentales  de  Emory  W.  Lane  se  construyo  una  grafica, 
figura  46,    donde    el  tamaño  de la  partícula está  dado  por  el  diámetro  en  el  cual 
25% de todas las partículas, medidas por peso, son mayores a éste. Esta grafica 
se  utiliza  durante  el  proceso  de  diseño  motivo  por  el  cual  se  debe  de  tener  en 
cuenta  las  siguientes  recomendaciones  y  anotaciones  respecto  a  su  uso  y  a  la 
incertidumbre de sus datos.
· En  esta  figura,  el  tamaño  de  la  partícula  está  dado  por  el  diámetro  en  el 
cual 25% de todas las partículas, medidas por peso, son mayores a éste

· No se llevo a cabo un número suficiente de experimentos; esto produjo una 
gran dispersión de los datos.

· Los ángulos de reposo están limitados por 41° para material angular y por 
39° para material muy redondeado debido a la dispersión de los datos en el 
material más grande.
Figura 46 Ángulos de reposo para materiales no cohesivos. Tomado de Hidráulica 
de canales abiertos de French. R. H.1988 

Para material grueso, no cohesivo, los datos de laboratorio de Emory W. Lane (1955) indican que 
el esfuerzo tractivo permisible máximo en libras por ft2 es de 0.4 veces el 25% del diámetro de las 
partículas en pulgadas. 

Los  canales  en  situaciones  reales  o  no  controladas  pueden  soportar  fuerzas  tractivas  con 
magnitudes    mayores  que  las  calculadas  o  proyectadas  por  los  experimentos,  Emory  W.  Lane 
(1955) durante su investigación recolectó información sobre canales reales, estos datos de campo 
se encontraban en la forma de velocidades máximas permisibles y tuvieron que ser transformados 
a  datos  de  cortantes,  para  realizar  esta  transformación  se  hizo  un  procedimiento 
en el cual se hicieron numerosas suposiciones sobre las propiedades del canal, el 
tamaño del canal y la profundidad de flujo. 

Los resultados de  los datos de campo de Lane se resumen en la figura 47 la cual 
esta para  el material fino no cohesivo, un ejemplo de estos son materiales cuyos
diámetros medios son menores de 5 mm. (0.254 in), el tamaño especificado es el 
diámetro mediano de una partícula de la cual 50% fue mayor en peso. 

Para  canales  construidos  con  material  cohesivo,  los  datos  acerca  de  el  esfuerzo 
tractivo  permisible  fueron  elaborados  por  V.T.Chow  en  1959  estos  datos  se 
encuentran consignados y resumidos en la figura 48. 

Para  el  uso  de  estas  figuras  se  debe  de tener  en  cuenta  que  sus  resultados  son 
conservadores para el diseño, pues traen incorporados un factor de seguridad que 
de ejercen un efecto de sobreestimación la fuerza tractiva para el diseño.
Figura 47 Esfuerzos tractivos permisibles recomendados para canales construidos 
en  material no  cohesivo, Lane  (1955).  Tomado  de  Hidráulica  de  canales  abiertos 
de French. R. H 1988
Figura 48 Esfuerzos tractivos permisibles recomendados para canales construidos 
en material  cohesivo, Chow (1959). Tomado de Hidráulica de canales abiertos de 
French. R. H 1988
Otro  factor  que  afecta  la  magnitud  de  la  fuerza  tractiva,  es  la  sinuosidad  que 
presenta  el  canal en  su alineamiento  horizontal,  Emory W.  Lane (1955)  concluye 
en  su  investigación  que    los  canales  que  tienen  una  alineamiento  horizontal 
sinuosos socavan más fácilmente que los canales que son mas alineados. 

Esto  conlleva  a  que  en  el  método  de  fuerza  tractiva  se  tenga  en  cuenta  la 
sinuosidad  del  canal,  Emory  W.  Lane  en  su  trabajo  desarrolló  las  siguientes 
definiciones referentes a la sinuosidad de un canal:
· Los canales rectos, tienen alineaciones rectas o ligeramente curvas y por lo 
común son canales construidos en planicies horizontales.

· Los  canales  ligeramente  sinuosos  tienen  grados  de  curvatura  típicos  de 
canales sobre topografía ligeramente ondulante.

· Los  canales  moderadamente  sinuosos  tienen  un  grado  de  curvatura  típico 
de topografía moderadamente ondulosa.

· Los canales muy sinuosos tienen un grado de curvatura típico de canales al 
pie de cerros o en montañas. 

Según estas definiciones se desarrollaron unos factores de corrección en función 
de  la  sinuosidad,  estos  factores  de  corrección  se  encuentran  consignados  en  la 
siguiente tabla.
Tabla 10  Factores de corrección para las fuerzas tractivas máximas para canales 
con diversos grados de sinuosidad. Tomado de Hidráulica de canales abiertos de 
French. R. H. 1988. 
GRADOS DE SINUOSIDAD  FUERZA TRACTIVA LIMITANTE RELATIVA 
Canales rectos  1.00 
Canales poco sinuosos  0.90 
Canales moderadamente sinuosos  0.75 
Canales muy sinuosos  0.60 

METODOLOGIA DE DISEÑO 

En  el  método  basado  en  la  fuerza  tractiva  se  puede  seguir  el  siguiente 
procedimiento: 

1.  Definir una sección aproximada del canal, bien sea por la experiencia o de 
los  cuadros  de  diseño  que  tienen  entidades como  el  USBR  (United  States 
Bureau of Reclamation). 

2.  Para  la  clase  de  material  que  forma  el  cuerpo  del  canal,  coleccionar 
muestras  del  material  que  forma  el  fondo  del  canal,  y  determinar  las 
propiedades requeridas de las muestras. 

3.  El diseñador investiga y determinara, la sección para aplicar el análisis de la 
fuerza  tractiva  a  cierta  probable  estabilidad  por  tramos  y  determinar  la 
sección mínima que aparezca estable. 

4.  En  canales  en  materiales  no  cohesivos  el  efecto  del  movimiento  de  las 
partículas,  debiera  considerarse  en  adición  al  efecto  de  la  distribución  de 
fuerzas tractivas.
5.  En canales en material cohesivo el efecto del movimiento de las partículas 
es despreciable, y el efecto de la distribución de la fuerza tractiva sola es un 
criterio suficiente para el diseño. 

6.  Determinar la pendiente del canal de la información topográfica, es decir de 
la información básica que se dispone. 

7.  Determinar n o C para el material perimetral dado. 

8.  condición de  Q = Q D  para lograr este objetivo se retrocede al paso 10, se Determinar el 


ángulo de reposo para el material perimetral con la figura 46. 

9.  Determinar  la  sinuosidad  del  canal  según  la  topografía  (paso  6)  que  debe 
atravesar y determínese el factor de corrección de la fuerza tractiva según 
la tabla 10. 

10.  Supóngase un valor del para el talud (ángulo de los taludes) y el ancho del 
fondo/profundidad de agua. 

11. Supóngase que los taludes son lo que limita el ancho del canal. 

12. Calcular la fuerza tractiva máxima permisible en los taludes en función del 
esfuerzo cortante. Se debe utilizar el factor de corrección de la Figura 45.a 
y el factor de corrección por 0sinuosidad del canal, del paso 9. 

13. Determinar la razón de fuerzas tractivas,  K  con la ecuación 105. 

14. Estímese  la  fuerza  tractiva  permisible  en  el  fondo  con la figura 47  y  figura 
48 de corrige la sinuosidad del canal según paso 9.
15. Se  determina  la  profundidad  normal  y = y N  ,  esta  se  determina  fácilmente 

combinando los resultados de los pasos 12 y 14. 

16. Determínese el ancho del fondo con los resultados de los pasos 10 y 15. 

17. Determinar el caudal  Q , y de compara con el caudal de diseño  Q D  , se debe 



buscar la repite el procedimiento de diseño tanteando  . 

18. Se comparan las magnitudes de la fuerza tractiva permisible en el fondo 
(paso 12) con la actuante calculada por  g × y × S O  , se debe corregir por 

forma con la figura 45.a del paso 10. 

19. Se chequea: a) La velocidad mínima permisible para agua que lleve finos y 
para vegetación. b) El número de Froude. 

20. Determinar el borde libre requerido. 

21. Realizar un grafico donde se visualicen los resultados. 

2.1.10.7.3  Método  de  la  sección  hidráulicamente  estable,  este  método  de  diseño 
tiene como principio rector la sección hidráulicamente estable, se define la sección 
hidráulica  estable  como  aquella  sección  de  un  canal  no  revestido  en  el  cual  no 
ocurrirá erosión para un área mojada mínima, para un caudal dado. 

Las  secciones  empíricas  que  en  la  práctica  son  consideradas  como  secciones 
hidráulicas  estables  son  la  elipse  y  la  parábola,  esto  según  muchos  autores  e 
investigadores de la hidráulica.
Para el desarrollo de este método de diseño, se tubo en cuenta que los métodos 
de  diseño  existentes,  métodos  basados  en  la    fuerza  tractiva,  estos  métodos 
igualaban  la  fuerza  tractiva  al  valor  permitido  solo  sobre  una  parte  del  perímetro 
mojado total, específicamente donde las fuerzas están cerca de los valores críticos 
es decir al máximo, los cuales generalmente se presentan en los taludes del canal. 
Esto  quiere  decir,  que  la  inestabilidad  que  mantiene  la  suspensión  ocurre  solo 
sobre una pequeña parte del perímetro mojado. 

Entonces una sección hidráulicamente estable con  máxima eficiencia satisface la 
condición  de  que  el  movimiento  que  mantiene  la  suspensión  prevalecerá  en 
cualquier lugar sobre el fondo o lecho del canal. 

Las  expresiones  matemáticas  que  definen  esta  sección  fueron  desarrolladas  por 
una  entidad  gubernamental  de los  Estados Unidos  de  América,  el  USBR (United 
States  Bureau  of  Reclamation)  por  los  investigadores  Glover  y  Florey  en  1951, 
estas expresiones se desarrollaron para canales con la siguiente característica:

· Canales  erosionables  o  no  revestidos  que  transporten  aguas  limpias  de 


sedimento sobre materiales no cohesivos 

El  desarrollo  analítico  y  las  suposiciones  que  se  siguió  para  obtener  las 
expresiones y ecuaciones que definen la sección hidráulicamente estable son las 
siguientes: 
1.  Se  tiene  un  material  del  lecho  de  un  canal,  este  material  tiene  un 
ángulo  de  reposo  dado  para  un  caudal  determinado,  la  sección 
óptima debe ser aquella en la cual se tenga  el canal de mínima área 
mojada, el canal de mínimo ancho superior, máxima velocidad media 
y excavación mínima.
2.  Las  partículas  de  suelo  se  mantienen  contra  el  fondo  y  las  paredes 
del  canal,  es  decir  distribuidas  a  lo  largo  del  lecho  del  canal,  esta 
estabilidad  se  logra  debido  a  la  acción  de  la  componente  normal  al 
fondo del canal del peso sumergido de las partículas. 

3.  En  las  pendientes  laterales  o  taludes  del  canal  el  ángulo  de 
inclinación  respecto  a  la  horizontal  es  similar  al  ángulo  del  material 
que se encuentra en reposo (material no cohesivo) bajo la acción de 
la gravedad. 

4.  En el centro del canal la pendiente lateral o talud es cero y la fuerza 
tractiva  sola  es  lo  suficientemente  grande  para  mantener  las 
partículas en el punto de inestabilidad incipiente. 

5.  En la región comprendida entre el centro y las márgenes del canal se 
presenta que las partículas del lecho del canal son mantenidas en un 
estado  de  movimiento  incipiente  por  la  resultante  de la  componente 
de la gravedad del peso sumergido de la partícula actuando sobre la 
pendiente lateral y la fuerza tractiva del agua fluyendo. 

6.  La  fuerza  tractiva  que  actúa  sobre  un  área  del  lecho  del  canal  es 
igual a la componente del peso del agua  directamente sobre el área 
actuando en la dirección del flujo. Esta componente del peso es igual 
al  peso  por  la  pendiente  longitudinal  del  canal.  Según  esto  no  hay 
transferencia lateral de fuerza tractiva.
Teniendo  en  cuenta  las  anteriores  hipótesis,  y  la  figura  que  se  muestra  a 
continuación, en la cual se tiene un canal con una pendiente  S , taludes que están 
definidos por coordenadas  ( x , y )  y por el ángulo a . 
Figura 49 Sección hidráulica estable para Q < QD

dx
f


B  a

Se concluye de la suposición 6, el esfuerzo tractivo critico que se esta ejerciendo 
sobre el área  AB , por unidad de longitud del canal esta expresada por la siguiente 
ecuación. 

Ecuación 118 Esfuerzo tractivo critico
g × y × S × dx 
t s =  = g × y × S × Cos a
( dx ) 2  + ( dy ) 2 

El esfuerzo tractivo crítico que esta actuando sobre los taludes del canal será: 

Ecuación 119 Esfuerzo tractivo critico sobre los taludes del canal.
Tan 2 a
t s = K × t b  = g × y × S × Cos a × 1 -
Tan 2 f

Ecuación 120 Esfuerzo tractivo en el centro del canal con profundidad yN
t s = g × y × S  × a
Igualando las  ecuaciones  117  y  118,  y  despejando  la  profundidad  del flujo  y ,  se 
obtiene la siguiente expresión: 
Ecuación  121  Profundidad  del  flujo  en  función  de  la  profundidad  normal,  del 
ángulo del talud y del ángulo de la partícula de reposo.
y N  
y  = × Tan 2f - Tan 2 a
Tan f 

La  ecuación  que  describe  la  forma  de  la  sección  transversal,  es  una  ecuación 
diferencial,  la  cual  se  obtiene  a  partir  de  la  ecuación  109  en  la  cual  se  sustituye
dy . 
dx  = Tan a 


y  æ dy ö
y =  N × Tan 2f - ç ÷
Tan f è dx ø

2  y 2 N é æ dy ö ù
y  =  ×
2  ê
Tan 2 f - ç ÷ ú
(Tan 
  f )  êë è dx ø úû

2  y 2 N é 2  æ dy ö ù
y  =  × êTan  f - ç ÷ ú
  f ) 2  ëê
(Tan  è dx ø ûú

y 2  æ dy ö

× (Tan f ) 2  = Tan 2 f - ç ÷
y  N è dx ø
Ecuación  122  Ecuación  diferencial  de  la  sección  transversal  de  un  canal  con 
sección hidráulicamente estable 
2 2 
æ dy ö æç y  ö÷
ç ÷ +ç ÷ × ( Tan f ) 2  - Tan 2 f = 0 
è dx ø è y N  ø

Las condiciones de frontera son: 
1.  x = 0 ,  y = y N  entonces la solución será;
Ecuación  123  Profundidad  del  flujo  en  un  canal  con  sección  hidráulicamente 
estable, en función de la profundidad normal.
æ x × Tan f ö
y =  y N  × Cos çç ÷÷
è y N  ø

T  T × Tan f p T × Tan f 


2.  x = ,  y = 0 esta condición se cumple solo si  = o y N = , 
2  2 × y N  2  p
entonces la solución será. 

Ecuación  124  Profundidad  del  flujo  en  un  canal  con  sección  hidráulicamente 
estable, en función de la profundidad normal.

æ p × x ö
y  =  y N × Cos ç ÷
è T  ø

Con las ecuaciones 122 y 123, se define la sección de un canal no revestido que 
para  un  área  determinada  se  obtendrá  el  menor  ancho  con  el  mayor  radio 
hidráulico,  esta  sección  corresponde  al  canal  de  mayor  eficiencia  hidráulica  de 
todos  los  canales  no  revestidos  estables  que  sean  construidos  en  tierra  con 
material  no  cohesivo,  con  características  definidas  como  son  el  coeficiente  de 
rugosidad  n ,  una  pendiente  S  y  que  transporte  agua  que  no  contenga 
sedimentos. 

Los  elementos  geométricos  que  caracterizan  esta  sección  de  mayor  eficiencia 
hidráulica,  están  en  función  de  las  ecuaciones  122  y  123,  es  decir  de  la 
profundidad normal  y N  .

A = 2 ò 2  y × dx 

T  æ x × Tan f ö
A = 2 × y N  ò 2 Cos çç ÷÷ × dx 
è y N  ø

Ecuación 125 Área mojada de la sección de mayor eficiencia hidráulica
2 × T  × y N 
A = 



2  æ dy ö
P = 2 ò 1 + ç ÷ × dx 

è dx ø
Ecuación 126 Perímetro mojado de la sección de mayor eficiencia hidráulica
2 × y N
P  =  × E (Sen f )
Sen f 
Para  el  perímetro  mojado  se  tiene  que  E ( Sen a ) ,  es  una  integral  elíptica  de 
segundo tipo esta integral se calcula por medio de la siguiente expresión. 

Ecuación 127 Solución de la integral elíptica de segundo tipo
2 2  2 
p é æ 1 ö 6  4 
æ 1 × 3 ö Sen  f æ 1 × 3 × 5  ö Sen  f ù
E (Sen f ) =  × ê1 - ç ÷ × Sen  f - ç

÷ × -ç ÷ × - × × × × × ×ú
2  êë è 2 ø è 2 × 4 ø 3  è 2 × 4 × 6 ø 5  úû

Los  elementos  hidráulicos  se  calculan  con  la  ecuación  de  Manning,  el  caudal  se 
determinara entonces utilizando la ecuación 79 


A  1 
Q = × R 3  × S 0 2 

2  5 
0. 30 × Sen  3  × T  3  × y N × S 0 
Q  = 2 
n × (E (Sen f ))  3 
Ecuación  128  Caudal  para  un  canal  no  revestido  con  de  la  sección  de  mayor 
eficiencia hidráulica
5  8 
2. 1 × Cos  3 f × y N3  × S 0 
Q  = 2 
n × (E (Sen f ))  3 

En el proceso de diseño se debe chequear el caudal de diseño  Q D  , con respecto 


al caudal  Q  el cual se determina con la ecuación 118, si al comparar los caudales 
se  tienen  diferencias  apreciables  sea  mayor  o  menor,  en  cualquier  caso  se  debe 
de modificar la sección transversal del canal.
En  este  orden  de  ideas  se  tienen  dos  posibilidades  al  comparar  el  caudal  de 
diseño con el caudal de la sección a flujo uniforme de la ecuación de Manning. 
1.  Si  Q D > Q , el área del flujo debe de aumentar y la profundidad máxima no 
puede ser mayor al a profundidad normal  y N  esto con el objeto de que no 

halla incremento de fuerza tractiva e inestabilidad. Se incorpora a la sección 
transversal  del  canal,  una  sección  rectangular  en  el  centro  de  la  sección 
teórica  del  canal,  tal  como  se  ve  en  la  figura  50.  La  magnitud  del  área  a 
incorporar se define con tanteos de la siguiente ecuación: 

A  3  1 2 
Q= × R  × S 0 

Ecuación  129  Caudal  para  un  canal  no  revestido  con  de  la  sección  hidráulica 
estable cuando  Q D > Q 

ì 2 
ü
ï çéæ 2  × y 
N ö ù 3 
ï
÷
ï êêç Tan f ÷ + T ' × y N  úú ï
S  ï ëè ø û ï
Q =  ×í 2  ý
n  ï
é 2 × y N  × E (Sen f ) ù 3  ï
ïê ú ï
ïî ë T '  û ïþ
Figura 50 Sección hidráulica estable cuando  Q D > Q 

T´ 

2.  Si  Q D < Q ,  teniendo  en  cuenta  los  criterios  de  economía  y  eficiencia  se 
debe  de  remover  una  parte  del  canal  tal  como  se  ve  en  la  figura  51,  las 
dimensiones  se  determinaran  por  tanteos  de  la  siguiente  ecuación 
generada a partir de la ecuación de Manning. 


A  3  1 2 
Q= × R  × S 0 

Ecuación  130  Caudal  para  un  canal  no  revestido  con  de  la  sección  hidráulica 
estable cuando  Q D < Q .

ì ü
ï é æç 2  × y N  ù
2
ö æ æ f öö æ æ f ö ö÷ 3  ï
÷ × Sen  ç T  × Tan  ç ÷ ç
ï çê ÷ ç ç 2  × y  ÷÷ ÷ - Sen  ç T  ' ' ×Tan  çç ÷ ú
2  × y N  ÷ø ÷ø ûú ïï
S  ï ëê è Tan  f ø è è N  ø ø è è
Q  =  ×í ý
n  ï é 2  × y N  æ æ p öæ T  ' ' ö ö ù ï
ê × E çç Sen  f , ç ÷ ç 1 - ÷ ÷ú
ï
ë Tan  f è è 2  ø è T  ø ÷ø û ï
ï ï
î þ
æ æ p öæ T ' ' ö ö
En  esta  ecuación  se  tiene  que E çç Sen f , ç ÷ç1 - ÷ ÷ ,  es  una  integral  elíptica 
è è 2 øè T  ø ÷ø
incompleta  del  tercer  tipo  esta  integral  se  puede  determinar  suponiendo  que  la 
velocidad media en la sección teórica y en la sección ajustada son iguales, en este 
orden  de ideas los  caudales  serán  proporcionales  al  área  hidráulica  entonces  se 
tiene que: 

Ecuación 131 Caudal teórico en la sección hidráulicamente óptima, en función del 
área hidráulica 
2 × y N2 
Q = × V 
Tan f 
2 × T 2  × Tan f
Q =  × V 
p 2 
Ecuación 132 Caudal de diseño en la sección hidráulicamente óptima, en función 
del área hidráulica

2 × (T  - T ' ' )  × Tan f


Q D =  × V 
p 2 
Figura 51 Sección hidráulica estable cuando  Q D < Q 
Para determinar el ancho superficial, se combinan las ecuaciones 130 y 131, y se 
obtiene una expresión para  T ' ' . 
Q = Q D 

2 × (T  - T ' ' )  × Tan f



2 × T 2  × Tan f
× V  = × V 
p 2  p 2 
Ecuación  133  Determinación  del  T ' ' para  la  sección  hidráulica  estable 
cuando Q D < Q .

æ Q D  ö÷
T ' ' = T × çç1 -
è Q  ÷ø

METODOLOGIA DE DISEÑO 

En  el  método  basado  en  la  sección  hidráulicamente  estable  se  puede  seguir  el 
siguiente procedimiento: 

1.  Determinar la pendiente del canal de la información topográfica, es decir de 
la información básica que se dispone. 

2.  Determinar n para el material del canal a diseñar. 

3.  Determinar el ángulo de reposo para el material perimetral con la figura 46, 
en esta figura a es f de las ecuaciones 117 a 132. 

4.  Determinar  la  fuerza  tractiva,  t 0 que  corresponde  al  material  del  canal  a 

diseñar. 

5.  Determinar el caudal de diseño, en base a las necesidades del proyecto.
6.  Determinar  la  profundidad  normal  con  la  ecuación  104,  esfuerzo 
tractivo t 0  = g × y N × S 0  . 

7.  Determinar la forma del canal con la ecuación 114, profundidad del flujo en 
un canal con sección hidráulicamente estable en función de la profundidad 
é x × Tan f ù
normal o y1  =  y N  × Cos ê ú . 
ë y N  û

p  × y N
8.  Determinar el ancho superficial con la ecuación T  = . 
Tan f

2 × T  × y N 
9.  Determinar el área mojada con la ecuación 115 A =  , área mojada 

de la sección de mayor eficiencia hidráulica. 

10. Determinar  el  caudal  en  el  canal,  utilizando  la  ecuación  de  Manning  o 
5  8 
2. 1 × Cos  3 f × y N3  × S 0 
ecuación  118, Q  = 2 
caudal  para  un  canal  no  revestido 
n × (E (Sen f ))  3 
con la sección de mayor eficiencia hidráulica. 

11. Chequear  el  caudal  de  diseño  Q D  ,  con  respecto  al  caudal  Q  el  cual  se 
determina con la ecuación 118. Verificar en que caso se encuentra  Q D Ù Q , 
y utilizar las ecuaciones 127, 128 y 131. 

12. Resumir los resultados obtenidos en un grafico. 

2.1.10.8  Pérdidas  por  infiltración  en  canales,  las  pérdidas  por  infiltración  son  la 
principal razón por la cual se deba revestir un canal, la pérdida de agua debe ser 
un criterio que se debe de tener conocido y en lo posible controlado.
Esta pérdida en canales no revestidos depende de varios factores entre los cuales 
sobresalen:

· Las dimensiones del canal.

· La gradación del material perimetral.

· Las condiciones del agua subterránea o nivel freático. 

Para la valoración cuantitativa de las pérdidas por infiltración, se reconocen varios 
métodos, los cuales son de origen empírico se basan en observaciones directas y 
en registros históricos de infiltraciones presentes en canales no revestidos que se 
encuentran  bajo  la  acción  del  nivel  freático.  Estos  métodos  son  descritos  a 
continuación: 
1.  Balance  de  masa,  este  método  consiste  en  suspender 
temporalmente  el  canal  y  dividirlo  en  secciones  con  volúmenes 
conocidos para luego aislarlos, se hacen lecturas correspondientes a 
las pérdidas debidas a la infiltración teniendo como criterio el balance 
de  masa.  Se  recomienda  este  método  para canales revestidos  y  no 
revestidos, hay que tener en cuenta los factores climatológicos para 
así lograr una buena lectura de la infiltración. 

2.  Aforo  del  caudal,  este  método  consiste  en  tomar  una  sección  del 
canal en la cual se realizan lecturas de entrada y salida del flujo, se 
tienen dos puntos de referencia. Este método tiene la ventaja que no 
hay  que  suspender  el  funcionamiento  del  canal  pero  su  precisión 
esta limitada al numero de ensayos y al rigor con que se hagan.
3.  Balance de masa inicial, este método tiene como principio el balance 
de  masa  es  decir  el primer  método,  se  utiliza  en  proyectos  es decir 
cuando no se ha realizado el canal se hace un tramo característico el 
cual se llena y se mide su pérdida de masa con respecto al tiempo. 

4.  Registro  histórico,  este  método  fue  desarrollado  en  base  al  trabajo 
desarrollado  por  Etcheverry y  Harding  en  1933,  y luego  completado 
posteriormente por Davis y Sorenson en 1969. Este método consiste 
en  valores  recopilados  y  complementados  por  los  investigadores 
anteriormente  mencionados,  esta  tabla  posee  los  valores  de  las 
pérdidas  por  infiltración  en  canales  que  no  se  ven  afectados  por  el 
nivel freático. Estos valores se muestran en la tabla que se muestra 
a continuación. 

Tabla 11 Pérdidas por infiltración en canales en diversos materiales, sin tener en 
cuenta el nivel freático. Tomado de Hidráulica de canales abiertos de CHOW. V. T 
2000 y de Hidráulica de canales abiertos de FRENCH .R. H 1998. 
Pérdida por infiltración  Pérdida por infiltración
ft 3 AGUA  m 3 AGUA 
para un  para un periodo 
Material perimetral  ft 2 PERIMETRO  m 2 PERIMETRO 
periodo de 24 horas.  de 24 horas 
Fondo del canal arcilloso  0.25 – 0.35  0.0762 – 0.1069 
Arcillas  debajo  de  suelos  a  una 
profundidad  menor  de  (0.61  –  0.35 – 0.50  0.1069 ­ 0.1524 
0.91) m. (2 – 3) ft. 
Fondo  arcilloso  de  suelo  fino  o 
ceniza de origen volcánica  0.50 – 0.75  0.1524 – 0.2286 
Fondo arcilloso de suelo grueso o 
fondo  arcillo  arenoso,  grava 
cementada, arena y arcilla  0.75 – 1.00  0.2286 – 0.3048 
Fondo arenoso  1.00 – 1.50  0.3048 – 0.4572 
Suelos arenosos sueltos  1.50 – 1.75  0.4572 – 0.5334 
Suelos con gravas y arenas  2.00 – 2.50  0.6096 – 0.7620 
Suelos porosos con gravas  2.50 – 3.00  0.7620 – 0.9144 
Suelo con mucha grava  3.00 – 6.00  0.9144 – 1.829 

2.1.10.9  Diseño  de  transiciones,  las  transiciones  son  estructuras  hidráulicas  que 
se utilizan para empalmar, empatar, unir o conectar tramos de canales que tengan 
secciones  transversales  diferentes  en  forma,  tamaño  o  en  dimensión,  o  entre  un 
canal  y  otra  estructura  hidráulica  como  un  sifón  o  una  galería.  Se  tienen  como 
criterios para el predimensionamiento hidráulico los siguientes criterios: 

1.  Las  pérdidas  de  energía  deben  ser  mínimas,  a  través  de  estructuras 
económicas e hidráulicamente óptimas. 

2.  Suprimir las ondulaciones y los vórtices.
3.  Eliminar las zonas con agua tranquila o flujo muy retardado, pues se corre 
el  riesgo  de  que  se  presente  acumulación  excesiva  de  material  en 
suspensión. 

4.  Se  produce  flujo  variado,  el  cual  debe  confinarse  en  la  estructura  de 
transición. 

5.  Debe evitarse la separación del flujo de las paredes del canal. 

Los anteriores criterios son aplicables en  transiciones cuando los tramos que se 
van  a  empalmar  son  de  baja  pendiente,  con  régimen  subcrítico;  bajo  estas 
condiciones  las  pérdidas  hidráulicas  por  el  cambio  de  sección  son  relativamente 
pequeñas. 

Para el diseño de transiciones con el criterio económico presente, se han realizado 
varias  investigaciones  de  las  cuales  sobresalen  las  realizadas  por  el  U.S. 
Department of Agriculture bajo la dirección de Scobey en 1933; las desarrolladas 
por el U.S. Bureau of Reclamation en 1952 y las hechas por Vittal, Chiranjeevi en 
1983. 

En  el  cálculo  hidráulico  de  una  estructura  de  transición  con  flujo  subcrítico  se 
tienen las siguientes hipótesis: 

1.  La línea  de  energía  tiene la  misma  pendiente  en  el  tramo  de la  transición, 
no  hay  pérdidas  locales  de  energía,  se  puede  calcularse  por  tramos 
utilizando la ecuación de  Manning o ecuación 79. 
2.  La velocidad varía en función de la distancia, de esta forma los coeficientes 
de  energía  y  de  momemtum,  ecuaciones  23  y  24,  serán  iguales  a  uno  es 
decir  a = b = 1 . 
3.  La distribución de presiones es hidrostática, de esta manera se omiten los 
efectos de la curvatura.
4.  No se tiene en cuenta las zonas de separación de flujo. 

Además  de  las  anteriores  hipótesis  las  transiciones  poseen  las  siguientes 
características para su correspondiente cálculo: 

1.  Proporcionamiento, esta característica fue mencionada por CHOW. V.T, en 
la  cual  plantea  que  el  máximo  ángulo  óptimo  entre  el  eje  del  canal  y  una 
línea virtual que conecta los lados del canal entre las secciones de entrada 
y salida del canal es de 12.5°.  Tal como lo muestra la figura 52, como se 
menciono  en  los  criterios  de  diseño  los  ángulos  agudos  producen 
turbulencia motivo por el cual se deben evitar. 

Figura  52  Máximo  ángulo  óptimo  entre  el  eje  de  un  canal  y  la  sección  correspondiente  a  una 
transición 

Eje  B1  B2 


12.5° 

Lt 

2.  Separación del flujo, para minimizar la separación del flujo en la transición, 
se requiere un ángulo, que según el principio de proporcionamiento es entre 
el eje del canal y una línea virtual que conecta los lados del canal entre las 
secciones de entrada y salida del canal, este ángulo será de 12.5°. 
3.  Pérdidas,  haciendo  uso  del  criterio  de  pérdidas  de  energía,  se  reconocen 
dos  tipos  de  pérdida  en  una  transición  las  pérdidas  por  fricción  y  las 
pérdidas por transición. Las pérdidas por fricción se pueden determinar con 
la  ecuación  de    Manning  o  ecuación  79;  y  las  pérdidas  por  transición,  las
cuales  son  expresadas  en  términos  del  cambio  de  la  cabeza  de  velocidad 
entre  las  dos  secciones  de  la  transición,  la  entrada  y  la  salida.  Estas 
pérdidas por transición presentan dos casos según sea el flujo acelerado o 
retardado. 
4.  Pérdidas por transición en flujo acelerado, se presentan en la estructura de 
entrada,  se  dice  que  el  flujo  es  acelerado  si  tiene  que  la  velocidad  de 
entrada es menor que la velocidad de salida, entonces la velocidad del flujo 
aumenta  y  la  superficie  del  agua  debe  de  caer.  La  siguiente  ecuación 
expresa esta pérdida por transición: 

Ecuación 134 Pérdida por transición en flujo acelerado  V1  < V 2 .

D y = Dh v  × (1 + C e  ) 

Donde se tiene que:

Dy  = Caída en la superficie del agua

Dh 
  v  = Diferencia de energía cinética

C e  = Coeficiente de pérdida por entrada 

Los  valores  correspondientes  al  coeficiente  de  pérdida  por  entrada  C e ,  se 

muestran en la tabla 12. 

5.  Pérdidas por transición en flujo retardado, se presentan en la estructura de 
salida, se dice que el flujo es retardado si tiene que la velocidad de entrada 
es  mayor  que  la  velocidad  de  salida,  entonces  la  velocidad  del  flujo 
disminuye  y  la  superficie  del  agua  se  levanta.  La  siguiente  ecuación 
expresa esta pérdida por transición:

Ecuación 135 Pérdidas por transición en flujo retardado,  V1  < V 2 

D y = Dh v  × (1 - C s  ) 

Donde se tiene que:

Dy  = Caída en la superficie del agua

Dh 
  v  = Diferencia de energía cinética

C s  = Coeficiente de pérdida por salida 

Los valores correspondientes al coeficiente de pérdida por salida  C s , se muestran 

en la tabla 12. 

Tabla 12 Coeficientes de pérdida por transición. Tomado de Hidráulica de canales abiertos de 
CHOW. V. T 2000 y de Hidráulica de canales abiertos de FRENCH .R. H 1998 
Tipo de transición  C e  (Entrada o contracción)  C s  (Salida o expansión)
Tipo curvado  0.10  0.20 
Tipo de cuadrante  0.15  0.25 
cilíndrico 
Tipo simplificado en línea  0.20  0.30 
recta 
Tipo en línea recta  0.30  0.50 
Tipo de extremos  0.30  0.75 
cuadrados 

Cuando  se  inicia  el  proceso  de  cálculo  se  suponen  conocidas  las  siguientes 
variables;  las  secciones  transversales  de  los  canales  a  unir  con  la  estructura  de 
transición  aguas  arriba  y  aguas  abajo,  el  caudal,  la  rugosidad  es  decir  el  tipo  de 
material,  la  profundidad  de  agua,  la  altura  de  energía  en  la  sección  transversal 
final. 

En  la  solución  de  este  tipo  de  problemas  hacemos  uso  de  la  primera  hipótesis, 
donde  la  línea  de  energía  mantiene  constante  su  pendiente,  del  uso  de  esta 
hipótesis determinamos la profundidad inicial. 

Las  dimensiones  de  las  secciones  transversales  intermedias  se  pueden 


determinar utilizando las ecuaciones de energía 39, 40 y 50. 

2.2 MARCO CONCEPTUAL 

2.2.1  Canal,  es  la    conducción  o  conducto  en  el  cual  fluye  un  líquido,  con  una 

superficie libre o con contacto con la atmósfera.
2.2.2  Diseño  de  canales,  el  diseño  de  un  canal  consiste  en  elegir  la  forma  y  las 
dimensiones de la  sección  transversal  de  tal manera  que  cumplan  con requisitos 
hidráulicos y económicos. 

2.2.3  Software,  “Software  es  el  conjunto  de  requerimientos  operacionales, 


especificaciones,  código,  guías,  manuales  y  documentación  basado  en 
computadora” 1 

2.3 MARCO LEGAL 

2.3.1  Normas 

Reglamento Técnico del Sector de Agua Potable Y Saneamiento Básico RAS 
2000 
Titulo A “ASPECTOS GENERALES DE LOS SISTEMAS DE AGUA POTABLE Y 
SANEAMIENTO BÁSICO”:
· A.11.3.24 Parámetros de diseño para canales de aguas lluvias 
Titulo B “SISTEMAS DE ACUEDUCTO”:
· B.4.4.3 Canales de aducción
· B.4.5.1 Canales
· B.4.6.3 Canales
· B.4.7.4 Dragado de canales
· B.6.4.3 Canales a flujo libre
· B.6.5.1 Canales a flujo libre
· B.6.6.3 Capacidad hidráulica de los canales
· B.6.7.7 Limpieza de canales 

Titulo D “SISTEMAS DE RECOLECCIÓN Y EVACUACIÓN DE AGUAS 
RESIDUALES DOMÉSTICAS Y PLUVIALES”:
· D.6.8 CANALES 

Titulo G “ASPECTOS COMPLEMENTARIOS”:
· G.2.5.4.2 Relleno para estructuras y zanjas 

2.3.2  Normas técnicas Colombianas 

Roger S. Presuman: Ingeniería de Software: Un enfoque practico: Mc Graw Hill, 2002; p.92
NTC  3705  Gestión  Ambiental.  Agua.  Medición  de  flujo  de  agua  en  canal  abierto 
con vertederos de placa fina. 

NTC  3933  Agua.  Método  estándar  para  medición  del  flujo  de  agua  en  canal 
abierto, con canaletas Parshall. 

NTC  3945  Agua.  Método  estándar  para  medición  del  flujo  en  canal  abierto 
mediante elementos rotativos molinetes. 

2.3.3  Normas técnicas ISO 

ISO  4633  Juntas  de  estanqueidad  de  caucho  ­  Guarniciones  de  juntas  de 
canalizaciones de alimentación y evacuación de aguas (Alcantarillados incluidos ­ 
Especificación de materiales) 

3.  METODOLOGÍA
3.1 DISEÑO DE LA INVESTIGACIÓN 

En  el  desarrollo  del  proyecto  “Software  con  herramientas  hidráulicas  para  el 

diseño de canales” la investigación es de tipo investigación experimental (Tamayo, 

1995, 56); “se presenta mediante la manipulación de una variable experimental no 

comprobada, en condiciones rigurosamente controladas, con el fin de describir de 

qué modo o porqué causa se produce una situación o acontecimiento particular. El 

experimento  es  una  situación  provocada  por  el  investigador  para  introducir 

determinadas variables de estudio manipuladas por él, para controlar el aumento o 

disminución  de  esas  variables  y  su  efecto  en  las  conductas  observadas.  En  el 

experimento,  el  investigador  maneja  de  manera  deliberada  la  variable 

experimental y luego observa lo que ocurre en condiciones controladas”. 

FASES DE LA INVESTIGACIÓN 

FASE 1: 

Diseño de canales, métodos utilizados.

· Se recolecto la información existente al respecto.

· Se  realizaron  entrevistas    no  estructuradas  a  ingenieros  y  constructores 

especialistas en diseño de canales. 

FASE 2: 

Software utilizado en la hidráulica de canales.
· Se organizar la información recolectada.

· Se busco la orientación de  peritos o especialistas  en los temas a desarrollar. 

FASE 3: 

Se  determino  el  lenguaje  de  programación,  los  modelos  matemáticos,  las 

correlaciones físicas, las teorías e hipótesis aplicables al diseño de canales y a la 

hidráulica de canales.

· Se  Identificaron  los  tipos  de  canales  mas  utilizados  en  las  obras  civiles;  bien 

sea por motivos económicos, técnicos.

· Se  Identificaron  las  variables  mas  incidentes  y  repetitivas  en  el  diseño  de 

canales.

· Se realizar bases de datos aplicables al diseño de canales y a la hidráulica de 

canales.

· Se  realizar  modelaciones  de  canales  con  secciones  geométricas  definidas 

donde  se  hará  variar  de  manera  independiente  las  variables  que  intervengan 

en el diseño de canales. 

FASE 4: 

Analizar y procesar los datos obtenidos, para brindar respuesta.

· Se elaboraron, con los datos de las visitas, modelaciones, bases de datos, los 

algoritmos  que  serán  el  pilar  donde  se  edificara  el  software  para  el diseño  de 

canales.

· Se  realizaron  pruebas  piloto  con  el  software  para  el  diseño  de  canales  y  la 

enseñanza  de  la  hidráulica  en  laboratorio  de  hidráulica;  retroalimentar  el


software y el proceso de investigación con la información recolectada por estas 

pruebas. Estas pruebas se realizaron con estudiantes que estaban tomando la 

cátedra de hidráulica  canales.

· Se brindo  el software como herramienta en la hidráulica de canales. 

3.2  Objeto de Estudio 

El  proyecto  realizado  consistió  en  desarrollar  un  software  que  diseña  canales  no 

erosionables,  erosionables,  además  calcula  los  elementos  geométricos  de  las 

principales  secciones  transversales  de  un  canal,  determina  el  borde  libre  de  un 

canal  en  función  del  caudal,  determina  la  fuerza  especifica  en  las  principales 

secciones  transversales  de  los  canales,  calcula  las  propiedades  hidráulicas  y 

geométricas de un canal en flujo uniforme y  flujo critico. El software sirve para el 

aprendizaje  de  la  hidráulica  de  canales  bien  sea  como  fuente  bibliografiíta, 

enciclopedia virtual de definiciones, y como ayuda en el desarrollo de las practicas 

de  laboratorio  de  hidráulica  de  canales.  El  proyecto  tiene  como  anexo  un 

documento  escrito  donde  se  hace  un  recuento  de  los  principales  temas  tratados 

en  la  hidráulica  de  canales,  este  documento  sirve  como  fuente  de  consulta  para 

los interesados en la materia.
3.3  VARIABLES 
Cuadro 1.  Análisis de las variables 
CATEGORÍA DE 
VARIABLE  INDICADORES 
ANÁLISIS 

Energía especifica 
Fuerza especifica 
Propiedades del flujo 
El flujo  Distribución de presiones 
abierto 
Distribución de velocidades 

Propiedades de las  Área mojada 
secciones transversales de  La profundidad  Radio hidráulico 
los canales  Perímetro mojado 
Flujo normal 
Flujo critico 
Tipos de flujo  La profundidad 
Flujo variado 

Fuerza tractiva 
Velocidad permisible 
Diseño de canales  La profundidad  Sección hidráulica optima 
Sección hidráulica estable 
Borde libre 

Las perdidas de energía 
Diseño de transiciones  La profundidad  Perdidas por transición 
El proporcionamiento 

4.  TRABAJO INGENIERIL
4.1 DESARROLLO 

4.1.1  Identificación del lenguaje de programación 

Se  identificó  el  lenguaje  de  programación  para  el  proyecto,  teniendo  en  cuenta, 

cuales  son  las  necesidades  ingenieriles  que  se  utilizan  en  el  diseño,  la 

construcción de los canales abiertos, tomando como lenguaje de programación el 

VISUAL BASIC 6.0, por ser un lenguaje libre y para las necesidades del proyecto 

de fácil uso y manejo. 

4.1.2  Identificación de los principios físicos y definiciones que intervienen en el 
diseño. 

Los principios físicos que intervienen en el diseño de canales son:

· Continuidad del flujo

· Energía especifica

· Distribución de velocidades en la sección de un canal

· Energía cinética de un flujo

· Momemtum

· Distribución de presiones en la sección de un canal

· Fuerza hidrostática

· Fuerza tractiva

· Esfuerzo tractivo
Estos  principios  y  sus  correspondientes  demostraciones  se  encuentran  en  el 

numeral 2.1 de este documento, marco referencial, se demostró:

· El coeficiente de energía o coeficiente de Coriolis, ecuación 23.

· El coeficiente de momentum o coeficiente de Boussinesq, ecuación 24.

· La ecuación de energía especifica, ecuación 36.

· La ecuación de energía especifica para canales rectangulares, ecuaciones 

36, 37, 38, 39 y 40.

· La ecuación general del flujo critico, ecuación 43.

· Estado critico de flujo, ecuación 44.

· La profundidad crítica en un canal de sección rectangular, ecuación 47.

· La energía mínima en un canal de sección rectangular, ecuación 48.

· Las  profundidades  alternas  se  demuestran  en  el  numeral  2.1.8.4.3, 

ecuación 50.

· La  ecuación  de  fuerza  específica  se  demuestra  en  el  numeral  2.1.8.5.2, 

ecuación 55.

· La  ecuación de  fuerza  específica  para  un  canal rectangular  se  demuestra 

en el numeral 2.1.8.5.3, ecuación 58.

· La ecuación Profundidad critica de flujo de un canal, en función del caudal 

unitario, ecuación 60; y la ecuación de fuerza específica mínima, ecuación 

61. Se demuestran de forma simultanea en el numeral 2.1.8.5.4.

· Las  profundidades  recuentes  o  conjugadas  se  demuestran  en  el  numeral 

2.1.8.5.5 de este documento, ecuación 63.
· La perdida de energía en un resalto se demuestra en el numeral 2.1.8.6 del 

presente documento, ecuación 64.

· La  fuerza  sobre  una  estructura  se  demuestra  en  el  numeral  2.1.8.7  del 

presente documento, ecuación 70.

· La  ecuación  de  Chezy  se  demuestra  en  el  numeral  2.1.9.3  del  presente 

documento, ecuación 72. 

Las  definiciones  que  se  trataron  están  recopiladas  en  el  capitulo  2  del  presente 

escrito,  se  tubo  como  parámetro  para  la  selección  de  los  conceptos  adecuados, 

los conocimientos mínimos en hidráulica de canales y el plan de estudios seguido 

en la facultad de Ingeniería Civil de la Universidad De La Salle. 

4.1.3  Identificación de los principales métodos de diseño de canales 

Se citaron los métodos para el diseño de canales según el tipo de canal a diseñar, 

estos  métodos  se  nombraron  en  los  numerales  2.1.10.6  y  2.1.10.7  del  presente 

escrito, se tiene en cuenta las especificaciones necesarias para su buen uso. Se 

tuvo en cuenta los siguientes métodos:

· Sección hidráulicamente optima

· Método de la velocidad máxima permisible

· Método de la fuerza tractiva

· Método de la sección hidráulicamente estable
4.2 Software 

El software tiene las siguientes características, es decir sus aplicaciones son:

· Calcula los elementos geométricos de las principales secciones de canales.

· Calcula el flujo crítico para las secciones de los canales más usuales.

· Calcula el flujo normal para las secciones de los canales más usuales.

· Calcula el borde libre para el diseño de canales.

· Diseña canales revestidos y erosionables para la sección trapezoidal.

· Posee  bases  de  datos  con  parámetros  para  el  diseño  de  canales, 

definiciones relevantes para el aprendizaje de la hidráulica de canales.

· Aplicación  directa  para  el  desarrollo  de  las  practicas  de  laboratorio  de 

hidráulica de canales en la facultad de ingeniería civil de La Universidad De 

La Salle.

· Genera gráficos donde se visualizan los resultados.

· Genera simulaciones de los resultados en 3D, donde se puede apreciar los 

resultados

· Se  maneja  en  ambiente  Windows,  lo  cual  genera  una  mayor  facilidad  de 

uso y manejo del paquete. 

Para un análisis más detallado Ver anexo 1 “Software Open Flor Unisalle”.
4.2.1  Ejemplo para el calculo de la fuerza especifica en una sección 
rectangular. 

Imagen 6 Cálculo de la fuerza especifica para una  sección rectangular en el software Open Flow 
Unisalle.
Imagen 7 Cálculo de la fuerza especifica para una  sección rectangular en el software Open Flow 
Unisalle, datos de entrada.
Imagen 8 Cálculo de la fuerza especifica para una  sección rectangular en el software Open Flow 
Unisalle, datos de salida.
4.2.2  Ejemplo para el desarrollo de una practica de laboratorio. 

Imagen 9 Aplicación para el laboratorio de hidráulica de canales, practica “Geometría de la sección, 
curva de energía y fuerza especifica” en el software Open Flow Unisalle, preliminares.
Imagen  10  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, datos de entrada. 

Imagen  11  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, datos de salida 1.
Imagen  12  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, datos de salida 2.
Imagen  13  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, datos de salida 3.
Imagen  14  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, gráficos 1. 

Imagen  15  Aplicación  para  el  laboratorio  de  hidráulica  de  canales,  practica  “Geometría  de  la 
sección, curva de energía y fuerza especifica” en el software Open Flow Unisalle, gráficos 2.
4.3  MANUAL DE USUARIO OPEN FLOW UNISALLE 

Es  un  documento  escrito  donde  se  describen  los  procedimientos  de  uso,  la 

manera  de  instalar  el  software  y  ejemplos  numéricos  de  cada  aplicación  que 

contiene  el  paquete.    Para  un  análisis  más  detallado  Ver  anexo  2  “Manual  del 

usuario”. 

4.4 DOCUMENTO ESCRITO DIGITALIZADO 

El  documento  escrito  esta  en  formato  .PDF,  este  documento  se  visualiza  toda  la 

información  pertinente  al presente proyecto, mas  una  copia  del código  fuente  del 

programa. Para un análisis más detallado Ver anexo 3 “Documento escrito digital”. 

4.5 CODIGO FUENTE 

Se  presenta  el  código  fuente,  el  cual  reúne  todos  los  procedimientos  y  palabras 

reservadas en el lenguaje de programación, Visual Basic 6.0. Para un análisis más 

detallado Ver anexo 4 “Código Fuente”.

5.  COSTOS TOTALES DE LA INVESTIGACIÓN 

5.1 RECURSOS MATERIALES 

Tabla 13 Recursos materiales. 
VALOR 
CONCEPTO  UNIDAD  CANTIDAD  VALOR UNITARIO ($) 
TOTAL ($) 

USB  UN  3  $60.000  $180.000 

Resma  papel carta  UN  1  $8.800  $8.800 

Cartuchos de tinta  UN  1  $25.000  $25.000 

Fotocopias  GL  1  $30.000  $30.000 

Esferos  UN  20  $750  $15.000 

Portaminas  UN  6  $2.500  $15.000 

Minas  UN  9  $1.000  $9.000 

Transporte  UN  5  $100.000  $500.000 

Celular  GL  1  $250.000  $250.000 

Alimentación  UN  60  $3.500  $210.000 

Internet  Hr  30  $2.000  $60.000 

CD  UN  100  $500  $50.000 

Lenguaje de programación  GL  1  $800.000  $800.000 

Varios  GL  1  $300.000  $300.000 

TOTAL 
$ 2.452.800
5.2  RECURSOS INSTITUCIONALES 

Tabla 14 Recursos institucionales. 

INSTITUCIÓN 

UNIVERSIDAD DE LA SALLE 

UNIVERSIDAD NACIONAL DE COLOMBIA 

UNIVERSIDAD DE LOS ANDES 

PONTIFICIA UNIVERSIDAD JAVERIANA 

UNIVERSIDAD CATOLICA DE COLOMBIA 

TUXSTONE Technologies 

5.3 RECURSOS TECNOLÓGICOS 

Tabla 15 Recursos tecnológicos. 

CONCEPTO  UNIDAD  CANTIDAD  VALOR UNITARIO ($)  VALOR TOTAL ($) 

Computador  Hr  300  $1.500  $450.000 

videos y Sonido  UN  1  $250000  $250.000 

TOTAL  $ 700.000
5.4 RECURSOS HUMANOS 
Tabla 16 Recursos humanos 

No. HORAS  No.  TOTAL  VALOR  VALOR 


CARGO 
POR SEMANA  SEMANAS  HORAS  HORA ($)  TOTAL($) 

Director 
4  16  64  1712.5  $109.600 
temático 

Asesor 
4  16  64  $21.000  $640.000 
metodológico 

TOTAL  $749.600 

5.5  RECURSOS FINANCIEROS 

Tabla 17 Recursos financieros 

FUENTES DE FINANCIACIÓN 

APORTES DE LA UNIVERSIDAD DE 

RUBROS  LA SALLE  INVESTIGADORES  TOTAL 

FACULTAD DE INGENIERÍA CIVIL 

Recursos  $ 
$ 2.452.800 
Materiales  2.452.800 

Recursos 
$ 700.000  $ 700.000 
Tecnológicos 

Recursos Humanos  $ 749.600  $ 749.600


Subtotal  $ 749.600  $ 3.152.800  $3.902.400 

Imprevistos (5%)  $ 37.480  $ 157.640  $ 195.120 


TOTAL 
4.097.520
6.  CONCLUSIONES 

1.  Los  canales  abiertos  han  estado  presentes  en  las  grandes  culturas  y 

civilizaciones  a  lo  largo  de  la  historia  misma  de  la  humanidad.  Desde  los 

Egipcios, Persas hasta los Incas y Muiscas; motivo por el cual su estudio es 

de  gran  importancia  par  las  generaciones  futuras  no  solo  de  ingenieros  si 

no además de personas interesadas en conocer el desarrollo y grandeza de 

cada cultura. 

2.  El flujo a superficie libre o flujo libre se presenta cuando los líquidos fluyen 

por  la  acción  de  la  gravedad  y  solo  están  parcialmente  contenidos  por  un 

contorno sólido. 

3.  Se  define  a  un  canal  como  la  conducción  o  conducto  en  el  cual  fluye  un 

líquido, con una superficie libre o con contacto con la atmósfera. 

4.  Un canal se puede clasificar teniendo en cuenta varios criterios entre ellos 

su origen, sección transversal; y a su vez según el origen los clasificaremos 

como  naturales  o  artificiales,  estos  pueden  ser  revestidos  o  no  revestidos; 

teniendo en cuenta la sección transversal se habla de canales prismáticos y 

de canales no prismáticos. 

5.  Los  no  revestidos  o  canales  artificiales  erosionables  son  utilizados 

principalmente en cultivos para transporte de agua. 

6.  Los  elementos  geométricos  de  un  canal  son  parámetros  indispensables 

para el diseño y conocimiento de los canales como estructuras hidráulicas.
Estos elementos geométricos entregan información de primer orden acerca 

de las características mismas del canal. 

7.  En  un  canal  circular  de  diámetro  do,  la  descarga  máxima  ocurre 

aproximadamente  para  una  profundidad  de  flujo  igual  a  y  =  0.938do,  y  la 

velocidad máxima esta ubicada a una profundidad de flujo igual y = 0.81do.. 

8.  En  un  canal  generalmente  la  velocidad  máxima  ocurre  debajo  de  la 

superficie libre del agua a una distancia que varia entre los 0.05 a 0.25 de la 

profundidad  y . 

9.  El  coeficiente  de  Coriolis  para  un  flujo  libre  varia  entre  1.1  y  2.0,  datos 

experimentales  hablan  de  valores  que  se  mueven  entre  1.03  y  1.36  para 

canales  prismáticos  casi  rectos,  en  general  el  valor  es  alto  para  canales 

pequeños y bajo para corrientes grandes con profundidad constante. Aguas 

arriba  de  vertederos,  cerca  de  obstrucciones  o  cerca  de  irregularidades 

pronunciadas en el alineamiento se han observado valores de α>2. 

10. El coeficiente de Momemtum toma valores que van desde 1.01 hasta 1.12 

en canales prismáticos aproximadamente rectos, en flujo libre el coeficiente 

varia entre 1.03 y 1.33. 

11. Si se presenta un canal donde la pendiente del fondo sea pequeña, menor 

que el 10%, el factor de corrección de presión por efecto de la pendiente, se 

puede  despreciar.
12. Los canales no se debe diseñar canales con flujo critico, pues este flujo es 

inestable y produce oscilaciones del flujo que pueden ser perjudiciales para 

la estructura. 

13. El coeficiente  C  de resistencia al flujo en la ecuación de Chézy, ha tenido 

un  gran  número  de  aproximaciones  o  soluciones  que  han  contado  con  el 

trabajo  de  notables  investigadores  de  la  hidráulica,  de  los  cuales  resaltan 

los  trabajos  de  Manning,  Kutter  –  Ganguillet,  Kutter,  Bazin,  Darcy  – 

Weisbach. 

14. La  elección  del  coeficiente  C  de  resistencia  al  flujo  en  la  ecuación  de 

Chézy,  depende  del diseñador  o ingeniero,  y  esta  se  cuantifica  en  el  nivel 

de conocimiento del mismo. 

15. Los  canales  se  diseñan  en  flujo  uniforme,  y  la  ecuación  de  mayor 

aceptación es la ecuación de Manning. 

16. Durante  el  diseño  de  un  canal  abierto  la  sección  transversal  del  canal,  la 

rugosidad  y  la  pendiente  del  fondo  del  canal  son  conocidas,  el  objetivo 

primordial  del  diseño  es  determinar la  magnitud  de  la  velocidad  media  del 

flujo, la profundidad y el caudal sea conocido cualquiera de ellos. 

17. En el diseño de canales se debe tener en cuenta, algunos de los siguientes 

criterios, tales como:

· EL canal se diseña por tramos con flujo uniforme

· En canales de transporte se prefieren zonas de baja pendiente
· La  velocidad  debe  ser  lo  suficientemente  alta  como  para  impedir  la 

sedimentación de las partículas que se transportan en el agua, bien 

sea en el fondo o en suspensión.

· La  velocidad  debe  ser  lo  suficientemente  baja  con  lo  cual  se  debe 

impedir la erosión de las paredes y el fondo del canal.

· En  primera  instancia  se  definen  las  dimensiones  del  canal  bajo  los 

parámetros  establecidos  en  el  flujo  uniforme  y  luego  se  ajustan  las 

dimensiones  definitivas  alas  condiciones  y  características  del 

proyecto esto con el fin de hacerlas practicas constructivamente.

· Las  dimensiones  definitivas  del  diseñó  deben  de  evitar 

profundidades cercanas a la critica.

· Información básica de diseño, es aquella información con la cual se 

debe  dimensionar  los  alcances  del  proyecto,  se  encuentra 

información  relativa  del  área  de  influenza  del  canal  así  como  de  la 

población a beneficiar.

· Parámetros básicos de diseño, son aquellas características del canal 

que  lo  hacen  estable  e  hidráulicamente  optimo  a  esta  categoría 

pertenecen  variables  como,  la  sección  hidráulica  optima,  fuerza 

tractiva,  la  velocidad  máxima  permisible,  la  velocidad  mínima 

permisible,  pendientes  de  fondo  y  laterales  en  el  caso  de  canales 

trapezoidales,  borde  libre,  la  altura  y  espesor  de  recubrimiento  en 

canales revestidos.
· Valoración  de  efecto  del  canal  sobre  el  medio  ambiente,  esta 

información  es  referente  al  impacto  del  canal  sobre  los  factores 

abióticos y bióticos del ecosistema. 

18. La  información  básica  del  diseñó  se  agrupan  los  datos  que  permiten 

predefinir  características  del  diseñó  como  son  el  caudal  de  diseñó,  la 

pendiente  del  canal  y  capacidad  de  transporte,  tal  como  se  muestra  a 

continuación:

· Topografía,  define  las  longitudes  y  pendientes  medias  de  cada  uno 

de los tramos de canal.

· Hidrología, define las variables hidrológicas como precipitación para 

conocer  el  caudal  disponible  en la  fuente  o fuentes  de  agua  que  se 

van a aprovechar.

· Suelos,  definen  las  características  del  suelo a  excavar  como  son  la 

clasificación  del  material  de  excavación,  peso  especificó  del  suelo, 

coeficientes  de  permeabilidad,  velocidades  máximas  permisibles, 

coeficientes de rugosidad del cause presiones activas. Con el fin de 

prever la necesidad de un recubrimiento.

· Estudios  de  la  demanda,  definen  el  caudal  de  diseño  para  las 

necesidades  del  proyecto;  canales  para  riego,  centrales 

hidroeléctricas, drenaje, recreación, transporte.

· Estudios  ambientales,  definen  el  riesgo  para  el  ambiente;  usos  del 

agua, riesgo para seres vivos, calidad del agua.
19. Los parámetros de diseño son aquellas características que el canal debe de 

cumplir  para  que  este  sea  estable  e  hidráulicamente  óptimo,  algunos  de 

estos parámetros son:

· Forma  de  la  sección  transversal:  se  escoge  en  función  del  tipo  de 

suelo, si el canal es revestido o no, del método constructivo, del uso 

del  canal,  de  la  normatividad  ambiental,  del  aspecto  financiero  y  la 

economía.  Por  ejemplo,  en  la  roca  o  con  el  concreto  se  pueden 

construir  secciones  transversales  de  cualquier  forma,  mientras  que 

los canales en suelos arcillosos, finos u otros materiales tienen forma 

generalmente  trapezoidal.  Los  canales  se  deben  de  cubrir  en 

algunas  ocasiones,  por  diferentes  razones,  bien  sea,  para  evitar 

contaminación del agua, para permitir el paso de un lado a otro, etc.

· Taludes  laterales:  están  en  función  del  suelo  de  excavación.  El 

ángulo que forma el talud lateral del canal con la horizontal debe ser 

menor que el ángulo de fricción interna del material.

· Coeficiente de rugosidad: depende del tipo de material y del acabado 

del revestimiento del canal.

· Coeficiente de permeabilidad: se determina para el suelo natural en 

que se excava el canal haciendo pruebas "in situ" o en laboratorio.  

· Velocidad  admisible  del  flujo:  está  limitada  por  la  erosión  y  la 

sedimentación en el canal. En un diseño con la velocidad máxima no 

erosionable que se logran diseños mas económicos y se garantiza la
estabilidad  de  la  estructura.  Esta  velocidad  máxima  no  erosionable 

es  la  velocidad  media  más  grande  que  no  causa  erosión  al  cuerpo 

del  canal.  Los  canales  revestidos  en  concreto  admiten  velocidades 

más  altas  dependiendo  de  si  el  funcionamiento  es  permanente 

(canales  de  conducción  de  agua)  o  esporádico  (canales  para 

evacuación  de  aguas  de  exceso),  casos  en  que  las  velocidades 

máximas están del orden de 4.0 m/s y de 15 m/s, respectivamente.

· Velocidad  mínima:  0.6  m/s  ­  0.9  m/s  para  prevenir la  sedimentación 

de  partículas  cuando  la  concentración  de  finos  es  pequeña. 

Velocidad  mínima:  0.75  m/s  para  prevenir  el  crecimiento  de  la 

vegetación.

· Borde libre:  es la  distancia  vertical  medida  desde  el  nivel de  diseño 

del agua hasta la parte superior de la estructura. Se debe considerar 

el efecto de inexactitudes en la información disponible, imprecisiones 

en el diseño, cambios del nivel del agua. 

20.  El  lenguaje  de  programación  Visual  Basic  6.0,  es  un  medio  óptimo  para 

generar las soluciones a problemas de programación, su manejo es sencillo 

y  el  ambiente  de  manejo  es  agradable  pues  se  maneja  en  ambiente 

Windows lo cual permite el uso de ventanas e iconos, para insertar objetos. 

21. El  uso  de  este  paquete  queda  bajo  la  limitación  de  los  conocimientos  del 

usuario, de allí la importancia de que maneje plenamente los conceptos que 

en este trabajo se expusieron.
22. Este  proyecto  deja  las  bases  y  los  precedentes  necesarios  para  su 

ampliación,  pues  se  observo  que  aun  hay  procesos  del  diseño  que 

requieren  gráficos  desarrollados  de  manera  empírica  creados  en  décadas 

pasadas y que no se describen bajo ninguna relación matemática. 

23. Una poderosa herramienta para el aprendizaje y el estudio de la hidráulica 

de  canales  son  los  paquetes  informáticos,  como  son  los  programas  de 

computadora  o  software.  Con  el  anterior  proyecto  se  demuestra  esta 

hipótesis  pues  a  nivel  personal  se  logro  descubrir  y  ampliar los  conceptos 

que permanecían remanentes en cada integrante del equipo.
7.  RECOMENDACIONES 

1.  Se  recomienda  para  un  buen  desarrollo  y  funcionamiento  del  software,  un 
equipo con las siguientes especificaciones; un equipo cuya plataforma sea 
Microsoft Windows XP, 400Mb de espacio en el disco duro para su correcta 
instalación, procesador Pentium 3 o superior, resolución de pantalla a 800 x 
600, para mayor comodidad de los usuarios. 
2.  Para canales revestidos, la velocidad máxima del agua no debe ser mayor 

que 8 m/s. 

3.  Debe hacerse para el diseño y construcción de un canal, una valoración al 

efecto o impacto ambiental dicha obra hidráulica. 

4.  Debe  hacerse  para  el  diseño  y  construcción  de  un  canal,  un  análisis 

financiero,  y  considerar  la  relación  costo  beneficio  como  parámetro  de 

decisión para la ejecución de dicha obra hidráulica. 

5.  Se  recomienda  como  sección  más  viable  para  un  proyecto  de  canales  sin 

recubrimiento la sección trapezoidal, por estabilidad y eficiencia. 

6.  Si  se  posee  un  canal  de  sección  rectangular,  el  cual  es  muy  ancho  en 

comparación  con  su  profundidad  de  flujo  (es  decir  que  el  ancho  sea  casi 

diez  veces  la  profundidad),  el  radio  hidráulico  de  dicha  sección  será  el 

mismo valor numérico de la profundidad de flujo 

7.  No  se  debe  diseñar  canales  con  flujo  critico  sino  con  flujo  subcrítico  o 

supercrítico, esto en función de la pendiente que se tenga en el canal, en el
diseño se deben buscar profundidades en un rango de  1. 1 y c  < y < 0 . 9 y c  con 

y ¹ y C  . 

8.  Antes  de  diseñar  un  canal  por  cual  quiera  de  los  métodos  que  se 

presentaron, se debe hacer una evaluación de los requisitos y las variables 

de diseño conocidas, así como de las seleccionadas. 

9.  Para  la  utilización  adecuada  del  software  se  requiere  un  conocimiento 

básico  de  la  hidráulica  de  canales,  por  este  motivo  se  desarrollo  en  este 

proyecto  de  forma  paralela  el  documento  escrito  donde  se  reúnen  los 

conceptos  básicos  para  su  estudio  y  posterior  utilización,  que  seria  el 

diseño de canales.
BIBLIOGRAFÍA 

AGUILAR  JOYANES,  Luís.  RODRIGUEZ  BAENA,  Luís.  FERNANDEZ 

AZUELA, Matilde. Fundamentos de programación, McGraw­Hill, 2002. 

CEBALLOS,  Francisco  Javier.  Curso  de  programación  de  Visual  Basic  6, 

primera edición. México : Alfaomega. 2000. 

CEBALLOS,  Francisco  Javier.  Enciclopedia  de  Microsoft  Visual  Basic  6, 

primera edición. México; Alfaomega. 2000. 

CEBALLOS, Francisco Javier. Microsoft Visual C++6 aplicaciones para Win32 , 

segunda edición. México; Alfaomega. 2000. 

CHANSON,  Hubert.  Hidráulica  del  flujo  en  canales  abiertos,  primera  edición. 

Colombia; McGraw­Hill, 2002. 

COHEN, Alan: Estructura, lógica y diseño de programas. Paraninfo, 1986 

CHOW, Ven Te. Hidráulica de Canales Abiertos. McGraw Hill. 2000
FRENCH H, Richard. Hidráulica de canales abiertos, primera edición. México; 

McGraw Hill.  1988. 

HERNANDEZ SAMPIERI, Roberto. FERNANDEZ COLLADO, Carlos. BATISTA 

LUCIO,  Pilar.  Metodología  de  la  investigación,  segunda  edición.  México; 

McGraw Hill. 1998. 

JOYANES  AGUILAR,  Luís.  Basic  avanzado,  segunda  edición.  España; 

McGraw Hill.  1987. 

LARSON  E,  Roland.  HOSTETLER P,  Robert.  EDWAEDS  H,  Bruce.  Cálculo  y 

geometría analítica, quinta edición. México; McGraw Hill. 1998. 

MERRITT  S,  Frederick.  Guía  del  ingeniero  civil,  primera  edición.  México; 

McGraw Hill. 1990. 

NAUDASCHER, Eduard. Hidráulica de canales, segunda reimpresión. México; 

editorial limusa. 

PRESSMMAN ROGER, S. Ingeniería del software. Un enfoque práctico, quinta 

edición. McGraw­Hill, 2002.
SOMMERVILLE,  I.  Ingeniería  de  Software,  sexta  edición.  Addison­Wesley 

Iberoamericana, 2002. 

SWOKOWKI,  Earl  W.  Calculo  con  geometría  analítica,  segunda  edición. 

Iberoamericana, 1989. 

TAMAYO Y TAMAYO, Mario. El proceso de la investigación científica. México: 

Limusa, 1986. p. 41 

UNISALLE, Manual de laboratorio de hidráulica de canales. 2006. 

URRUTIA COBO N. Hidráulica de Canales. Universidad del Valle 

ZILL  G,  Dennis.  Ecuaciones  diferenciales  con  aplicaciones    de  modelado. 

Séptima edición. México: Thomson learning, 2002.
ANEXOS 

ANEXO 1 SOFTWARE OPEN FLOW UNISALLE
ANEXO 2 MANUAL DE USUARIO OPEN FLOW UNISALLE
ANEXO 3 DOCUMENTO ESCRITO DIGITAL
ANEXO 4 CODIGO FUENTE
Ni la Universidad, ni el director temático, ni la asesora metodológica, ni el jurado calificador son responsables 
de las ideas expuestas por los autores.
1.  FLUJO CRÍTICO  3 

1.1  SECCION RECTANGULAR  3 


1.2  SECCION TRAPEZOIDAL  5 
1.3  SECCION TRIANGULAR  8 

2.  FUERZA ESPECÍFICA  11 

2.1  SECCION RECTANGULAR  11 


2.2  SECCION TRAPEZOIDAL  12 
2.3  SECCION TRIANGULAR  14 
2.4  SECCION CIRCULAR  16 

3.  FLUJO UNIFORME  20 

3.1  SECCION RECTANGULAR  20 


3.2  SECCION TRAPEZOIDAL  23 
3.3  SECCION TRIANGULAR  27 

4.  BORDE LIBRE  31 

4.1  BORDE LIBRE  31 

5.  ELEMENTOS GEOMETRICOS  33 

5.1  SECCION RECTANGULAR  33 


5.2  SECCION TRAPEZOIDAL  35 
5.3  SECCION TRIANGULAR  38 
5.4  SECCION CIRCULAR  40 

6.  DISEÑO DE CANALES  44 

6.1  DISEÑO DE CANALES REVESTIDOS  44 


6.1.1  SECCION HIDRAULICA ÓPTIMA  44 
6.2  DISEÑO DE CANALES NO REVESTIDOS  61 
6.2.1  VELOCIDAD MAXIMA PERMISIBLE  61 

7.  LABORATORIOS  85 

7.1  GEOMETRIA DE LA SECCION  85 


7.1.1  INTRODUCCION  85 
7.1.2  ECUACIONES USADAS  124 
7.2  RESALTO HIDRAULICO  125 
7.2.1  INTRODUCCION  125 
7.2.2  REALIZAR CALCULOS  126 
7.2.3  IMAGENES  180 
7.2.4  ECUACIONES USADAS  180 

8.  CRITERIOS DE DISEÑO  182


8.1  TODO SOBRE….  182 

9.  ANIMACIONES  192 

9.1  SECCION RECTANGULAR  192 


9.2  SECCION TRAPEZOIDAL  192 
9.3  SECCION TRIANGULAR  192 
9.4  SECCION CIRCULAR  192 

10.  EJERCICIOS DE APLICACION  194 

10.1  PROFUNDIDADES ALTERNAS  194 


10.2  PROFUNDIDAD CRÍTICA  201 
10.3  RESALTO HIDRAULICO  209 

11.  GLOSARIO  217 

11.1  HIDRAULICA DE CANALES  217 

12.  ACERCA DE…..  231 

12.1  AYUDA  231 


12.1.1  DEL PROGRAMA  231 
12.2  AGRADECIMIENTOS  231 

13.  SALIR  235 

13.1  ESTA SEGURO DE SALIR?  235


1.  FLUJO CRÍTICO 

1.1  SECCION RECTANGULAR 

Private Sub Command1_Click() 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form10.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form10.Show 

Else 

If G = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form10.Show 

Else 

Y = Round((CCur(Q) ^ 2 / (CCur(G) * CCur(B) ^ 2)) ^ (1 / 3), 3) 
A = Round(CCur(B) * CCur(Y), 3) 
V = Round(CCur(Q) / CCur(A), 3) 
E = Round(CCur(Y) + CCur(V) ^ 2 / (2 * CCur(G) * CCur(A) ^ 2), 3) 
Y1 = Y 
A1 = A 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label5.Visible = True 

Y.Visible = True 
Y1.Visible = True 
A.Visible = True 
A1.Visible = True 
V.Visible = True 
E.Visible = True 

End If


End If 
End If 

End Sub 

Private Sub G_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub HJDHSDHJSHDJ_Click() 
End 

End Sub 

Private Sub HJDHSHDSD_Click() 
Form10.PrintForm 

End Sub 

Private Sub IJIFJDIFJID_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub IJIJIJISDSDJD_Click() 
Q = "" 
B = "" 
G = "" 

Y.Visible = False 
Y1.Visible = False 
A.Visible = False 
A1.Visible = False 
V.Visible = False 
E.Visible = False 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label5.Visible = False 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then


If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub SKLKLDKFL_Click() 
Form19.Show 
Unload Me 

End Sub 

1.2  SECCION TRAPEZOIDAL 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Command1_Click() 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form12.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form12.Show 

Else 

If G = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form12.Show 

Else 
If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form12.Show 

Else 

Y = (Q) + (100) 
K = ((Q ^ 2)) / (G) 

FX = ((B * Y) + (Z * Y ^ 2)) ^ 3 ­ (K * B) ­ (2 * Z * K * Y)


FY = 3 * (B * Y + Z * Y ^ 2) ^ 2 * (B + 2 * Y * Z) ­ (2 * Z * K) 
XN = Y ­ (FX / FY) 

For I = 1 To 100 

FX = (B * XN + Z * XN ^ 2) ^ 3 ­ (K * B) ­ (2 * Z * K * XN) 


FY = 3 * (B * XN + Z * XN ^ 2) ^ 2 * (B + 2 * XN * Z) ­ (2 * Z * K) 
XN = XN ­ (FX / FY) 

Next I 

RTA = Round(XN, 3) 
A = Round((B + Z * XN) * XN, 3) 
T = Round(B + 2 * Z * XN, 3) 
V = Round(Q / A, 3) 
E = Round(XN + V ^ 2 / (2 * G * A ^ 2), 3) 
Y2 = RTA 
A2 = A 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label5.Visible = False 
Label10.Visible = False 
Label11.Visible = False 
Label12.Visible = True 

RTA.Visible = True 
A.Visible = True 
V.Visible = True 
E.Visible = True 
Y2.Visible = True 
A2.Visible = True 

End If 
End If 
End If 
End If 

End Sub 

Private Sub G_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0


End If 
End If 
End Sub 

Private Sub JHJHDHJHDD_Click() 
Form12.PrintForm 

End Sub 

Private Sub JKKKLKLK_Click() 
Q = "" 
B = "" 
G = "" 
Z = "" 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label5.Visible = True 
Label10.Visible = True 
Label11.Visible = True 
Label12.Visible = False 

RTA.Visible = False 
A.Visible = False 
V.Visible = False 
E.Visible = False 
Y2.Visible = False 
A2.Visible = False 

End Sub 

Private Sub LSKDLKSLDK_Click() 
End 

End Sub 

Private Sub OKOKOKO_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub


Private Sub SLKDLSKLSK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

1.3  SECCION TRIANGULAR 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form13.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form13.Show 

Else 

If G = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form13.Show 

Else 

Y = Round(Q ^ (2 / 5) * 2 ^ (1 / 5) / (G ^ (1 / 5) * Z ^ (2 / 5)), 3) 
A = Round(Z * Y ^ 2, 3) 
V = Round(Q / A, 3) 
E = Round(Y + (V ^ 2 / (2 * G * A ^ 2)), 3) 
A2 = A 
Y2 = Y 

Image1.Visible = False 
Image2.Visible = True 

Label3.Visible = False 
Label5.Visible = False 
Label10.Visible = True 

Frame8.Visible = True 
Frame9.Visible = True


Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

Y.Visible = True 
A.Visible = True 
A2.Visible = True 
Y2.Visible = True 
V.Visible = True 
E.Visible = True 

End If 
End If 
End If 

End Sub 

Private Sub FDKJKFLDKLFSDK_Click() 
Q = "" 
G = "" 
Z = "" 

Image1.Visible = True 
Image2.Visible = False 

Label3.Visible = True 
Label5.Visible = True 
Label10.Visible = False 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

Y.Visible = False 
A.Visible = False 
A2.Visible = False 
Y2.Visible = False 
V.Visible = False 
E.Visible = False 

End Sub 

Private Sub G_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub JKSJKSJ_Click() 
Form19.Show 
Unload Me


End Sub 

Private Sub KDFJKLDJSFKLJSDKL_Click() 
End 

End Sub 

Private Sub LSÑDKSLDÑSL_Click() 
Form13.PrintForm 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub SKJDKSJDKSJ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

10 
2.  FUERZA ESPECÍFICA 

2.1  SECCION RECTANGULAR 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form2.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form2.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form2.Show 

Else 

RTA = Round(Q ^ 2 / (B * Y * 9.81) + B * Y ^ 2 / 2, 3) 

Frame5.Visible = True 
RTA.Visible = True 

End If 
End If 
End If 

End Sub 

Private Sub GHGFHGHG_Click() 
Q = "" 
B = "" 
Y = "" 
RTA = "" 
Frame5.Visible = False

11 
RTA.Visible = False 

End Sub 

Private Sub LLKLK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub MJKJKJK_Click() 
End 

End Sub 

Private Sub MJKJKKJK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub NMNMNM_Click() 
Form2.PrintForm 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

2.2  SECCION TRAPEZOIDAL 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If

12 
End Sub 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form3.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form3.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form3.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, 
"ERROR DE COMPLETACION" 
Form3.Show 

Else 

RTA = Round(Q ^ 2 / ((2 * Z * Y + B + B) / 2 * Y * 9.81) + 1 / 3 * Y * ((2 * (2 * Z * Y + B) + B) / (2 * 
Z * Y + B + B)) * (2 * Z * Y + B + B) / 2 * Y, 3) 

Frame6.Visible = True 
Frame7.Visible = True 
RTA.Visible = True 

End If 
End If 
End If 
End If 
End Sub 

Private Sub JJHJHJHJ_Click() 
End 

End Sub 

Private Sub JKJKJKJKJ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub JKSJJDSJDSD_Click()

13 
Form19.Show 
Unload Me 

End Sub 

Private Sub KDFNKDJFKJDKF_Click() 
Form3.PrintForm 

End Sub 

Private Sub LKLKKLKL_Click() 
RTA = "" 
Q = "" 
B = "" 
Y = "" 
Z = "" 
Frame6.Visible = False 
RTA.Visible = False 
End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

2.3  SECCION TRIANGULAR 

Private Sub Command1_Click()

14 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form4.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form4.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form4.Show 

Else 

RTA = Round(Q ^ 2 / (Z * Y ^ 2 * 9.81) + 2 * Z * Y ^ 3 / 3, 3) 

Frame7.Visible = True 
Frame6.Visible = True 
RTA.Visible = True 

End If 
End If 
End If 
End Sub 

Private Sub JDKJSDJSK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KKOKOKOK_Click() 
End 

End Sub 

Private Sub MKDJCKDJKF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub MKSKJDKF_Click() 
Form4.PrintForm 
End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep

15 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub SKJDSJD_Click() 
RTA = "" 
Q = "" 
Y = "" 
Z = "" 
Frame7.Visible = False 
Frame6.Visible = False 
RTA.Visible = False 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

2.4  SECCION CIRCULAR 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form5.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form5.Show

16 
Else 

If D = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form5.Show 

Else 
x = (1 ­ (2 * Y / D)) 
PI = 3.14159265358979 

Z = (x + 0.5 * (x ^ 3 / 3) + (3 * x ^ 5 / 40) + (15 * x ^ 7 / 336)) 
Z = (PI / 2) ­ Z 
TE = Z * 2 

If TE > PI Then 

TE = (TE * 180) / PI 
RTA = Round(Q ^ 2 / (1 / 8 * (TE * PI / 180 ­ Sin(TE * (PI / 180))) * D ^ 2 * 9.81) + 1 / 8 * (TE * PI / 
180 ­ Sin(TE * (PI / 180))) * D ^ 2 * (D ­ ((D / 2 ­ D * Sin((360 ­ TE) * (PI / 180) / 2) / (3 * ((360 ­ TE) * 
PI / 180) / 2)) * ((360 ­ TE) * PI / 180 / 2 * D ^ 2 / 4) ­ (D / 2 ­ Cos((360 ­ TE) * (PI / 180) / 2) * D / 2 + 1 
/ 3 * (Cos((360 ­ TE) * (PI / 180) / 2) * D / 2)) * (Sin((360 ­ TE) * (PI / 180) / 2) * D * (Cos((360 ­ TE) * 
(PI / 180) / 2) * D / 2) / 2)) / ((360 ­ TE) * PI / 180 / 2 * D ^ 2 / 4 ­ Sin((360 ­ TE) * (PI / 180) / 2) * D * 
(Cos((360 ­ TE) * (PI / 180) / 2) * D / 2) / 2)), 3) 

Frame6.Visible = True 
Frame7.Visible = True 
RTA.Visible = True 

Else 

TE = (TE * 180) / PI 
RTA = Round((Q) ^ 2 / (1 / 8 * (TE * PI / 180 ­ Sin(TE * (PI / 180))) * (D) ^ 2 * 9.81) + 1 / 8 * (TE * PI / 
180 ­ Sin(TE * (PI / 180))) * (D) ^ 2 * (((D) / 2 ­ (D) * Sin((TE * (PI / 180)) / 2) / (3 * (TE * PI / 180) / 
2)) * (TE * PI / 180 / 2 * (D) ^ 2 / 4) ­ ((D) / 2 ­ Cos((TE * (PI / 180)) / 2) * (D) / 2 + 1 / 3 * (Cos((TE * 
(PI / 180)) / 2) * (D) / 2)) * (Sin((TE * (PI / 180)) / 2) * (D) * (Cos((TE * (PI / 180)) / 2) * (D) / 2) / 2)) / 
(TE * PI / 180 / 2 * (D) ^ 2 / 4 ­ Sin((TE * (PI / 180)) / 2) * (D) * (Cos((TE * (PI / 180)) / 2) * (D) / 2) / 
2), 3) 

Frame6.Visible = True 
Frame7.Visible = True 
RTA.Visible = True 

End If 
End If 
End If 
End If 

End Sub 

Private Sub D_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If

17 
End Sub 

Private Sub DKKOKOKOK_Click() 
End 

End Sub 

Private Sub JIJIJIJIIJIJI_Click() 
Form5.PrintForm 
End Sub 

Private Sub JUIIJJIJIJI_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub MKMKKMKMK_Click() 
Q = "" 
Y = "" 
D = "" 
RTA = "" 

Frame6.Visible = False 
Frame7.Visible = False 
RTA.Visible = False 

End Sub 

Private Sub ÑÑÑLÑLÑL_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer

18 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub

19 
3.  FLUJO UNIFORME 

3.1  SECCION RECTANGULAR 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form6.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form6.Show 

Else 

If S = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form6.Show 

Else 

If N = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form6.Show 

Else 

Y = Q + 10000 
K = ((Q * N) / (S ^ (0.5))) ^ (1.5) 
FX = (B * Y) ^ (2.5) ­ K * (B + 2 * Y) 
FY = 2.5 * B ^ (2.5) * Y ^ (1.5) ­ K ­ 2 * K 
XN = Y ­ (FX / FY) 

If XN = Y Then 
RTA = XN

20 
End If 

For I = 1 To 200 
FX = (B * XN) ^ (2.5) ­ K * (B + 2 * XN) 
FY = 2.5 * B ^ (2.5) * XN ^ (1.5) ­ K ­ 2 * K 
XN = XN ­ (FX / FY) 
Next I 

RTA = Round(XN, 3) 
Y1 = RTA 

P = Round(B + 2 * RTA, 3) 
P1 = P 

A = Round(B * RTA, 3) 
A1 = A 

R = Round(A / P, 3) 
V = Round(Q / A, 3) 

Command1.Visible = False 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 
Frame13.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label11.Visible = True 

RTA.Visible = True 
Y1.Visible = True 

A.Visible = True 
A1.Visible = True 

P.Visible = True 
P1.Visible = True 

R.Visible = True 
V.Visible = True 

End If 
End If 
End If 
End If 

End Sub 

Private Sub Text1_Change() 

End Sub

21 
Private Sub Text1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text2_Change() 

End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 

End Sub 

Private Sub DLSKFLDLFK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KJKJKJKJKD_Click() 
End 

End Sub 

Private Sub KLDFDFKLDFJ_Click() 
Q = "" 
S = "" 
N = "" 
B = "" 

Command1.Visible = True 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 
Frame13.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label11.Visible = False 

RTA.Visible = False 
Y1.Visible = False 

A.Visible = False 
A1.Visible = False 

P.Visible = False 
P1.Visible = False

22 
R.Visible = False 
V.Visible = False 

End Sub 

Private Sub KSMKSJDKJSK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LJDKFLKKL_Click() 
Form6.PrintForm 
End Sub 

Private Sub N_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub S_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

3.2  SECCION TRAPEZOIDAL 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep

23 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form7.Show 

Else 

If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form7.Show 

Else 

If S = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form7.Show 

Else 

If N = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form7.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, 
"ERROR DE COMPLETACION" 
Form7.Show 

Else 

Y = Q + 10000 

K = ((Q * N) / (S ^ (0.5))) ^ (1.5) 

FX = ((B * Y + Z * Y ^ 2) ^ (2.5)) ­ (K * B) ­ (2 * K * Y * (1 + Z ^ 2) ^ (0.5)) 

FY = (2.5 * (B * Y + Z * Y ^ 2) ^ 1.5 * (B + 2 * Z * Y)) ­ 2 * K * (1 + Z ^ 2) ^ 0.5 

XN = Y ­ (FX / FY) 

If XN = Y Then 
RTA = XN 

End If 

For I = 1 To 200

24 
FX = ((B * XN + Z * XN ^ 2) ^ (2.5)) ­ (K * B) ­ (2 * K * XN * (1 + Z ^ 2) ^ (0.5)) 

FY = (2.5 * (B * XN + Z * XN ^ 2) ^ 1.5 * (B + 2 * Z * XN)) ­ 2 * K * (1 + Z ^ 2) ^ 0.5 

XN = XN ­ (FX / FY) 

Next I 

RTA = Round(XN, 3) 
Y1 = RTA 

A = Round((B + Z * RTA) * RTA, 3) 
A1 = A 

P = Round(B + 2 * RTA * (1 + Z ^ 2) ^ (0.5), 3) 
P1 = P 

R = Round(A / P, 3) 
V = Round(Q / A, 3) 

Command1.Visible = False 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 
Frame6.Visible = True 

RTA.Visible = True 
A.Visible = True 
P.Visible = True 
R.Visible = True 
V.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label13.Visible = True 

A1.Visible = True 
Y1.Visible = True 
P1.Visible = True 

End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub JKJKJKJK_Click() 
Form19.Show 
Unload Me 

End Sub

25 
Private Sub KJKJKJKJK_Click() 
Form7.PrintForm 
End Sub 

Private Sub KJKJKJXCCD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub N_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub OKOKOKOKOKD_Click() 
Q = "" 
S = "" 
N = "" 
B = "" 
Z = "" 

Command1.Visible = True 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 
Frame6.Visible = False 

RTA.Visible = False 
A.Visible = False 
P.Visible = False 
R.Visible = False 
V.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label13.Visible = False 

A1.Visible = False 
Y1.Visible = False 
P1.Visible = False 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep

26 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub S_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub SDSDSDSDSD_Click() 
End 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

3.3  SECCION TRIANGULAR 

Private Sub Command1_Click() 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form8.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form8.Show 

Else 

If S = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form.Show 

Else

27 
If N = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form8.Show 

Else 

Y = Q + 10000 

K = ((Q * N) / (S ^ (0.5))) ^ (1.5) 

FX = (Z ^ 2.5 * Y ^ 5) ­ (2 * Y * K * (1 + Z ^ 2) ^ (0.5)) 

FY = 5 * Z ^ 2.5 * Y ^ 4 ­ 2 * K * (1 + Z ^ 2) ^ 0.5 

XN = Y ­ (FX / FY) 

If XN = Y Then 
RTA = XN 

End If 

For I = 1 To 200 

FX = (Z ^ 2.5 * XN ^ 5) ­ (2 * XN * K * (1 + Z ^ 2) ^ (0.5)) 

FY = 5 * Z ^ 2.5 * XN ^ 4 ­ 2 * K * (1 + Z ^ 2) ^ 0.5 

XN = XN ­ (FX / FY) 

Next I 

RTA = Round(XN, 3) 
Y1 = Round(RTA, 2) 

A = Round(Z * RTA ^ 2, 3) 
A1 = Round(A, 2) 

P = Round(2 * RTA * (1 + Z ^ 2) ^ 0.5, 3) 
P1 = Round(P, 2) 

R = Round(A / P, 3) 
V = Round(Q / A, 3) 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 
Frame13.Visible = True 

RTA.Visible = True 
A.Visible = True 
P.Visible = True 
R.Visible = True 
V.Visible = True

28 
Image1.Visible = False 
Image2.Visible = True 

P1.Visible = True 
Y1.Visible = True 
A1.Visible = True 

Label12.Visible = True 

Command1.Visible = False 

End If 
End If 
End If 
End If 

End Sub 

Private Sub JIJIJIIJI_Click() 
Form8.PrintForm 
End Sub 

Private Sub JKJKJKJ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KJKJSKDSD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LKKLKLK_Click() 
End 

End Sub 

Private Sub MKJKJKJK_Click() 
Q = "" 
S = "" 
N = "" 
Z = "" 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 
Frame13.Visible = False 

RTA.Visible = False 
A.Visible = False 
P.Visible = False 
R.Visible = False 
V.Visible = False

29 
Image1.Visible = True 
Image2.Visible = False 

P1.Visible = False 
Y1.Visible = False 
A1.Visible = False 
Label12.Visible = False 
Command1.Visible = True 

End Sub 

Private Sub N_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub S_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub

30 
4.  BORDE LIBRE 

4.1  BORDE LIBRE 

Private Sub Command1_Click() 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form11.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form11.Show 

Else 

RTAC = Round((CCur(Q) * 35.314667 ­ 20) / 2980 + 1.5, 4) 
F = Round((CCur(RTAC) * CCur(Y) * 3.2808) ^ (0.5) * 0.3048, 3) 
YT = Round(CCur(Y) + CCur(F), 3) 
F1 = F 
YT1 = YT 
Y1 = Y 

Frame8.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 
F.Visible = True 
YT.Visible = True 
F1.Visible = True 
YT1.Visible = True 
Y1.Visible = True 
Image1.Visible = True 
Image2.Visible = False 
Label3.Visible = False 

End If 
End If 

End Sub 

Private Sub DLKLDFKLDKF_Click() 
Form11.PrintForm 

End Sub 

Private Sub JKJDLLOL_Click() 
Q = "" 
Y = "" 
Frame8.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 
Image1.Visible = False 
Image2.Visible = True

31 
F1.Visible = False 
YT1.Visible = False 
Y1.Visible = False 
Label3.Visible = True 

End Sub 

Private Sub JKSJKDJSK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LKLKKL_Click() 
End 

End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub SFGGHGHJ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub

32 
5.  ELEMENTOS GEOMETRICOS 

5.1  SECCION RECTANGULAR 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Command1_Click() 
If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form15.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form15.Show 

Else 

A = Round(B * Y, 3) 
A11 = A 
P = Round(B + 2 * Y, 3) 
P1 = P 
R = Round((B * Y) / (B + 2 * Y), 3) 
T = Round(B, 3) 
T1 = T 
D = Round(Y, 3) 
D1 = D 
Z = Round(B * Y ^ 1.5, 3) 

Frame8.Visible = True 
Frame5.Visible = True 
Frame6.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

A.Visible = True 
A11.Visible = True 
P.Visible = True 
P1.Visible = True 
R.Visible = True

33 
T.Visible = True 
T1.Visible = True 
D.Visible = True 
D1.Visible = True 
Z.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label5.Visible = False 
Label3.Visible = False 
Label10.Visible = True 

End If 
End If 
End Sub 

Private Sub GTYTYTYTYT_Click() 
End 

End Sub 

Private Sub JKDFJKDJFKDJ_Click() 
B = "" 
Y = "" 

Frame8.Visible = False 
Frame5.Visible = False 
Frame6.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

A.Visible = False 
A11.Visible = False 
P.Visible = False 
P1.Visible = False 
R.Visible = False 
T.Visible = False 
T1.Visible = False 
D.Visible = False 
D1.Visible = False 
Z.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label5.Visible = True 
Label3.Visible = True 
Label10.Visible = False 

End Sub 

Private Sub LKFLDKFLDKLF_Click() 
Form19.Show 
Unload Me 

End Sub

34 
Private Sub LSDKDFLDÑKFLDK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub XKFJDKLFJKLSDJFKL_Click() 
Form15.PrintForm 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

5.2  SECCION TRAPEZOIDAL 

Private Sub B_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Command1_Click() 
If B = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form16.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form16.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form16.Show 

Else

35 
A = Round((B + Z * Y) * Y, 3) 
A3 = A 
P = Round(B + 2 * Y * Sqr(1 + Z ^ 2) * B + 2 * Y, 3) 
P2 = P 
R = Round((B + Z * Y) * Y / (B + 2 * Y * ((1 + Z ^ 2) ^ (0.5))), 3) 
T = Round(B + (2 * Z * Y), 3) 
T2 = Round(T, 3) 
D = Round(((B + Z * Y) * Y) / (B + 2 * Z * Y), 3) 
D2 = D 
Z1 = Round(((B + Z * Y) * Y) ^ 1.5 / (B + (2 * Z * Y)) ^ (0.5), 3) 
Z2 = Z1 

Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 
Frame5.Visible = True 
Frame6.Visible = True 

A.Visible = True 
A3.Visible = True 
P.Visible = True 
P2.Visible = True 
R.Visible = True 
T.Visible = True 
T2.Visible = True 
D.Visible = True 
D2.Visible = True 
Z1.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label3.Visible = False 
Label10.Visible = False 
Label13.Visible = False 
Label5.Visible = False 
Label14.Visible = True 

End If 
End If 
End If 

End Sub 

Private Sub JKJSUYYYY_Click() 
End 

End Sub 

Private Sub KDJFDJKFJDK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KLDKDFKSDFKDLF_Click()

36 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KSJSKKSKSKSKSSSS_Click() 
B = "" 
Y = "" 
Z = "" 

Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 
Frame5.Visible = False 
Frame6.Visible = False 

A.Visible = False 
A3.Visible = False 
P.Visible = False 
P2.Visible = False 
R.Visible = False 
T.Visible = False 
T2.Visible = False 
D.Visible = False 
D2.Visible = False 
Z1.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label3.Visible = True 
Label10.Visible = True 
Label13.Visible = True 
Label5.Visible = True 
Label14.Visible = False 

End Sub 

Private Sub KSKSDKSDSD_Click() 
Form16.PrintForm 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then

37 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

5.3  SECCION TRIANGULAR 

Private Sub Command1_Click() 
If K = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form17.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form17.Show 

Else 

A = Round(K * Y ^ 2, 3) 
A3 = A 
P = Round(2 * Y * (1 + K ^ 2) ^ (0.5), 3) 
P2 = P 
R = Round((K * Y) / (2 * (1 + K ^ 2) ^ (0.5)), 3) 
T = Round(2 * K * Y, 3) 
T2 = T 
D = Round((1 / 2) * (Y), 3) 
Z = Round(((2) ^ (0.5) / 2) * (K * Y ^ 2.5), 3) 

Label3.Visible = False 
Label5.Visible = False 
Label10.Visible = False 

Label15.Visible = True 

Frame5.Visible = True 
Frame6.Visible = True 
Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

A.Visible = True 
A3.Visible = True 
P.Visible = True 
P2.Visible = True 
R.Visible = True 
T.Visible = True 
T2.Visible = True 
D.Visible = True

38 
Z.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

End If 
End If 

End Sub 

Private Sub JKSJDSJDJSJKSJD_Click() 

K = "" 
Y = "" 

Label3.Visible = True 
Label5.Visible = True 
Label10.Visible = True 

Label15.Visible = False 

Frame5.Visible = False 
Frame6.Visible = False 
Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

A.Visible = False 
A3.Visible = False 
P.Visible = False 
P2.Visible = False 
R.Visible = False 
T.Visible = False 
T2.Visible = False 
D.Visible = False 
Z.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

End Sub 

Private Sub JSKLJDSJDKSJDS_Click() 
Form17.PrintForm 

End Sub 

Private Sub K_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If

39 
End Sub 

Private Sub KJKCDJKJKDJK_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KSKDJSJDJDJJJJJ_Click() 
End 

End Sub 

Private Sub LKKLKLKLKLK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

5.4  SECCION CIRCULAR 

Private Sub Command1_Click() 
If D = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form18.Show 

Else 

If Y = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form18.Show 

Else 

If Y > D Then 
MsgBox "EL (Y) DEBE SER MENOR QUE EL DIAMETRO", 16, 
"ERROR DE COMPLETACION" 
Form18.Show 

Else

40 
If Y = D Then 
MsgBox "EL (Y) DEBE SER MENOR QUE EL DIAMETRO", 16, 
"ERROR DE COMPLETACION" 
Form18.Show 

Else 
x = 1 ­ ((2 * Y) / D) 
PI = 3.14159265359 
TE = Atn(x / ((1 ­ x ^ 2) ^ 0.5)) 
TE = (PI / 2) ­ TE 
TE = 2 * TE 

A = Round((1 / 8) * (TE ­ Sin(TE)) * D ^ 2, 3) 
A1 = A 
P = Round((1 / 2) * TE * D, 3) 
P2 = P 
R = Round((1 / 4) * (1 ­ (Sin(TE) / TE)) * (D), 3) 
T = Round(2 * (Y * (D ­ Y)) ^ (0.5), 3) 
T1 = T 
D1 = Round(A / T, 3) 
Z = Round(A * (D1) ^ 0.5, 3) 

Frame5.Visible = True 
Frame6.Visible = True 
Frame8.Visible = True 
Frame9.Visible = True 
Frame10.Visible = True 
Frame11.Visible = True 
Frame12.Visible = True 

A.Visible = True 
A1.Visible = True 
P.Visible = True 
P2.Visible = True 
R.Visible = True 
T.Visible = True 
T1.Visible = True 
D1.Visible = True 
Z.Visible = True 

Image1.Visible = False 
Image2.Visible = True 

Label3.Visible = False 
Label5.Visible = False 
Label13.Visible = True 

End If 
End If 
End If 
End If 

End Sub 

Private Sub D_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then

41 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub HHHFFFF_Click() 
End 

End Sub 

Private Sub KSLKDSKLDK_Click() 
D = "" 
Y = "" 

Frame5.Visible = False 
Frame6.Visible = False 
Frame8.Visible = False 
Frame9.Visible = False 
Frame10.Visible = False 
Frame11.Visible = False 
Frame12.Visible = False 

A.Visible = False 
A1.Visible = False 
P.Visible = False 
P2.Visible = False 
R.Visible = False 
T.Visible = False 
T1.Visible = False 
D1.Visible = False 
Z.Visible = False 

Image1.Visible = True 
Image2.Visible = False 

Label3.Visible = True 
Label5.Visible = True 
Label13.Visible = False 

End Sub 

Private Sub LKLKBNBBBB_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LLSLDSLSSSS_Click() 
Form18.PrintForm 

End Sub 

Private Sub Y_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep

42 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub YHHHHHH_Click() 
Form19.Show 
Unload Me 

End Sub

43 
6.  DISEÑO DE CANALES 

6.1  DISEÑO DE CANALES REVESTIDOS 

6.1.1  SECCION HIDRAULICA ÓPTIMA 

FORMULARIO NUMERO 1. 

Private Sub Command1_Click() 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

If V = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

If L = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

If E = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

A = Round((Q / V), 3) 
Form21.A = Round((Q / V), 3) 

Y = Round((A / (­Z + 2 * (1 + Z ^ 2) ^ 0.5)) ^ 0.5, 3)

44 
Form21.Y = Round((A / (­Z + 2 * (1 + Z ^ 2) ^ 0.5)) ^ 0.5, 3) 

B = Round((A / Y) ­ (Z * Y), 3) 
Form21.B = Round((A / Y) ­ (Z * Y), 3) 

BPP = Round(B + 2 * E * Tan((Atn(1 / Z)) / 2), 3) 
Form21.BPP = Round(B + 2 * E * Tan((Atn(1 / Z)) / 2), 3) 

BP = Round((CCur(BPP) + CCur(B)) / 2, 3) 
Form21.BP = Round((CCur(BPP) + CCur(B)) / 2, 3) 

RTAC = Round((CCur(Q) * 35.314667 ­ 20) / 2980 + 1.5, 3) 
F = Round((CCur(RTAC) * CCur(Y) * 3.2808) ^ (0.5) * 0.3048, 3) 
Form21.F = Round((CCur(RTAC) * CCur(Y) * 3.2808) ^ (0.5) * 0.3048, 3) 

LRE = Round(F ­ 0.3048, 3) 
Form21.LRE = Round(F ­ 0.3048, 3) 

VEX = Round((CCur(BPP) + CCur(Z) * (CCur(E) + CCur(Y) + CCur(F))) * ((CCur(E) + CCur(Y) + 
CCur(F))), 3) 
Form21.VEX = Round((CCur(BPP) + CCur(Z) * (CCur(E) + CCur(Y) + CCur(F))) * ((CCur(E) + 
CCur(Y) + CCur(F))), 3) 

VRE = Round((CCur(BP) + 2 * ((E / 2) + Y + CCur(LRE)) * Sqr(1 + Z ^ 2)) * E * L, 3) 
Form21.VRE = Round((CCur(BP) + 2 * ((E / 2) + Y + CCur(LRE)) * Sqr(1 + Z ^ 2)) * E * L, 3) 

Form21.Label12 = Round(L, 3) 
Form21.Label12.Visible = True 

Form21.Label7 = Round(B, 3) 
Form21.Label7.Visible = True 

Form21.Label11 = Round(F, 3) 
Form21.Label11.Visible = True 

Form21.Label14 = Round(LRE, 3) 
Form21.Label14.Visible = True 

Form21.Label19 = Round(Y, 3) 
Form21.Label19.Visible = True 

Form21.Label17 = Round(E, 3) 
Form21.Label17.Visible = True 

Form21.Label15 = Round(BP, 3) 
Form21.Label15.Visible = True 

Form21.Label16 = Round(BPP, 3) 
Form21.Label16.Visible = True 

Form21.Label13 = Round((CCur(Y) + CCur(F) + CCur(E)), 3) 
Form21.Label13.Visible = True 

Form21.Label18 = Round((E / 2), 3) 
Form21.Label18.Visible = True 

Form23.L = Form20.L

45 
Form21.Show 
Unload Me 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub DFSDFSDFEEE_Click() 
End 

End Sub 

Private Sub DLKFLKFKSDL_Click() 

Q = "" 
V = "" 
L = "" 

E.Visible = False 
Z.Visible = False 

End Sub 

Private Sub E_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub FDSDFSDFDSFSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLSDKFDLSKFLÑDS_Click() 
Form20.PrintForm 

End Sub 

Private Sub L_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

46 
Private Sub Label13_Click() 
Form21.Show 

End Sub 

Private Sub LDKSLFKLÑSKFÑSDL_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Option1_Click() 
If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 

Else 

E = "" 
E.Visible = True 
End If 

End Sub 

Private Sub Option10_Click() 

If Option10 = True Then 

Z = 3 
End If 
Z.Visible = True 
End Sub 

Private Sub Option11_Click() 
Z = "" 
Z.Visible = True 
End Sub 

Private Sub Option2_Click() 

If Option2 = True Then 

Z = 0.25 
End If 
Z.Visible = True 

End Sub 

Private Sub Option3_Click() 
If Option3 = True Then 

Z = 0.5 
End If 
Z.Visible = True 
End Sub 

Private Sub Option4_Click()

47 
If Option4 = True Then 
Z = 0.5 
End If 
Z.Visible = True 
End Sub 

Private Sub Option5_Click() 
If Option5 = True Then 

Z = 1 
End If 
Z.Visible = True 
End Sub 

Private Sub Option6_Click() 
If Option6 = True Then 

Z = 1 
End If 
Z.Visible = True 
End Sub 

Private Sub Option7_Click() 
If Option7 = True Then 

Z = 1.5 
End If 
Z.Visible = True 
End Sub 

Private Sub Option8_Click() 
If Option8 = True Then 

Z = 2 
End If 
Z.Visible = True 
End Sub 

Private Sub Option9_Click() 

If Option9 = True Then 

Z = 3 
End If 
Z.Visible = True 
End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REFORZADO_Click() 
If Q = "" Then

48 
MsgBox "FALTA CAUDAL (Q) POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 
Else 

If REFORZADO = True Then 

If Q >= 0 And Q <= 14.2 Then 
E = 0.089 
End If 

If Q > 14.2 And Q <= 56.7 Then 
E = 0.102 
End If 

If Q > 56.7 Then 
E = 0.114 
End If 

E.Visible = True 
End If 
End If 

End Sub 

Private Sub SIMPLE_Click() 
If Q = "" Then 
MsgBox "FALTA CAUDAL (Q) POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form20.Show 
Else 

If SIMPLE = True Then 

If Q >= 0 And Q <= 5.7 Then 
E = 0.051 
End If 

If Q > 5.7 And Q <= 14.2 Then 
E = 0.064 
End If 

If Q > 14.2 And Q <= 42.6 Then 
E = 0.076 
End If 

If Q > 42.6 And Q <= 99.3 Then 
E = 0.089 
End If 

If Q > 99.3 Then 
E = 0.102 
End If 

E.Visible = True 
End If 
End If

49 
End Sub 

Private Sub V_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

FORMULARIO NÚMERO 2 

Private Sub Command1_Click() 
Form23.Command4.Visible = False 

Form23.VEX = VEX 
Form23.VRE = VRE 

Form24.Frame27.Visible = False 
Form24.Image2.Visible = False 

Form23.Show 
Unload Me 

End Sub 

Private Sub Command2_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 3 

Private Sub CAP1_Click() 

EXP3.Visible = False 
TEX3.Visible = False 
REN3.Visible = False 
TEX2.Visible = False 
REN2.Visible = False

50 
EXP2.Visible = False 
EXC2.Visible = False 
EXC3.Visible = False 

If CAP1 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
EXP1.Visible = True 
EXC1.Visible = True 

End If 

End Sub 

Private Sub CAP2_Click() 

TEX1.Visible = False 
REN1.Visible = False 
TEX3.Visible = False 
REN3.Visible = False 
EXP3.Visible = False 
EXP1.Visible = False 
EXC1.Visible = False 
EXC3.Visible = False 

If CAP2 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
TEX2.Visible = True 
REN2.Visible = True 
EXP1.Visible = True 
EXP2.Visible = True 
EXC1.Visible = True 
EXC2.Visible = True 

End If 

End Sub 

Private Sub CAP3_Click() 

If CAP3 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
TEX2.Visible = True 
REN2.Visible = True 
TEX3.Visible = True 
REN3.Visible = True 
EXP1.Visible = True 
EXP2.Visible = True 
EXP3.Visible = True

51 
EXC1.Visible = True 
EXC2.Visible = True 
EXC3.Visible = True 

End If 

End Sub 

Private Sub Command1_Click() 
End 
Unload Me 

End Sub 

Private Sub Command2_Click() 
'Form21.Show 
'Unload Me 

End Sub 

Private Sub Command3_Click() 

If COSEX = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSTRANS = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If VOLVIA = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSREV = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If CAP1 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 

Form24.COS1EXC = Round(CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)), 3) 

Form24.COSTOEXC = Round(CCur(Form24.COS1EXC), 3)

52 
UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = Round(CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) 
* CCur((EXC1 / 100)), 3) 

Form24.COSTOTRA = Round(CCur(Form24.COS1TRA), 3) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1), 3) 

Form24.COSREVT = Round(CCur(VRE) * CCur(COSREV), 3) 

Form24.TOTAL = Round(CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT), 3) 

End If 

If CAP2 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2), 3) 

Form24.COSREVT = CCur(VRE) * CCur(COSREV) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT) 

End If 

If CAP3 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 
UNI3 = (CCur(COSEX) / CCur(REN3)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100))

53 
Form24.COS3EXC = CCur(VEX) * CCur(UNI3) * CCur(L) * CCur((EXC3 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) + 
CCur(Form24.COS3EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 
Form24.COS3TRA = CCur(VEX) * (1 + CCur((EXP3 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC3 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) + 
CCur(Form24.COS3TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 
Form24.VIA3 = Round(VEX * L * (EXC3 / 100) * (1 + (EXP3 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2) + CCur(Form24.VIA3), 3) 

Form24.COSREVT = CCur(VRE) * CCur(COSREV) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT) 

End If 

If CAP1 = True Then 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP2 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True

54 
End If 

If CAP3 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

Form24.Frame10.Visible = True 
Form24.Frame2.Visible = True 
Form24.Frame9.Visible = True 
Form24.COS3EXC.Visible = True 
Form24.COS3TRA.Visible = True 
Form24.VIA3.Visible = True 

End If 

Form24.Show 
Unload Me 
End If 
End If 
End If 
End If 

End Sub 

Private Sub Command4_Click() 
If COSEX = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSTRANS = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If VOLVIA = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else

55 
If CAP1 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 

Form24.COS1EXC = Round(CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)), 3) 

Form24.COSTOEXC = Round(CCur(Form24.COS1EXC), 3) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = Round(CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) 
* CCur((EXC1 / 100)), 3) 

Form24.COSTOTRA = Round(CCur(Form24.COS1TRA), 3) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1), 3) 

Form24.TOTAL = Round(CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA), 3) 

End If 

If CAP2 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2), 3) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) 

End If 

If CAP3 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1))

56 
UNI2 = (CCur(COSEX) / CCur(REN2)) 
UNI3 = (CCur(COSEX) / CCur(REN3)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 
Form24.COS3EXC = CCur(VEX) * CCur(UNI3) * CCur(L) * CCur((EXC3 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) + 
CCur(Form24.COS3EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 
Form24.COS3TRA = CCur(VEX) * (1 + CCur((EXP3 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC3 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) + 
CCur(Form24.COS3TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 
Form24.VIA3 = Round(VEX * L * (EXC3 / 100) * (1 + (EXP3 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2) + CCur(Form24.VIA3), 3) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) 

End If 

If CAP1 = True Then 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP2 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True

57 
End If 

If CAP3 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

Form24.Frame10.Visible = True 
Form24.Frame2.Visible = True 
Form24.Frame9.Visible = True 
Form24.COS3EXC.Visible = True 
Form24.COS3TRA.Visible = True 
Form24.VIA3.Visible = True 

End If 

Form24.Show 
Unload Me 

End If 
End If 
End If 

End Sub 

Private Sub COSEX_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub COSREV_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

58 
Private Sub COSTRANS_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXP1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXP2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

59 
Private Sub EXP3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub VOLVIA_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

FORMULARIO NUMERO 4 

Private Sub Command1_Click() 
MDIForm1.Show 
Unload Me 

End Sub

60 
Private Sub Command2_Click() 

COSTOEXC = CCur(COS1EXC) + CCur(COS2EXC) 
COSTOTRA = CCur(COS1TRA) + CCur(COS2TRA) 

End Sub 

Private Sub Image1_Click() 
Form25.Show 
Unload Me 

End Sub 

Private Sub Image2_Click() 
Form28.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 5 

Private Sub Command1_Click() 

End Sub 

Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub 

6.2  DISEÑO DE CANALES NO REVESTIDOS 

6.2.1  VELOCIDAD MAXIMA PERMISIBLE 

FORMULARIO NUMERO 1 

Private Sub Comborugosidad_Click() 
Set base = OpenDatabase("C:\Archivos de programa\DISCAN\CRAK\manning.mdb") 
Set tabla = base.OpenRecordset("select * from manning where [Tipo de Canal y descripcion]='" & 
Comborugosidad.Text & "'") 
rugosidad = tabla("Valor del coeficiente de Rugosidad n") 
TEXTRUGOSIDAD.Text = rugosidad 

End Sub

61 
Private Sub Comborugosidad_DropDown() 
Set base = OpenDatabase("C:\Archivos de programa\DISCAN\CRAK\manning.mdb") 
Set tabla = base.OpenRecordset("manning") 
Comborugosidad.Clear 
For B = 1 To tabla.RecordCount 
Comborugosidad.AddItem tabla("Tipo de Canal y descripcion") 
tabla.MoveNext 
Next B 

End Sub 

Private Sub Command1_Click() 
If TEXTRUGOSIDAD = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

If Q = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

If S = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

If L = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

If Z = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

If V = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form26.Show 

Else 

Form27.R = Round(((V * CCur(TEXTRUGOSIDAD)) / S ^ 0.5) ^ (1.5), 5)

62 
Form27.A = Round(Q / V, 5) 

Form27.P = Round(Form27.A / Form27.R, 5) 

P = CCur(Form27.P) 
A = CCur(Form27.A) 

Form27.Y1 = Round(0.5 * (Sqr(­2 * (A * Sqr(Z ^ 2 + 1) ­ 0.5 * (A * Z + 0.25 * P ^ 2))) + 0.5 * P) / 


(Sqr(Z ^ 2 + 1) ­ 0.5 * Z), 3) 

Form27.Y2 = Round(­0.5 * (Sqr(­2 * (A * Sqr(Z ^ 2 + 1) ­ 0.5 * (A * Z + 0.25 * P ^ 2))) ­ 0.5 * P) / 


(Sqr(Z ^ 2 + 1) ­ 0.5 * Z), 3) 

If Form27.Y1 < 0 Then 
MsgBox "PROFUNDIDAD Y1 NEGATIVA, HAY UNA SOLA OPCION PARA LA 
PROFUNDIDAD", 16, "ERROR DE COMPLETACION" 
Form26.Show 

Form27.Y1 = Form27.Y2 
Else 
If Form27.Y2 < 0 Then 
MsgBox "PROFUNDIDAD Y2 NEGATIVA, HAY UNA SOLA OPCION PARA LA 
PROFUNDIDAD", 16, "ERROR DE COMPLETACION" 
Form26.Show 

Form27.Y2 = Form27.Y1 
End If 
End If 

If Form27.Y1 > 0 Then 
Form27.FR1 = CCur(Round(CCur(V) / ((9.81 * CCur(Form27.Y1)) ^ 0.5), 4)) 
End If 

If Form27.Y2 > 0 Then 
Form27.FR2 = CCur(Round(CCur(V) / ((9.81 * CCur(Form27.Y2)) ^ 0.5), 4)) 
End If 

If Form27.FR1 > 1 Then 
Form27.FRO1 = "SUPER CRITICO" 

End If 

If Form27.FR1 < 1 Then 
Form27.FRO1 = "SUB CRITICO" 

End If 

If Form27.FR1 = 1 Then 
Form27.FRO1 = "CRITICO" 

End If 

If Form27.FR2 > 1 Then 
Form27.FRO2 = "SUPER CRITICO" 

End If

63 
If Form27.FR2 < 1 Then 
Form27.FRO2 = "SUB CRITICO" 

End If 

If Form27.FR2 = 1 Then 
Form27.FRO2 = "CRITICO" 

End If 

Form27.Show 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub Command2_Click() 
R = Round(((V * TEXTRUGOSIDAD) / S ^ 0.5) ^ 1.5, 5) 

A = Round(Q / V, 5) 

P = Round(A / R, 5) 

End Sub 

Private Sub DDDDDDDD_Click() 
V = "" 
Q = "" 
S = "" 
L = "" 
Z = "" 
TEXTRUGOSIDAD = "" 

End Sub 

Private Sub GHJGHJGHJGHJ_Click() 
Form26.PrintForm 
End Sub 

Private Sub KLCVMBKBKGKL_Click() 
End 

End Sub 

Private Sub KLDKLFKSDFKSDÑL_Click() 
Form19.Show 
Unload Me 

End Sub

64 
Private Sub KLJFKJFDKLGF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Option1_Click() 
V = "" 
V1 = "" 

End Sub 

Private Sub Label13_Click() 

End Sub 

Private Sub L_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Option10_Click() 
If Option10 = True Then 

Z = 3 
End If 
Z.Visible = True 

End Sub 

Private Sub Option11_Click() 

Z = "" 
Z.Visible = True 

End Sub 

Private Sub Option12_Click() 

If Option12 = True Then 

V1 = "0.02 ­ 0.533" 
End If 
End Sub 

Private Sub Option13_Click() 

If Option13 = True Then 

V1 = "0.02 ­ 0.610" 
End If

65 
End Sub 

Private Sub Option14_Click() 

If Option14 = True Then 

V1 = "0.02 ­ 0.457" 
End If 
End Sub 

Private Sub Option15_Click() 
If Option15 = True Then 

V1 = "0.02 ­ 0.762" 
End If 
End Sub 

Private Sub Option16_Click() 

If Option16 = True Then 

V1 = "0.025 ­ 1.140" 
End If 
End Sub 

Private Sub Option17_Click() 

If Option17 = True Then 

V1 = "0.02 ­ 0.762" 
End If 

End Sub 

Private Sub Option18_Click() 

If Option18 = True Then 

V1 = "0.03 ­ 1.140" 
End If 
End Sub 

Private Sub Option19_Click() 

If Option19 = True Then 

V1 = "0.02 ­ 0.533" 
End If 

End Sub 

Private Sub Option2_Click() 

If Option2 = True Then 

Z = 0.25 
End If 
Z.Visible = True

66 
End Sub 

Private Sub Option20_Click() 

If Option20 = True Then 

V1 = "0.035 ­ 1.22" 
End If 

End Sub 

Private Sub Option21_Click() 

If Option21 = True Then 

V1 = "0.02 ­ 0.610" 
End If 

End Sub 

Private Sub Option26_Click() 

If Option26 = True Then 

V1 = "0.035 ­ 1.22" 
End If 

End Sub 

Private Sub Option28_Click() 

If Option28 = True Then 

V1 = " 0.02 ­ 0.457 " 
End If 

End Sub 

Private Sub Option29_Click() 

If Option29 = True Then 

VI = "0.025 ­ 1.22" 
End If 

End Sub 

Private Sub Option3_Click() 
If Option3 = True Then 

Z = 0.5 
End If 
Z.Visible = True 

End Sub 

Private Sub Option30_Click() 
If Option30 = True Then

67 
V1 = "0.02 ­ 0.610" 
End If 
End Sub 

Private Sub Option31_Click() 
If Option31 = True Then 

V1 = "0.02 ­ 0.533" 
End If 
End Sub 

Private Sub Option32_Click() 
If Option32 = True Then 

V1 = "0.02 ­ 0.610" 
End If 

End Sub 

Private Sub Option33_Click() 
If Option33 = True Then 

V1 = "0.02 ­ 0.762" 
End If 
End Sub 

Private Sub Option34_Click() 
If Option34 = True Then 

V1 = "0.025 ­ 1.22" 
End If 
End Sub 

Private Sub Option35_Click() 
If Option35 = True Then 

V1 = "0.025 ­ 1.140" 
End If 
End Sub 

Private Sub Option36_Click() 
If Option36 = True Then 

V1 = "0.02 ­ 0.762" 
End If 
End Sub 

Private Sub Option37_Click() 
If Option37 = True Then 

V1 = "0.030 ­ 1.140" 
End If 
End Sub 

Private Sub Option38_Click() 
If Option38 = True Then 

V1 = "0.035 ­ 1.22" 
End If

68 
End Sub 

Private Sub Option4_Click() 
If Option4 = True Then 
Z = 0.5 
End If 
Z.Visible = True 
End Sub 

Private Sub Option40_Click() 
V = "" 
V1 = "" 

End Sub 

Private Sub Option5_Click() 
If Option5 = True Then 

Z = 1 
End If 
Z.Visible = True 

End Sub 

Private Sub Option6_Click() 
If Option6 = True Then 

Z = 1 
End If 
Z.Visible = True 

End Sub 

Private Sub Option7_Click() 
If Option7 = True Then 

Z = 1.5 
End If 
Z.Visible = True 

End Sub 

Private Sub Option8_Click() 
If Option8 = True Then 

Z = 2 
End If 
Z.Visible = True 
End Sub 

Private Sub Option9_Click() 
If Option9 = True Then 

Z = 3 
End If 
Z.Visible = True 
End Sub 

Private Sub Q_KeyPress(KeyAscii As Integer)

69 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub S_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub TEXTRUGOSIDAD_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub V_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Z_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub

70 
FORMULARIO NUMERO 2 

Private Sub Command1_Click() 
Form23.Show 
Form23.Frame13.Visible = False 
Form23.Frame15.Visible = False 
Form23.COSREV.Visible = False 
Form23.Command3.Visible = False 
Form23.VEX = (u / Form26.L) 
Form23.L = Form26.L 

Form24.Frame21.Visible = False 
Form24.Frame22.Visible = False 
Form24.COSREVT.Visible = False 

Form24.Frame26.Visible = False 
Form24.Image1.Visible = False 

Unload Me 

End Sub 

Private Sub Command2_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub FFGFGFGF_Click() 
End 

End Sub 

Private Sub KLDKLJKLJFJGKFD_Click() 
Form27.PrintForm 

End Sub 

Private Sub LLKFLÑKGF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LÑDKDLFKLDS_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Option1_Click() 
If Option1 = True Then 

R = Round(((Form26.V * Form26.TEXTRUGOSIDAD) / Form26.S ^ 0.5) ^ 1.5, 
3) 

A = Round(Form26.Q / Form26.V, 3)

71 
P = Round(A / R, 3) 

B = Round((A / Y1) ­ (2 * Y1), 3) 

If B < 0 Then 
MsgBox "EL CANAL NO PUEDE SER TRAPEZOIDAL, 
SERA UN CANAL TRIANGULAR DE TALUD (z) Y PROFUNDIDAD DE FLUJO (y1)", 16, 
"AYUDA DE DISEÑO" 
Form27.Show 
End If 

Frame12.Visible = False 
Y2.Visible = False 
FRO2.Visible = False 
Frame11.Visible = False 
FR2.Visible = False 

Frame4.Visible = True 
B.Visible = True 

P.Visible = True 
Frame9.Visible = True 

A.Visible = True 
Frame2.Visible = True 

R.Visible = True 
Frame5.Visible = True 

Frame3.Visible = True 
Y1.Visible = True 
FRO1.Visible = True 
Frame10.Visible = True 
FR1.Visible = True 

D = Round(((B + Form26.Z * Y1) * Y1) / (B + 2 * Form26.Z * Y1), 3) 
D.Visible = True 
Frame14.Visible = True 

c = (Form26.Q * 35.314667 ­ 20) / 2980 + 1.5 
F = Round((c * Y1 * 3.2808) ^ (0.5) * 0.3048, 3) 
F.Visible = True 
Frame6.Visible = True 

T = Round(B + (2 * Form26.Z * Y1), 3) 
Frame8.Visible = True 
T.Visible = True 

Frame7.Visible = True 
m = CCur(Form26.Z) 
u = Round((CCur(B) + 2 * CCur(m) * (CCur(Y1) + CCur(F)) + CCur(B)) / 2 * 
(CCur(Y1) + CCur(F)) * CCur(Form26.L), 3) 

End If 

End Sub 

Private Sub Option2_Click()

72 
If Option2 = True Then 

R = Round(((Form26.V * Form26.TEXTRUGOSIDAD) / Form26.S ^ 0.5) ^ 1.5, 
3) 

A = Round(Form26.Q / Form26.V, 3) 

P = Round(A / R, 3) 

B = Round((A / Y2) ­ (2 * Y2), 3) 

If B < 0 Then 
MsgBox "EL CANAL NO PUEDE SER TRAPEZOIDAL, SERA UN 
CANAL TRIANGULAR DE TALUD (z) Y PROFUNDIDAD DE FLUJO (y2)", 16, "AYUDA DE 
DISEÑO" 
Form27.Show 
End If 

Frame3.Visible = False 
Y1.Visible = False 
FRO1.Visible = False 
Frame10.Visible = False 
FR1.Visible = False 

Frame12.Visible = True 
Y2.Visible = True 
FRO2.Visible = True 
Frame11.Visible = True 
FR2.Visible = True 

R.Visible = True 
Frame5.Visible = True 

Frame4.Visible = True 
B.Visible = True 

P.Visible = True 
Frame9.Visible = True 

A.Visible = True 
Frame2.Visible = True 

D = Round(((B + Form26.Z * Y2) * Y2) / (B + 2 * Form26.Z * Y2), 3) 
D.Visible = True 
Frame14.Visible = True 

c = (Form26.Q * 35.314667 ­ 20) / 2980 + 1.5 
F = Round((c * Y2 * 3.2808) ^ (0.5) * 0.3048, 3) 
F.Visible = True 
Frame6.Visible = True 

T = Round(B + (2 * Form26.Z * Y2), 3) 
Frame8.Visible = True 
T.Visible = True 

Frame7.Visible = True 
m = CCur(Form26.Z)

73 
u = Round((CCur(B) + 2 * CCur(m) * (CCur(Y2) + CCur(F)) + CCur(B)) / 2 * 
(CCur(Y2) + CCur(F)) * CCur(Form26.L), 3) 

End If 

End Sub 

Private Sub Option3_Click() 
Form26.Show 

End Sub 

FORMULARIO NUMERO 3 

Private Sub CAP1_Click() 

EXP3.Visible = False 
TEX3.Visible = False 
REN3.Visible = False 
TEX2.Visible = False 
REN2.Visible = False 
EXP2.Visible = False 
EXC2.Visible = False 
EXC3.Visible = False 

If CAP1 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
EXP1.Visible = True 
EXC1.Visible = True 

End If 

End Sub 

Private Sub CAP2_Click() 

TEX1.Visible = False 
REN1.Visible = False 
TEX3.Visible = False 
REN3.Visible = False 
EXP3.Visible = False 
EXP1.Visible = False 
EXC1.Visible = False 
EXC3.Visible = False 

If CAP2 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
TEX2.Visible = True

74 
REN2.Visible = True 
EXP1.Visible = True 
EXP2.Visible = True 
EXC1.Visible = True 
EXC2.Visible = True 

End If 

End Sub 

Private Sub CAP3_Click() 

If CAP3 = True Then 

TEX1.Visible = True 
REN1.Visible = True 
TEX2.Visible = True 
REN2.Visible = True 
TEX3.Visible = True 
REN3.Visible = True 
EXP1.Visible = True 
EXP2.Visible = True 
EXP3.Visible = True 
EXC1.Visible = True 
EXC2.Visible = True 
EXC3.Visible = True 

End If 

End Sub 

Private Sub Command1_Click() 
End 
Unload Me 

End Sub 

Private Sub Command2_Click() 
'Form21.Show 
'Unload Me 

End Sub 

Private Sub Command3_Click() 

If COSEX = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSTRANS = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else

75 
If VOLVIA = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSREV = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If CAP1 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 

Form24.COS1EXC = Round(CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)), 3) 

Form24.COSTOEXC = Round(CCur(Form24.COS1EXC), 3) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = Round(CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) 
* CCur((EXC1 / 100)), 3) 

Form24.COSTOTRA = Round(CCur(Form24.COS1TRA), 3) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1), 3) 

Form24.COSREVT = Round(CCur(VRE) * CCur(COSREV), 3) 

Form24.TOTAL = Round(CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT), 3) 

End If 

If CAP2 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100))

76 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2), 3) 

Form24.COSREVT = CCur(VRE) * CCur(COSREV) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT) 

End If 

If CAP3 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 
UNI3 = (CCur(COSEX) / CCur(REN3)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 
Form24.COS3EXC = CCur(VEX) * CCur(UNI3) * CCur(L) * CCur((EXC3 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) + 
CCur(Form24.COS3EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 
Form24.COS3TRA = CCur(VEX) * (1 + CCur((EXP3 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC3 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) + 
CCur(Form24.COS3TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 
Form24.VIA3 = Round(VEX * L * (EXC3 / 100) * (1 + (EXP3 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2) + CCur(Form24.VIA3), 3) 

Form24.COSREVT = CCur(VRE) * CCur(COSREV) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) + 
CCur(Form24.COSREVT) 

End If 

If CAP1 = True Then 

Form24.Frame11.Visible = True

77 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP2 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP3 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

Form24.Frame10.Visible = True 
Form24.Frame2.Visible = True 
Form24.Frame9.Visible = True 
Form24.COS3EXC.Visible = True 
Form24.COS3TRA.Visible = True 
Form24.VIA3.Visible = True 

End If 

Form24.Show 
Unload Me 
End If 
End If

78 
End If 
End If 

End Sub 

Private Sub Command4_Click() 
If COSEX = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If COSTRANS = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If VOLVIA = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
Form23.Show 
Else 

If CAP1 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 

Form24.COS1EXC = Round(CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)), 3) 

Form24.COSTOEXC = Round(CCur(Form24.COS1EXC), 3) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = Round(CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) 
* CCur((EXC1 / 100)), 3) 

Form24.COSTOTRA = Round(CCur(Form24.COS1TRA), 3) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1), 3) 

Form24.TOTAL = Round(CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA), 3) 

End If 

If CAP2 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100))

79 
Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2), 3) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) 

End If 

If CAP3 = True Then 

UNI1 = (CCur(COSEX) / CCur(REN1)) 
UNI2 = (CCur(COSEX) / CCur(REN2)) 
UNI3 = (CCur(COSEX) / CCur(REN3)) 

Form24.COS1EXC = CCur(VEX) * CCur(UNI1) * CCur(L) * CCur((EXC1 / 100)) 
Form24.COS2EXC = CCur(VEX) * CCur(UNI2) * CCur(L) * CCur((EXC2 / 100)) 
Form24.COS3EXC = CCur(VEX) * CCur(UNI3) * CCur(L) * CCur((EXC3 / 100)) 

Form24.COSTOEXC = CCur(Form24.COS1EXC) + CCur(Form24.COS2EXC) + 
CCur(Form24.COS3EXC) 

UNITRANS = CCur(COSTRANS) / CCur(VOLVIA) 

Form24.COS1TRA = CCur(VEX) * (1 + CCur((EXP1 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC1 / 100)) 
Form24.COS2TRA = CCur(VEX) * (1 + CCur((EXP2 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC2 / 100)) 
Form24.COS3TRA = CCur(VEX) * (1 + CCur((EXP3 / 100))) * CCur((UNITRANS)) * CCur(L) * 
CCur((EXC3 / 100)) 

Form24.COSTOTRA = CCur(Form24.COS1TRA) + CCur(Form24.COS2TRA) + 
CCur(Form24.COS3TRA) 

Form24.VIA1 = Round((VEX * L * (EXC1 / 100) * (1 + (EXP1 / 100))) / CCur(VOLVIA), 3) 
Form24.VIA2 = Round(VEX * L * (EXC2 / 100) * (1 + (EXP2 / 100)) / CCur(VOLVIA), 3) 
Form24.VIA3 = Round(VEX * L * (EXC3 / 100) * (1 + (EXP3 / 100)) / CCur(VOLVIA), 3) 

Form24.VIATO = Round(CCur(Form24.VIA1) + CCur(Form24.VIA2) + CCur(Form24.VIA3), 3) 

Form24.TOTAL = CCur(Form24.COSTOEXC) + CCur(Form24.COSTOTRA) 

End If 

If CAP1 = True Then

80 
Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP2 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

End If 

If CAP3 = True Then 

Form24.Frame12.Visible = True 
Form24.Frame4.Visible = True 
Form24.Frame6.Visible = True 
Form24.COS2EXC.Visible = True 
Form24.COS2TRA.Visible = True 
Form24.VIA2.Visible = True 

Form24.Frame11.Visible = True 
Form24.Frame7.Visible = True 
Form24.Frame3.Visible = True 
Form24.COS1EXC.Visible = True 
Form24.COS1TRA.Visible = True 
Form24.VIA1.Visible = True 

Form24.Frame10.Visible = True 
Form24.Frame2.Visible = True 
Form24.Frame9.Visible = True 
Form24.COS3EXC.Visible = True 
Form24.COS3TRA.Visible = True 
Form24.VIA3.Visible = True 

End If 

Form24.Show 
Unload Me 

End If

81 
End If 
End If 

End Sub 

Private Sub COSEX_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub COSREV_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub COSTRANS_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXC3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then

82 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXP1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXP2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub EXP3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub REN3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then

83 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub VOLVIA_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

FORMULARIO NUMERO 4 

Private Sub Command1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Command2_Click() 

COSTOEXC = CCur(COS1EXC) + CCur(COS2EXC) 
COSTOTRA = CCur(COS1TRA) + CCur(COS2TRA) 

End Sub 

Private Sub Image1_Click() 
Form25.Show 
Unload Me 

End Sub 

Private Sub Image2_Click() 
Form28.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 5 

Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub

84 
7.  LABORATORIOS 

7.1  GEOMETRIA DE LA SECCION 

7.1.1  INTRODUCCION 

Private Sub Command1_Click() 
PRAC1.Show 
Unload Me 
MsgBox "Introducir las lecturas de los niveles, de Mayor a Menor en (mm)", 16, "AYUDAS DE 
CALCULO" 
PRAC1.Show 

End Sub 

Private Sub DKKLDSKFKLDS_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Frame2_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JFGFKGKFLGKLF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Label8_Click() 

End Sub 

Private Sub LDKFDKFLKDKFLDKF_Click() 
GENER.PrintForm 

End Sub 

Private Sub SDFDFDFDFDF_Click() 
End 

End Sub 

FORMULARIO NUMERO 2

85 
Private Sub Command1_Click() 
If Text1 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text2 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If True And Text3 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text4 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text5 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text6 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 
If Text7 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text8 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text9 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION"

86 
PRAC1.Show 

Else 

If Text10 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text11 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text12 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text13 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text14 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text15 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text16 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text17 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else

87 
If Text18 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text19 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text20 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text21 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 
If Text22 = "" Then 
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text23 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text24 = "" Then
MsgBox "FALTA DATO POR INTRODUCIR", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text23 = 0 Then 
MsgBox "EL CANAL ES RECTANGULAR TIENE BASE B, INTRODUZCA 
UN VALOR", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 

Else 

If Text1 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION"

88 
PRAC1.Show 

Else 

If Text2 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
PRAC1.Show 

Else 

If Text3 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC1.Show 

Else 

If Text4 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text5 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
PRAC1.Show 

Else 

If Text6 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC1.Show 

Else 

If Text7 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 

If Text8 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
PRAC1.Show 

Else 

If Text9 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC1.Show 

Else

89 
If Text10 = 0 Then 
MsgBox "LA PROFUNDIDAD NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 

Else 
If Text11 = "" Then 
MsgBox "INGRESE EL PESO DEL VALDE", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text15 = 0 Then 
MsgBox "INGRESE, EL PESO DEL VALDE + EL PESO DEL AGUA = PESO 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text22 = 0 Then 
MsgBox "INGRESE EL TIEMPO DE LA PRIMERA LECTURA", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 
Else 

If Text12 = "" Then 
MsgBox "INGRESE EL PESO DEL VALDE", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text16 = 0 Then 
MsgBox "INGRESE, EL PESO DEL VALDE + EL PESO DEL AGUA = PESO 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else
If Text21 = 0 Then 
MsgBox "INGRESE EL TIEMPO DE LA PRIMERA LECTURA", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 
Else 

If Text13 = "" Then 
MsgBox "INGRESE EL PESO DEL VALDE", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text17 = 0 Then 
MsgBox "INGRESE, EL PESO DEL VALDE + EL PESO DEL AGUA = PESO 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else
If Text20 = 0 Then 
MsgBox "INGRESE EL TIEMPO DE LA PRIMERA LECTURA", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 
Else 

If Text14 = "" Then 
MsgBox "INGRESE EL PESO DEL VALDE", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text18 = 0 Then

90 
MsgBox "INGRESE, EL PESO DEL VALDE + EL PESO DEL AGUA = PESO 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else
If Text19 = 0 Then 
MsgBox "INGRESE EL TIEMPO DE LA PRIMERA LECTURA", 16, "ERROR DE 
COMPLETACION" 
PRAC1.Show 
Else 

If Text11 = Text15 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL AL PESO DEL CONJUNTO", 
16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text12 = Text16 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL AL PESO DEL CONJUNTO", 
16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text13 = Text17 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else
If Text14 = Text18 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 

If Text15 ­ Text11 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER SUPERIOR AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text16 ­ Text12 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER SUPERIOR AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 
If Text17 ­ Text13 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER SUPERIOR AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else
If Text18 ­ Text14 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER SUPERIOR AL PESO DEL 
CONJUNTO", 16, "ERROR DE COMPLETACION" 
PRAC1.Show 
Else 

Dim tt As Single 

Dim k1 As Single 
Dim k2 As Single 
Dim k3 As Single 
Dim k4 As Single

91 
Dim k5 As Single 
Dim k6 As Single 
Dim k7 As Single 
Dim k8 As Single 

Dim g1 As Single 
Dim g2 As Single 
Dim g3 As Single 
Dim g4 As Single 

Dim j1 As Single 
Dim j2 As Single 
Dim j3 As Single 
Dim j4 As Single 
Dim j5 As Single 
Dim j6 As Single 
Dim j7 As Single 
Dim j8 As Single 
Dim j9 As Single 
Dim j10 As Single 

Dim A1 As Single 
Dim A2 As Single 
Dim A3 As Single 
Dim A4 As Single 
Dim A5 As Single 
Dim A6 As Single 
Dim A7 As Single 
Dim A8 As Single 
Dim A9 As Single 
Dim A10 As Single 

Dim VM1 As Single 
Dim VM2 As Single 
Dim VM3 As Single 
Dim VM4 As Single 
Dim VM5 As Single 
Dim VM6 As Single 
Dim VM7 As Single 
Dim VM8 As Single 
Dim VM9 As Single 
Dim VM10 As Single 

Dim D1 As Single 
Dim D2 As Single 
Dim D3 As Single 
Dim D4 As Single 
Dim D5 As Single 
Dim D6 As Single 
Dim D7 As Single 
Dim D8 As Single 
Dim D9 As Single 
Dim D10 As Single 

Dim QM As Single 

Dim QUN As Single 

Dim QL As Single

92 
Dim JA As Single 

Dim F1 As Single 
Dim F2 As Single 
Dim F3 As Single 
Dim F4 As Single 
Dim F5 As Single 
Dim F6 As Single 
Dim F7 As Single 
Dim F8 As Single 
Dim F9 As Single 
Dim F10 As Single 

Dim E1 As Single 
Dim E2 As Single 
Dim E3 As Single 
Dim E4 As Single 
Dim E5 As Single 
Dim E6 As Single 
Dim E7 As Single 
Dim E8 As Single 
Dim E9 As Single 
Dim E10 As Single 

Dim R1 As Single 
Dim R2 As Single 
Dim R3 As Single 
Dim R4 As Single 
Dim R5 As Single 
Dim R6 As Single 
Dim R7 As Single 
Dim R8 As Single 
Dim R9 As Single 
Dim R10 As Single 

Dim YC1 As Single 
Dim YC2 As Single 
Dim YC3 As Single 
Dim YC4 As Single 
Dim YC5 As Single 
Dim YC6 As Single 
Dim YC7 As Single 
Dim YC8 As Single 
Dim YC9 As Single 
Dim YC10 As Single 

Dim EMI As Single 

Dim FE1 As Single 
Dim FE2 As Single 
Dim FE3 As Single 
Dim FE4 As Single 
Dim FE5 As Single 
Dim FE6 As Single 
Dim FE7 As Single 
Dim FE8 As Single 
Dim FE9 As Single 
Dim FE10 As Single

93 
Dim P1 As Single 
Dim P2 As Single 
Dim P3 As Single 
Dim P4 As Single 
Dim P5 As Single 
Dim P6 As Single 
Dim P7 As Single 
Dim P8 As Single 
Dim P9 As Single 
Dim P10 As Single 

Dim Z1 As Single 
Dim Z2 As Single 
Dim Z3 As Single 
Dim Z4 As Single 
Dim Z5 As Single 
Dim Z6 As Single 
Dim Z7 As Single 
Dim Z8 As Single 
Dim Z9 As Single 
Dim Z10 As Single 

Dim S1 As Single 
Dim S2 As Single 
Dim S3 As Single 
Dim S4 As Single 
Dim S5 As Single 

Dim O6 As Single 
Dim O7 As Single 
Dim O8 As Single 
Dim O9 As Single 
Dim O10 As Single 

tt = Text24 
u = ­0.000003 * tt ^ 2 ­ 0.0008 * tt + 10 

k1 = Text15 
k2 = Text11 
k3 = Text16 
k4 = Text12 
k5 = Text17 
k6 = Text13 
k7 = Text18 
k8 = Text14 

w1 = k1 ­ k2 
w2 = k3 ­ k4 
w3 = k5 ­ k6 
w4 = k7 ­ k8 

g1 = Text22 
g2 = Text21 
g3 = Text20 
g4 = Text19

94 
If Option9 = True Then 
V1 = ((((w1 * 9.81) / 1000) / 1000) / u) 
qm1 = V1 / g1 
QM = qm1 
End If 

If Option10 = True Then 
V1 = ((((w1 * 9.81) / 1000) / 1000) / u) 
qm1 = V1 / g1 
v2 = ((((w2 * 9.81) / 1000) / 1000) / u) 
qm2 = v2 / g2 
QM = (qm1 + qm2) / 2 
End If 

If Option11 = True Then 
V1 = ((((w1 * 9.81) / 1000) / 1000) / u) 
qm1 = V1 / g1 
v2 = ((((w2 * 9.81) / 1000) / 1000) / u) 
qm2 = v2 / g2 
v3 = ((((w3 * 9.81) / 1000) / 1000) / u) 
qm3 = v3 / g3 
QM = (qm1 + qm2 + qm3) / 3 
End If 

If Option12 = True Then 
V1 = ((((w1 * 9.81) / 1000) / 1000) / u) 
qm1 = V1 / g1 
v2 = ((((w2 * 9.81) / 1000) / 1000) / u) 
qm2 = v2 / g2 
v3 = ((((w3 * 9.81) / 1000) / 1000) / u) 
qm3 = v3 / g3 
v4 = ((((w4 * 9.81) / 1000) / 1000) / u) 
qm4 = v4 / g4 
QM = (qm1 + qm2 + qm3 + qm4) / 4 
End If 

RESP2.Text51 = Round(CCur(QM), 5) 
RESP3.Text1 = Round(CCur(QM), 5) 

QL = 1000 * QM 

RESP2.Text52 = Round(QL, 5) 

j1 = Text1 
j2 = Text2 
j3 = Text3 
j4 = Text4 
j5 = Text5 
j6 = Text6 
j7 = Text7 
j8 = Text8 
j9 = Text9 
j10 = Text10 

Y1 = CCur(j1 / 1000) 
RESP1.Text1 = Round(Y1, 3) 
RESP3.Text5 = Round(Y1, 3)

95 
RESP3.Text64 = Round(Y1, 3) 

Y2 = CCur(j2 / 1000) 
RESP1.Text2 = Round(Y2, 3) 
RESP3.Text6 = Round(Y2, 3) 
RESP3.Text63 = Round(Y2, 3) 

Y3 = CCur(j3 / 1000) 
RESP1.Text3 = Round(Y3, 3) 
RESP3.Text7 = Round(Y3, 3) 
RESP3.Text62 = Round(Y3, 3) 

Y4 = CCur(j4 / 1000) 
RESP1.Text4 = Round(Y4, 3) 
RESP3.Text8 = Round(Y4, 3) 
RESP3.Text61 = Round(Y4, 3) 

Y5 = CCur(j5 / 1000) 
RESP1.Text5 = Round(Y5, 3) 
RESP3.Text9 = Round(Y5, 3) 
RESP3.Text60 = Round(Y5, 3) 

Y6 = CCur(j6 / 1000) 
RESP1.Text6 = Round(Y6, 3) 
RESP3.Text10 = Round(Y6, 3) 
RESP3.Text59 = Round(Y6, 3) 

Y7 = CCur(j7 / 1000) 
RESP1.Text7 = Round(Y7, 3) 
RESP3.Text11 = Round(Y7, 3) 
RESP3.Text58 = Round(Y7, 3) 

Y8 = CCur(j8 / 1000) 
RESP1.Text8 = Round(Y8, 3) 
RESP3.Text12 = Round(Y8, 3) 
RESP3.Text57 = Round(Y8, 3) 

Y9 = CCur(j9 / 1000) 
RESP1.Text9 = Round(Y9, 3) 
RESP3.Text13 = Round(Y9, 3) 
RESP3.Text56 = Round(Y9, 3) 

Y10 = CCur(j10 / 1000) 
RESP1.Text10 = Round(Y10, 3) 
RESP3.Text14 = Round(Y10, 3) 
RESP3.Text55 = Round(Y10, 3) 

h1 = Text23 
B = h1 / 100 
QUN = QM / B 
JA = (QM ^ 2 / 9.81) ^ (1 / 3) 

RESP3.Text1 = Round(CCur(QM), 5) 

RESP3.Text2 = Round(QUN, 5) 
RESP3.Text3 = Round(JA, 5) 
RESP3.Text15 = Round(CCur(B), 3)

96 
A1 = Y1 * B 
RESP1.Text11 = Round(A1, 3) 

A2 = Y2 * B 
RESP1.Text12 = Round(A2, 3) 

A3 = Y3 * B 
RESP1.Text13 = Round(A3, 3) 

A4 = Y4 * B 
RESP1.Text14 = Round(A4, 3) 

A5 = Y5 * B 
RESP1.Text15 = Round(A5, 3) 

A6 = Y6 * B 
RESP1.Text16 = Round(A6, 3) 

A7 = Y7 * B 
RESP1.Text17 = Round(A7, 3) 

A8 = Y8 * B 
RESP1.Text18 = Round(A8, 3) 

A9 = Y9 * B 
RESP1.Text19 = Round(A9, 3) 

A10 = Y10 * B 
RESP1.Text20 = Round(A10, 3) 

VM1 = QM / A1 
RESP2.Text1 = Round(VM1, 3) 

VM2 = QM / A2 
RESP2.Text2 = Round(VM2, 3) 

VM3 = QM / A3 
RESP2.Text3 = Round(VM3, 3) 

VM4 = QM / A4 
RESP2.Text4 = Round(VM4, 3) 

VM5 = QM / A5 
RESP2.Text5 = Round(VM5, 3) 

VM6 = QM / A6 
RESP2.Text6 = Round(VM6, 3) 

VM7 = QM / A7 
RESP2.Text7 = Round(VM7, 3) 

VM8 = QM / A8 
RESP2.Text8 = Round(VM8, 3) 

VM9 = QM / A9 
RESP2.Text9 = Round(VM9, 3) 

VM10 = QM / A10

97 
RESP2.Text10 = Round(VM10, 3) 

D1 = A1 / B 
RESP1.Text41 = Round(D1, 3) 

D2 = A2 / B 
RESP1.Text42 = Round(D2, 3) 

D3 = A3 / B 
RESP1.Text43 = Round(D3, 3) 

D4 = A4 / B 
RESP1.Text44 = Round(D4, 3) 

D5 = A5 / B 
RESP1.Text45 = Round(D5, 3) 

D6 = A6 / B 
RESP1.Text46 = Round(D6, 3) 

D7 = A7 / B 
RESP1.Text47 = Round(D7, 3) 

D8 = A8 / B 
RESP1.Text48 = Round(D8, 3) 

D9 = A9 / B 
RESP1.Text49 = Round(D9, 3) 

D10 = A10 / B 
RESP1.Text50 = Round(D10, 3) 

F1 = VM1 / (9.81 * D1) ^ (0.5) 
RESP2.Text20 = Round(F1, 3) 

F2 = VM2 / (9.81 * D2) ^ (0.5) 
RESP2.Text19 = Round(F2, 3) 

F3 = VM3 / (9.81 * D3) ^ (0.5) 
RESP2.Text18 = Round(F3, 3) 

F4 = VM4 / (9.81 * D4) ^ (0.5) 
RESP2.Text17 = Round(F4, 3) 

F5 = VM5 / (9.81 * D5) ^ (0.5) 
RESP2.Text16 = Round(F5, 3) 

F6 = VM6 / (9.81 * D6) ^ (0.5) 
RESP2.Text15 = Round(F6, 3) 

F7 = VM7 / (9.81 * D7) ^ (0.5) 
RESP2.Text14 = Round(F7, 3) 

F8 = VM8 / (9.81 * D8) ^ (0.5) 
RESP2.Text13 = Round(F8, 3) 

F9 = VM9 / (9.81 * D9) ^ (0.5) 
RESP2.Text12 = Round(F9, 3)

98 
F10 = VM10 / (9.81 * D10) ^ (0.5) 
RESP2.Text11 = Round(F10, 3) 

If F1 < 1 Then 
RESP2.Text53 = "SubCritico" 
End If 

If F1 = 1 Then 
RESP2.Text53 = "critico" 
End If 

If F1 > 1 Then 
RESP2.Text53 = "Supecritico" 
End If 

If F2 < 1 Then 
RESP2.Text54 = "SubCritico" 
End If 

If F2 = 1 Then 
RESP2.Text54 = "critico" 
End If 

If F2 > 1 Then 
RESP2.Text54 = "Supecritico" 
End If 

If F3 < 1 Then 
RESP2.Text55 = "SubCritico" 
End If 

If F3 = 1 Then 
RESP2.Text55 = "critico" 
End If 

If F3 > 1 Then 
RESP2.Text55 = "Supecritico" 
End If 

If F4 < 1 Then 
RESP2.Text56 = "SubCritico" 
End If 

If F4 = 1 Then 
RESP2.Text56 = "critico" 
End If 

If F4 > 1 Then 
RESP2.Text56 = "Supecritico" 
End If 

If F5 < 1 Then 
RESP2.Text57 = "SubCritico" 
End If 

If F5 = 1 Then 
RESP2.Text57 = "critico"

99 
End If 

If F5 > 1 Then 
RESP2.Text57 = "Supecritico" 
End If 

If F6 < 1 Then 
RESP2.Text58 = "SubCritico" 
End If 

If F6 = 1 Then 
RESP2.Text58 = "critico" 
End If 

If F6 > 1 Then 
RESP2.Text58 = "Supecritico" 
End If 

If F7 < 1 Then 
RESP2.Text59 = "SubCritico" 
End If 

If F7 = 1 Then 
RESP2.Text59 = "critico" 
End If 

If F7 > 1 Then 
RESP2.Text59 = "Supecritico" 
End If 

If F8 < 1 Then 
RESP2.Text60 = "SubCritico" 
End If 

If F8 = 1 Then 
RESP2.Text60 = "critico" 
End If 

If F8 > 1 Then 
RESP2.Text60 = "Supecritico" 
End If 

If F9 < 1 Then 
RESP2.Text61 = "SubCritico" 
End If 

If F9 = 1 Then 
RESP2.Text61 = "critico" 
End If 

If F9 > 1 Then 
RESP2.Text61 = "Supecritico" 
End If 

If F10 < 1 Then 
RESP2.Text62 = "SubCritico" 
End If

100 
If F10 = 1 Then 
RESP2.Text62 = "critico" 
End If 

If F10 > 1 Then 
RESP2.Text62 = "Supecritico" 
End If 

E1 = Y1 + (VM1 ^ 2) / (19.62) 
RESP2.Text30 = Round(E1, 3) 
RESP3.Text49 = Round(E1, 3) 

E2 = Y2 + (VM2 ^ 2) / (19.62) 
RESP2.Text29 = Round(E2, 3) 
RESP3.Text48 = Round(E2, 3) 

E3 = Y3 + (VM3 ^ 2) / (19.62) 
RESP2.Text28 = Round(E3, 3) 
RESP3.Text47 = Round(E3, 3) 

E4 = Y4 + (VM4 ^ 2) / (19.62) 
RESP2.Text27 = Round(E4, 3) 
RESP3.Text46 = Round(E4, 3) 

E5 = Y5 + (VM5 ^ 2) / (19.62) 
RESP2.Text26 = Round(E5, 3) 
RESP3.Text45 = Round(E5, 3) 

E6 = Y6 + (VM6 ^ 2) / (19.62) 
RESP2.Text25 = Round(E6, 3) 
RESP3.Text44 = Round(E6, 3) 

E7 = Y7 + (VM7 ^ 2) / (19.62) 
RESP2.Text24 = Round(E7, 3) 
RESP3.Text43 = Round(E7, 3) 

E8 = Y8 + (VM8 ^ 2) / (19.62) 
RESP2.Text23 = Round(E8, 3) 
RESP3.Text42 = Round(E8, 3) 

E9 = Y9 + (VM9 ^ 2) / (19.62) 
RESP2.Text22 = Round(E9, 3) 
RESP3.Text41 = Round(E9, 3) 

E10 = Y10 + (VM10 ^ 2) / (19.62) 
RESP2.Text21 = Round(E10, 3) 
RESP3.Text40 = Round(E10, 3) 

YC1 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text31 = Round(YC1, 3) 

YC2 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text32 = Round(YC2, 3) 

YC3 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text33 = Round(YC3, 3) 

YC4 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text34 = Round(YC4, 3)

101 
YC5 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text35 = Round(YC5, 3) 

YC6 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text36 = Round(YC6, 3) 

YC7 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text37 = Round(YC7, 3) 

YC8 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text38 = Round(YC8, 3) 

YC9 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text39 = Round(YC9, 3) 

YC10 = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP2.Text40 = Round(YC10, 3) 

EMI = ((((QM) / (B))) ^ 2 / (9.81)) ^ (1 / 3) 
RESP3.Text4 = Round(EMI, 3) 

YM1 = Y1 / 2 
YM2 = Y2 / 2 
YM3 = Y3 / 2 
YM4 = Y4 / 2 
YM5 = Y5 / 2 
YM6 = Y6 / 2 
YM7 = Y7 / 2 
YM8 = Y8 / 2 
YM9 = Y9 / 2 
YM10 = Y10 / 2 

FE1 = ((Y1) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y1) 
RESP2.Text50 = Round(FE1, 3) 
RESP3.Text20 = Round(FE1, 3) 

FE2 = ((Y2) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y2) 
RESP2.Text49 = Round(FE2, 3) 
RESP3.Text21 = Round(FE2, 3) 

FE3 = ((Y3) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y3) 
RESP2.Text48 = Round(FE3, 3) 
RESP3.Text22 = Round(FE3, 3) 

FE4 = ((Y4) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y4) 
RESP2.Text47 = Round(FE4, 3) 
RESP3.Text23 = Round(FE4, 3) 

FE5 = ((Y5) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y5) 
RESP2.Text46 = Round(FE5, 3) 
RESP3.Text24 = Round(FE5, 3) 

FE6 = ((Y6) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y6) 
RESP2.Text45 = Round(FE6, 3) 
RESP3.Text25 = Round(FE6, 3) 

FE7 = ((Y7) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y7) 
RESP2.Text44 = Round(FE7, 3)

102 
RESP3.Text26 = Round(FE7, 3) 

FE8 = ((Y8) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y8) 
RESP2.Text43 = Round(FE8, 3) 
RESP3.Text27 = Round(FE8, 3) 

FE9 = ((Y9) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y9) 
RESP2.Text42 = Round(FE9, 3) 
RESP3.Text28 = Round(FE9, 3) 

FE10 = ((Y10) ^ 2) / 2 + ((QM / B) ^ 2) / (9.81 * Y10) 
RESP2.Text41 = Round(FE10, 3) 
RESP3.Text29 = Round(FE10, 3) 

P1 = 2 * Y1 + B 
RESP1.Text21 = Round(P1, 3) 

P2 = 2 * Y2 + B 
RESP1.Text22 = Round(P2, 3) 

P3 = 2 * Y3 + B 
RESP1.Text23 = Round(P3, 3) 

P4 = 2 * Y4 + B 
RESP1.Text24 = Round(P4, 3) 

P5 = 2 * Y5 + B 
RESP1.Text25 = Round(P5, 3) 

P6 = 2 * Y6 + B 
RESP1.Text26 = Round(P6, 3) 

P7 = 2 * Y7 + B 
RESP1.Text27 = Round(P7, 3) 

P8 = 2 * Y8 + B 
RESP1.Text28 = Round(P8, 3) 

P9 = 2 * Y9 + B 
RESP1.Text29 = Round(P9, 3) 

P10 = 2 * Y10 + B 
RESP1.Text30 = Round(P10, 3) 

R1 = A1 / P1 
RESP1.Text31 = Round(R1, 3) 

R2 = A2 / P2 
RESP1.Text32 = Round(R2, 3) 

R3 = A3 / P3 
RESP1.Text33 = Round(R3, 3) 

R4 = A4 / P4 
RESP1.Text34 = Round(R4, 3) 

R5 = A5 / P5 
RESP1.Text35 = Round(R5, 3)

103 
R6 = A6 / P6 
RESP1.Text36 = Round(R6, 3) 

R7 = A7 / P7 
RESP1.Text37 = Round(R7, 3) 

R8 = A8 / P8 
RESP1.Text38 = Round(R8, 3) 

R9 = A9 / P9 
RESP1.Text39 = Round(R9, 3) 

R10 = A10 / P10 
RESP1.Text40 = Round(R10, 3) 

Z1 = A1 * (D1) ^ 0.5 
RESP1.Text51 = Round(Z1, 3) 

Z2 = A2 * (D2) ^ 0.5 
RESP1.Text52 = Round(Z2, 3) 

Z3 = A3 * (D3) ^ 0.5 
RESP1.Text53 = Round(Z3, 3) 

Z4 = A4 * (D4) ^ 0.5 
RESP1.Text54 = Round(Z4, 3) 

Z5 = A5 * (D5) ^ 0.5 
RESP1.Text55 = Round(Z5, 3) 

Z6 = A6 * (D6) ^ 0.5 
RESP1.Text56 = Round(Z6, 3) 

Z7 = A7 * (D7) ^ 0.5 
RESP1.Text57 = Round(Z7, 3) 

Z8 = A8 * (D8) ^ 0.5 
RESP1.Text58 = Round(Z8, 3) 

Z9 = A9 * (D9) ^ 0.5 
RESP1.Text59 = Round(Z9, 3) 

Z10 = A10 * (D10) ^ 0.5 
RESP1.Text60 = Round(Z10, 3) 

RESP1.Show 
Unload Me 

End If 

End If 
End If 

End If 
End If 
End If

104 
End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 

End If
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If

105 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End If 
End If 
End If 

End Sub 

Private Sub DKFKLFKLKLFGGFD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub FFGFHGFHGFHTT_Click() 
Text1 = "" 
Text2 = "" 
Text3 = "" 
Text4 = "" 
Text5 = "" 
Text6 = "" 
Text7 = "" 
Text8 = "" 
Text9 = "" 
Text10 = "" 

Text11 = "" 
Text12 = "" 
Text13 = "" 
Text14 = "" 
Text15 = "" 
Text16 = "" 
Text17 = "" 
Text18 = "" 
Text19 = "" 
Text20 = "" 
Text21 = "" 
Text22 = "" 

Text23 = "" 
Text24 = "" 
End Sub 

Private Sub KLDKFKLFKFLKGLF_Click()

106 
PRAC1.PrintForm 

End Sub 

Private Sub LDKKDKLKDFG_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LFKGLGLGKHLGHG_Click() 
End 

End Sub 

Private Sub Option1_Click() 
If Option1 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4 = "" 
Text4.Visible = False 
Text5 = "" 
Text5.Visible = False 
Text6 = "" 
Text6.Visible = False 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = False 
Label5.Visible = False 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

End Sub 

Private Sub Option10_Click() 

If Option10 = True Then 

Label15.Visible = True 
Label11.Visible = True 
Label12.Visible = False 
Label13.Visible = False

107 
Text11.Visible = True 
Text12.Visible = True 
Text13.Visible = False 
Text14.Visible = False 

Text15.Visible = True 
Text16.Visible = True 
Text17.Visible = False 
Text18.Visible = False 

Text22.Visible = True 
Text21.Visible = True 
Text20.Visible = False 
Text19.Visible = False 

End If 

End Sub 

Private Sub Option11_Click() 

If Option11 = True Then 

Label15.Visible = True 
Label11.Visible = True 
Label12.Visible = True 
Label13.Visible = False 

Text11.Visible = True 
Text12.Visible = True 
Text13.Visible = True 
Text14.Visible = False 

Text15.Visible = True 
Text16.Visible = True 
Text17.Visible = True 
Text18.Visible = False 

Text22.Visible = True 
Text21.Visible = True 
Text20.Visible = True 
Text19.Visible = False 

End If 

End Sub 

Private Sub Option12_Click() 

If Option12 = True Then 

Label15.Visible = True 
Label11.Visible = True 
Label12.Visible = True 
Label13.Visible = True 

Text11.Visible = True 
Text12.Visible = True 
Text13.Visible = True

108 
Text14.Visible = True 

Text15.Visible = True 
Text16.Visible = True 
Text17.Visible = True 
Text18.Visible = True 

Text22.Visible = True 
Text21.Visible = True 
Text20.Visible = True 
Text19.Visible = True 

End If 

End Sub 

Private Sub Option2_Click() 
If Option2 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5 = "" 
Text5.Visible = False 
Text6 = "" 
Text6.Visible = False 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = False 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 
End Sub 

Private Sub Option3_Click() 
If Option3 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6 = "" 
Text6.Visible = False 
Text7 = ""

109 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 
End If 
End Sub 

Private Sub Option4_Click() 
If Option4 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 
End If 
End Sub 

Private Sub Option5_Click() 
If Option5 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True

110 
Text7.Visible = True 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 
End If 
End Sub 

Private Sub Option6_Click() 
If Option6 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True 
Text8.Visible = True 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = False 
Label10.Visible = False 
End If 
End Sub 

Private Sub Option7_Click() 
If Option7 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True 
Text8.Visible = True

111 
Text9.Visible = True 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = True 
Label10.Visible = False 
End If 
End Sub 

Private Sub Option8_Click() 
If Option8 = True Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True 
Text8.Visible = True 
Text9.Visible = True 
Text10.Visible = True 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = True 
Label10.Visible = True 
End If 
End Sub 

Private Sub Option9_Click() 

If Option9 = True Then 

Label15.Visible = True 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Text11.Visible = True 
Text12.Visible = False 
Text13.Visible = False 
Text14.Visible = False 

Text15.Visible = True 
Text16.Visible = False

112 
Text17.Visible = False 
Text18.Visible = False 

Text22.Visible = True 
Text21.Visible = False 
Text20.Visible = False 
Text19.Visible = False 

End If 
End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text10_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text11_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text12_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text13_KeyPress(KeyAscii As Integer)

113 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text14_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text15_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text16_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text17_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text18_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep

114 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text19_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text20_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text21_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text22_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

115 
Private Sub Text23_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text24_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text25_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text25_Change() 

If Text25 < 3 Then 
MsgBox "MINIMO 3 DATOS, INGRESE UN NUMERO DE DATOS ENTRE 3 Y 10", 16, "ERROR 
DE COMPLETACION" 
PRAC1.Show 
End If 
If Text25 > 10 Then 
MsgBox "MAXIMO 10 DATOS, INGRESE UN NUMERO DE DATOS ENTRE 3 Y 10", 16, "ERROR 
DE COMPLETACION" 
PRAC1.Show 
End If 
If Text25 = 3 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4 = "" 
Text4.Visible = False 
Text5 = "" 
Text5.Visible = False 
Text6 = "" 
Text6.Visible = False 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = ""

116 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = False 
Label5.Visible = False 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 4 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5 = "" 
Text5.Visible = False 
Text6 = "" 
Text6.Visible = False 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = False 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 5 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6 = "" 
Text6.Visible = False 
Text7 = "" 
Text7.Visible = False

117 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = False 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 6 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7 = "" 
Text7.Visible = False 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = False 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 7 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True

118 
Text7.Visible = True 
Text8 = "" 
Text8.Visible = False 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = False 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 8 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True 
Text8.Visible = True 
Text9 = "" 
Text9.Visible = False 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = False 
Label10.Visible = False 

End If 

If Text25 = 9 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True

119 
Text8.Visible = True 
Text9.Visible = True 
Text10 = "" 
Text10.Visible = False 

Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = True 
Label10.Visible = False 

End If 

If Text25 = 10 Then 
Text1.Visible = True 
Text2.Visible = True 
Text3.Visible = True 
Text4.Visible = True 
Text5.Visible = True 
Text6.Visible = True 
Text7.Visible = True 
Text8.Visible = True 
Text9.Visible = True 
Text10.Visible = True 

Text10.Visible = True 
Label1.Visible = True 
Label2.Visible = True 
Label3.Visible = True 
Label4.Visible = True 
Label5.Visible = True 
Label6.Visible = True 
Label7.Visible = True 
Label8.Visible = True 
Label9.Visible = True 
Label10.Visible = True 

End If 

If Text25 = "" Then 

End If 
End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

120 
Private Sub Text4_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text5_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text6_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text7_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text8_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text9_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer

121 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
FORMULARIO NUMERO 3 

Private Sub File1_Click() 

End Sub 

Private Sub Command1_Click() 

RESP2.Show 
Unload Me 

End Sub 

Private Sub DLÑLFDLÑFÑDFLÑLD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub DÑLFÑLDÑFLÑD_Click() 
RESP1.PrintForm 

End Sub 

Private Sub KSDJDSKFDKFDLKF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LDKLKLFKDLKFD_Click() 
End 

End Sub 

Private Sub SDKFÑDDFKJFKHHFJD_Click() 
PRAC1.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 4 

Private Sub Command1_Click() 
RESP3.Show 
Unload Me 

End Sub

122 
FORMULARIO NUMERO 5 

Private Sub Image1_Click() 
Unload Me 
End Sub 

Private Sub Command1_Click() 
Dim DONDE, RANGO As String 
Dim RES As Long 
Dim EXCEL As Object 
Dim LIBRO As Object 
Set EXCEL = CreateObject("excel.Application") 
DONDE = "C:\Archivos de programa\DISCAN\CRAK\LAB_HIDRAULICA_1.xls" 
Set CALCULOS = EXCEL.Workbooks.Open(DONDE) 

CALCULOS.Worksheets(1).Cells(3, 17) = Text64 
CALCULOS.Worksheets(1).Cells(4, 17) = Text63 
CALCULOS.Worksheets(1).Cells(5, 17) = Text62 
CALCULOS.Worksheets(1).Cells(6, 17) = Text61 
CALCULOS.Worksheets(1).Cells(7, 17) = Text60 
CALCULOS.Worksheets(1).Cells(8, 17) = Text59 
CALCULOS.Worksheets(1).Cells(9, 17) = Text58 
CALCULOS.Worksheets(1).Cells(10, 17) = Text57 
CALCULOS.Worksheets(1).Cells(11, 17) = Text56 
CALCULOS.Worksheets(1).Cells(12, 17) = Text55 
CALCULOS.Worksheets(1).Cells(5, 13) = Text1 
CALCULOS.Worksheets(1).Cells(9, 13) = Text15 

EXCEL.Visible = True 
Set LIBRO = Nothing 
Set EXCEL = Nothing 
End Sub 

Private Sub Command2_Click() 
Dim DONDE, RANGO As String 
Dim RES As Long 

Dim EXCEL As Object 
Dim LIBRO As Object 
Set EXCEL = CreateObject("excel.Application") 
DONDE = "C:\Archivos de programa\DISCAN\CRAK\LAB_HIDRAULICA_1.xls" 
Set CALCULOS = EXCEL.Workbooks.Open(DONDE) 
CALCULOS.Worksheets(1).Cells(3, 17) = Text64 
CALCULOS.Worksheets(1).Cells(4, 17) = Text63 
CALCULOS.Worksheets(1).Cells(5, 17) = Text62 
CALCULOS.Worksheets(1).Cells(6, 17) = Text61 
CALCULOS.Worksheets(1).Cells(7, 17) = Text60 
CALCULOS.Worksheets(1).Cells(8, 17) = Text59 
CALCULOS.Worksheets(1).Cells(9, 17) = Text58 
CALCULOS.Worksheets(1).Cells(10, 17) = Text57 
CALCULOS.Worksheets(1).Cells(11, 17) = Text56 
CALCULOS.Worksheets(1).Cells(12, 17) = Text55 
CALCULOS.Worksheets(1).Cells(5, 13) = Text1 
CALCULOS.Worksheets(1).Cells(9, 13) = Text15 

EXCEL.Visible = True

123 
Set LIBRO = Nothing 
Set EXCEL = Nothing 
End Sub 

Private Sub Command3_Click() 
End 
Unload Me 
End Sub 

Private Sub Command4_Click() 
LAB1_ERROR.Show 
End Sub 

Private Sub Command5_Click() 
LAB1_ECUA.Show 
End Sub 

Private Sub JKLSDJKJKFKD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub JKSDJJDKFDF_Click() 
End 

End Sub 

Private Sub KLDKFDKFDKLF_Click() 
RESP3.PrintForm 

End Sub 

Private Sub LDFKLFDSLFÑDLSF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LSLDKSLDKSLD_Click() 
RESP2.Show 
Unload Me 

End Sub 

7.1.2  ECUACIONES USADAS 

Private Sub FLÑGLÑDFLGÑLFDG_Click() 
End 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)

124 
End Sub 

Private Sub KSJKSAKJKSD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub NDJKJDSKFJDSJK_Click() 
LAB1_ECUA.PrintForm 

End Sub 

Private Sub NMKDFJKFJDSKF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

7.2  RESALTO HIDRAULICO 

7.2.1  INTRODUCCION 
Private Sub Command1_Click() 
PRAC2.Show 
Unload Me 

MsgBox "SELECCIONE EL NUMERO DE LECTURAS Y DE AFOROS", 16, "AYUDAS DE 
CALCULO" 
PRAC2.Show 

MsgBox "INGRESE LAS LECTURAS ANTES DE LA COMPUERTA EN ORDEN DESENDENTE, 
ES DECIR DE LA MAYOR A LA MENOR", 16, "AYUDAS DE CALCULO" 
PRAC2.Show 

End Sub 

Private Sub DKFKDKFDLKFL_Click() 
End 

End Sub 

Private Sub DSDLKFLDSKFLDSF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KLSDKSDFLKFDLKG_Click() 
GENER2.PrintForm 

End Sub 

Private Sub Label4_Click()

125 
End Sub 

Private Sub MKDMKDLFKDKSFLD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

7.2.2  REALIZAR CALCULOS 

Private Sub SubWizard1_GotFocus() 

End Sub 

Private Sub Command1_Click() 

If Text1 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 1°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text2 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 2°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text3 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 3°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text4 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 4°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text5 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 5°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text6 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 6°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text7 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 7°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text8 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 8°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show

126 
Else 
If Text9 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 9°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text10 = "" Then 
MsgBox "FALTA H ANTES DE LA COMPUERTA PARA LA 10°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text11 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 1°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text12 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 2°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text13 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 3°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text14 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 4°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text15 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 5°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text16 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 6°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text17 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 7°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text18 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 8°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text19 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 9°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text20 = "" Then 
MsgBox "FALTA H ANTES DEL RESALTO PARA LA 10°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION"

127 
PRAC2.Show 
Else 
If Text21 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 1°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text22 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 2°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text23 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 3°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text24 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 4°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text25 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 5°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text26 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 6°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text27 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 7°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text28 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 8°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text29 = "" And Text29 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 9°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text30 = "" Then 
MsgBox "FALTA H DESPUES DEL RESALTO PARA LA 10°LECTURA, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text31 = "" Then 
MsgBox "FALTA EL PESO DEL VALDE PARA EL PRIMER AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text32 = "" Then

128 
MsgBox "FALTA EL PESO DEL VALDE PARA EL SEGUNDO AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text33 = "" Then 
MsgBox "FALTA EL PESO DEL VALDE PARA EL TERCER AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text34 = "" Then 
MsgBox "FALTA EL PESO DEL VALDE PARA EL CUARTO AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text35 = "" Then 
MsgBox "FALTA EL PESO DEL CONJUNTO PARA EL PRIMER AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text36 = "" Then 
MsgBox "FALTA EL PESO DEL CONJUNTO PARA EL SEGUNDO AFORO, INTRODUCIR 
UN VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text37 = "" Then 
MsgBox "FALTA EL PESO DEL CONJUNTO PARA EL TERCER AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text38 = "" Then 
MsgBox "FALTA EL PESO DEL CONJUNTO PARA EL CUARTO AFORO, INTRODUCIR UN 
VALOR", 16, "ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text39 = "" Then 
MsgBox "FALTA EL TIEMPO DEL PRIMER AFORO, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text40 = "" Then 
MsgBox "FALTA EL TIEMPO DEL SEGUNDO AFORO, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text41 = "" Then 
MsgBox "FALTA EL TIEMPO DEL TERCER AFORO, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text42 = "" Then 
MsgBox "FALTA EL TIEMPO DEL CUARTO AFORO, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 

If Text43 = "" Then 
MsgBox "FALTA LA TEMPERATURA DEL FLUJO, INTRODUCIR UN VALOR", 16, "ERROR 
DE COMPLETACION"

129 
PRAC2.Show 
Else 

If Text44 = "" Then 
MsgBox "EL CANAL ES RECTANGULAR Y TIENE BASE B, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text44 = 0 Then 
MsgBox "EL CANAL ES RECTANGULAR Y TIENE BASE B, INTRODUCIR UN VALOR", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 

If Text35 ­ Text31 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER MAYOR  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text36 ­ Text32 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER MAYOR  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text37 ­ Text33 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER MAYOR  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text38 ­ Text34 < 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER MAYOR  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 

If Text35 ­ Text31 = 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text36 ­ Text32 = 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text37 ­ Text33 = 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text38 ­ Text34 = 0 Then 
MsgBox "EL PESO DEL VALDE NO PUEDE SER IGUAL  AL PESO DEL CONJUNTO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else

130 
If Text35 = 0 Then 
MsgBox "EL PESO DEL CONJUNTO NO PUEDE SER MENOR O IGUAL A CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text36 = 0 Then 
MsgBox "EL PESO DEL CONJUNTO NO PUEDE SER MENOR O IGUAL A CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text37 = 0 Then 
MsgBox "EL PESO DEL CONJUNTO NO PUEDE SER MENOR O IGUAL A CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 
If Text38 = 0 Then 
MsgBox "EL PESO DEL CONJUNTO NO PUEDE SER MENOR O IGUAL A CERO", 16, 
"ERROR DE COMPLETACION" 
PRAC2.Show 
Else 

If Text39 = 0 Or Text39 < 0 Then 
MsgBox "EL TIEMPO NO PUEDE SER MENOR O IGUAL A CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC2.Show 
Else 
If Text40 = 0 Or Text40 < 0 Then 
MsgBox "EL TIEMPO NO PUEDE SER MENOR O IGUAL A CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC2.Show 
Else 
If Text41 = 0 Or Text41 < 0 Then 
MsgBox "EL TIEMPO NO PUEDE SER MENOR O IGUAL A CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC2.Show 
Else 
If Text42 = 0 Or Text42 < 0 Then 
MsgBox "EL TIEMPO NO PUEDE SER MENOR O IGUAL A CERO", 16, "ERROR DE 
COMPLETACION" 
PRAC2.Show 
Else 

Dim HAC1 As Single 
Dim HAC2 As Single 
Dim HAC3 As Single 
Dim HAC4 As Single 
Dim HAC5 As Single 
Dim HAC6  As Single 
Dim HAC7  As Single 
Dim HAC8  As Single 
Dim HAC9  As Single 
Dim HAC10 As Single 

Dim HAR1 As Single 
Dim HAR2 As Single 
Dim HAR3 As Single

131 
Dim HAR4 As Single 
Dim HAR5 As Single 
Dim HAR6 As Single 
Dim HAR7 As Single 
Dim HAR8 As Single 
Dim HAR9 As Single 
Dim HAR10 As Single 

Dim HDR1 As Single 
Dim HDR2 As Single 
Dim HDR3 As Single 
Dim HDR4 As Single 
Dim HDR5 As Single 
Dim HDR6 As Single 
Dim HDR7 As Single 
Dim HDR8 As Single 
Dim HDR9 As Single 
Dim HDR10 As Single 

Dim T As Single 
Dim BL As Single 

Dim PV1 As Single 
Dim PV2 As Single 
Dim PV3 As Single 
Dim PV4 As Single 

Dim PC1 As Single 
Dim PC2 As Single 
Dim PC3 As Single 
Dim PC4 As Single 

Dim T1 As Single 
Dim T2 As Single 
Dim t3 As Single 
Dim t4 As Single 

Dim u As Single 

Dim w1 As Single 
Dim w2 As Single 
Dim w3 As Single 
Dim w4 As Single 

Dim V1 As Single 
Dim v2 As Single 
Dim v3 As Single 
Dim v4 As Single 

Dim qm1 As Single 
Dim qm2 As Single 
Dim qm3 As Single 
Dim qm4 As Single 

Dim QM As Single 
Dim QL As Single

132 
HAC1 = Text1 / 1000 
HAC2 = Text2 / 1000 
HAC3 = Text3 / 1000 
HAC4 = Text4 / 1000 
HAC5 = Text5 / 1000 
HAC6 = Text6 / 1000 
HAC7 = Text7 / 1000 
HAC8 = Text8 / 1000 
HAC9 = Text9 / 1000 
HAC10 = Text10 / 1000 

HAR1 = Text11 / 1000 
HAR2 = Text12 / 1000 
HAR3 = Text13 / 1000 
HAR4 = Text14 / 1000 
HAR5 = Text15 / 1000 
HAR6 = Text16 / 1000 
HAR7 = Text17 / 1000 
HAR8 = Text18 / 1000 
HAR9 = Text19 / 1000 
HAR10 = Text20 / 1000 

HDR1 = Text21 / 1000 
HDR2 = Text22 / 1000 
HDR3 = Text23 / 1000 
HDR4 = Text24 / 1000 
HDR5 = Text25 / 1000 
HDR6 = Text26 / 1000 
HDR7 = Text27 / 1000 
HDR8 = Text28 / 1000 
HDR9 = Text29 / 1000 
HDR10 = Text30 / 1000 

PV1 = Text31 
PV2 = Text32 
PV3 = Text33 
PV4 = Text34 

PC1 = Text35 
PC2 = Text36 
PC3 = Text37 
PC4 = Text38 

T1 = Text39 
T2 = Text40 
t3 = Text41 
t4 = Text42 

T = Text43 
BL = Text44 

u = ­0.000003 * CCur(T) ^ 2 ­ 0.0008 * CCur(T) + 10 

w1 = CCur(PC1) ­ CCur(PV1) 
w2 = CCur(PC2) ­ CCur(PV2) 
w3 = CCur(PC3) ­ CCur(PV3) 
w4 = CCur(PC4) ­ CCur(PV4) 

V1 = ((((CCur(w1) * 9.81) / 1000) / 1000) / CCur(u))

133 
qm1 = CCur(V1) / CCur(T1) 

v2 = ((((CCur(w2) * 9.81) / 1000) / 1000) / CCur(u)) 
qm2 = CCur(v2) / CCur(T2) 

v3 = ((((CCur(w3) * 9.81) / 1000) / 1000) / CCur(u)) 
qm3 = CCur(v3) / CCur(t3) 

v4 = ((((CCur(w4) * 9.81) / 1000) / 1000) / CCur(u)) 
qm4 = CCur(v4) / CCur(t4) 

QM = (qm1 + qm2 + qm3 + qm4) / 4 

'CAUDALM3/S 

QL = 1000 * QM 

'CAUDALLTS 

QB = QM / ((BL / 100)) 

'QUNITARIO 

LAB2_SOL1.Text1 = Round(w1, 4) 
LAB2_SOL1.Text2 = Round(w2, 4) 
LAB2_SOL1.Text3 = Round(w3, 4) 
LAB2_SOL1.Text4 = Round(w4, 4) 

LAB2_SOL1.Text5 = Round(T1, 3) 
LAB2_SOL1.Text6 = Round(T2, 3) 
LAB2_SOL1.Text7 = Round(t3, 3) 
LAB2_SOL1.Text8 = Round(t4, 3) 

LAB2_SOL1.Text9 = Round(V1, 4) 
LAB2_SOL1.Text10 = Round(v2, 4) 
LAB2_SOL1.Text11 = Round(v3, 4) 
LAB2_SOL1.Text12 = Round(v4, 4) 

LAB2_SOL1.Text13 = Round(qm1, 4) 
LAB2_SOL1.Text14 = Round(qm2, 4) 
LAB2_SOL1.Text15 = Round(qm3, 4) 
LAB2_SOL1.Text16 = Round(qm4, 4) 

LAB2_SOL1.Text17 = Round(1000 * qm1, 4) 
LAB2_SOL1.Text18 = Round(1000 * qm2, 4) 
LAB2_SOL1.Text19 = Round(1000 * qm3, 4) 
LAB2_SOL1.Text20 = Round(1000 * qm4, 4) 

LAB2_SOL1.Text21 = Round(QM, 4) 
LAB2_SOL2.Text96 = Round(QM, 4) 

LAB2_SOL1.Text22 = Round(QL, 4) 
LAB2_SOL2.Text94 = Round(QL, 4) 

LAB2_SOL2.Text97 = Round(CCur(QB), 4) 
LAB2_SOL2.Text95 = Round(CCur(BL / 100), 4) 

E1 = HAC1 + QB ^ 2 / (19.62 + HAC1 ^ 2) 
E2 = HAC2 + QB ^ 2 / (19.62 + HAC2 ^ 2)

134 
E3 = HAC3 + QB ^ 2 / (19.62 + HAC3 ^ 2) 
E4 = HAC4 + QB ^ 2 / (19.62 + HAC4 ^ 2) 
E5 = HAC5 + QB ^ 2 / (19.62 + HAC5 ^ 2) 
E6 = HAC6 + QB ^ 2 / (19.62 + HAC6 ^ 2) 
E7 = HAC7 + QB ^ 2 / (19.62 + HAC7 ^ 2) 
E8 = HAC8 + QB ^ 2 / (19.62 + HAC8 ^ 2) 
E9 = HAC9 + QB ^ 2 / (19.62 + HAC9 ^ 2) 
E10 = HAC10 + QB ^ 2 / (19.62 + HAC10 ^ 2) 

LAB2_SOL2.Text1 = Round(CCur(E1), 4) 
LAB2_SOL2.Text2 = Round(CCur(E2), 4) 
LAB2_SOL2.Text3 = Round(CCur(E3), 4) 
LAB2_SOL2.Text4 = Round(CCur(E4), 4) 
LAB2_SOL2.Text5 = Round(CCur(E5), 4) 
LAB2_SOL2.Text6 = Round(CCur(E6), 4) 
LAB2_SOL2.Text7 = Round(CCur(E7), 4) 
LAB2_SOL2.Text8 = Round(CCur(E8), 4) 
LAB2_SOL2.Text9 = Round(CCur(E9), 4) 
LAB2_SOL2.Text10 = Round(CCur(E10), 4) 

X1 = 0 
For I = 1 To 100 
X1 = CCur((QB ^ 2 / (19.62 * Abs((E1 ­ X1)))) ^ (0.5)) 
Next I 
YA1 = CCur(Round(X1, 4)) 

X2 = 0 
For I = 1 To 100 
X2 = CCur((QB ^ 2 / (19.62 * Abs((E2 ­ X2)))) ^ (0.5)) 
Next I 
YA2 = CCur(Round(X2, 4)) 

X3 = 0 
For I = 1 To 100 
X3 = CCur((QB ^ 2 / (19.62 * Abs((E3 ­ X3)))) ^ (0.5)) 
Next I 
YA3 = CCur(Round(X3, 4)) 

X4 = 0 
For I = 1 To 100 
X4 = CCur((QB ^ 2 / (19.62 * Abs((E4 ­ X4)))) ^ (0.5)) 
Next I 
YA4 = CCur(Round(X4, 4)) 

X5 = 0 
For I = 1 To 100 
X5 = CCur((QB ^ 2 / (19.62 * Abs((E5 ­ X5)))) ^ (0.5)) 
Next I 
YA5 = CCur(Round(X5, 4)) 

X6 = 0 
For I = 1 To 100 
X6 = CCur((QB ^ 2 / (19.62 * Abs((E6 ­ X6)))) ^ (0.5)) 
Next I 
YA6 = CCur(Round(X6, 4)) 

X7 = 0 
For I = 1 To 100 
X7 = CCur((QB ^ 2 / (19.62 * Abs((E7 ­ X7)))) ^ (0.5))

135 
Next I 
YA7 = CCur(Round(X7, 4)) 

X8 = 0 
For I = 1 To 100 
X8 = CCur((QB ^ 2 / (19.62 * Abs((E8 ­ X8)))) ^ (0.5)) 
Next I 
YA8 = CCur(Round(X8, 4)) 

X9 = 0 
For I = 1 To 100 
X9 = CCur((QB ^ 2 / (19.62 * Abs((E9 ­ X9)))) ^ (0.5)) 
Next I 
YA9 = CCur(Round(X9, 4)) 

X10 = 0 
For I = 1 To 100 
X10 = CCur((QB ^ 2 / (19.62 * Abs((E10 ­ X10)))) ^ (0.5)) 
Next I 
YA10 = CCur(Round(X10, 4)) 

F1 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA1 ^ 3)), 3)) 
F2 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA2 ^ 3)), 3)) 
F3 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA3 ^ 3)), 3)) 
F4 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA4 ^ 3)), 3)) 
F5 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA5 ^ 3)), 3)) 
F6 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA6 ^ 3)), 3)) 
F7 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA7 ^ 3)), 3)) 
F8 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA8 ^ 3)), 3)) 
F9 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA9 ^ 3)), 3)) 
F10 = CCur(Round(Sqr(QB ^ 2 / (9.81 * YA10 ^ 3)), 3)) 

LAB2_SOL2.Text11 = Round(CCur(F1), 3) 
LAB2_SOL2.Text12 = Round(CCur(F2), 3) 
LAB2_SOL2.Text13 = Round(CCur(F3), 3) 
LAB2_SOL2.Text14 = Round(CCur(F4), 3) 
LAB2_SOL2.Text15 = Round(CCur(F5), 3) 
LAB2_SOL2.Text16 = Round(CCur(F6), 3) 
LAB2_SOL2.Text17 = Round(CCur(F7), 3) 
LAB2_SOL2.Text18 = Round(CCur(F8), 3) 
LAB2_SOL2.Text19 = Round(CCur(F9), 3) 
LAB2_SOL2.Text20 = Round(CCur(F10), 3) 

If F1 < 1 Then 
LAB2_SOL2.Text21 = "SubCritico" 
End If 

If F1 = 1 Then 
LAB2_SOL2.Text21 = "critico" 
End If 

If F1 > 1 Then 
LAB2_SOL2.Text21 = "Supecritico" 
End If 

If F2 < 1 Then 
LAB2_SOL2.Text22 = "SubCritico" 
End If

136 
If F2 = 1 Then 
LAB2_SOL2.Text22 = "critico" 
End If 

If F2 > 1 Then 
LAB2_SOL2.Text22 = "Supecritico" 
End If 

If F3 < 1 Then 
LAB2_SOL2.Text23 = "SubCritico" 
End If 

If F3 = 1 Then 
LAB2_SOL2.Text23 = "critico" 
End If 

If F3 > 1 Then 
LAB2_SOL2.Text23 = "Supecritico" 
End If 

If F4 < 1 Then 
LAB2_SOL2.Text24 = "SubCritico" 
End If 

If F4 = 1 Then 
LAB2_SOL2.Text24 = "critico" 
End If 

If F4 > 1 Then 
LAB2_SOL2.Text24 = "Supecritico" 
End If 

If F5 < 1 Then 
LAB2_SOL2.Text25 = "SubCritico" 
End If 

If F5 = 1 Then 
LAB2_SOL2.Text25 = "critico" 
End If 

If F5 > 1 Then 
LAB2_SOL2.Text25 = "Supecritico" 
End If 

If F6 < 1 Then 
LAB2_SOL2.Text26 = "SubCritico" 
End If 

If F6 = 1 Then 
LAB2_SOL2.Text26 = "critico" 
End If 

If F6 > 1 Then 
LAB2_SOL2.Text26 = "Supecritico" 
End If 

If F7 < 1 Then 
LAB2_SOL2.Text27 = "SubCritico"

137 
End If 

If F7 = 1 Then 
LAB2_SOL2.Text27 = "critico" 
End If 

If F7 > 1 Then 
LAB2_SOL2.Text27 = "Supecritico" 
End If 

If F8 < 1 Then 
LAB2_SOL2.Text28 = "SubCritico" 
End If 

If F8 = 1 Then 
LAB2_SOL2.Text28 = "critico" 
End If 

If F8 > 1 Then 
LAB2_SOL2.Text28 = "Supecritico" 
End If 

If F9 < 1 Then 
LAB2_SOL2.Text29 = "SubCritico" 
End If 

If F9 = 1 Then 
LAB2_SOL2.Text29 = "critico" 
End If 

If F9 > 1 Then 
LAB2_SOL2.Text29 = "Supecritico" 
End If 

If F10 < 1 Then 
LAB2_SOL2.Text30 = "SubCritico" 
End If 

If F10 = 1 Then 
LAB2_SOL2.Text30 = "critico" 
End If 

If F10 > 1 Then 
LAB2_SOL2.Text30 = "Supecritico" 
End If 

Y21 = CCur((YA1 / 2) * (­1 + (1 + 8 * (F1) ^ 2) ^ (0.5))) 
Y22 = CCur((YA2 / 2) * (­1 + (1 + 8 * (F2) ^ 2) ^ (0.5))) 
Y23 = CCur((YA3 / 2) * (­1 + (1 + 8 * (F3) ^ 2) ^ (0.5))) 
Y24 = CCur((YA4 / 2) * (­1 + (1 + 8 * (F4) ^ 2) ^ (0.5))) 
Y25 = CCur((YA5 / 2) * (­1 + (1 + 8 * (F5) ^ 2) ^ (0.5))) 
Y26 = CCur((YA6 / 2) * (­1 + (1 + 8 * (F6) ^ 2) ^ (0.5))) 
Y27 = CCur((YA7 / 2) * (­1 + (1 + 8 * (F7) ^ 2) ^ (0.5)))

138 
Y28 = CCur((YA8 / 2) * (­1 + (1 + 8 * (F8) ^ 2) ^ (0.5))) 
Y29 = CCur((YA9 / 2) * (­1 + (1 + 8 * (F9) ^ 2) ^ (0.5))) 
Y30 = CCur((YA10 / 2) * (­1 + (1 + 8 * (F10) ^ 2) ^ (0.5))) 

LAB2_SOL2.Text31 = CCur(Round(Y21, 4)) 
LAB2_SOL2.Text32 = CCur(Round(Y22, 4)) 
LAB2_SOL2.Text33 = CCur(Round(Y23, 4)) 
LAB2_SOL2.Text34 = CCur(Round(Y24, 4)) 
LAB2_SOL2.Text35 = CCur(Round(Y25, 4)) 
LAB2_SOL2.Text36 = CCur(Round(Y26, 4)) 
LAB2_SOL2.Text37 = CCur(Round(Y27, 4)) 
LAB2_SOL2.Text38 = CCur(Round(Y28, 4)) 
LAB2_SOL2.Text39 = CCur(Round(Y29, 4)) 
LAB2_SOL2.Text40 = CCur(Round(Y30, 4)) 

D1 = CCur((Y21 ­ YA1) ^ 3 / (4 * Y21 * YA1)) 


D2 = CCur((Y22 ­ YA2) ^ 3 / (4 * Y22 * YA2)) 
D3 = CCur((Y23 ­ YA3) ^ 3 / (4 * Y23 * YA3)) 
D4 = CCur((Y24 ­ YA4) ^ 3 / (4 * Y24 * YA4)) 
D5 = CCur((Y25 ­ YA5) ^ 3 / (4 * Y25 * YA5)) 
D6 = CCur((Y26 ­ YA6) ^ 3 / (4 * Y26 * YA6)) 
D7 = CCur((Y27 ­ YA7) ^ 3 / (4 * Y27 * YA7)) 
D8 = CCur((Y28 ­ YA8) ^ 3 / (4 * Y28 * YA8)) 
D9 = CCur((Y29 ­ YA9) ^ 3 / (4 * Y29 * YA9)) 
D10 = CCur((Y30 ­ YA10) ^ 3 / (4 * Y30 * YA10)) 

LAB2_SOL2.Text41 = CCur(Round(D1, 4)) 
LAB2_SOL2.Text42 = CCur(Round(D2, 4)) 
LAB2_SOL2.Text43 = CCur(Round(D3, 4)) 
LAB2_SOL2.Text44 = CCur(Round(D4, 4)) 
LAB2_SOL2.Text45 = CCur(Round(D5, 4)) 
LAB2_SOL2.Text46 = CCur(Round(D6, 4)) 
LAB2_SOL2.Text47 = CCur(Round(D7, 4)) 
LAB2_SOL2.Text48 = CCur(Round(D8, 4)) 
LAB2_SOL2.Text49 = CCur(Round(D9, 4)) 
LAB2_SOL2.Text50 = CCur(Round(D10, 4)) 

P1 = CCur(9790 * D1 * QM) 
P2 = CCur(9790 * D2 * QM) 
P3 = CCur(9790 * D3 * QM) 
P4 = CCur(9790 * D4 * QM) 
P5 = CCur(9790 * D5 * QM) 
P6 = CCur(9790 * D6 * QM) 
P7 = CCur(9790 * D7 * QM) 
P8 = CCur(9790 * D8 * QM) 
P9 = CCur(9790 * D9 * QM) 
P10 = CCur(9790 * D10 * QM) 

LAB2_SOL2.Text51 = CCur(Round(P1, 3)) 
LAB2_SOL2.Text52 = CCur(Round(P2, 3)) 
LAB2_SOL2.Text53 = CCur(Round(P3, 3)) 
LAB2_SOL2.Text54 = CCur(Round(P4, 3)) 
LAB2_SOL2.Text55 = CCur(Round(P5, 3)) 
LAB2_SOL2.Text56 = CCur(Round(P6, 3)) 
LAB2_SOL2.Text57 = CCur(Round(P7, 3)) 
LAB2_SOL2.Text58 = CCur(Round(P8, 3)) 
LAB2_SOL2.Text59 = CCur(Round(P9, 3)) 
LAB2_SOL2.Text60 = CCur(Round(P10, 3))

139 
LAB2_SOL3.Text1 = CCur(Round(HAC1, 4)) 
LAB2_SOL3.Text2 = CCur(Round(HAC2, 4)) 
LAB2_SOL3.Text3 = CCur(Round(HAC3, 4)) 
LAB2_SOL3.Text4 = CCur(Round(HAC4, 4)) 
LAB2_SOL3.Text5 = CCur(Round(HAC5, 4)) 
LAB2_SOL3.Text6 = CCur(Round(HAC6, 4)) 
LAB2_SOL3.Text7 = CCur(Round(HAC7, 4)) 
LAB2_SOL3.Text8 = CCur(Round(HAC8, 4)) 
LAB2_SOL3.Text9 = CCur(Round(HAC9, 4)) 
LAB2_SOL3.Text10 = CCur(Round(HAC10, 4)) 

LAB2_SOL3.Text11 = CCur(Round(YA1, 4)) 
LAB2_SOL3.Text12 = CCur(Round(YA2, 4)) 
LAB2_SOL3.Text13 = CCur(Round(YA3, 4)) 
LAB2_SOL3.Text14 = CCur(Round(YA4, 4)) 
LAB2_SOL3.Text15 = CCur(Round(YA5, 4)) 
LAB2_SOL3.Text16 = CCur(Round(YA6, 4)) 
LAB2_SOL3.Text17 = CCur(Round(YA7, 4)) 
LAB2_SOL3.Text18 = CCur(Round(YA8, 4)) 
LAB2_SOL3.Text19 = CCur(Round(YA9, 4)) 
LAB2_SOL3.Text20 = CCur(Round(YA10, 4)) 

LAB2_SOL3.Text21 = CCur(Round(Y21, 4)) 
LAB2_SOL3.Text22 = CCur(Round(Y22, 4)) 
LAB2_SOL3.Text23 = CCur(Round(Y23, 4)) 
LAB2_SOL3.Text24 = CCur(Round(Y24, 4)) 
LAB2_SOL3.Text25 = CCur(Round(Y25, 4)) 
LAB2_SOL3.Text26 = CCur(Round(Y26, 4)) 
LAB2_SOL3.Text27 = CCur(Round(Y27, 4)) 
LAB2_SOL3.Text28 = CCur(Round(Y28, 4)) 
LAB2_SOL3.Text29 = CCur(Round(Y29, 4)) 
LAB2_SOL3.Text30 = CCur(Round(Y30, 4)) 

FEO1 = CCur((((HAC1) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC1) ^ 2)))) 
FEO2 = CCur((((HAC2) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC2) ^ 2)))) 
FEO3 = CCur((((HAC3) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC3) ^ 2)))) 
FEO4 = CCur((((HAC4) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC4) ^ 2)))) 
FEO5 = CCur((((HAC5) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC5) ^ 2)))) 
FEO6 = CCur((((HAC6) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC6) ^ 2)))) 
FEO7 = CCur((((HAC7) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC7) ^ 2)))) 
FEO8 = CCur((((HAC8) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC8) ^ 2)))) 
FEO9 = CCur((((HAC9) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC9) ^ 2)))) 
FEO10 = CCur((((HAC10) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((HAC10) ^ 2)))) 

FE11 = CCur((((YA1) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA1) ^ 2)))) 
FE12 = CCur((((YA2) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA2) ^ 2)))) 
FE13 = CCur((((YA3) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA3) ^ 2)))) 
FE14 = CCur((((YA4) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA4) ^ 2)))) 
FE15 = CCur((((YA5) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA5) ^ 2)))) 
FE16 = CCur((((YA6) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA6) ^ 2)))) 
FE17 = CCur((((YA7) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA7) ^ 2)))) 
FE18 = CCur((((YA8) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA8) ^ 2)))) 
FE19 = CCur((((YA9) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA9) ^ 2)))) 
FE110 = CCur((((YA10) ^ 2) / 2) + (((QB) ^ 2) / (9.81 * ((YA10) ^ 2))))

140 
FB1 = CCur(u * QB * (FEO1 ­ FE11)) 
FB2 = CCur(u * QB * (FEO2 ­ FE12)) 
FB3 = CCur(u * QB * (FEO3 ­ FE13)) 
FB4 = CCur(u * QB * (FEO4 ­ FE14)) 
FB5 = CCur(u * QB * (FEO5 ­ FE15)) 
FB6 = CCur(u * QB * (FEO6 ­ FE16)) 
FB7 = CCur(u * QB * (FEO7 ­ FE17)) 
FB8 = CCur(u * QB * (FEO8 ­ FE18)) 
FB9 = CCur(u * QB * (FEO9 ­ FE19)) 
FB10 = CCur(u * QB * (FEO10 ­ FE110)) 

LAB2_SOL3.Text31 = CCur(Round(FEO1, 4)) 
LAB2_SOL3.Text32 = CCur(Round(FEO2, 4)) 
LAB2_SOL3.Text33 = CCur(Round(FEO3, 4)) 
LAB2_SOL3.Text34 = CCur(Round(FEO4, 4)) 
LAB2_SOL3.Text35 = CCur(Round(FEO5, 4)) 
LAB2_SOL3.Text36 = CCur(Round(FEO6, 4)) 
LAB2_SOL3.Text37 = CCur(Round(FEO7, 4)) 
LAB2_SOL3.Text38 = CCur(Round(FEO8, 4)) 
LAB2_SOL3.Text39 = CCur(Round(FEO9, 4)) 
LAB2_SOL3.Text40 = CCur(Round(FEO10, 4)) 

LAB2_SOL3.Text41 = CCur(Round(FE11, 4)) 
LAB2_SOL3.Text42 = CCur(Round(FE12, 4)) 
LAB2_SOL3.Text43 = CCur(Round(FE13, 4)) 
LAB2_SOL3.Text44 = CCur(Round(FE14, 4)) 
LAB2_SOL3.Text45 = CCur(Round(FE15, 4)) 
LAB2_SOL3.Text46 = CCur(Round(FE16, 4)) 
LAB2_SOL3.Text47 = CCur(Round(FE17, 4)) 
LAB2_SOL3.Text48 = CCur(Round(FE18, 4)) 
LAB2_SOL3.Text49 = CCur(Round(FE19, 4)) 
LAB2_SOL3.Text50 = CCur(Round(FE110, 4)) 

LAB2_SOL3.Text51 = CCur(Round(FB1, 4)) 
LAB2_SOL3.Text52 = CCur(Round(FB2, 4)) 
LAB2_SOL3.Text53 = CCur(Round(FB3, 4)) 
LAB2_SOL3.Text54 = CCur(Round(FB4, 4)) 
LAB2_SOL3.Text55 = CCur(Round(FB5, 4)) 
LAB2_SOL3.Text56 = CCur(Round(FB6, 4)) 
LAB2_SOL3.Text57 = CCur(Round(FB7, 4)) 
LAB2_SOL3.Text58 = CCur(Round(FB8, 4)) 
LAB2_SOL3.Text59 = CCur(Round(FB9, 4)) 
LAB2_SOL3.Text60 = CCur(Round(FB10, 4)) 

LAB2_SOL3.Text61 = Round(CCur(QB), 4) 

LAB2_ERROR.Text1 = CCur(Round(HAC1, 4)) 
LAB2_ERROR.Text2 = CCur(Round(HAC2, 4)) 
LAB2_ERROR.Text3 = CCur(Round(HAC3, 4)) 
LAB2_ERROR.Text4 = CCur(Round(HAC4, 4)) 
LAB2_ERROR.Text5 = CCur(Round(HAC5, 4)) 
LAB2_ERROR.Text6 = CCur(Round(HAC6, 4)) 
LAB2_ERROR.Text7 = CCur(Round(HAC7, 4)) 
LAB2_ERROR.Text8 = CCur(Round(HAC8, 4)) 
LAB2_ERROR.Text9 = CCur(Round(HAC9, 4)) 
LAB2_ERROR.Text10 = CCur(Round(HAC10, 4))

141 
LAB2_ERROR.Text11 = CCur(Round(HAR1, 4)) 
LAB2_ERROR.Text12 = CCur(Round(HAR2, 4)) 
LAB2_ERROR.Text13 = CCur(Round(HAR3, 4)) 
LAB2_ERROR.Text14 = CCur(Round(HAR4, 4)) 
LAB2_ERROR.Text15 = CCur(Round(HAR5, 4)) 
LAB2_ERROR.Text16 = CCur(Round(HAR6, 4)) 
LAB2_ERROR.Text17 = CCur(Round(HAR7, 4)) 
LAB2_ERROR.Text18 = CCur(Round(HAR8, 4)) 
LAB2_ERROR.Text19 = CCur(Round(HAR9, 4)) 
LAB2_ERROR.Text20 = CCur(Round(HAR10, 4)) 

LAB2_ERROR.Text21 = CCur(Round(HDR1, 4)) 
LAB2_ERROR.Text22 = CCur(Round(HDR2, 4)) 
LAB2_ERROR.Text23 = CCur(Round(HDR3, 4)) 
LAB2_ERROR.Text24 = CCur(Round(HDR4, 4)) 
LAB2_ERROR.Text25 = CCur(Round(HDR5, 4)) 
LAB2_ERROR.Text26 = CCur(Round(HDR6, 4)) 
LAB2_ERROR.Text27 = CCur(Round(HDR7, 4)) 
LAB2_ERROR.Text28 = CCur(Round(HDR8, 4)) 
LAB2_ERROR.Text29 = CCur(Round(HDR9, 4)) 
LAB2_ERROR.Text30 = CCur(Round(HDR10, 4)) 

LAB2_ERROR.Text31 = CCur(Round(YA1, 4)) 
LAB2_ERROR.Text32 = CCur(Round(YA2, 4)) 
LAB2_ERROR.Text33 = CCur(Round(YA3, 4)) 
LAB2_ERROR.Text34 = CCur(Round(YA4, 4)) 
LAB2_ERROR.Text35 = CCur(Round(YA5, 4)) 
LAB2_ERROR.Text36 = CCur(Round(YA6, 4)) 
LAB2_ERROR.Text37 = CCur(Round(YA7, 4)) 
LAB2_ERROR.Text38 = CCur(Round(YA8, 4)) 
LAB2_ERROR.Text39 = CCur(Round(YA9, 4)) 
LAB2_ERROR.Text40 = CCur(Round(YA10, 4)) 

LAB2_ERROR.Text41 = CCur(Round(Y21, 4)) 
LAB2_ERROR.Text42 = CCur(Round(Y22, 4)) 
LAB2_ERROR.Text43 = CCur(Round(Y23, 4)) 
LAB2_ERROR.Text44 = CCur(Round(Y24, 4)) 
LAB2_ERROR.Text45 = CCur(Round(Y25, 4)) 
LAB2_ERROR.Text46 = CCur(Round(Y26, 4)) 
LAB2_ERROR.Text47 = CCur(Round(Y27, 4)) 
LAB2_ERROR.Text48 = CCur(Round(Y28, 4)) 
LAB2_ERROR.Text49 = CCur(Round(Y29, 4)) 
LAB2_ERROR.Text50 = CCur(Round(Y30, 4)) 

LAB2_ERROR.Text51 = CCur(Round(Abs((YA1 ­ HAR1) / YA1) * 100, 1)) 
LAB2_ERROR.Text52 = CCur(Round(Abs((YA2 ­ HAR2) / YA2) * 100, 1)) 
LAB2_ERROR.Text53 = CCur(Round(Abs((YA3 ­ HAR3) / YA3) * 100, 1)) 
LAB2_ERROR.Text54 = CCur(Round(Abs((YA4 ­ HAR4) / YA4) * 100, 1)) 
LAB2_ERROR.Text55 = CCur(Round(Abs((YA5 ­ HAR5) / YA5) * 100, 1)) 
LAB2_ERROR.Text56 = CCur(Round(Abs((YA6 ­ HAR6) / YA6) * 100, 1)) 
LAB2_ERROR.Text57 = CCur(Round(Abs((YA7 ­ HAR7) / YA7) * 100, 1)) 
LAB2_ERROR.Text58 = CCur(Round(Abs((YA8 ­ HAR8) / YA8) * 100, 1)) 
LAB2_ERROR.Text59 = CCur(Round(Abs((YA9 ­ HAR9) / YA9) * 100, 1)) 
LAB2_ERROR.Text60 = CCur(Round(Abs((YA10 ­ HAR10) / YA10) * 100, 1))

142 
LAB2_ERROR.Text61 = CCur(Round(Abs((Y21 ­ HDR1) / Y21) * 100, 1)) 
LAB2_ERROR.Text62 = CCur(Round(Abs((Y22 ­ HDR2) / Y22) * 100, 1)) 
LAB2_ERROR.Text63 = CCur(Round(Abs((Y23 ­ HDR3) / Y23) * 100, 1)) 
LAB2_ERROR.Text64 = CCur(Round(Abs((Y24 ­ HDR4) / Y24) * 100, 1)) 
LAB2_ERROR.Text65 = CCur(Round(Abs((Y25 ­ HDR5) / Y25) * 100, 1)) 
LAB2_ERROR.Text66 = CCur(Round(Abs((Y26 ­ HDR6) / Y26) * 100, 1)) 
LAB2_ERROR.Text67 = CCur(Round(Abs((Y27 ­ HDR7) / Y27) * 100, 1)) 
LAB2_ERROR.Text68 = CCur(Round(Abs((Y28 ­ HDR8) / Y28) * 100, 1)) 
LAB2_ERROR.Text69 = CCur(Round(Abs((Y29 ­ HDR9) / Y29) * 100, 1)) 
LAB2_ERROR.Text70 = CCur(Round(Abs(Y30 ­ HDR10 / Y30) * 100, 1)) 

E1 = CCur(Round(Abs((YA1 ­ HAR1) / YA1) * 100, 1)) 
E2 = CCur(Round(Abs((YA2 ­ HAR2) / YA2) * 100, 1)) 
E3 = CCur(Round(Abs((YA3 ­ HAR3) / YA3) * 100, 1)) 
E4 = CCur(Round(Abs((YA4 ­ HAR4) / YA4) * 100, 1)) 
E5 = CCur(Round(Abs((YA5 ­ HAR5) / YA5) * 100, 1)) 
E6 = CCur(Round(Abs((YA6 ­ HAR6) / YA6) * 100, 1)) 
E7 = CCur(Round(Abs((YA7 ­ HAR7) / YA7) * 100, 1)) 
E8 = CCur(Round(Abs((YA8 ­ HAR8) / YA8) * 100, 1)) 
E9 = CCur(Round(Abs((YA9 ­ HAR9) / YA9) * 100, 1)) 
E10 = CCur(Round(Abs((YA10 ­ HAR10) / YA10) * 100, 1)) 

E11 = CCur(Round(Abs((Y21 ­ HDR1) / Y21) * 100, 1)) 
E12 = CCur(Round(Abs((Y22 ­ HDR2) / Y22) * 100, 1)) 
E13 = CCur(Round(Abs((Y23 ­ HDR3) / Y23) * 100, 1)) 
E14 = CCur(Round(Abs((Y24 ­ HDR4) / Y24) * 100, 1)) 
E15 = CCur(Round(Abs((Y25 ­ HDR5) / Y25) * 100, 1)) 
E16 = CCur(Round(Abs((Y26 ­ HDR6) / Y26) * 100, 1)) 
E17 = CCur(Round(Abs((Y27 ­ HDR7) / Y27) * 100, 1)) 
E18 = CCur(Round(Abs((Y28 ­ HDR8) / Y28) * 100, 1)) 
E19 = CCur(Round(Abs((Y29 ­ HDR9) / Y29) * 100, 1)) 
E10 = CCur(Round(Abs((Y30 ­ HDR10) / Y30) * 100, 1)) 

ER = (E1 + E2 + E3 + E4 + E5 + E6 + E7 + E8 + E9 + E10 + E11 + E12 + E13 + E14 + E15E + 16 + 
E17 + E18 + E19 + E20) / 20 

LAB2_ERROR.Text71 = CCur(Round(ER, 1)) 

LAB2_SOL1.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 

End If

143 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 

End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If
End If 
End If 
End If 
End If 
End If 
End If 
End If 

End If 
End If 
End If
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub Option1_Click() 

If Option1 = True Then

144 
Text4.Visible = False 
Text4 = "" 
End If 
If Option1 = True Then 
Text5.Visible = False 
Text5 = "" 
End If 
If Option1 = True Then 
Text6.Visible = False 
Text6 = "" 
End If 
If Option1 = True Then 
Text7.Visible = False 
Text7 = "" 
End If 
If Option1 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option1 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option1 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option1 = True Then 
Text14.Visible = False 
Text14 = "" 
End If 
If Option1 = True Then 
Text15.Visible = False 
Text15 = "" 
End If 
If Option1 = True Then 
Text16.Visible = False 
Text16 = "" 
End If 
If Option1 = True Then 
Text17.Visible = False 
Text17 = "" 
End If 
If Option1 = True Then 
Text18.Visible = False 
Text18 = "" 
End If 
If Option1 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option1 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option1 = True Then 
Text24.Visible = False 
Text24 = "" 
End If

145 
If Option1 = True Then 
Text25.Visible = False 
Text25 = "" 
End If 
If Option1 = True Then 
Text26.Visible = False 
Text26 = "" 
End If 
If Option1 = True Then 
Text27.Visible = False 
Text27 = "" 
End If 
If Option1 = True Then 
Text28.Visible = False 
Text28 = "" 
End If 
If Option1 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option1 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option1 = True Then 
Label4.Visible = False 
End If 
If Option1 = True Then 
Label5.Visible = False 
End If 
If Option1 = True Then 
Label6.Visible = False 
End If 
If Option1 = True Then 
Label7.Visible = False 
End If 
If Option1 = True Then 
Label8.Visible = False 
End If 
If Option1 = True Then 
Label9.Visible = False 
End If 
If Option1 = True Then 
Label10.Visible = False 
End If 

If Option1 = True Then 
Text1.Visible = True 
End If 
If Option1 = True Then 
Text2.Visible = True 
End If 
If Option1 = True Then 
Text3.Visible = True 
End If 
If Option1 = True Then 
Text11.Visible = True 
End If 
If Option1 = True Then

146 
Text12.Visible = True 
End If 
If Option1 = True Then 
Text13.Visible = True 
End If 
If Option1 = True Then 
Text21.Visible = True 
End If 
If Option1 = True Then 
Text22.Visible = True 
End If 
If Option1 = True Then 
Text23.Visible = True 
End If 
If Option1 = True Then 
Label1.Visible = True 
End If 
If Option1 = True Then 
Label1.Visible = True 
End If 
If Option1 = True Then 
Label2.Visible = True 
End If 
If Option1 = True Then 
Label3.Visible = True 
End If 

End Sub 

Private Sub Option10_Click() 

If Option10 = True Then 
Text33.Visible = False 
Text33 = "" 
End If 
If Option10 = True Then 
Text34.Visible = False 
Text34 = "" 
End If 
If Option10 = True Then 
Text37.Visible = False 
Text37 = "" 
End If 
If Option10 = True Then 
Text38.Visible = False 
Text38 = "" 
End If 
If Option10 = True Then 
Text41.Visible = False 
Text41 = "" 
End If 
If Option10 = True Then 
Text42.Visible = False 
Text42 = "" 
End If 
If Option10 = True Then

147 
Label12.Visible = False 
End If 
If Option10 = True Then 
Label13.Visible = False 
End If 

If Option10 = True Then 
Text31.Visible = True 
End If 
If Option10 = True Then 
Text32.Visible = True 
End If 
If Option10 = True Then 
Text35.Visible = True 
End If 
If Option10 = True Then 
Text36.Visible = True 
End If 
If Option10 = True Then 
Text39.Visible = True 
End If 
If Option10 = True Then 
Text40.Visible = True 
End If 
If Option10 = True Then 
Label15.Visible = True 
End If 
If Option10 = True Then 
Label11.Visible = True 
End If 

End Sub 

Private Sub Option11_Click() 

If Option11 = True Then 
Text34.Visible = False 
Text34 = "" 
End If 
If Option11 = True Then 
Text38.Visible = False 
Text38 = "" 
End If 
If Option11 = True Then 
Text42.Visible = False 
Text42 = "" 
End If 
If Option11 = True Then 
Label13.Visible = False 
End If 

If Option11 = True Then 
Text31.Visible = True 
End If 
If Option11 = True Then 
Text32.Visible = True 
End If

148 
If Option11 = True Then 
Text33.Visible = True 
End If 
If Option11 = True Then 
Text35.Visible = True 
End If 
If Option11 = True Then 
Text36.Visible = True 
End If 
If Option11 = True Then 
Text37.Visible = True 
End If 
If Option11 = True Then 
Text39.Visible = True 
End If 
If Option11 = True Then 
Text40.Visible = True 
End If 
If Option11 = True Then 
Text41.Visible = True 
End If 
If Option11 = True Then 
Label15.Visible = True 
End If 
If Option11 = True Then 
Label11.Visible = True 
End If 
If Option11 = True Then 
Label12.Visible = True 
End If 
End Sub 

Private Sub Option12_Click() 

If Option12 = True Then 
Text31.Visible = True 
End If 
If Option12 = True Then 
Text32.Visible = True 
End If 
If Option12 = True Then 
Text33.Visible = True 
End If 
If Option12 = True Then 
Text34.Visible = True 
End If 
If Option12 = True Then 
Text35.Visible = True 
End If 
If Option12 = True Then 
Text36.Visible = True 
End If 
If Option12 = True Then 
Text37.Visible = True 
End If 
If Option12 = True Then 
Text38.Visible = True 
End If

149 
If Option12 = True Then 
Text39.Visible = True 
End If 
If Option12 = True Then 
Text40.Visible = True 
End If 
If Option12 = True Then 
Text41.Visible = True 
End If 
If Option12 = True Then 
Text42.Visible = True 
End If 
If Option12 = True Then 
Label15.Visible = True 
End If 
If Option12 = True Then 
Label11.Visible = True 
End If 
If Option12 = True Then 
Label12.Visible = True 
End If 
If Option12 = True Then 
Label13.Visible = True 
End If 

End Sub 

Private Sub Option2_Click() 

If Option2 = True Then 
Text5.Visible = False 
Text5 = "" 
End If 
If Option2 = True Then 
Text6.Visible = False 
Text6 = "" 
End If 
If Option2 = True Then 
Text7.Visible = False 
Text7 = "" 
End If 
If Option2 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option2 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option2 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option2 = True Then 
Text15.Visible = False 
Text15 = "" 
End If 
If Option2 = True Then 
Text16.Visible = False

150 
Text16 = "" 
End If 
If Option2 = True Then 
Text17.Visible = False 
Text17 = "" 
End If 
If Option2 = True Then 
Text18.Visible = False 
Text18 = "" 
End If 
If Option2 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option2 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option2 = True Then 
Text25.Visible = False 
Text25 = "" 
End If 
If Option2 = True Then 
Text26.Visible = False 
Text26 = "" 
End If 
If Option2 = True Then 
Text27.Visible = False 
Text27 = "" 
End If 
If Option2 = True Then 
Text28.Visible = False 
Text28 = "" 
End If 
If Option2 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option2 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option2 = True Then 
Label5.Visible = False 
End If 
If Option2 = True Then 
Label6.Visible = False 
End If 
If Option2 = True Then 
Label7.Visible = False 
End If 
If Option2 = True Then 
Label8.Visible = False 
End If 
If Option2 = True Then 
Label9.Visible = False 
End If 
If Option2 = True Then 
Label10.Visible = False

151 
End If 

If Option2 = True Then 
Text1.Visible = True 
End If 
If Option2 = True Then 
Text2.Visible = True 
End If 
If Option2 = True Then 
Text3.Visible = True 
End If 
If Option2 = True Then 
Text4.Visible = True 
End If 
If Option2 = True Then 
Text11.Visible = True 
End If 
If Option2 = True Then 
Text12.Visible = True 
End If 
If Option2 = True Then 
Text13.Visible = True 
End If 
If Option2 = True Then 
Text14.Visible = True 
End If 
If Option2 = True Then 
Text21.Visible = True 
End If 
If Option2 = True Then 
Text22.Visible = True 
End If 
If Option2 = True Then 
Text23.Visible = True 
End If 
If Option2 = True Then 
Text24.Visible = True 
End If 
If Option2 = True Then 
Label1.Visible = True 
End If 
If Option2 = True Then 
Label2.Visible = True 
End If 
If Option2 = True Then 
Label3.Visible = True 
End If 
If Option2 = True Then 
Label4.Visible = True 
End If 

End Sub 

Private Sub Option3_Click() 

If Option3 = True Then 
Text5.Visible = False 
Text6 = ""

152 
End If 
If Option3 = True Then 
Text6.Visible = False 
Text6 = "" 
End If 
If Option3 = True Then 
Text7.Visible = False 
Text7 = "" 
End If 
If Option3 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option3 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option3 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option3 = True Then 
Text15.Visible = False 
Text15 = "" 
End If 
If Option3 = True Then 
Text16.Visible = False 
Text16 = "" 
End If 
If Option3 = True Then 
Text17.Visible = False 
Text17 = "" 
End If 
If Option3 = True Then 
Text18.Visible = False 
Text18 = "" 
End If 
If Option3 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option3 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option3 = True Then 
Text25.Visible = False 
Text25 = "" 
End If 
If Option3 = True Then 
Text26.Visible = False 
Text26 = "" 
End If 
If Option3 = True Then 
Text27.Visible = False 
Text27 = "" 
End If 
If Option3 = True Then 
Text28.Visible = False

153 
Text28 = "" 
End If 
If Option3 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option3 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option3 = True Then 
Label5.Visible = False 
End If 
If Option3 = True Then 
Label6.Visible = False 
End If 
If Option3 = True Then 
Label7.Visible = False 
End If 
If Option3 = True Then 
Label8.Visible = False 
End If 
If Option3 = True Then 
Label9.Visible = False 
End If 
If Option3 = True Then 
Label10.Visible = False 
End If 

If Option3 = True Then 
Text1.Visible = True 
End If 
If Option3 = True Then 
Text2.Visible = True 
End If 
If Option3 = True Then 
Text3.Visible = True 
End If 
If Option3 = True Then 
Text4.Visible = True 
End If 
If Option3 = True Then 
Text5.Visible = True 
End If 
If Option3 = True Then 
Text11.Visible = True 
End If 
If Option3 = True Then 
Text12.Visible = True 
End If 
If Option3 = True Then 
Text13.Visible = True 
End If 
If Option3 = True Then 
Text14.Visible = True 
End If 
If Option3 = True Then 
Text15.Visible = True 
End If

154 
If Option3 = True Then 
Text21.Visible = True 
End If 
If Option3 = True Then 
Text22.Visible = True 
End If 
If Option3 = True Then 
Text23.Visible = True 
End If 
If Option3 = True Then 
Text24.Visible = True 
End If 
If Option3 = True Then 
Text25.Visible = True 
End If 
If Option3 = True Then 
Label1.Visible = True 
End If 
If Option3 = True Then 
Label2.Visible = True 
End If 
If Option3 = True Then 
Label3.Visible = True 
End If 
If Option3 = True Then 
Label4.Visible = True 
End If 
If Option3 = True Then 
Label5.Visible = True 
End If 

End Sub 

Private Sub Option4_Click() 

If Option4 = True Then 
Text6.Visible = False 
Text6 = "" 
End If 
If Option4 = True Then 
Text7.Visible = False 
Text7 = "" 
End If 
If Option4 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option4 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option4 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option4 = True Then 
Text16.Visible = False

155 
Text16 = "" 
End If 
If Option4 = True Then 
Text17.Visible = False 
Text17 = "" 
End If 
If Option4 = True Then 
Text18.Visible = False 
Text18 = "" 
End If 
If Option4 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option4 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option4 = True Then 
Text26.Visible = False 
Text26 = "" 
End If 
If Option4 = True Then 
Text27.Visible = False 
Text27 = "" 
End If 
If Option4 = True Then 
Text28.Visible = False 
Text28 = "" 
End If 
If Option4 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option4 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option4 = True Then 
Label6.Visible = False 
End If 
If Option4 = True Then 
Label7.Visible = False 
End If 
If Option4 = True Then 
Label8.Visible = False 
End If 
If Option4 = True Then 
Label9.Visible = False 
End If 
If Option4 = True Then 
Label10.Visible = False 
End If 

If Option4 = True Then 
Text1.Visible = True 
End If 
If Option4 = True Then 
Text2.Visible = True

156 
End If 
If Option4 = True Then 
Text3.Visible = True 
End If 
If Option4 = True Then 
Text4.Visible = True 
End If 
If Option4 = True Then 
Text5.Visible = True 
End If 
If Option4 = True Then 
Text6.Visible = True 
End If 
If Option4 = True Then 
Text11.Visible = True 
End If 
If Option4 = True Then 
Text12.Visible = True 
End If 
If Option4 = True Then 
Text13.Visible = True 
End If 
If Option4 = True Then 
Text14.Visible = True 
End If 
If Option4 = True Then 
Text15.Visible = True 
End If 
If Option4 = True Then 
Text16.Visible = True 
End If 
If Option4 = True Then 
Text21.Visible = True 
End If 
If Option4 = True Then 
Text22.Visible = True 
End If 
If Option4 = True Then 
Text23.Visible = True 
End If 
If Option4 = True Then 
Text24.Visible = True 
End If 
If Option4 = True Then 
Text25.Visible = True 
End If 
If Option4 = True Then 
Text26.Visible = True 
End If 
If Option4 = True Then 
Label1.Visible = True 
End If 
If Option4 = True Then 
Label2.Visible = True 
End If 
If Option4 = True Then 
Label3.Visible = True 
End If 
If Option4 = True Then

157 
Label4.Visible = True 
End If 
If Option4 = True Then 
Label5.Visible = True 
End If 
If Option4 = True Then 
Label6.Visible = True 
End If 

End Sub 

Private Sub Option5_Click() 

If Option5 = True Then 
Text7.Visible = False 
Text7 = "" 
End If 
If Option5 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option5 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option5 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option5 = True Then 
Text17.Visible = False 
Text17 = "" 
End If 
If Option5 = True Then 
Text18.Visible = False 
Text18 = "" 
End If 
If Option5 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option5 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option5 = True Then 
Text27.Visible = False 
Text27 = "" 
End If 
If Option5 = True Then 
Text28.Visible = False 
Text28 = "" 
End If 
If Option5 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option5 = True Then 
Text30.Visible = False

158 
Text30 = "" 
End If 
If Option5 = True Then 
Label7.Visible = False 
End If 
If Option5 = True Then 
Label8.Visible = False 
End If 
If Option5 = True Then 
Label9.Visible = False 
End If 
If Option5 = True Then 
Label10.Visible = False 
End If 

If Option5 = True Then 
Text1.Visible = True 
End If 
If Option5 = True Then 
Text2.Visible = True 
End If 
If Option5 = True Then 
Text3.Visible = True 
End If 
If Option5 = True Then 
Text4.Visible = True 
End If 
If Option5 = True Then 
Text5.Visible = True 
End If 
If Option5 = True Then 
Text6.Visible = True 
End If 
If Option5 = True Then 
Text7.Visible = True 
End If 
If Option5 = True Then 
Text11.Visible = True 
End If 
If Option5 = True Then 
Text12.Visible = True 
End If 
If Option5 = True Then 
Text13.Visible = True 
End If 
If Option5 = True Then 
Text14.Visible = True 
End If 
If Option5 = True Then 
Text15.Visible = True 
End If 
If Option5 = True Then 
Text16.Visible = True 
End If 
If Option5 = True Then 
Text17.Visible = True 
End If 
If Option5 = True Then 
Text21.Visible = True

159 
End If 
If Option5 = True Then 
Text22.Visible = True 
End If 
If Option5 = True Then 
Text23.Visible = True 
End If 
If Option5 = True Then 
Text24.Visible = True 
End If 
If Option5 = True Then 
Text25.Visible = True 
End If 
If Option5 = True Then 
Text26.Visible = True 
End If 
If Option5 = True Then 
Text27.Visible = True 
End If 
If Option5 = True Then 
Label1.Visible = True 
End If 
If Option5 = True Then 
Label2.Visible = True 
End If 
If Option5 = True Then 
Label3.Visible = True 
End If 
If Option5 = True Then 
Label4.Visible = True 
End If 
If Option5 = True Then 
Label5.Visible = True 
End If 
If Option5 = True Then 
Label6.Visible = True 
End If 
If Option5 = True Then 
Label7.Visible = True 
End If 

End Sub 

Private Sub Option6_Click() 

If Option6 = True Then 
Text8.Visible = False 
Text8 = "" 
End If 
If Option6 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option6 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option6 = True Then 
Text18.Visible = False

160 
Text18 = "" 
End If 
If Option6 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option6 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option6 = True Then 
Text28.Visible = False 
Text28 = "" 
End If 
If Option6 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option6 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option6 = True Then 
Label8.Visible = False 
End If 
If Option6 = True Then 
Label9.Visible = False 
End If 
If Option6 = True Then 
Label10.Visible = False 
End If 

If Option6 = True Then 
Text1.Visible = True 
End If 
If Option6 = True Then 
Text2.Visible = True 
End If 
If Option6 = True Then 
Text3.Visible = True 
End If 
If Option6 = True Then 
Text4.Visible = True 
End If 
If Option6 = True Then 
Text5.Visible = True 
End If 
If Option6 = True Then 
Text6.Visible = True 
End If 
If Option6 = True Then 
Text7.Visible = True 
End If 
If Option6 = True Then 
Text8.Visible = True 
End If 
If Option6 = True Then 
Text11.Visible = True 
End If

161 
If Option6 = True Then 
Text12.Visible = True 
End If 
If Option6 = True Then 
Text13.Visible = True 
End If 
If Option6 = True Then 
Text14.Visible = True 
End If 
If Option6 = True Then 
Text15.Visible = True 
End If 
If Option6 = True Then 
Text16.Visible = True 
End If 
If Option6 = True Then 
Text17.Visible = True 
End If 
If Option6 = True Then 
Text18.Visible = True 
End If 
If Option6 = True Then 
Text21.Visible = True 
End If 
If Option6 = True Then 
Text22.Visible = True 
End If 
If Option6 = True Then 
Text23.Visible = True 
End If 
If Option6 = True Then 
Text24.Visible = True 
End If 
If Option6 = True Then 
Text25.Visible = True 
End If 
If Option6 = True Then 
Text26.Visible = True 
End If 
If Option6 = True Then 
Text27.Visible = True 
End If 
If Option6 = True Then 
Text28.Visible = True 
End If 
If Option6 = True Then 
Label1.Visible = True 
End If 
If Option6 = True Then 
Label2.Visible = True 
End If 
If Option6 = True Then 
Label3.Visible = True 
End If 
If Option6 = True Then 
Label4.Visible = True 
End If 
If Option6 = True Then 
Label5.Visible = True

162 
End If 
If Option6 = True Then 
Label6.Visible = True 
End If 
If Option6 = True Then 
Label7.Visible = True 
End If 
If Option6 = True Then 
Label8.Visible = True 
End If 

End Sub 

Private Sub Option7_Click() 

If Option7 = True Then 
Text9.Visible = False 
Text9 = "" 
End If 
If Option7 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option7 = True Then 
Text19.Visible = False 
Text19 = "" 
End If 
If Option7 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option7 = True Then 
Text29.Visible = False 
Text29 = "" 
End If 
If Option7 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option7 = True Then 
Label9.Visible = False 
End If 
If Option7 = True Then 
Label10.Visible = False 
End If 

If Option7 = True Then 
Text1.Visible = True 
End If 
If Option7 = True Then 
Text2.Visible = True 
End If 
If Option7 = True Then 
Text3.Visible = True 
End If 
If Option7 = True Then 
Text4.Visible = True 
End If

163 
If Option7 = True Then 
Text5.Visible = True 
End If 
If Option7 = True Then 
Text6.Visible = True 
End If 
If Option7 = True Then 
Text7.Visible = True 
End If 
If Option7 = True Then 
Text8.Visible = True 
End If 
If Option7 = True Then 
Text9.Visible = True 
End If 
If Option7 = True Then 
Text11.Visible = True 
End If 
If Option7 = True Then 
Text12.Visible = True 
End If 
If Option7 = True Then 
Text13.Visible = True 
End If 
If Option7 = True Then 
Text14.Visible = True 
End If 
If Option7 = True Then 
Text15.Visible = True 
End If 
If Option7 = True Then 
Text16.Visible = True 
End If 
If Option7 = True Then 
Text17.Visible = True 
End If 
If Option7 = True Then 
Text18.Visible = True 
End If 
If Option7 = True Then 
Text19.Visible = True 
End If 
If Option7 = True Then 
Text21.Visible = True 
End If 
If Option7 = True Then 
Text22.Visible = True 
End If 
If Option7 = True Then 
Text23.Visible = True 
End If 
If Option7 = True Then 
Text24.Visible = True 
End If 
If Option7 = True Then 
Text25.Visible = True 
End If 
If Option7 = True Then 
Text26.Visible = True

164 
End If 
If Option7 = True Then 
Text27.Visible = True 
End If 
If Option7 = True Then 
Text28.Visible = True 
End If 
If Option7 = True Then 
Text29.Visible = True 
End If 
If Option7 = True Then 
Label1.Visible = True 
End If 
If Option7 = True Then 
Label2.Visible = True 
End If 
If Option7 = True Then 
Label3.Visible = True 
End If 
If Option7 = True Then 
Label4.Visible = True 
End If 
If Option7 = True Then 
Label5.Visible = True 
End If 
If Option7 = True Then 
Label6.Visible = True 
End If 
If Option7 = True Then 
Label7.Visible = True 
End If 
If Option7 = True Then 
Label8.Visible = True 
End If 
If Option7 = True Then 
Label9.Visible = True 
End If 
End Sub 

Private Sub Option8_Click() 

If Option8 = True Then 
Text10.Visible = False 
Text10 = "" 
End If 
If Option8 = True Then 
Text20.Visible = False 
Text20 = "" 
End If 
If Option8 = True Then 
Text30.Visible = False 
Text30 = "" 
End If 
If Option8 = True Then 
Label10.Visible = False 
End If 

If Option8 = True Then 
Text1.Visible = True

165 
End If 
If Option8 = True Then 
Text2.Visible = True 
End If 
If Option8 = True Then 
Text3.Visible = True 
End If 
If Option8 = True Then 
Text4.Visible = True 
End If 
If Option8 = True Then 
Text5.Visible = True 
End If 
If Option8 = True Then 
Text6.Visible = True 
End If 
If Option8 = True Then 
Text7.Visible = True 
End If 
If Option8 = True Then 
Text8.Visible = True 
End If 
If Option8 = True Then 
Text9.Visible = True 
End If 
If Option8 = True Then 
Text10.Visible = True 
End If 
If Option8 = True Then 
Text11.Visible = True 
End If 
If Option8 = True Then 
Text12.Visible = True 
End If 
If Option8 = True Then 
Text13.Visible = True 
End If 
If Option8 = True Then 
Text14.Visible = True 
End If 
If Option8 = True Then 
Text15.Visible = True 
End If 
If Option8 = True Then 
Text16.Visible = True 
End If 
If Option8 = True Then 
Text17.Visible = True 
End If 
If Option8 = True Then 
Text18.Visible = True 
End If 
If Option8 = True Then 
Text19.Visible = True 
End If 
If Option8 = True Then 
Text20.Visible = True 
End If 
If Option8 = True Then

166 
Text21.Visible = True 
End If 
If Option8 = True Then 
Text22.Visible = True 
End If 
If Option8 = True Then 
Text23.Visible = True 
End If 
If Option8 = True Then 
Text24.Visible = True 
End If 
If Option8 = True Then 
Text25.Visible = True 
End If 
If Option8 = True Then 
Text26.Visible = True 
End If 
If Option8 = True Then 
Text27.Visible = True 
End If 
If Option8 = True Then 
Text28.Visible = True 
End If 
If Option8 = True Then 
Text29.Visible = True 
End If 
If Option8 = True Then 
Text30.Visible = True 
End If 
If Option8 = True Then 
Label1.Visible = True 
End If 
If Option8 = True Then 
Label2.Visible = True 
End If 
If Option8 = True Then 
Label3.Visible = True 
End If 
If Option8 = True Then 
Label4.Visible = True 
End If 
If Option8 = True Then 
Label5.Visible = True 
End If 
If Option8 = True Then 
Label6.Visible = True 
End If 
If Option8 = True Then 
Label7.Visible = True 
End If 
If Option8 = True Then 
Label8.Visible = True 
End If 
If Option8 = True Then 
Label9.Visible = True 
End If 
If Option8 = True Then 
Label10.Visible = True 
End If

167 
End Sub 

Private Sub Option9_Click() 
If Option9 = True Then 
Text32.Visible = False 
Text32 = "" 
End If 
If Option9 = True Then 
Text33.Visible = False 
Text33 = "" 
End If 
If Option9 = True Then 
Text34.Visible = False 
Text34 = "" 
End If 
If Option9 = True Then 
Text36.Visible = False 
Text36 = "" 
End If 
If Option9 = True Then 
Text37.Visible = False 
Text37 = "" 
End If 
If Option9 = True Then 
Text38.Visible = False 
Text38 = "" 
End If 
If Option9 = True Then 
Text40.Visible = False 
Text40 = "" 
End If 
If Option9 = True Then 
Text41.Visible = False 
Text41 = "" 
End If 
If Option9 = True Then 
Text42.Visible = False 
Text42 = "" 
End If 
If Option9 = True Then 
Label11.Visible = False 
End If 
If Option9 = True Then 
Label12.Visible = False 
End If 
If Option9 = True Then 
Label13.Visible = False 
End If 

If Option9 = True Then 
Text31.Visible = True 
End If 
If Option9 = True Then 
Text35.Visible = True 
End If 
If Option9 = True Then 
Text39.Visible = True 
End If 
If Option9 = True Then

168 
Label15.Visible = True 
End If 

End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 

End Sub 

Private Sub Text10_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text11_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text12_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text13_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If

169 
End If 
End Sub 

Private Sub Text14_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text15_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text16_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text17_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text18_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text19_KeyPress(KeyAscii As Integer)

170 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text20_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text21_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text22_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text23_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then

171 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text24_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text25_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text26_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text27_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text28_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

172 
Private Sub Text29_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text30_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text31_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text32_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text33_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If

173 
End If 
End Sub 

Private Sub Text34_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text35_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text36_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text37_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text38_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text39_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

174 
Private Sub Text4_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text40_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text41_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text42_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text43_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 
Private Sub Text44_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text5_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer

175 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text6_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text7_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text8_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text9_KeyPress(KeyAscii As Integer) 

Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0

176 
End If 
End If 
End Sub 

FORMULARIO 2 

Private Sub Command1_Click() 
LAB2_SOL2.Show 
Unload Me 

End Sub 

Private Sub dlfkslfklkfl_Click() 
End 

End Sub 

Private Sub KJFSDJKDJSFK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLDKFLKSDLFKSD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KLKCXLÑKKLBF_Click() 
LAB2_SOL1.PrintForm 

End Sub 

Private Sub MLDKFLDSKLF_Click() 
PRAC2.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 3 

Private Sub Command1_Click() 
LAB2_SOL3.Show 
Unload Me 
End Sub 

Private Sub Command2_Click() 
LAB2_ECUA.Show 
End Sub 

Private Sub JKLDKLFKSDLFKSDLF_Click() 
LAB2_SOL2.PrintForm 

End Sub

177 
Private Sub KDJSDJKFJDFKL_Click() 
LAB2_SOL1.Show 
Unload Me 

End Sub 

Private Sub KLDJFKDSFKLSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLDJFKSDJFKLS_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KLKDLKFLSDKF_Click() 
End 

End Sub 

FORMULARIO NUMERO 4 

Private Sub Command1_Click() 

Dim DONDE, RANGO As String 
Dim RES As Long 

Dim EXCEL As Object 
Dim LIBRO As Object 
Set EXCEL = CreateObject("excel.Application") 

'DONDE = "C:\unisalle\LAB_HIDRAULICA_2.xls" 
DONDE = "C:\Archivos de programa\DISCAN\CRAK\LAB_HIDRAULICA_2.xls" 

Set CALCULOS = EXCEL.Workbooks.Open(DONDE) 

CALCULOS.Worksheets(1).Cells(31, 2) = Text1 
CALCULOS.Worksheets(1).Cells(32, 2) = Text2 
CALCULOS.Worksheets(1).Cells(33, 2) = Text3 
CALCULOS.Worksheets(1).Cells(34, 2) = Text4 
CALCULOS.Worksheets(1).Cells(35, 2) = Text5 
CALCULOS.Worksheets(1).Cells(36, 2) = Text6 
CALCULOS.Worksheets(1).Cells(37, 2) = Text7 
CALCULOS.Worksheets(1).Cells(38, 2) = Text8 
CALCULOS.Worksheets(1).Cells(39, 2) = Text9 
CALCULOS.Worksheets(1).Cells(40, 2) = Text10 

CALCULOS.Worksheets(1).Cells(31, 3) = Text11 
CALCULOS.Worksheets(1).Cells(32, 3) = Text12 
CALCULOS.Worksheets(1).Cells(33, 3) = Text13 
CALCULOS.Worksheets(1).Cells(34, 3) = Text14 
CALCULOS.Worksheets(1).Cells(35, 3) = Text15 
CALCULOS.Worksheets(1).Cells(36, 3) = Text16 
CALCULOS.Worksheets(1).Cells(37, 3) = Text17

178 
CALCULOS.Worksheets(1).Cells(38, 3) = Text18 
CALCULOS.Worksheets(1).Cells(39, 3) = Text29 
CALCULOS.Worksheets(1).Cells(40, 3) = Text20 

CALCULOS.Worksheets(1).Cells(31, 4) = Text21 
CALCULOS.Worksheets(1).Cells(32, 4) = Text22 
CALCULOS.Worksheets(1).Cells(33, 4) = Text23 
CALCULOS.Worksheets(1).Cells(34, 4) = Text24 
CALCULOS.Worksheets(1).Cells(35, 4) = Text25 
CALCULOS.Worksheets(1).Cells(36, 4) = Text26 
CALCULOS.Worksheets(1).Cells(37, 4) = Text27 
CALCULOS.Worksheets(1).Cells(38, 4) = Text28 
CALCULOS.Worksheets(1).Cells(39, 4) = Text29 
CALCULOS.Worksheets(1).Cells(40, 4) = Text30 

CALCULOS.Worksheets(1).Cells(30, 5) = Text61 

EXCEL.Visible = True 

Set LIBRO = Nothing 
Set EXCEL = Nothing 
End Sub 

Private Sub Command2_Click() 
LAB2_IMAGEN.Show 

End Sub 

Private Sub Command3_Click() 
End 
Unload Me 
End Sub 

Private Sub Command4_Click() 
LAB2_ERROR.Show 
End Sub 

Private Sub DFJKDJFKLDKSFL_Click() 
End 

End Sub 

Private Sub DFKLGKLDFKGKDFL_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub JKFJVKFKDKLF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLDFKKFDSFLDKS_Click() 
LAB2_SOL3.PrintForm 

End Sub

179 
Private Sub LDKLÑKFLDSKFL_Click() 
LAB2_SOL2.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 5 

Private Sub DFGFDERRRR_Click() 
End 

End Sub 

Private Sub DKKFLDKFLDKLF_Click() 
LAB2_ERROR.PrintForm 

End Sub 

Private Sub FrameXp1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single) 

End Sub 

Private Sub JDKFLKDSLFKSD_Click() 
LAB2_SOL3.Show 
Unload Me 

End Sub 

Private Sub KJSDKJDSKFJKSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LKDKLKDKFLD_Click() 
Form19.Show 
Unload Me 

End Sub 

7.2.3  IMAGENES 

Private Sub Command1_Click() 
LAB2_ECUA.Show 
End Sub 

7.2.4  ECUACIONES USADAS 

Private Sub Label10_Click() 
End Sub

180 
Private Sub DFLKGÑFKLGÑKLF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub FKGKDFKG_Click() 
LAB2_ECUA.PrintForm 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub KDKLFDKLF_Click() 
End 

End Sub 

Private Sub LÑSDLFKDKFLDS_Click() 
MDIForm1.Show 
Unload Me 

End Sub

181 
8.  CRITERIOS DE DISEÑO 

8.1  TODO SOBRE…. 

Private Sub Command1_Click() 

Frame2.Visible = True 
Label1.Visible = True 

Frame6.Visible = False 
Label5.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command10_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False

182 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = True 
Label14.Visible = True 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command11_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False

183 
Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = True 
Label15.Visible = True 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command12_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = True 
Label16.Visible = True 

End Sub 

Private Sub Command2_Click() 

Frame6.Visible = True 
Label5.Visible = True 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False

184 
Label3.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command3_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame4.Visible = True 
Label3.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False

185 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command4_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command5_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False

186 
Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = True 
Label8.Visible = True 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command6_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = True 
Label9.Visible = True 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False

187 
Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command7_Click() 
Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = True 
Label10.Visible = True 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command8_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False

188 
Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = True 
Label10.Visible = True 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub Command9_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = True 
Label7.Visible = True 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = True 
Label11.Visible = True 
Label12.Visible = True 
Label13.Visible = True

189 
Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub DFLKSLDÑFKLÑSDKFS_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub FrameXp1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single) 

End Sub 

Private Sub KSDFKLFL_Click() 
End 

End Sub 

Private Sub LKFGKLFKGLÑFK_Click() 
CRITERIO_DIS_1.PrintForm 

End Sub 

Private Sub LKFLGKFDLÑKDFLÑ_Click() 

Frame6.Visible = False 
Label5.Visible = False 

Frame2.Visible = False 
Label1.Visible = False 

Frame4.Visible = False 
Label3.Visible = False 

Frame8.Visible = False 
Label7.Visible = False 

Frame9.Visible = False 
Label8.Visible = False 

Frame10.Visible = False 
Label9.Visible = False 

Frame11.Visible = False 
Label10.Visible = False 

Frame12.Visible = False 
Label11.Visible = False 
Label12.Visible = False

190 
Label13.Visible = False 

Frame13.Visible = False 
Label14.Visible = False 

Frame15.Visible = False 
Label15.Visible = False 

Frame16.Visible = False 
Label16.Visible = False 

End Sub 

Private Sub LÑDKSFKSLÑKFL_Click() 
Form19.Show 
Unload Me 

End Sub

191 
9.  ANIMACIONES 

9.1  SECCION RECTANGULAR 

Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub 

9.2  SECCION TRAPEZOIDAL 

Private Sub Command1_Click() 

End Sub 

Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub 

9.3  SECCION TRIANGULAR 

Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub 

9.4  SECCION CIRCULAR

192 
Private Sub Label1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub WindowsMediaPlayer1_OpenStateChange(ByVal NewState As Long) 

End Sub

193 
10.  EJERCICIOS DE APLICACION 

10.1  PROFUNDIDADES ALTERNAS 

Private Sub Command1_Click() 

If Text1 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA ENERGIA E(m)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text1 = 0 Then 
MsgBox "EL CAUDAL UNITARIO q(m^3/s)*m NO PUEDE SER CERO(0)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = 0 Then 
MsgBox "LA ENERGIA E(m) NO PUEDE SER CERO(0)", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If (Text2 / Text1) < 0.9 Then 

MsgBox "LOS DATOS ESTAN FUERA DEL RANGO DEL MODELO 
HIDRAULICO Y MATEMATICO, SE HA PRODUCIDO UN DESBORDAMIENTO EN LAS 
ITERACIONES, MODIFICAR EL CAUDAL UNITARIO O LA ENERGIA", 16, "DATOS 
ERRONEOS" 
APLICAC_1.Show 
Text1 = "" 
Text2 = "" 

Else 

Q = CCur(Text1) 
E = CCur(Text2) 

APLICA_2.Text1 = Q 

APLICA_2.Text11 = CCur(Round((Q ^ 2 / 9.81) ^ (1 / 3), 3))

194 
x = 0 

For I = 1 To 100 

x = CCur(Sqr(Q ^ 2 / (19.62 * (E ­ x)))) 
Next I 

Y0 = x 

X1 = Y0 + E / 3 

For I = 1 To 100 

X1 = E ­ Q ^ 2 / (19.62 * X1 ^ 2) 

Next I 

Y1 = X1 

F0 = Sqr(Q ^ 2 / (9.81 * Y0 ^ 3)) 
F1 = Sqr(Q ^ 2 / (9.81 * Y1 ^ 3)) 

If F0 < 1 Then 
APLICA_2.Text4 = "SubCritico" 
End If 

If F0 = 1 Then 
APLICA_2.Text4 = "critico" 
End If 

If F0 > 1 Then 
APLICA_2.Text4 = "Supecritico" 
End If 

If F1 < 1 Then 
APLICA_2.Text7 = "SubCritico" 
End If 

If F1 = 1 Then 
APLICA_2.Text7 = "critico" 
End If 

If F1 > 1 Then 
APLICA_2.Text7 = "Supecritico" 
End If 

APLICA_2.Text2 = Round(Y0, 3) 
APLICA_2.Text5 = Round(Y1, 3) 

APLICA_2.Text3 = Round(F0, 3) 
APLICA_2.Text6 = Round(F1, 3) 

APLICA_2.Text8 = Round(Y0, 3) 
APLICA_2.Text9 = Round(Y1, 3) 

APLICA_2.Show 
Unload Me 

End If

195 
End If 
End If 
End If 

End If 

End Sub 

Private Sub Command2_Click() 

If Text3 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text5 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL TALUD z", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If Text3 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 
If Text5 = 0 Then 
MsgBox "SI EL TALUD z  ES CERO EL CANAL SERA RECTANGULAR", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

QM = CCur(Text3) 
bc = CCur(Text4) 
zc = CCur(Text5) 

X2 = 0 

For I = 1 To 100 

X2 = CCur(((QM) ^ 2 / (9.81 * (bc + zc * X2) ^ 2)) ^ (1 / 3)) 

Next I

196 
YC = CCur(X2) 

AC = CCur((bc + zc * YC) * YC) 

vc = CCur(QM / AC) 

APLICA_3.Text1 = Round(YC, 3) 
APLICA_3.Text4 = Round(YC, 3) 
APLICA_3.Text2 = Round(AC, 3) 
APLICA_3.Text3 = Round(vc, 3) 

APLICA_3.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub Command3_Click() 

If Text7 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text8 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA LA PROFUNDIDAD Yo(m)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text7 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show

197 
Else 
If Text8 = 0 Then 
MsgBox "LA PROFUNDIDAD Yo(m) NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 

B = CCur(Text6) 
Q = CCur(Text7) 
Y0 = CCur(Text8) 

QU = CCur(Q / B) 
E0 = CCur(Y0 + Q ^ 2 / (2 * 9.81 * B ^ 2 * Y0 ^ 2)) 

x = 0 

For I = 1 To 100 

x = (QU ^ 2 / (2 * 9.81 * (E0 ­ x))) ^ 0.5 
Next I 

Y1 = CCur(x) 

YC = CCur((QU ^ 2 / 9.81) ^ 0.5) 

F1 = CCur(QU / (Y1 * (9.81 * Y1) ^ 0.5)) 

Y2 = CCur((Y1 / 2) * (­1 + (1 + 8 * F1 ^ 2) ^ 0.5)) 

DE = (­1) * CCur((Y1 ­ Y2) ^ 3 / (4 * Y1 * Y2)) 

P = CCur(9810 * Q * DE) 

FE0 = CCur((Y0 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y0))) 
FE1 = CCur((Y1 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y1))) 

F = CCur(9810 * B * (FE0 ­ FE1)) 

If F1 < 1 Then 
APLCA_4Text14 = "SubCritico" 
End If 

If F1 = 1 Then 
APLCA_4.Text14 = "critico" 
End If 

If F1 > 1 Then 
APLCA_4.Text14 = "Supecritico" 
End If 

APLCA_4.Text1 = Round(QU, 3) 
APLCA_4.Text2 = Round(E0, 3) 
APLCA_4.Text3 = Round(Y1, 3) 
APLCA_4.Text4 = Round(YC, 3) 
APLCA_4.Text5 = Round(Y0, 3) 
APLCA_4.Text6 = Round(Y1, 3) 
APLCA_4.Text7 = Round(F1, 3)

198 
APLCA_4.Text8 = Round(Y2, 3) 
APLCA_4.Text9 = Round(DE, 3) 
APLCA_4.Text10 = Round(P, 3) 
APLCA_4.Text11 = Round(FE0, 3) 
APLCA_4.Text12 = Round(FE1, 3) 
APLCA_4.Text13 = Round(F, 3) 

APLCA_4.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub DLKFLÑDKFLKDLFKL_Click() 
APLICAC_1.PrintForm 

End Sub 

Private Sub LDKFKDLSFLSDKLÑ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LKLFKDLÑFKÑDKFLÑ_Click() 
End 

End Sub 

Private Sub ÑDFÑDLFÑLDÑ_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If

199 
End If 
End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text4_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text5_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text6_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text7_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text8_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0

200 
End If 
End If 
End Sub 

FORMULARIO NUMERO 2 

Private Sub ERTERTERT_Click() 
End 

End Sub 

Private Sub FDGFDGFDGDF_Click() 
APLICA_2.PrintForm 

End Sub 

Private Sub FGFDGDFGDF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Label1_Click() 

End Sub 

Private Sub RETRTRET_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = True 
APLICAC_1.Frame3.Visible = False 
APLICAC_1.Frame5.Visible = False 
Unload Me 

End Sub 

Private Sub RTERRT_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

10.2  PROFUNDIDAD CRÍTICA 

Private Sub Command1_Click() 

If Text1 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = "" Then

201 
MsgBox "NTRODUZCA UN VALOR PARA LA ENERGIA E(m)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text1 = 0 Then 
MsgBox "EL CAUDAL UNITARIO q(m^3/s)*m NO PUEDE SER CERO(0)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = 0 Then 
MsgBox "LA ENERGIA E(m) NO PUEDE SER CERO(0)", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If (Text2 / Text1) < 0.9 Then 

MsgBox "LOS DATOS ESTAN FUERA DEL RANGO DEL MODELO 
HIDRAULICO Y MATEMATICO, SE HA PRODUCIDO UN DESBORDAMIENTO EN LAS 
ITERACIONES, MODIFICAR EL CAUDAL UNITARIO O LA ENERGIA", 16, "DATOS 
ERRONEOS" 
APLICAC_1.Show 
Text1 = "" 
Text2 = "" 

Else 

Q = CCur(Text1) 
E = CCur(Text2) 

APLICA_2.Text1 = Q 

APLICA_2.Text11 = CCur(Round((Q ^ 2 / 9.81) ^ (1 / 3), 3)) 

x = 0 

For I = 1 To 100 

x = CCur(Sqr(Q ^ 2 / (19.62 * (E ­ x)))) 
Next I 

Y0 = x 

X1 = Y0 + E / 3 

For I = 1 To 100 

X1 = E ­ Q ^ 2 / (19.62 * X1 ^ 2) 

Next I 

Y1 = X1 

F0 = Sqr(Q ^ 2 / (9.81 * Y0 ^ 3))

202 
F1 = Sqr(Q ^ 2 / (9.81 * Y1 ^ 3)) 

If F0 < 1 Then 
APLICA_2.Text4 = "SubCritico" 
End If 

If F0 = 1 Then 
APLICA_2.Text4 = "critico" 
End If 

If F0 > 1 Then 
APLICA_2.Text4 = "Supecritico" 
End If 

If F1 < 1 Then 
APLICA_2.Text7 = "SubCritico" 
End If 

If F1 = 1 Then 
APLICA_2.Text7 = "critico" 
End If 

If F1 > 1 Then 
APLICA_2.Text7 = "Supecritico" 
End If 

APLICA_2.Text2 = Round(Y0, 3) 
APLICA_2.Text5 = Round(Y1, 3) 

APLICA_2.Text3 = Round(F0, 3) 
APLICA_2.Text6 = Round(F1, 3) 

APLICA_2.Text8 = Round(Y0, 3) 
APLICA_2.Text9 = Round(Y1, 3) 

APLICA_2.Show 
Unload Me 

End If 
End If 
End If 
End If 

End If 

End Sub 

Private Sub Command2_Click() 

If Text3 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show

203 
Else 
If Text5 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL TALUD z", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If Text3 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 
If Text5 = 0 Then 
MsgBox "SI EL TALUD z  ES CERO EL CANAL SERA RECTANGULAR", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

QM = CCur(Text3) 
bc = CCur(Text4) 
zc = CCur(Text5) 

X2 = 0 

For I = 1 To 100 

X2 = CCur(((QM) ^ 2 / (9.81 * (bc + zc * X2) ^ 2)) ^ (1 / 3)) 

Next I 

YC = CCur(X2) 

AC = CCur((bc + zc * YC) * YC) 

vc = CCur(QM / AC) 

APLICA_3.Text1 = Round(YC, 3) 
APLICA_3.Text4 = Round(YC, 3) 
APLICA_3.Text2 = Round(AC, 3) 
APLICA_3.Text3 = Round(vc, 3) 

APLICA_3.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If

204 
End If 

End Sub 

Private Sub Command3_Click() 

If Text7 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text8 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA LA PROFUNDIDAD Yo(m)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text7 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 
If Text8 = 0 Then 
MsgBox "LA PROFUNDIDAD Yo(m) NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 

B = CCur(Text6) 
Q = CCur(Text7) 
Y0 = CCur(Text8) 

QU = CCur(Q / B) 
E0 = CCur(Y0 + Q ^ 2 / (2 * 9.81 * B ^ 2 * Y0 ^ 2)) 

x = 0 

For I = 1 To 100 

x = (QU ^ 2 / (2 * 9.81 * (E0 ­ x))) ^ 0.5

205 
Next I 

Y1 = CCur(x) 

YC = CCur((QU ^ 2 / 9.81) ^ 0.5) 

F1 = CCur(QU / (Y1 * (9.81 * Y1) ^ 0.5)) 

Y2 = CCur((Y1 / 2) * (­1 + (1 + 8 * F1 ^ 2) ^ 0.5)) 

DE = (­1) * CCur((Y1 ­ Y2) ^ 3 / (4 * Y1 * Y2)) 

P = CCur(9810 * Q * DE) 

FE0 = CCur((Y0 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y0))) 
FE1 = CCur((Y1 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y1))) 

F = CCur(9810 * B * (FE0 ­ FE1)) 

If F1 < 1 Then 
APLCA_4Text14 = "SubCritico" 
End If 

If F1 = 1 Then 
APLCA_4.Text14 = "critico" 
End If 

If F1 > 1 Then 
APLCA_4.Text14 = "Supecritico" 
End If 

APLCA_4.Text1 = Round(QU, 3) 
APLCA_4.Text2 = Round(E0, 3) 
APLCA_4.Text3 = Round(Y1, 3) 
APLCA_4.Text4 = Round(YC, 3) 
APLCA_4.Text5 = Round(Y0, 3) 
APLCA_4.Text6 = Round(Y1, 3) 
APLCA_4.Text7 = Round(F1, 3) 
APLCA_4.Text8 = Round(Y2, 3) 
APLCA_4.Text9 = Round(DE, 3) 
APLCA_4.Text10 = Round(P, 3) 
APLCA_4.Text11 = Round(FE0, 3) 
APLCA_4.Text12 = Round(FE1, 3) 
APLCA_4.Text13 = Round(F, 3) 

APLCA_4.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub DLKFLÑDKFLKDLFKL_Click()

206 
APLICAC_1.PrintForm 

End Sub 

Private Sub LDKFKDLSFLSDKLÑ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LKLFKDLÑFKÑDKFLÑ_Click() 
End 

End Sub 

Private Sub ÑDFÑDLFÑLDÑ_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text4_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If

207 
End If 
End Sub 

Private Sub Text5_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text6_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text7_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text8_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

FORMULARIO NUMERO 2 

Private Sub DFKLDKFFG_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub DFLDFKFKLGF_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = False 
APLICAC_1.Frame3.Visible = True 
APLICAC_1.Frame5.Visible = False 
Unload Me 

End Sub

208 
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub GFHFFHGFH_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub GHGFHGFH_Click() 
End 

End Sub 

Private Sub KLKDFKSDKFLF_Click() 
APLICA_3.PrintForm 

End Sub 

10.3  RESALTO HIDRAULICO 

Private Sub Command1_Click() 

If Text1 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA ENERGIA E(m)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text1 = 0 Then 
MsgBox "EL CAUDAL UNITARIO q(m^3/s)*m NO PUEDE SER CERO(0)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text2 = 0 Then 
MsgBox "LA ENERGIA E(m) NO PUEDE SER CERO(0)", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If (Text2 / Text1) < 0.9 Then

209 
MsgBox "LOS DATOS ESTAN FUERA DEL RANGO DEL MODELO 
HIDRAULICO Y MATEMATICO, SE HA PRODUCIDO UN DESBORDAMIENTO EN LAS 
ITERACIONES, MODIFICAR EL CAUDAL UNITARIO O LA ENERGIA", 16, "DATOS 
ERRONEOS" 
APLICAC_1.Show 
Text1 = "" 
Text2 = "" 

Else 

Q = CCur(Text1) 
E = CCur(Text2) 

APLICA_2.Text1 = Q 

APLICA_2.Text11 = CCur(Round((Q ^ 2 / 9.81) ^ (1 / 3), 3)) 

X = 0 

For I = 1 To 100 

X = CCur(Sqr(Q ^ 2 / (19.62 * (E ­ X)))) 
Next I 

Y0 = X 

X1 = Y0 + E / 3 

For I = 1 To 100 

X1 = E ­ Q ^ 2 / (19.62 * X1 ^ 2) 

Next I 

Y1 = X1 

F0 = Sqr(Q ^ 2 / (9.81 * Y0 ^ 3)) 
F1 = Sqr(Q ^ 2 / (9.81 * Y1 ^ 3)) 

If F0 < 1 Then 
APLICA_2.Text4 = "SubCritico" 
End If 

If F0 = 1 Then 
APLICA_2.Text4 = "critico" 
End If 

If F0 > 1 Then 
APLICA_2.Text4 = "Supecritico" 
End If 

If F1 < 1 Then 
APLICA_2.Text7 = "SubCritico" 
End If 

If F1 = 1 Then 
APLICA_2.Text7 = "critico" 
End If

210 
If F1 > 1 Then 
APLICA_2.Text7 = "Supecritico" 
End If 

APLICA_2.Text2 = Round(Y0, 3) 
APLICA_2.Text5 = Round(Y1, 3) 

APLICA_2.Text3 = Round(F0, 3) 
APLICA_2.Text6 = Round(F1, 3) 

APLICA_2.Text8 = Round(Y0, 3) 
APLICA_2.Text9 = Round(Y1, 3) 

APLICA_2.Show 
Unload Me 

End If 
End If 
End If 
End If 

End If 

End Sub 

Private Sub Command2_Click() 

If Text3 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text5 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL TALUD z", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 

If Text3 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text4 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 
If Text5 = 0 Then

211 
MsgBox "SI EL TALUD z  ES CERO EL CANAL SERA RECTANGULAR", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

QM = CCur(Text3) 
bc = CCur(Text4) 
zc = CCur(Text5) 

X2 = 0 

For I = 1 To 100 

X2 = CCur(((QM) ^ 2 / (9.81 * (bc + zc * X2) ^ 2)) ^ (1 / 3)) 

Next I 

YC = CCur(X2) 

AC = CCur((bc + zc * YC) * YC) 

vc = CCur(QM / AC) 

APLICA_3.Text1 = Round(YC, 3) 
APLICA_3.Text4 = Round(YC, 3) 
APLICA_3.Text2 = Round(AC, 3) 
APLICA_3.Text3 = Round(vc, 3) 

APLICA_3.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub Command3_Click() 

If Text7 = "" Then 
MsgBox "INTRODUZCA UN VALOR PARA EL CAUDAL Q(m^3/s)", 16, 
"ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = "" Then 
MsgBox "NTRODUZCA UN VALOR PARA LA BASE b(m)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text8 = "" Then

212 
MsgBox "INTRODUZCA UN VALOR PARA LA PROFUNDIDAD Yo(m)", 
16, "ERROR DE COMPLETACION" 
APLICAC_1.Show 

Else 

If Text7 = 0 Then 
MsgBox "EL CAUDAL Q(m^3/s) NO PUEDE SER CERO(0)", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 
If Text6 = 0 Then 
MsgBox "LA BASE b(m) NO PUEDE SER CERO", 16, "ERROR DE 
COMPLETACION" 
APLICAC_1.Show 

Else 
If Text8 = 0 Then 
MsgBox "LA PROFUNDIDAD Yo(m) NO PUEDE SER CERO", 16, "ERROR 
DE COMPLETACION" 
APLICAC_1.Show 

Else 

B = CCur(Text6) 
Q = CCur(Text7) 
Y0 = CCur(Text8) 

QU = CCur(Q / B) 
E0 = CCur(Y0 + Q ^ 2 / (2 * 9.81 * B ^ 2 * Y0 ^ 2)) 

X = 0 

For I = 1 To 100 

X = (QU ^ 2 / (2 * 9.81 * (E0 ­ X))) ^ 0.5 
Next I 

Y1 = CCur(X) 

YC = CCur((QU ^ 2 / 9.81) ^ 0.5) 

F1 = CCur(QU / (Y1 * (9.81 * Y1) ^ 0.5)) 

Y2 = CCur((Y1 / 2) * (­1 + (1 + 8 * F1 ^ 2) ^ 0.5)) 

DE = (­1) * CCur((Y1 ­ Y2) ^ 3 / (4 * Y1 * Y2)) 

P = CCur(9810 * Q * DE) 

FE0 = CCur((Y0 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y0))) 
FE1 = CCur((Y1 ^ 2 / 2) + (QU ^ 2 / (9.81 * Y1))) 

F = CCur(9810 * B * (FE0 ­ FE1)) 

If F1 < 1 Then 
APLCA_4Text14 = "SubCritico"

213 
End If 

If F1 = 1 Then 
APLCA_4.Text14 = "critico" 
End If 

If F1 > 1 Then 
APLCA_4.Text14 = "Supecritico" 
End If 

APLCA_4.Text1 = Round(QU, 3) 
APLCA_4.Text2 = Round(E0, 3) 
APLCA_4.Text3 = Round(Y1, 3) 
APLCA_4.Text4 = Round(YC, 3) 
APLCA_4.Text5 = Round(Y0, 3) 
APLCA_4.Text6 = Round(Y1, 3) 
APLCA_4.Text7 = Round(F1, 3) 
APLCA_4.Text8 = Round(Y2, 3) 
APLCA_4.Text9 = Round(DE, 3) 
APLCA_4.Text10 = Round(P, 3) 
APLCA_4.Text11 = Round(FE0, 3) 
APLCA_4.Text12 = Round(FE1, 3) 
APLCA_4.Text13 = Round(F, 3) 

APLCA_4.Show 
Unload Me 

End If 
End If 
End If 
End If 
End If 
End If 

End Sub 

Private Sub DLKFLÑDKFLKDLFKL_Click() 
APLICAC_1.PrintForm 

End Sub 

Private Sub LDKFKDLSFLSDKLÑ_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LKLFKDLÑFKÑDKFLÑ_Click() 
End 

End Sub 

Private Sub ÑDFÑDLFÑLDÑ_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Text1_KeyPress(KeyAscii As Integer)

214 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text2_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text3_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text4_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text5_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text6_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub

215 
Private Sub Text7_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

Private Sub Text8_KeyPress(KeyAscii As Integer) 
Dim VALOR As Integer 
If KeyAscii <> 8 Then 
If InStr(1, "0123456789,.", Chr(KeyAscii)) = 0 Then 
Beep 
KeyAscii = 0 
End If 
End If 
End Sub 

FORMULARIO NUMERO 2 

Private Sub DFKLFKDLÑFKLÑDF_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = False 
APLICAC_1.Frame3.Visible = False 
APLICAC_1.Frame5.Visible = True 
Unload Me 

End Sub 

Private Sub DLFKDKLFKLÑDFL_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub FFFGFGFDG_Click() 
End 

End Sub 

Private Sub FKLGKFLGKLFFG_Click() 
APLCA_4.PrintForm 

End Sub 

Private Sub Label15_Click() 

End Sub 

Private Sub LFDLÑGLFÑ_Click() 
Form19.Show 
Unload Me 

End Sub

216 
11.  GLOSARIO 

11.1  HIDRAULICA DE CANALES 

Private Sub Command1_Click() 
GLO_A.Show 
End Sub 

Private Sub Command10_Click() 
GLO_M.Show 
End Sub 

Private Sub Command11_Click() 
GLO_N.Show 
End Sub 

Private Sub Command12_Click() 
GLO_P.Show 
End Sub 

Private Sub Command13_Click() 
GLO_R.Show 
End Sub 

Private Sub Command14_Click() 
GLO_S.Show 
End Sub 

Private Sub Command15_Click() 
GLO_T.Show 
End Sub 

Private Sub Command16_Click() 
GLO_V.Show 
End Sub 

Private Sub Command17_Click() 
GLO_W.Show 
End Sub 

Private Sub Command18_Click() 
GLO_Z.Show 
End Sub 

Private Sub Command19_Click() 
GLO_BIBLI.Show 
End Sub 

Private Sub Command2_Click() 
GLO_B.Show 
End Sub

217 
Private Sub Command3_Click() 
GLO_C.Show 
End Sub 

Private Sub Command4_Click() 
GLO_D.Show 
End Sub 

Private Sub Command5_Click() 
GLO_E.Show 
End Sub 

Private Sub Command6_Click() 
GLO_F.Show 
End Sub 

Private Sub Command7_Click() 
GLO_G.Show 
End Sub 

Private Sub Command8_Click() 
GLO_I.Show 
End Sub 

Private Sub Command9_Click() 
GLO_L.Show 
End Sub 

Private Sub FrameXp1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single) 

End Sub 

Private Sub JKSDJFKSDLJF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLDFLÑGFDKLÑK_Click() 
End 

End Sub 

Private Sub LKÑKSDLKFSDKLFS_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LÑKSLDFLKLGF_Click() 
GLOSARIO.PrintForm 

End Sub 

FORMULARIO NUMERO 1 

Private Sub DFGDFGDFGF_Click()

218 
End 

End Sub 

Private Sub JKSDJKFJKLF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub Label1_Click() 

End Sub 

Private Sub LÑSDKLSDKFLSD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LPDSDFLKDLKF_Click() 
GLO_A.PrintForm 

End Sub 

Private Sub SDKLKFSDLÑFK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 2 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub KDJFKDSKLFKKLFSDDS_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KDKFKLGLDFLÑ_Click() 
End 

End Sub 

Private Sub KLDFKLDKFKDLF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub KLSDJFKJKLFJSD_Click()

219 
GLO_B.PrintForm 

End Sub 

Private Sub LDSKFKLF_Click() 
Form19.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 3 

Private Sub KLDFLKSDKFKLFSD_Click() 
GLO_BIBLI.PrintForm 

End Sub 

Private Sub KSDKLFKDFKLSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KSKLKFLSDKLÑF_Click() 
End 

End Sub 

Private Sub Label1_Click() 

End Sub 

Private Sub LDKLFDKLFKLSDF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LSDKLFSDLLÑSDF_Click() 
Form19.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 4 

Private Sub DFFDFDDDDDDD_Click() 
End 

End Sub 

Private Sub JKLDJKLFKLKFSD_Click() 
MDIForm1.Show 
Unload Me

220 
End Sub 

Private Sub KDKLFKDFLK_Click() 
GLO_C.PrintForm 

End Sub 

Private Sub KLFKLGFDKLÑGF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub KLKFDLFKFKLÑDF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Label1_Click() 

End Sub 

FORMULARIO NUMERO 5 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub KDLKSFLDSKFLÑSD_Click() 
End 

End Sub 

Private Sub LKDLKLDSKLFD_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑLDSÑLÑSLDLÑF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub PAGINA_Click() 
GLO_D.PrintForm 

End Sub 

Private Sub TTRRTRRRRRR_Click() 
MDIForm1.Show 
Unload Me 

End Sub

221 
FORMULARIO NUMERO 5 

Private Sub FGÑDFLÑGLÑDF_Click() 
End 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub GHGHGH_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub JDKSJFKJKFF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub JKDJKJFDKSFJKLSD_Click() 
GLO_E.PrintForm 

End Sub 

Private Sub LÑDLÑKFLÑKF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 6 

Private Sub KJSKDJKFKLKSJDF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLDJKFLJDKLSF_Click() 
End 

End Sub 

Private Sub KLDKJKFLKLDSFÑ_Click() 
GLO_F.PrintForm 

End Sub 

Private Sub Label1_Click() 

End Sub

222 
Private Sub LKDFLDLÑFKL_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑDKLKSDFLFKLFD_Click() 
Form19.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 7 

Private Sub DFLKFLDÑKLÑFDKGLÑ_Click() 
End 

End Sub 

Private Sub FGKFDLGKFDG_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JKDJFKLJKFJKSD_Click() 
GLO_G.PrintForm 

End Sub 

Private Sub KLDJKLSDJKLFSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub MGKDFLKGDFKGLDF_Click() 
Form19.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 8 

Private Sub DKFLDKFD_Click() 
GLOSARIO.Show 
Unload Me 

End Sub

223 
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JKDKLFSDJKFKFJKL_Click() 
End 

End Sub 

Private Sub KDJKJSKLF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KKSDKLFÑDKLFF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LKFLKLÑDFKLÑGF_Click() 
GLO_I.PrintForm 

End Sub 

FORMULARIO NUMERO 9 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JKSDJKFSDJKF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KFDKLDFKLGDF_Click() 
GLO_L.PrintForm 

End Sub 

Private Sub KLDKLFJSDKLF_Click() 
End 

End Sub 

Private Sub LDFKLÑFDLGLF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑDSKLFKSDLÑF_Click() 
Form19.Show

224 
Unload Me 

End Sub 

FORMULARIO NUMERO 10 

Private Sub DFJKJGKLDFG_Click() 
End 

End Sub 

Private Sub FLÑLGFKLDÑG_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub KLDSKLFSDF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LÑDKLKFDLÑFDS_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LÑDSKLKFLÑF_Click() 
GLO_M.PrintForm 

End Sub 

FORMULARIO NUMERO 11 

Private Sub DLÑKLÑSDKFL_Click() 
GLO_N.PrintForm 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub

225 
Private Sub JKDJFKLSDJKDF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KLSDLKSDLKDFS_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LÑDFLÑFLÑGKLDFÑ_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑDLÑKFSDLÑKF_Click() 
End 

End Sub 

FORMULARIO NUMERO 12 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JKJDFKLJFD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LÑDFDF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑDKFLÑKLÑFD_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LÑSDLÑFLSDÑLFÑ_Click() 
End 

End Sub 

Private Sub LSDKLKLDKFDSF_Click() 
GLO_P.PrintForm 

End Sub

226 
FORMULARIO NUMERO 13 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub KLDKFKLÑSDFSF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub KLDSFKLÑKDLF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LKLÑKLÑGFGF_Click() 
End 

End Sub 

Private Sub LÑKLDFKLFÑDF_Click() 
GLO_R.PrintForm 

End Sub 

Private Sub ÑLFÑFLÑFSF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 14 

Private Sub DJKJFKLJFDKSL_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub LGKFLÑGKÑDFG_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LKDFLKLÑDFSDDF_Click() 
MDIForm1.Show 
Unload Me

227 
End Sub 

Private Sub LÑKDLFKDKFD_Click() 
GLO_S.PrintForm 

End Sub 

Private Sub ÑDSLÑFLÑFL_Click() 
End 

End Sub 

FORMULARIO NUMERO 15 

Private Sub DKFKLSDKFKDSF_Click() 
GLO_T.PrintForm 

End Sub 

Private Sub DÑFÑDFSDFSDL_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JSDJKFKSDJFSD_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub LDKÑKLKLÑFSDF_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub LKLFKLSDÑFSD_Click() 
End 

End Sub 

FORMULARIO NUMERO 16 

Private Sub DFSDLFLDÑS_Click() 
Form19.Show 
Unload Me

228 
End Sub 

Private Sub Frame1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub LFDLKFLÑSDKDÑSDF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LSKFKLSDFDSF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub SDFKLKSDFKLÑS_Click() 
GLO_V.PrintForm 

End Sub 

Private Sub TRTRTERTER_Click() 
End 

End Sub 

FORMULARIO NUMERO 17 

Private Sub Frame1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub JKLSDLFKLDKSF_Click() 
End 

End Sub 

Private Sub KLFKGKGGF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub KLKSDLKFLÑSDKF_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub KSDLKFLÑSDKFLÑD_Click() 
GLO_W.PrintForm 

End Sub 

Private Sub LSDKLFKDSLFK_Click()

229 
Form19.Show 
Unload Me 

End Sub 

FORMULARIO NUMERO 18 

Private Sub ASDLÑASÑLDSA_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Frame1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single) 

End Sub 

Private Sub LÑKLADÑKFSDFSDFS_Click() 
End 

End Sub 

Private Sub LÑKSDFKFLSDF_Click() 
GLO_Z.PrintForm 

End Sub 

Private Sub MKDFKFLDSFSD_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub ÑDASÑFLSDFLFSDÑ_Click() 
Form19.Show 
Unload Me 

End Sub

230 
12.  ACERCA DE….. 

12.1  AYUDA 

12.1.1  DEL PROGRAMA 

Private Sub Command1_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Command2_Click() 
GLO_BIBLI.Show 
Unload Me 

End Sub 

Private Sub Command3_Click() 
End 

End Sub 

Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) 

End Sub 

12.2  AGRADECIMIENTOS 

Private Sub cmdOK_Click() 
MDIForm1.Show 
Unload Me 

End Sub 

Private Sub Command1_Click() 
Form33.Show 
Unload Me 

End Sub 

Private Sub Command2_Click() 
Form32.Show 
Unload Me 

End Sub 

Private Sub Command3_Click()

231 
Form22.Show 
Unload Me 

End Sub 

Private Sub Command4_Click() 
Form35.Show 
Unload Me 

End Sub 

Private Sub FrameXp1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single) 

End Sub 

FORMULARIO NUMERO 1 

Private Sub cmdOK_Click() 
Form34.Show 
Unload Me 

End Sub 

Private Sub Form_Load() 

Timer1.Interval = 60 
VScroll1.Max = Picture1.Height 
VScroll1.Min = 0 ­ Text3.Height 
VScroll1.Value = VScroll1.Max 

End Sub 

Private Sub Image1_Click() 

End Sub 

Private Sub Text3_Change() 

End Sub 

Private Sub Timer1_Timer() 

If VScroll1.Value >= VScroll1.Min + 80 Then 
VScroll1.Value = VScroll1.Value ­ 35 
Else 
VScroll1.Value = VScroll1.Max 
DoEvents 
End If 
Text3.Top = VScroll1.Value 
Text3.Visible = True 
DoEvents

232 
End Sub 

Private Sub Timer3_Timer() 

End Sub 

Private Sub Timer2_Timer() 

End Sub 

FORMULARI NUMERO 2 

Private Sub cmdOK_Click() 
Form34.Show 
Unload Me 

End Sub 

Private Sub Form_Load() 
Timer1.Interval = 60 
VScroll1.Max = Picture1.Height 
VScroll1.Min = 0 ­ Text3.Height 
VScroll1.Value = VScroll1.Max 

End Sub 

Private Sub Picture1_Click() 

End Sub 

Private Sub Timer1_Timer() 
If VScroll1.Value >= VScroll1.Min + 80 Then 
VScroll1.Value = VScroll1.Value ­ 35 
Else 
VScroll1.Value = VScroll1.Max 
DoEvents 
End If 
Text3.Top = VScroll1.Value 
Text3.Visible = True 
DoEvents 

End Sub 

FORMULARIO NUMERO 3 

Private Sub cmdOK_Click() 
Form34.Show 
Unload Me

233 
End Sub 

Private Sub Form_Load() 
Timer1.Interval = 60 
VScroll1.Max = Picture1.Height 
VScroll1.Min = 0 ­ Text3.Height 
VScroll1.Value = VScroll1.Max 
End Sub 

Private Sub Picture1_Click() 

End Sub 

Private Sub Timer1_Timer() 
If VScroll1.Value >= VScroll1.Min + 80 Then 
VScroll1.Value = VScroll1.Value ­ 35 
Else 
VScroll1.Value = VScroll1.Max 
DoEvents 
End If 
Text3.Top = VScroll1.Value 
Text3.Visible = True 
DoEvents 

End Sub 

FORMULARIO NUMERO 4 

Private Sub cmdOK_Click() 
Form34.Show 
Unload Me 

End Sub 

Private Sub Form_Load() 
Timer1.Interval = 10 
VScroll1.Max = Picture1.Height 
VScroll1.Min = 0 ­ Text3.Height 
VScroll1.Value = VScroll1.Max 

End Sub 

Private Sub Picture1_Click() 

End Sub 

Private Sub Timer2_Timer() 
If VScroll1.Value >= VScroll1.Min + 80 Then 
VScroll1.Value = VScroll1.Value ­ 35 
Else 
VScroll1.Value = VScroll1.Max 
DoEvents 
End If 
Text3.Top = VScroll1.Value 
Text3.Visible = True 
DoEvents 

End Sub

234 
13.  SALIR 

13.1  ESTA SEGURO DE SALIR? 

b Timer1_Timer() 

End Sub 

Private Sub ASDS_Click() 
Form2.Show 
Unload Me 

End Sub 

Private Sub CIRCU_Click() 
Form5.Show 
Unload Me 

End Sub 

Private Sub CVMCVKJCVK_Click() 
Form11.Show 
Unload Me 

End Sub 

Private Sub DLKFDFKFLGLF_Click() 
GENER2.Show 
Unload Me 

End Sub 

Private Sub DSFFGFGFGFD_Click() 
Form26.TEXTRUGOSIDAD = "" 
Form26.Q = "" 
Form26.S = "" 
Form26.L = "" 
Form26.Z = "" 
Form26.V = "" 
Form26.Show 
Unload Me 

End Sub 

Private Sub FDFDFDFDS_Click() 
Form3.Show 
Unload Me 

End Sub 

Private Sub JIJIJIJIJI_Click() 
FORM14.Show 
Unload Me

235 
End Sub 

Private Sub FFGFDGFG_Click() 
PRAC2.Show 
Unload Me 

End Sub 

Private Sub JDJKSDFJFJFK_Click() 
LAB2_ECUA.Show 
Unload Me 

End Sub 

Private Sub JDKJKJDJFKDK_Click() 
GENER.Show 
Unload Me 

End Sub 

Private Sub JJIJKKKOKO_Click() 
Form13.Show 
Unload Me 

End Sub 

Private Sub JKJKJKCDCDF_Click() 
Form12.Show 
Unload Me 

End Sub 

Private Sub JSDJSDFKLSDKLFKSDLÑ_Click() 
LAB1_ECUA.Show 
Unload Me 

End Sub 

Private Sub KDKKVKCVCK_Click() 
Form16.Show 
Unload Me 

End Sub 

Private Sub KFJKDFJKLDJFKLKFKL_Click() 
Form18.Show 
Unload Me 

End Sub 

Private Sub KIJIJJIJIJI_Click() 
Form4.Show 
Unload Me 

End Sub 

Private Sub KJDKFJKSDJFKLSD_Click() 
Form30.Show 
Unload Me

236 
End Sub 

Private Sub KJKFJFKGJKFGJKLFG_Click() 
Form29.Show 
Unload Me 

End Sub 

Private Sub KLSDJKFJKFJKRL_Click() 
Form34.Show 
Unload Me 

End Sub 

Private Sub KOKDFJDFIDJF_Click() 
Dim byt_Salir As Byte 
byt_Salir = MsgBox(" ¿Desea Salir de Open Flow?", vbYesNo + vbQuestion, " SALIR DEL 
PROGRAMA ") 
If byt_Salir = vbYes Then End 

End Sub 

Private Sub MJFDKFLLFKGLFKG_Click() 
Form9.Show 
Unload Me 

End Sub 

Private Sub KSDJFKLJFJDSFJKLSF_Click() 
Form31.Show 
Unload Me 

End Sub 

Private Sub KSJSDKLFJKDLSFJKSD_Click() 
Form20.Show 
Unload Me 

End Sub 

Private Sub LKSDFLKLKFLG_Click() 
CRITERIO_DIS_1.Show 
Unload Me 

End Sub 

Private Sub LÑFLDSLFD_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = False 
APLICAC_1.Frame3.Visible = True 
APLICAC_1.Frame5.Visible = False 
Unload Me 

End Sub 

Private Sub LÑKDLÑFKGLÑFKGÑFL_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = False

237 
APLICAC_1.Frame3.Visible = False 
APLICAC_1.Frame5.Visible = True 
Unload Me 

End Sub 

Private Sub LÑKFKLDFKGLÑF_Click() 
GLOSARIO.Show 
Unload Me 

End Sub 

Private Sub LÑSDKFLKSDLÑFK_Click() 
APLICAC_1.Show 
APLICAC_1.Frame1.Visible = True 
APLICAC_1.Frame3.Visible = False 
APLICAC_1.Frame5.Visible = False 
Unload Me 

End Sub 

Private Sub LSDKFLKLFKSDLFKS_Click() 
Form25.Show 
Unload Me 

End Sub 

Private Sub lskdlskdlkdfklf_Click() 
LAB2_IMAGEN.Show 
Unload Me 

End Sub 

Private Sub OIOIOIOIO_Click() 
Form10.Show 
Unload Me 

End Sub 

Private Sub PLSDFNDJKFJDK_Click() 
Form17.Show 
Unload Me 

End Sub 

Private Sub SECCIONRECTANGULAR_Click() 
Form6.Show 
Unload Me 

End Sub 

Private Sub SECCIONTRAPEZOIDAL_Click() 
Form7.Show 
Unload Me 

End Sub 

Private Sub SECCIONTRIANGULAR_Click()

238 
Form8.Show 
Unload Me 

End Sub 

Private Sub SJDKSJDKS_Click() 
Form15.Show 
Unload Me 
End Sub 

Private Sub SKJDKSJDKSJ_Click() 
Form19.Show 
Unload Me 

End Sub 

Private Sub SKSDJSJKJFG_Click() 
PRAC1.Show 
Unload Me 
MsgBox "Introducir las lecturas de los niveles, de Mayor a Menor en (mm)", 16, 
"AYUDAS DE CALCULO" 
PRAC1.Show 

End Sub

239 
CONTENIDO 

GENERALIDADES  6 

INTRODUCCIÓN  6 
REQUERIMIENTOS DEL SISTEMA  6 
DERECHOS DE AUTOR  7 
RESPONSABILIDADES  7 
AUTORES  7 

ALCANCE GENERAL DEL PROGRAMA OPEN FLOW UNISALLE  8 

REQUISITOS MINIMOS DE EQUIPO  9 

1.0  INSTALACION DE OPEN FLOW UNISALLE  10 

2.0 PANTALLAS E IMÁGENES DEL SOFTWARE OPEN FLOW UNISALLE  13 

2.1 PANTALLA INICIAL  13 


2.2 PANTALLA PRINCIPAL  14 
2.3 PANTALLAS DE CÁLCULO  15 
2.3.1 CALCULO DE ELEMENTOS HIDRÁULICOS Y GEOMÉTRICOS EN FLUJO CRÍTICO  16 
2.3.2 CALCULO DE LA FUERZA ESPECÍFICA EN CANALES ABIERTOS  19 
2.3.3 CALCULO DE ELEMENTOS HIDRÁULICOS Y GEOMÉTRICOS EN FLUJO UNIFORME  22 
2.3.4 CALCULO DEL BORDE LIBRE EN CANALES ABIERTOS  25 
2.3.5 CALCULO DE ELEMENTOS GEOMÉTRICOS  27 
2.3.6 DISEÑO DE CANALES ABIERTOS  31 
2.3.7 LABORATORIOS DE HIDRÁULICA DE CANALES  52 
2.3.8 CRITERIOS DE DISEÑO  82 
2.3.9. ANIMACIONES  85 
2.3.10 EJERCICIOS DE APLICACIÓN.  88


LISTA DE IMÁGENES 

IMAGEN 1 INSTALADOR DEL SOFTWARE OPEN FLOW UNISALLE.  10 


IMAGEN 2 INSTALACIÓN DEL SOFTWARE OPEN FLOW UNISALLE, PRIMERA PANTALLA.  11 
IMAGEN 3 INSTALACIÓN DEL SOFTWARE OPEN FLOW UNISALLE, SEGUNDA PANTALLA.  12 
IMAGEN 4 INSTALACIÓN DEL SOFTWARE OPEN FLOW UNISALLE, TERCERA PANTALLA.  12 
IMAGEN 5 INSTALACIÓN DEL SOFTWARE OPEN FLOW UNISALLE, CUARTA PANTALLA.  13 
IMAGEN 6 PANTALLA INICIAL DEL SOFTWARE OPEN FLOR UNISALLE.  14 
IMAGEN 7 PANTALLA PRINCIPAL DE OPEN FLOR UNISALLE.  15 
IMAGEN 8 MENÚ PARA EL CÁLCULO DEL FLUJO CRITICO DESDE LA PANTALLA PRINCIPAL 16 
IMAGEN 9 PANTALLA DE INGRESO DATOS GENERALES PARA EL CALCULO DEL FLUJO 
CRITICO EN LA SECCIÓN RECTANGULAR  17 
IMAGEN 10 PANTALLA DE RESULTADOS EN EL FLUJO CRITICO DE LA SECCIÓN 
RECTANGULAR.  18 
IMAGEN 11 MENÚ PARA EL CÁLCULO DE LA FUERZA ESPECIFICA DESDE LA PANTALLA 
PRINCIPAL  19 
IMAGEN 12 PANTALLA DE INGRESO DATOS GENERALES PARA EL CALCULO LA FUERZA 
ESPECIFICA EN LA SECCIÓN TRIANGULAR.  20 
IMAGEN 13 PANTALLA DE RESULTADOS DE LA FUERZA ESPECIFICA PARA UNA SECCIÓN 
TRIANGULAR.  21 
IMAGEN 14 MENÚ PARA EL CÁLCULO DEL FLUJO UNIFORME DESDE LA PANTALLA 
PRINCIPAL  22 
IMAGEN 15 PANTALLA DE INGRESO DATOS GENERALES PARA EL CALCULO DEL FLUJO 
UNIFORME EN LA SECCIÓN RECTANGULAR.  23 
IMAGEN 16 PANTALLA DE RESULTADOS EN EL FLUJO UNIFORME EN LA SECCIÓN 
RECTANGULAR.  24 
IMAGEN 17 MENÚ PARA EL CÁLCULO DEL BORDE LIBRE DESDE LA PANTALLA PRINCIPAL  25 
IMAGEN 18 PANTALLA DE INGRESO DATOS GENERALES PARA EL CALCULO DEL BORDE 
LIBRE EN UN CANAL ABIERTO.  26 
IMAGEN 19 PANTALLA DE RESULTADOS EN EL BORDE LIBRE EN CANALES ABIERTOS.  27 
IMAGEN 20 MENÚ PARA EL CÁLCULO DE LOS ELEMENTOS GEOMÉTRICOS EN CANALES 
ABIERTOS DESDE LA  PANTALLA PRINCIPAL.  28 
IMAGEN 21 PANTALLA DE INGRESO DATOS GENERALES PARA EL CALCULO DE LOS 
ELEMENTOS GEOMÉTRICOS EN CANALES ABIERTOS.  30


IMAGEN 22 PANTALLA DE RESULTADOS GENERALES POR EL CALCULO DE LOS ELEMENTOS 
GEOMÉTRICOS EN CANALES ABIERTOS.  31 
IMAGEN 23 MENÚ PARA EL DISEÑO DE CANALES ABIERTOS DESDE LA PANTALLA 
PRINCIPAL.  33 
IMAGEN 24 MENÚ PARA EL DISEÑO DE CANALES ABIERTOS REVESTIDOS DESDE LA 
PANTALLA PRINCIPAL.  34 
IMAGEN 25 PANTALLA DE INGRESO DATOS GENERALES PARA EL DISEÑO DE CANALES 
ABIEROS REVESTIDOS CON SECCIÓN HIDRÁULICAMENTE OPTIMA.  37 
IMAGEN 26  PANTALLA DE RESULTADOS PRIMARIOS GENERALES PARA EL DISEÑO DE 
CANALES REVESTIDOS CON SECCIÓN HIDRÁULICAMENTE OPTIMA.  38 
IMAGEN 27 PANTALLA DATOS PARA EL CALCULO DE LOS COSTOS POR EXCAVACIÓN, 
TRANSPORTE Y REVESTIMIENTO PARA EL DISEÑO DE CANALES REVESTIDOS CON 
SECCIÓN HIDRÁULICAMENTE OPTIMA.  40 
IMAGEN 28 PANTALLA DE RESULTADOS DE COSTOS GENERALES PARA EL DISEÑO DE 
CANALES REVESTIDOS CON SECCIÓN HIDRÁULICAMENTE OPTIMA  41 
IMAGEN 29 MENÚ PARA EL DISEÑO DE CANALES ABIERTOS NO REVESTIDOS DESDE LA 
PANTALLA PRINCIPAL.  42 
IMAGEN 30 PANTALLA DE INGRESO DATOS GENERALES PARA EL DISEÑO DE CANALES 
ABIERTOS NO REVESTIDOS CON VELOCIDAD MÁXIMA PERMISIBLE.  45 
IMAGEN 31 PANTALLA DE RESULTADOS PRIMARIOS GENERALES EN EL DISEÑO DE 
CANALES ABIERTOS NO REVESTIDOS CON VELOCIDAD MÁXIMA PERMISIBLE.  46 
IMAGEN 32 PANTALLA DE RESULTADOS PRIMARIOS GENERALES EN EL DISEÑO DE 
CANALES ABIERTOS NO REVESTIDOS CON VELOCIDAD MÁXIMA PERMISIBLE, CUADRO 
DE ADVERTENCIA.  47 
IMAGEN 33  PANTALLA DE RESULTADOS GENERALES EN EL DISEÑO DE CANALES ABIERTOS 
NO REVESTIDOS CON VELOCIDAD MÁXIMA PERMISIBLE.  48 
IMAGEN 34 PANTALLA DE RESULTADOS GENERALES EN EL DISEÑO DE CANALES ABIERTOS 
NO REVESTIDOS CON VELOCIDAD MÁXIMA PERMISIBLE.  49 
IMAGEN 35 PANTALLA DATOS PARA EL CALCULO DE LOS COSTOS POR EXCAVACIÓN Y 
TRANSPORTE PARA EL DISEÑO DE CANALES NO REVESTIDOS CON VELOCIDAD 
PERMISIBLE.  50 
IMAGEN 36 MENÚ PARA LABORATORIOS DE HIDRÁULICA DE CANALES EN LA UNIVERSIDAD 
DE LA SALLE.  53 
IMAGEN 37 MENÚ DE LABORATORIO “GEOMETRÍA DE LA SECCION” DESDE LA PANTALLA 
PRINCIPAL.  54 
IMAGEN 38 PANTALLA DE INTRODUCCIÓN PARA EL LABORATORIO “GEOMETRÍA DE LA 
SECCION” .  55


IMAGEN 39 PANTALLA INTRODUCCIÓN DATOS CON VENTANA DE DIALOGO PARA EL 
LABORATORIO “GEOMETRÍA DE LA SECCION” .  56 
IMAGEN 40 PANTALLA  DE ENTRADA DE DATOS CON OPCIONES DE DATOS.  57 
IMAGEN 41 PANTALLA PARA ENTRADA DE LECTURAS DE NIVELES.  58 
IMAGEN 42 PANTALLA PARA EL INGRESO DE LOS DATOS DE AFORO DE CAUDAL.  59 
IMAGEN 43 PANTALLA CON DATOS INGRESADOS.  60 
IMAGEN 44 PANTALLA DE RESULTADOS PRIMARIOS.  61 
IMAGEN 45 PANTALLA DE RESULTADOS SECUNDARIOS.  62 
IMAGEN 46 PANTALLA DE RESULTADOS FINALES.  63 
IMAGEN 47 GRAFICA DE LA ENERGÍA ESPECIFICA.  64 
IMAGEN 48 GRAFICA DE LA FUERZA ESPECIFICA.  65 
IMAGEN 49 INGRESO AL MENÚ "ECUACIONES USADAS"  66 
IMAGEN 50 PANTALLA DE ECUACIONES.  67 
IMAGEN 51 PANTALLA DE INTRODUCCIÓN.  68 
IMAGEN 52 INGRESO PARA LA REALIZACIÓN DE LOS CÁLCULOS.  69 
IMAGEN 53 PANTALLA DE ENTRADA.  70 
IMAGEN 54 INGRESO DE DATOS.  71 
IMAGEN 55 PUESTA DE DATOS.  72 
IMAGEN 56 PANTALLA DE RESULTADOS INICIALES DE LA PRACTICA DE LABORATORIO, 
RESULTADOS GENERALES.  73 
IMAGEN 57 PANTALLA DE RESULTADOS DE LA PRACTICA DE LABORATORIO, RESULTADOS 
DE LA PRACTICAS.  74 
IMAGEN 58 PANTALLA DE RESULTADOS DE LA PRACTICA DE LABORATORIO, RESULTADOS 
DE LA PRACTICAS  75 
IMAGEN 59 PANTALLA DE RESULTADOS DE LA PRACTICA DE LABORATORIO, ERROR DE LA 
PRACTICA DEBIDO AL DESARROLLO DE LA PRACTICA.  76 
IMAGEN 60 PANTALLA DE RESULTADOS DE LA PRACTICA DE LABORATORIO, GRAFICAS DE 
ENERGÍA ESPECIFICA PARA DADA DATO.  77 
IMAGEN 62 PANTALLA DE RESULTADOS DE LA PRACTICA DE LABORATORIO, GRAFICAS DE 
FUERZA ESPECIFICA PARA DADA DATO.  78 
IMAGEN 63 PANTALLA DE IMAGEN DE LABORATORIO.  79 
IMAGEN 64 IMÁGENES DE LAS APLICACIONES DEL RESALTO HIDRÁULICO.  80 
IMAGEN 65 PANTALLA PRINCIPAL  81 
IMAGEN 66 PANTALLA DE RESULTADOS.  82 
IMAGEN 67 INGRESO A CRITERIOS DE DISEÑO.  83 
IMAGEN 68 SUBMENÚ "CRITERIOS DE DISEÑO"  84 
IMAGEN 69 MENÚ "DISEÑO DE CANALES"  85


IMAGEN 70 INGRESO A LAS ANIMACIONES.  86 
IMAGEN 71 ACCESO A LA ANIMACIÓN.  87 
IMAGEN 72 PANTALLA DE VISUALIZACION DE LA ANIMACION.  88 
IMAGEN 73 INGRESO A LOS EJERCICIOS DE APLICACIÓN DESDE LA PANTALLA PREINCIPAL 
89


MANUAL DE USUARIO OPEN FLOW UNISALLE 

GENERALIDADES 

INTRODUCCIÓN 

El  presente  programa  fue  creado  para  el  diseño  de  canales  abiertos,  canales 
revestidos  bajo  el  método  de  la  sección  hidráulicamente  óptima  y  canales  no 
revestidos con el método de la velocidad permisible. 

El  programa  además  calcula  los  elementos  geométricos  de  las  principales 
secciones geométricas; calculas los estados de flujo critico y uniforme, determina 
el  borde  libre  para  un  canal,  calcula  la  fuerza  especifica  en  un  canal  para  las 
diferentes  secciones  transversales,  permite  el  desarrollo  de  las  practicas  de 
laboratorio de hidráulica de canales, permite ejecutar aplicaciones didácticas como 
es la determinación de las profundidades alternas, secuentes y criticas en canales 
rectangulares y trapezoidales, análisis del resalto hidráulico. 

Posee  bases  de  datos  con  criterios  para  el  diseño  de  canales,  coeficientes  de 
Manning,  terminología  referente  a  la  hidráulica  de  canales  y  se  muestra  una 
bibliografía técnica para los interesados en ampliar el tema. 

REQUERIMIENTOS DEL SISTEMA 

Para que el programa funcione correctamente, se necesita: 
1. PC con procesador Pentium III o superior 
2. 128 Megas de memoria Ram. 
4. Espacio disponible en disco duro de 1.5Gb. 
5. Unidad de CD o DVD. 
6. Resolución mínima de 600 * 800 píxeles.


7. Periféricos de audio. 

DERECHOS DE AUTOR 

El presente programa está protegido por las leyes nacionales e internacionales de 
derechos de autor. 

RESPONSABILIDADES 

Ni los diseñadores, ni la Universidad De La Salle son responsables de los errores 
e inconsistencias del presente software. Aunque el programa ha sido sometido a 
pruebas de calidad, todos los resultados deben ser estudiados y verificados por el 
usuario. 

AUTORES 

El  programa  fue  creado  por  los  ingenieros  Jairo  Alexander  Barragán  Mendoza, 
Andrés  Ricardo  Reyes  Carrillo,  y  Luís  E.  Acosta  Velásquez;  bajo  la  asesoría  y 
supervisión técnica de los ingenieros Roberto Vázquez Madero de la Universidad 
De La Salle y Juan Fajardo de Tuxstone soluciones y del Departamento técnico de 
C.O.E.C Ltda. 

Bogotá, D.C. Noviembre del año 2001


ALCANCE GENERAL DEL PROGRAMA OPEN FLOW UNISALLE 

NOTA:  El  usuario  del  programa  OPEN  FLOW  UNISALLE,  debe  suponer  que  lo 
que no se indique explícitamente es una LIMITACIÓN. 

La  utilización  de  estos  programas  es  para  los    interesados  en  la  hidráulica  de 
canales,  estudiantes,  docentes,  profesionales  y  todos  aquellos  que  se  sientan 
atraídos  por  el  tema,  se  hace  mención  especial  de  los  estudiantes  de  Ingeniería 
Civil de la Universidad de La Salle. 

Las siguientes son algunas limitaciones que el diseñador o usuario deben tener en 
cuenta. 
1.  Para  los  modelos  matemáticos  e  hidráulicos  que  requieren  iteraciones  se 
utilizan condicionales de cien (100) iteraciones. 
2.  Para  el  desarrollo  de  las  prácticas  de  laboratorio  de  hidráulica  de  canales,  se 
debe  ingresar  todos  los  datos,  se  requieren  diez  lecturas  para  cada  una  de  las 
prácticas modeladas. 
3.  En  la  solución  de  sistemas  de  ecuaciones  lineales  se  utilizo  el  método  de 
aproximaciones sucesivas de Newton. 
4. No se incluye el análisis del flujo crítico para la  sección circular. 
5. No se incluye el análisis del flujo uniforme para la  sección circular. 
6.  En  el  diseño  de  canales  no  se  tiene  en  cuenta  el  efecto  de  la  curvatura  ni  la 
sinuosidad del canal. 
7. En el diseño de canales no revestidos se tienen en cuenta ciento diez y ocho, 
coeficientes  de  Manning  cargados  en  una  base  de  datos  .mdb  que  se  encuentra 
adjunta ala carpeta de archivos del programa. Este archivo puede ser actualizado 
por el usuario de ser necesario.


REQUISITOS MINIMOS DE EQUIPO 

MUY IMPORTANTE: 

Para un buen desempeño del programa de diseño OPEN FLOW UNISALLE, debe 
disponerse mínimo del siguiente equipo: 
1. PC con procesador Pentium III o superior 
2. 128 Megas de memoria Ram. 
4. Espacio disponible en disco duro de 1.5Gb. 
5. Unidad de CD o DVD. 
6. Resolución mínima de 600 * 800 píxeles. 
7. Periféricos de audio.


1.0  INSTALACION DE OPEN FLOW UNISALLE 

Para  la  instalación  de  Open  Flow  Unisalle  en  su  computador,  siga  la  siguiente 
secuencia de imágenes, no modifique ni redirecciones los archivos de instalación. 
En general se debe aceptar a cada ventana de dialogo durante la instalación. 

Imagen 1 Instalador del software Open Flow Unisalle.

10 
Imagen 2 Instalación del software Open Flow Unisalle, primera pantalla.

11 
Imagen 3 Instalación del software Open Flow Unisalle, segunda pantalla. 

Imagen 4 Instalación del software Open Flow Unisalle, tercera pantalla.

12 
Imagen 5 Instalación del software Open Flow Unisalle, cuarta pantalla. 

2.0 PANTALLAS E IMÁGENES DEL SOFTWARE OPEN FLOW UNISALLE 

2.1 PANTALLA INICIAL 

La  pantalla  inicial  es  una  presentación  del  programa  dura  6  segundos  tiene  la 
propiedad  de  ir  variando  la  tonalidad  de  la  ella  en  el  rango  del  azul,  además  el 
titulo  correspondiente  al  nombre  del  programa  tiene  movimiento  cíclico  sobre  la 
pantalla;  si se desea omitir esta presentación se debe dar clic sobre la pantalla.

13 
Imagen 6 Pantalla inicial del software Open Flor Unisalle. 

2.2 PANTALLA PRINCIPAL 

En  la  pantalla  principal  se  encuentran  las  funciones  principales  del  programa  las 
cuales se encuentran como  menús desplegables. Desde esta primera pantalla se 
invocan las rutinas para el cálculo y desarrollo de:
· Flujo critico
· Fuerza especifica
· Flujo uniforme
· Borde libre
· Elementos geométricos
· Diseño de canales
· Laboratorios
· Criterios de diseño
14 
· Animaciones
· Ejercicios de aplicaciones
· Glosario
· Acerca de
· Salir 

Imagen 7 Pantalla principal de Open Flor Unisalle. 

2.3 PANTALLAS DE CÁLCULO 

El acceso de estas pantallas se efectúa por medio de la pantalla principal, en 
estas pantallas se ingresan valores numéricos que corresponden a los datos 
necesarios para efectuar los cálculos y diseños correspondientes.
15
2.3.1 Calculo de elementos hidráulicos y geométricos en flujo crítico 

Para el cálculo del flujo critico, el software Open Flow Unisalle dispone de tres 
opciones, que corresponden a las secciones transversales de canales mas 
utilizadas. 

Imagen 8 Menú para el cálculo del flujo critico desde la pantalla principal 

Para  el  cálculo  del  flujo  crítico  en  cualquiera  de  las  secciones  se  debe  de  dar 
doble clic sobre la sección elegida, a continuación aparecerá la pantalla de ingreso 
para los datos generales. Según la sección transversal seleccionada se tiene que 
para la:
· Sección  rectangular:  Se  debe  de  ingresar  el caudal  “Q”  en  (m 3 /s),  la  base 
“b” en (m) y la aceleración debida a la gravedad “g” en (m/s 2 ).

16 
· Sección  Trapezoidal:  Se debe  de ingresar el  caudal  “Q”  en  (m 3 /s),  la base 
“b” en (m), la aceleración debida a la gravedad “g” en (m/s 2 ) y el talud “z”.
· Sección Triangular: Se debe de ingresar el caudal “Q” en (m 3 /s), el talud “z” 
y la aceleración debida a la gravedad “g” en (m/s 2 ). 

Cada pantalla para el ingreso de datos tiene incorporada una imagen donde ubica 
los datos que deberá incorporar el usuario. Los datos se ingresan tecleando sobre 
cada casilla el valor correspondiente, se puede utilizar la tecla “tab” para usuarios 
que omitan utilizar el “mouse”, para iniciar los cálculos se debe dar “enter” o doble 
“Clic” sobre el boton “REALIZAR CALCULOS”. 

Imagen 9 Pantalla de ingreso datos generales para el calculo del flujo critico en la sección 
rectangular 

En  la  pantalla  de  respuestas  se  visualizan  los  resultados  numéricos 
correspondientes, los cálculos generados en esta rutina son:
· La profundidad crítica (m).
· Área crítica (m 2 ).

17
· Velocidad crítica (m).
· Energía crítica (m). 

Se dispone de una imagen donde se ubican los resultados. 

Imagen 10 Pantalla de resultados en el flujo critico de la sección rectangular. 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”.

18
2.3.2 Calculo de la fuerza específica en canales abiertos 

Para el cálculo de la fuerza especifica en canales abiertos, el software Open Flow 
Unisalle  dispone  de  cuatro  opciones,  que  corresponden  a  las  secciones 
transversales de canales abiertos mas utilizadas. 

Imagen 11 Menú para el cálculo de la fuerza especifica desde la pantalla principal 

Para el cálculo de la fuerza específica cualquiera de las secciones se debe de dar 
doble clic sobre la sección elegida, a continuación aparecerá la pantalla de ingreso 
para los datos generales. Según la sección transversal seleccionada se tiene que 
para la:
· Sección  rectangular:  Se  debe  de  ingresar  el  caudal  “Q”  en  (m 3 /s),  la 
profundidad del flujo “y” en (m) y la base “b” en (m).

19 
· Sección  Trapezoidal:  Se  debe  de  ingresar  el  caudal  “Q”  en  (m 3 /s),  la 
profundidad del flujo “y” en (m), la base “b” en (m) y el talud “z”.
· Sección  Triangular:  Se  debe  de  ingresar  el  caudal  “Q”  en  (m 3 /s),  la 
profundidad del flujo “y” en (m) y el talud “z”.
· Sección circular: Se debe de ingresar el caudal “Q” en (m 3 /s), la profundidad 
del flujo “y” en (m) y el diámetro “D” en (m). 

Cada pantalla para el ingreso de datos tiene incorporada una imagen donde ubica 
los datos que deberá incorporar el usuario. Los datos se ingresan tecleando sobre 
cada casilla el valor correspondiente, se puede utilizar la tecla “tab” para usuarios 
que omitan utilizar el “mouse”, para iniciar los cálculos se debe dar “enter” o doble 
“Clic” sobre el boton “REALIZAR CALCULOS”. 

Imagen  12  Pantalla  de  ingreso  datos  generales  para  el  calculo  la  fuerza  especifica  en  la 
sección triangular.

20
En  la  pantalla  de  respuestas  se  visualizan  los  resultados  numéricos 
correspondientes, esta rutina entrega el siguiente resultado:
· La energía específica (m). 

Se dispone de una imagen donde se ubican los resultados. 

Imagen 13 Pantalla de resultados de la fuerza especifica para una sección triangular. 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”.

21 
2.3.3 Calculo de elementos hidráulicos y geométricos en flujo uniforme 

Para el cálculo de la fuerza especifica en canales abiertos, el software Open Flow 
Unisalle  dispone  de  tres  opciones,  que  corresponden  a  las  secciones 
transversales de canales abiertos mas utilizadas. 

Imagen 14 Menú para el cálculo del flujo uniforme desde la pantalla principal 

Para  el  cálculo  de  los  elementos  geométricos  e  hidráulicos  bajo  un  régimen  de 
flujo  uniforme  en  cualquiera  de  las  secciones  se  debe  de  dar  doble  clic  sobre  la 
sección  elegida,  a  continuación  aparecerá  la  pantalla  de  ingreso  para  los  datos 
generales. Según la sección transversal seleccionada se tiene que para la:
· Sección  rectangular:  Se  debe  de  ingresar  el caudal  “Q”  en  (m 3 /s),  la  base 
“b” en (m), la pendiente “S” y el coeficiente de Manning “n”.

22 
· Sección Trapezoidal: : Se debe de ingresar el caudal “Q” en (m 3 /s), la base 
“b” en (m), la pendiente “S”, el coeficiente de Manning “n” y el talud “z”.
· Sección  Triangular:  Se  debe  de  ingresar  el  caudal  “Q”  en  (m 3 /s),  la 
pendiente “S”, el coeficiente de Manning “n” y el talud “z”. 

Imagen  15  Pantalla  de  ingreso  datos  generales  para  el  calculo  del  flujo  uniforme  en  la 
sección rectangular. 

Cada pantalla para el ingreso de datos tiene incorporada una imagen donde ubica 
los datos que deberá incorporar el usuario. 

Los  datos  se  ingresan  tecleando  sobre  cada  casilla  el  valor  correspondiente,  se 
puede  utilizar  la  tecla  “tab”  para  usuarios  que  omitan  utilizar  el  “mouse”,  para 
iniciar  los  cálculos  se  debe  dar  “enter”  o  doble  “Clic”  sobre  el  boton  “REALIZAR 
CALCULOS”.

23
En  la  pantalla  de  respuestas  se  visualizan  los  resultados  numéricos 
correspondientes, los cálculos generados en esta rutina son:
· La profundidad normal (m).
· Área normal (m 2 ).
· Perímetro normal (m).
· Radio hidráulico normal (m).
· Velocidad normal (m/s) 

Se dispone de una imagen donde se ubican los resultados. 

Imagen 16 Pantalla de resultados en el flujo uniforme en la sección rectangular. 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la
24 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”. 

2.3.4 Calculo del borde libre en canales abiertos 

Para el cálculo del borde libre en canales abiertos, el software Open Flow Unisalle 
lo determina mediante una correlación que esta en función de una constante “C” y 
de profundidad “y” del flujo, la constante “C” esta relacionada con el caudal “Q”. 

Imagen 17 Menú para el cálculo del borde libre desde la pantalla principal 

La pantalla para el ingreso de datos tiene incorporada una imagen donde ubica los 
datos que deberá incorporar el usuario.

25 
Los  datos  se  ingresan  tecleando  sobre  cada  casilla  el  valor  correspondiente,  se 
puede  utilizar  la  tecla  “tab”  para  usuarios  que  omitan  utilizar  el  “mouse”,  para 
iniciar  los  cálculos  se  debe  dar  “enter”  o  doble  “Clic”  sobre  el  boton  “REALIZAR 
CALCULOS”. 

Los datos que se deben ingresar son:
· El caudal “Q” en (m 3 /s)
· La profundidad del flujo “y” en (m) 

Imagen  18  Pantalla  de  ingreso  datos  generales  para  el  calculo  del  borde  libre  en  un  canal 
abierto. 

En  la  pantalla  de  respuestas  se  visualizan  los  resultados  numéricos 
correspondientes, los cálculos generados en esta rutina son:
· El borde libre en (m).
· La altura total del canal (m).

26 
Se dispone de una imagen donde se ubican los resultados 

Imagen 19 Pantalla de resultados en el borde libre en canales abiertos. 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”. 

2.3.5 Calculo de elementos geométricos 

Para  el  cálculo  de  los  elementos  geométricos  en  canales  abiertos,  el  software 
Open  Flow  Unisalle  dispone  de  cuatro  opciones,  que  corresponden  a  las 
secciones transversales de canales abiertos mas utilizadas.
27 
Las  secciones  que  se  trabajan  en  el  programa  son  las  secciones  rectangular, 
trapezoidal, triangular y circular. El calculo de las secciones esta fundamentado en 
las relaciones matemáticas y geométricas existentes en la literatura tecnica. 

Para  el  cálculo  de  los  elementos  geométricos  en  cualquiera  de  las  secciones  se 
debe  de  dar  doble  clic  sobre  la  sección  elegida,  a  continuación  aparecerá  la 
pantalla de ingreso para los datos generales. 

Imagen 20 Menú para el cálculo de los elementos geométricos en canales abiertos desde la 
pantalla principal.

28 
Los  datos  se  ingresan  tecleando  sobre  cada  casilla  el  valor  correspondiente,  se 
puede  utilizar  la  tecla  “tab”  para  usuarios  que  omitan  utilizar  el  “mouse”,  para 
iniciar  los  cálculos  se  debe  dar  “enter”  o  doble  “Clic”  sobre  el  boton  “REALIZAR 
CALCULOS”. 

Los  datos  que  se  deben  ingresar  difieren  dependiendo  el  tipo  de  sección  a 
calcular, según esto se tiene que para:
· Sección rectangular: La profundidad del flujo “y” en (m) y la base “b” en (m).
· Sección Trapezoidal: La profundidad del flujo “y” en (m), la base “b” en (m) 
y el talud “z”.
· Sección Triangular: La profundidad del flujo “y” en (m) y el talud “z”.
· Sección circular: La profundidad del flujo “y” en (m) y el diámetro “D” en (m). 

La pantalla para el ingreso de datos tiene incorporada una imagen donde ubica los 
datos que deberá incorporar el usuario.

29 
Imagen 21 Pantalla de ingreso datos generales para el calculo de los elementos geométricos 
en canales abiertos. 

En  la  pantalla  de  respuestas  se  visualizan  los  resultados  numéricos 
correspondientes, los cálculos generados en esta rutina son para cada una de las 
secciones:
· El área mojada “A” (m).
· El perímetro mojado “P” (m).
· El radio hidráulico “R” (m).
· El ancho superficial “T” (m).
· El perímetro mojado (m).
· La profundidad hidráulica “D” (m).
· El factor de sección “Z” (m).

30 
Imagen 22 Pantalla de resultados generales por el calculo de los elementos geométricos en 
canales abiertos. 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”. 

2.3.6 Diseño de canales abiertos

31 
Para  el  diseño de  canales  abiertos  el  software  Open Flow  Unisalle,  contiene dos 
tipos  de  diseño  según  el  tipo  de  canal.  Se  tiene  el  diseño  de  canales  abiertos 
revestidos y el diseño de canales no revestidos. 

El  diseño  de  canales  revestidos  esta  orientado  según  el  método  de  la  sección 
hidráulicamente optima, para cada diseño se propone un espesor de recubrimiento 
según  el  tipo  de  material  a  usar,  también  se  propone  un  valor  del  talud  según  el 
materia a excavar. El diseño hidráulico se complementa con un análisis de costos 
correspondientes  a  excavación,  transporte  y  recubrimiento,  se  manejan  precios 
unitarios y se da la libertad al usuario para definir el tipo de material o materiales a 
excavar. 

El  diseño  de  canales  no  revestidos  esta  orientado  con  el  método  de  las 
velocidades  permisibles,  para  el  diseño  se  propone  las  velocidades  máximas  y 
mínimas  según  el  tipo  de  material  en  el  cual  este  conformado  el  canal,  de  igual 
manera  se  sugiere  valores  congruentes  para  los  taludes  del  canal.  Se  cuenta 
además  con  una  base  de  datos  de  los  coeficientes  de  Manning  para  cada  caso 
particular.    El  diseño  hidráulico  se  complementa  con  un  análisis  de  costos 
correspondientes a excavación y transporte, se manejan precios unitarios y se da 
la libertad al usuario para definir el tipo de material o materiales a excavar.

32 
Imagen 23 Menú para el diseño de canales abiertos desde la pantalla principal. 

El  diseño  de  canales  para  las  dos  metodologías  seguidas,  esta  elaborado  de 
manera exclusiva para canales de sección trapezoidal. 

2.3.6.1 Diseño de canales revestidos con el método de la sección hidráulicamente 
optima 

El  diseño  de  canales  revestidos  con  sección  hidráulicamente  optima  es  aplicable 
de  manera  exclusiva  para  canales  trapezoidales,  el  software  Open  Flow  Unisalle 
realiza  un  predimensionamiento  del  canal  y  realiza  un  estudio  de  los  costos  que 
con  lleva  la  realización  de  dicha  estructura.  Se  tiene  en  cuenta  para  el  caso  de 
concreto simple y de concreto reforzado los espesores correspondientes según el 
caudal a transportar.

33 
Imagen 24 Menú para el diseño de canales abiertos revestidos desde la pantalla principal. 

Los  datos  se  ingresan  tecleando  sobre  cada  casilla  el  valor  correspondiente,  se 
puede  utilizar  la  tecla  “tab”  para  usuarios  que  omitan  utilizar  el  “mouse”,  para 
iniciar  los  cálculos  se  debe  dar  “enter”  o  doble  “Clic”  sobre  el  boton  “REALIZAR 
CALCULOS”. 
Los datos que se deben ingresar son:
· El caudal “Q” en (m 3 /s)
· La velocidad de diseño “v” en (m/s)
· La  longitud  del  canal  “L”  en  (m),  el  diseño  puede  requerir  únicamente  las 
dimensiones  de  la  sección  trapezoidal,  en  este  caso  ingrese  “1”  como 
longitud del canal.
· El  espesor  del  recubrimiento  (m),  este  dato  tiene  tres  posibilidades: 
A) Que el recubrimiento sea en concreto simple, en este caso el programa 
de  manera  automáticamente  asigna  el  valor  correspondiente  el  cual  es

34 
sugerido  y  podrá  ser  modificado  si  el  usuario  lo  desea. 
B)  Que  el  recubrimiento  sea  en  concreto  reforzado,  en  este  caso  el 
programa  de  manera  automáticamente  asigna  el  valor  correspondiente  el 
cual  es  sugerido  y  podrá  ser  modificado  si  el  usuario  lo  desea. 
C)  Otros  materiales,  el  usuario  definirá  cual  es  el  valor  que  considere 
adecuado.
· El talud (z), para ingresar este dato se tienen diez posibilidades de canales 
construidos  en  distintos  materiales,  o  excavados  en  suelos  con  distintas 
topologías, estos datos se adquirieron de Chow V.T y French. R.H a saber: 
A)  Talud  recomendado  para  canales  construidos  en  roca,  en  este  caso  el 
programa  de  manera  automáticamente  asigna  el  valor  correspondiente  el 
cual  es  sugerido  y  podrá  ser  modificado  si  el  usuario  lo  desea. 
B) Talud recomendado para canales construidos en suelo orgánico, en este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
C) Talud recomendado para canales construidos en suelo de turba, en este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
D)  Talud  recomendado  para  canales  construidos  en  arcilla  dura,  en  este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
E)  Talud  recomendado  para  canales  construidos  en  tierra  dura  con 
revestimiento  en  concreto,  en  este  caso  el  programa  de  manera 
automáticamente  asigna  el  valor  correspondiente  el  cual  es  sugerido  y 
podrá  ser  modificado  si  el  usuario  lo  desea. 
F)  Talud  recomendado  para  canales  construidos  en  tierra  revestidos  en 
roca, en este caso el programa de manera automáticamente asigna el valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo
35 
desea. 
G)  Talud  recomendado  para  canales  construidos  en  tierra  arenosa  suelta, 
en  este  caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
H) Talud recomendado para canales construidos en limos arenosos sueltos, 
en  este  caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
I)  Talud  recomendado  para  canales  construidos  en  arcilla  porosa,  en  este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
J)  Otros  materiales,  el  usuario  definirá  cual  es  el  valor  que  considere 
adecuado  para el talud. 

Los  datos  que  se  ingresan  en  esta  rutina  del  programa  generan  el  diseño 
geométrico según el principio de la sección hidráulicamente optima.

36 
Imagen 25 Pantalla de ingreso datos generales para el diseño de canales abieros revestidos 
con sección hidráulicamente optima. 

En  la  pantalla  de  respuestas  iniciales  o  primarios  se  visualizan  los  resultados 
numéricos  que  corresponden  al  diseño  geométrico  de  la  sección  transversal  del 
canal, estos resultados son:
· El área mojada “A” (m).
· La profundidad del flujo “y” (m).
· La base “b” (m).
· La base “b’ ”  (m).
· La base “b’’ ” (m).
· El borde libre “F” (m).
· La altura sobre el revestimiento “l” (m).
· Volumen de excavación ((m 3 /s)/ml)
· Volumen de revestimiento (m 3 /s)

37 
Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA 

Imagen 26  Pantalla de resultados primarios generales para el diseño de canales revestidos 
con sección hidráulicamente optima. 

Al finalizar esta rutina el programa le ofrece la posibilidad de calcular los costos del 
canal  debido  a  la  excavación,  al  transporte  y  al  revestimiento;  o  de  salir  de  la 
rutina de cálculos. Para acceder a cada una de las opciones se debe de oprimir o 
teclear sobre las teclas “CALCULAR COSTOS DE EXCAVACION, TRANSPORTE 
Y REVESTIMIENTO” o “FINALIZAR” según sea el caso.
38 
Para  el  cálculo de los  costos  del  canal  debido  a la  excavación,  al transporte  y  al 
revestimiento,  se teclea  sobre  la  tecla “CALCULAR COSTOS DE  EXCAVACION, 
TRANSPORTE Y REVESTIMIENTO”. Se deben de ingresar los siguientes datos:
· Datos  para  la  excavación,  son  aquellos  cuyas  variables  determinaran  el 
costo de la excavación, se manejan en el programa las siguientes variables: 
A)  Costo  de  la  excavación  ($/hr),  hace  referencia  al  costo  del  alquiler  de 
maquinaria  o  similares  para  efectuar  la  excavación,  se  atizan  precios 
unitarios. 
B)  Cantidad  de  materiales  a  excavar,  se  tienen  tres  posibilidades  es  decir 
se puede seleccionar hasta tres tipos de material para excavar si el usuario 
desea  puede  seleccionar  uno  o  dos  según  las  necesidades  propias. 
C)  Rendimiento  de  la  excavación  según  cada  material  (m 3 /hr).        . 
D)  Porcentaje  de  expansión  de  cada  material  (%).                . 
E) Porcentaje de cada material a excavar (%).
· Datos  para  el  transporte,  son  aquellos  cuyas  variables  determinaran  el 
costo  del  transporte,  se  manejan  en  el  programa  las  siguientes  variables: 
A) Costo transporte materia de excavación ($/viaje).                               . 
B)  Capacidad  de  transporte  (m 3 /viaje,  capacidad  del  vehículo  que 
transportara el material.
· Datos  del  revestimiento  ($/m 3 ),  es  el  costo  que  tiene  el  revestimiento  por 
metro cúbico.

39 
Imagen  27  Pantalla  datos  para  el  calculo  de  los  costos  por  excavación,  transporte  y 
revestimiento para el diseño de canales revestidos con sección hidráulicamente optima. 

En la pantalla de cálculo de costos se tienen los siguientes  resultados son:
· Costo de excavación por cada tipo de material seleccionado ($).
· Costo de transporte por cada tipo de material seleccionado ($).
· Numero de viajes a realizar (n).
· Costo total de la excavación ($).
· Costo total del transporte ($).
· Numero total de viajes a realizar (n).
· Costo del revestimiento ($).
· Costo total del proyecto  ($). 

Se tiene la opción de ver una simulación de un canal trapezoidal revestido, donde 
se idealiza el diseño del canal. Esta simulación es animada y para acceder a ella 
se debe de dar clic sobre el recuadro de imagen que aparece en la pantalla.
40 
Imagen 28 Pantalla de resultados de costos generales para el diseño de canales revestidos 
con sección hidráulicamente optima 

Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”. 

2.3.6.2 Diseño de canales no  revestidos con el método de las velocidades 
permisibles.

41 
El diseño de canales no revestidos con el método de las velocidades permisibles 
es  aplicable  de  manera  exclusiva  para  canales  trapezoidales,  el  software  Open 
Flow Unisalle realiza un predimensionamiento del canal y realiza un estudio de los 
costos que con lleva la realización de dicha estructura. 

Imagen 29 Menú para el diseño de canales abiertos no revestidos desde la pantalla principal. 

Los  datos  se  ingresan  tecleando  sobre  cada  casilla  el  valor  correspondiente,  se 
puede  utilizar  la  tecla  “tab”  para  usuarios  que  omitan  utilizar  el  “mouse”,  para 
iniciar  los  cálculos  se  debe  dar  “enter”  o  doble  “Clic”  sobre  el  boton  “REALIZAR 
CALCULOS”. 
Los datos que se deben ingresar son:
· El coeficiente de Manning “n”, este coeficiente se puede seleccionar según 
el  tipo  de  canal  y  material.  Para  seleccionarlo  se  debe  de  seleccionar  la 
solicitación  y  el  valor  del  coeficiente  de  Manning  será  cargado

42 
automáticamente,  si  el  usuario  requiere  otro  coeficiente  lo  podrá  ingresar 
sobre la casilla correspondiente.
· El caudal “Q” en (m 3 /s).
· La pendiente “So”.
· La  velocidad  de  diseño “v” en (m/s),  este  valor  se  puede ingresar  sobre la 
casilla correspondiente, el programa le sugiere al diseñador las velocidades 
máximas o mínimas según el tipo de material en el cual este conformado el 
canal.
· La  longitud  del  canal  “L”  en  (m),  el  diseño  puede  requerir  únicamente  las 
dimensiones  de  la  sección  trapezoidal,  en  este  caso  ingrese  “1”  como 
longitud del canal.
· El talud (z), para ingresar este dato se tienen diez posibilidades de canales 
construidos  en  distintos  materiales,  o  excavados  en  suelos  con  distintas 
topologías, estos datos se adquirieron de Chow V.T y French. R.H a saber: 
A)  Talud  recomendado  para  canales  construidos  en  roca,  en  este  caso  el 
programa  de  manera  automáticamente  asigna  el  valor  correspondiente  el 
cual  es  sugerido  y  podrá  ser  modificado  si  el  usuario  lo  desea. 
B) Talud recomendado para canales construidos en suelo orgánico, en este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea.
· C) Talud recomendado para canales construidos en suelo de turba, en este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
D)  Talud  recomendado  para  canales  construidos  en  arcilla  dura,  en  este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
E)  Talud  recomendado  para  canales  construidos  en  tierra  dura  con 
revestimiento  en  concreto,  en  este  caso  el  programa  de  manera
43 
automáticamente  asigna  el  valor  correspondiente  el  cual  es  sugerido  y 
podrá  ser  modificado  si  el  usuario  lo  desea. 
F)  Talud  recomendado  para  canales  construidos  en  tierra  revestidos  en 
roca, en este caso el programa de manera automáticamente asigna el valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
G)  Talud  recomendado  para  canales  construidos  en  tierra  arenosa  suelta, 
en  este  caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el  cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
H) Talud recomendado para canales construidos en limos arenosos sueltos, 
en  este  caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
I)  Talud  recomendado  para  canales  construidos  en  arcilla  porosa,  en  este 
caso  el  programa  de  manera  automáticamente  asigna  el  valor 
correspondiente el cual es sugerido y podrá ser modificado si el usuario lo 
desea. 
J)  Otros  materiales,  el  usuario  definirá  cual  es  el  valor  que  considere 
adecuado  para el talud. 

Para iniciar los cálculos  se debe de teclear el botón “REALIZAR CÁLCULOS”.

44 
Imagen  30  Pantalla  de  ingreso  datos  generales  para  el  diseño  de  canales  abiertos  no 
revestidos con velocidad máxima permisible. 

Los resultados se dividen en tres pantallas , caracterizando el tipo de flujo para así 
realizar  un  diseño  racional  y  económico.  En  los  resultados,  inicialmente  se 
obtienen dos posibles soluciones para la profundidad del flujo “y”, estas según el 
modelo matemático e hidráulico mismo del método de la velocidad permisible. Los 
datos entregados por el programa en esta etapa del diseño son:
· Una profundidad de flujo denominada “y1” en m.
· El  numero  de  Froude  “NF1”  para  las  condiciones  de  velocidad 
asumidas y la profundidad de flujo “y1”.
· La caracterización del tipo de flujo según el “NF1” el flujo puede ser 
sub crítico, critico o súper critico.
· Una profundidad de flujo denominada “y2” en m
· El  numero  de  Froude  “NF2”  para  las  condiciones  de  velocidad 
asumidas y la profundidad de flujo “y2”.

45 
· La caracterización del tipo de flujo según el “NF2” el flujo puede ser 
sub crítico, critico o súper critico. 

Imagen  31  Pantalla  de  resultados  primarios  generales  en  el  diseño  de  canales  abiertos  no 
revestidos con velocidad máxima permisible. 

Al escoger cualquier opción el programa determinara los elementos geométricos , 
borde libre, dimensiones generales del canal y volúmenes de material a remover. 
El  software  genera  cuadros  de  dialogo  donde  advierte  al  diseñador  acerca  de  la 
viabilidad del diseño,  estos diálogos son interpretaciones de los resultados de las 
ecuaciones básicas de diseño.

46
Imagen  32  Pantalla  de  resultados  primarios  generales  en  el  diseño  de  canales  abiertos  no 
revestidos con velocidad máxima permisible, cuadro de advertencia.

47 
Imagen 33  Pantalla de resultados generales en el diseño de canales abiertos no revestidos 
con velocidad máxima permisible.

48 
Imagen 34 Pantalla de resultados generales en el diseño de canales abiertos no revestidos 
con velocidad máxima permisible. 

Al finalizar esta rutina el programa le ofrece la posibilidad de calcular los costos del 
canal  debido  a  la  excavación,  al  transporte  y  al  revestimiento;  o  de  salir  de  la 
rutina de cálculos. Para acceder a cada una de las opciones se debe de oprimir o 
teclear  sobre  las  teclas  “CALCULAR  COSTOS  DE  EXCAVACIÓN  Y 
TRANSPORTE ” o “FINALIZAR” según sea el caso. 

Para  el  cálculo de los  costos  del  canal  debido  a la  excavación,  al transporte  y  al 
revestimiento, se teclea sobre la tecla “CALCULAR COSTOS DE EXCAVACIÓN Y 
TRANSPORTE”. Se deben de ingresar los siguientes datos:
· Datos  para  la  excavación,  son  aquellos  cuyas  variables  determinaran  el 
costo de la excavación, se manejan en el programa las siguientes variables: 
A)  Costo  de  la  excavación  ($/hr),  hace  referencia  al  costo  del  alquiler  de 
maquinaria  o  similares  para  efectuar  la  excavación,  se  atizan  precios

49 
unitarios. 
B)  Cantidad  de  materiales  a  excavar,  se  tienen  tres  posibilidades  es  decir 
se puede seleccionar hasta tres tipos de material para excavar si el usuario 
desea  puede  seleccionar  uno  o  dos  según  las  necesidades  propias. 
C)  Rendimiento  de  la  excavación  según  cada  material  (m 3 /hr).        . 
D)  Porcentaje  de  expansión  de  cada  material  (%).                . 
E) Porcentaje de cada material a excavar (%).
· Datos  para  el  transporte,  son  aquellos  cuyas  variables  determinaran  el 
costo  del  transporte,  se  manejan  en  el  programa  las  siguientes  variables: 
A) Costo transporte materia de excavación ($/viaje).                               . 
B)  Capacidad  de  transporte  (m 3 /viaje,  capacidad  del  vehículo  que 
transportara el material. 

Imagen 35 Pantalla datos para el calculo de los costos por excavación y transporte para el 
diseño de canales no revestidos con velocidad permisible.

50 
En la pantalla de cálculo de costos se tienen los siguientes  resultados son:
· Costo de excavación por cada tipo de material seleccionado ($).
· Costo de transporte por cada tipo de material seleccionado ($).
· Numero de viajes a realizar (n).
· Costo total de la excavación ($).
· Costo total del transporte ($).
· Numero total de viajes a realizar (n).

· Costo total del proyecto  ($). 

Se tiene la opción de ver una simulación de un canal trapezoidal revestido, donde 
se idealiza el diseño del canal. Esta simulación es animada y para acceder a ella 
se debe de dar clic sobre el recuadro de imagen que aparece en la pantalla.

51 
Para  imprimir  resultados  se  debe  ir  a  la  barra  de  menú  superior  y  seleccionar  la 
opción  “IMPRIMIR”;  esta  barra  tiene  las  opciones  de  “AYUDA”  la  cual  muestra 
información  correspondiente  al  funcionamiento  del  programa,  la  opción  de 
“VOLVER  A”  esta  opción  borra  los  datos  ingresados  y  permite  reiniciar  los 
cálculos,  la  opción  “SALIR”  permite  al  usuario  salir  de  la  subrutina  y  volver  a  la 
pantalla  principal  por  medio  de  la  opción  “A  MENU  PRINCIPAL”  o  salir  del 
programa con la opción “DEL PROGRAMA”. 

2.3.7 Laboratorios de hidráulica de canales 

Este  menú  permite  realizar  los  cálculos  correspondientes  a  las  practicas 


efectuadas  en  el  laboratorio  de  hidráulica  de  canales  de  la  Universidad  De  La 
Salle. La aplicación permite realizar dos practicas las cuales son:
· Geometría de la sección.
· Resalto hidráulico

52 
Imagen 36 Menú para laboratorios de hidráulica de canales en la Universidad De La Salle. 

El  usuario  para  acceder  a  cualquiera  de  las  practicas  deberá  seleccionarla  en  el 
menú y teclear clic sobre la misma. 

2.3.7.1 Practica de laboratorio geometría de la sección. 

La  aplicación  correspondiente  a  la  practica  de  laboratorio  “GEOMETRÍA  DE  LA 
SECCION”,  se  compone  de  tres  opciones,  en  las  cuales  el  usuario  accede  a  los 
preliminares  de  la  practica,  ingresa  los  datos  experimentales  y  obtiene  los 
resultados con sus respectivas graficas.

53 
Imagen 37 Menú de laboratorio “ GEOMETRÍA DE LA SECCION”  desde la pantalla principal. 

Las pantallas que componen esta aplicación son:
· Introducción,  informa  al  usuaria  acerca  de  la  practica  los  objetivos  a 
cumplir y el alcancé del informe.
· Ingresar datos
· Resultados 

Introducción,  esta  pantalla  es  de carácter informativo  contiene  los  objetivos  de la 


practica  las  partes  del  informe.  Incluye  graficas  e  imágenes  del  laboratorio  y  del 
canal para realizar la practica.

54 
Imagen 38 Pantalla de introducción para el laboratorio “ GEOMETRÍA DE LA SECCION”  . 

Introducción de datos

55 
Imagen  39  Pantalla  introducción  datos  con  ventana  de  dialogo  para  el  laboratorio 
“ GEOMETRÍA DE LA SECCION”  . 

El  presente  cuadro  de  dialogo  indica  el  orden  de  introducción  de  los  datos  en 
Open Flow Unisalle.

56 
Imagen 40 Pantalla  de entrada de datos con opciones de datos. 

En  esta  pantalla  se  puede  seleccionar  los  datos  a  entrar,  tanto  de  lecturas  de 
niveles como de aforos.

57 
Imagen 41 Pantalla para entrada de lecturas de niveles. 

En  esta  parte  podemos  ver  los  espacios  para  el  ingreso  de  los  niveles  de  agua 
tomados  en  la  practica.  Estos  datos  se  deben  ingresarsen  en  milímetros  (mm)  y 
con una cantidad de 10 datos por practica.

58 
Imagen 42 Pantalla para el ingreso de los datos de aforo de caudal. 

En  la  parte  inferior  de  la  pantalla  se  observa  los  cuatro  (4)  espacios  destinados 
para la introducción de:
· Peso del balde o recipiente con que se realice el aforo.
· Peso del conjunto, equivalente al peso del balde + el fluido.
· Tiempo en el cual se llena el balde o recipiente.

59 
Imagen 43 Pantalla con datos ingresados. 

En esta pantalla se vé, la totalidad de datos ingresados y listos para ser calculados 
dando clic en el botón “calcular”.

60 
Imagen 44 Pantalla de resultados primarios. 

En esta primera pantalla de resultados nos arroja los elementos geométricos de la 
sección trabajada. Para continuar, dar clic sobre “continuar”

61 
Imagen 45 Pantalla de resultados secundarios. 

En esta segunda pantalla de resultados, obtenemos los elementos hidráulicos de 
la  sección  trabajada,  dando  como  resultado el  caudal (Q), expresado  en  (m 3 /s)  y 
en (l / s).

62 
Imagen 46 Pantalla de resultados finales. 

Acá obtenemos los resultados finales como lo son:
· Caudal.
· Caudal unitario.
· Profundidad critica.
· Energía especifica. 
Además  de  los  datos  para  realizar  las  graficas  de  energía  especifica  y  fuerza 
especifica. 
Dando  clic  sobre  los  botones  de  graficas  se  obtienen  dichas  graficas,  como  se 
puede ver en las siguientes pantallas.

63 
Imagen 47 Grafica de la energía especifica. 

Esta grafica esta elaborada bajo Excel y se tiene varios detalles como se pueden 
observar.

64 
Imagen 48 Grafica de la fuerza especifica. 

La presente grafica se elaboro en Excel y con datos representativos.

65 
Imagen 49 Ingreso al menú " ecuaciones usadas"  

De  esta  manera  se  puede  ingresar  para  visualizar  las  diferentes  ecuaciones  que 
se utilizaron en el desarrollo del laboratorio.

66 
Imagen 50 Pantalla de ecuaciones. 

Allí se aprecian las ecuaciones usadas para el desarrollo del laboratorio. 
Y en el menú se encuentran las opciones de impresión y se desean usar. 

2.3.7.2 Practica de laboratorio “Resalto Hidráulico”. 
La presente practica de laboratorio consta de cuatro submenús.
· Introducción.
· Realizar cálculos.
· Imágenes.
· Ecuaciones usadas.

67 
Imagen 51 Pantalla de introducción. 

Esta pantalla visualiza los objetivos y el desarrollo de la practica.

68 
Imagen 52 Ingreso para la realización de los cálculos. 

Se  ingresa  a  la  pantalla  principal  de  Open  Flow  Unisalle,  se  entra  al  menú 
laboratorio como se indica en la imagen 52.

69 
Imagen 53 Pantalla de entrada. 

En esta pantalla se tienen las opciones para ingresar los datos de:
· Ancho del canal.
· Temperatura
· Lectura  de  los niveles  antes  de  la  compuerta,  antes  del  resalto  y  después 
del resalto.
· Peso del balde.
· Peso del conjunto.
· Tiempo. 
Para el ingreso de los datos se deben dar clic en las lecturas.

70 
Imagen 54 Ingreso de datos. 

Luego de haber dado clic sobre las lecturas, se activan las casillas de ingreso de 
datos. Para este laboratorio se necesitan diez datos. 

Se  deben  de  ingresar  todos  los  datos  de  forma  ordenada  el  programa  ayuda  al 
usuario  con  ventanas  de  dialogo  informándole  acerca  de  los  posibles  errores  de 
inducción de datos, los errores más frecuentes son:
· Ingresar diez lecturas para los niveles.
· Ingresar cuatro aforos para el caudal.
· El tiempo no puede se menor o igual a cero.
· El peso del balde no puede ser igual o superior al del conjunto.

71 
Imagen 55 Puesta de datos. 

Luego de la introducción de los datos, se debe hacer clic en el botón “calcular”.

72 
Imagen  56  Pantalla  de  resultados  iniciales  de  la  practica  de  laboratorio,  resultados 
generales. 

En esta pantalla se aprecian los resultados iniciales de la práctica los cuales son:
· Peso del agua (grs)
· Tiempo (s)
· Volumen (m 3 )
· Caudal para cada aforo (m 3 /s)
· Caudal para cada aforo (lts)
· Caudal promedio para realizar la práctica (m 3 /s)
· Caudal promedio para realizar la práctica (lts) 

Para continuar, se debe hacer clic en el botón “calcular”.

73 
Imagen 57 Pantalla de resultados de la practica de laboratorio, resultados de la practicas. 

En esta pantalla se aprecian los resultados  de la práctica los cuales son:
· Energía especifica para cada lectura (m).
· Numero de Froude.
· Caracterización del flujo según el número de Froude.
· Profundidad y2 (m)
· Perdida de energía (m))
· Potencia disipada (watts)
· Caudal promedio para realizar la práctica (m 3 /s)
· Caudal promedio para realizar la práctica (lts)
· Caudal unitario para realizar la práctica (m 3 /s)
· Base del canal (m) 

Para continuar, se debe hacer clic en el botón “calcular”.

74 
Imagen 58 Pantalla de resultados de la practica de laboratorio, resultados de la practicas 

En esta pantalla se aprecian los resultados finales  de la práctica los cuales son:
· Profundidad y0 (m)
· Profundidad y1 (m)
· Profundidad y2 (m)
· Fuerza especifica fe0 (m).
· Fuerza especifica fe1 (m).
· Fuerza de volcamiento sobre la estructura (N). 
Para continuar, se debe hacer clic en el botón “calcular”.

75 
Imagen 59 Pantalla de resultados de la practica de laboratorio, error de la practica debido al 
desarrollo de la practica. 

En esta pantalla se aprecian los resultados finales y el calculo de error que se 
presenta en la práctica, estos datos son:
· Profundidad y0 practica (m).
· Profundidad y1 practica (m).
· Profundidad y2 practica (m).
· Profundidad y1 teórica (m).
· Profundidad y2 error en el calculo (%).
· Profundidad y1 error en el calculo (%).
· Profundidad y2 error en el calculo (%).
· Error promedio en la practica (%). 

Para continuar, se debe hacer clic en el botón “volver a” de esta forma se llega a al 
pantalla de resultados y tecleamos el botón “graficas”.

76 
Imagen 60 Pantalla de resultados de la practica de laboratorio, graficas de energía especifica 
para dada dato. 

En  esta  pagina  se  puede  observar  las  diferentes  graficas  de  energía  especifica 
para cada dato. 
Recomendación. 
Se le recomienda al usuario de no guardar cambios al finalizar Excel.

77 
Imagen 61 Pantalla de resultados de la practica de laboratorio, graficas de fuerza especifica 
para dada dato. 

En esta pagina se puede observar las diferentes graficas de fuerza especifica para 
cada dato. 
Recomendación. 
Se le recomienda al usuario de no guardar cambios al finalizar Excel.

78 
Imagen 62 Pantalla de imagen de laboratorio. 

En  esta  pantalla  se  observa  la  forma  de  cómo  se  ingresa  a  las  imágenes  del 
laboratorio.

79 
Imagen 63 Imágenes de las aplicaciones del resalto hidráulico. 

Acá  se  observan  algunos  de  los  usos  que  se  le  pueden  dar  a  los  resaltos 
hidráulicos.

80 
Imagen 64 Pantalla principal 

En esta pantalla se indica la forma de entrar a visualizar las ecuaciones usadas en 
el desarrollo del laboratorio.

81 
Imagen 65 pantalla de resultados. 

En la presente pantalla se ven las ecuaciones que se utilizaron para el desarrollo 
del laboratorio. 

2.3.8 CRITERIOS DE DISEÑO 

El  presente  software,  cuenta  con  una  serie  de  compilados  relacionados  con  el 
diseño de canales abiertos, los cuales son fundamentales tenerlos en cuenta a la 
hora de diseñar un canal.

82 
Imagen 66 Ingreso a criterios de diseño. 

En esta pantalla vemos la forma de ingresar por el menú principal a los criterios de 
diseño.

83 
Imagen 67 Submenú " criterios de diseño"  

Podemos  ver  en  la  presente  pantalla los  submenús  ofrecidos  por los  criterios  de 
diseño.

84 
Imagen 68 Menú " diseño de canales"  

Dando  clic  sobre  cualquier  botón  que  se  mira  en  este  menú,  se  vera  la  base  de 
datos correspondiente a su elección. 

2.3.9. ANIMACIONES 

Open Flow Unisalle, pensó que para una mejor comprensión de los ejercicios o los 
diseños,  es  la  visualización  del  mismo,  por  lo  cual  realizo  una  serie  de 
animaciones en 3D, con el fin de realizar mejores diseños al llevar al diseñador a 
tener una concepción mejor del proyecto.

85 
Imagen 69 Ingreso a las animaciones. 

Para  esto  debemos  llegar  a  la  ventana  principal  y  buscar  el  menú  “animaciones” 
tal y como se muestra en la figura 63.

86 
Imagen 70 Acceso a la animación. 

Se  puede  ver  en  la  pantalla  anterior  como  se  llega  a  la  animación  de  la  sección 
rectangular, por medio del menú principal.

87 
Imagen 71 Pantalla de visualizacion de la animacion. 

Para  las  animaciones  se  utiliza  el  reproductor  de  Windows  media  player  y  el 
formato de las presentaciones son “.avi ”. 
Para  la  visualización  de  las  demás  animaciones  se  debe  seguir  el  mismo 
procedimiento anterior y seleccionar la de su preferencia. 

2.3.10 EJERCICIOS DE APLICACIÓN. 

Los ejercicios de aplicación son fundamental para el aprendizaje del estudiante o 
profesional  que  manipule  el  software,  puesto  que  se  genera  una  interactividad 
entre el software y el usuario. 
Este parte del software cuanta con tres ejemplos interactivos.
· Profundidades alternas.
· Profundidades criticas
· Resalto hidráulico.
88 
Imagen 72 Ingreso a los ejercicios de aplicación desde la pantalla preincipal 

Entrando por el menú principal se ve el menú ejercicios de aplicación y luego en 
los sub menús correspondientes seleccionar el tipo de problema. 

Los  problemas  a  tratar  corresponden  a  ejercicios  típicos  tratados en  al  hidráulica 


de canales.

89 

Vous aimerez peut-être aussi