-1- 4. PRESENTACIÓN EN PANTALLA DE LA HIDROSTATICA DE LA ZONA FLOTANTE -24 - PRESENTACIÓN EN P A N T A L L A DE LA H I D R O S T A T I C A DE LA Z O N A FLO- TANTE 4. 1. INTRODUCCIÓN La teoría de la hidrostática de la zona flotante es ya conocida en los casos de mayor interés, pero su continua utiliza ción en los estudios posteriores, relativos al comportamiento hi drodinámico de la zona, exige disponer de un programa de cálculo y representación gráfica interactivo que sirva de base para veri ficaciones rápidas y definidas de las posibles formas de equilibrio y de la vecindad de los límites de estabilidad. Con este objetivo, y dentro del programa de simulación numérica de la zona flotante, se ha desarrollado en este Laboratorio un programa completo de cálculo y presentación en pantalla de las tormas de equilibrio (en sección y en perspectiva) y de los diagramas de estabilidad correspondientes a las diferentes posibilidades de utilización, adecuándose la interacción con el operador de tal forma que este programa sea además pieza fundamental en la enseñanza y entrenamiento, tanto del personal de vue lo que llevará a cabo nuestros experimentos en el Spacelab como del personal colaborador que está en período de formación dentro de nuestro grupo de investigación. El problema clásico de la simulación numérica en panta lia es la velocidad de renovación de imágenes, factor que distin gue los programas de presentación en. pantalla de los verdaderos programas de animación. Desgraciadamente en esta etapa intermedia nos hemos visto obligados a renunciar todavía a la animación por falta de los sofisticados medios requeridos, reteniendo en cambio la máxima exactitud y versatilidad. -3- 4.2. PLANTEAMIENTO DEL PROBLEMA Como resultado de la necesaria adaptación de la idea general de disponer de un programa de ordenador que simule el com portamiento de las zonas flotantes a. las posibilidades del equipo disponible y al nivel de esfuerzo requerido, se establecieron las siguientes especificaciones de carácter general: — El programa debe ser interactivo, permitiendo al opí; rador variar sobre la marcha la secuencia de tratamiento y presentación de la información. — El manejo del programa debe ser lo más sencillo posi_ ble, habida cuenta, de la variedad de utilizadores previ sta. — E l contenido del programa deberá ser ampliable con facilidad para poder ir introduciendo nuevos casos en función del desarrollo de las investigaciones. - E l enunciado más simple de la función principal del programa es el de producir un dibujo tridimensional, a escala, de una zona flotante definida por el tamaño de los discos de apoyo, D, la separación entre ellos, L, y el volumen de líquido que los une, V. — El programa debe ser capaz de reproducir con rapidez y precisión todos los cálculos que requiere el estudio de la hidrostática de la zona flotante y de presentarlos en la forma gráfica más adecuada para su evalúa cion i nm e d i a t a. En principio, no se ha considerado el caso de zonas flotantes entre discos desiguales, por la complicación aue ello introduciría a la hora de la de- -4- terminación de los límites de estabilidad, si bien el programa de cálculo de la forma externa queda cora prendido en el trabajo realizado. Como ya se ha indicado anteriormente, el programa no incluye, por el momento, la posibilidad de reproducir secuencias de actuación con zonas flotantes (llenado, vaciado, estirado), aunque se sigue trabajando en este sentido para conseguir una si^ mulación más completa. 4 • 3 • ECUACIONES GENERALES El método de cálculo empleado fue desarrollado con an- terioridad en este Laboratorio [l] y corresponde a la formulación algebraica que permite calcular la forma de equilibrio de una zo na flotante definida por las variables D, L y V como función implícita de dos parámetros propios de la curva meridiana a y <¡) , cuyo significado geométrico se muestra en la Fig. 1. 4>=o <J>=o a) b) F i g . 1. S i g n i f i c a d o geométrico de l o s parámetros a y cj) que definen l a cu£ va meridiana de una zona f l o t a n t e , a) Zonas con d e f e c t o de volumen ( r e s p e c t o a l a s c i l i n d r i c a s ) , 0<a<180°. b) Zonas con exceso de vp_ lumen, 180°<a<360°. Se p o d r í a diferenciales implicaría de l a complejos haber partido bidrostática procesos directamente de la zona iterativos de l a s flotante, ecuaciones pero bidireccionales ello que, a -5- su vez, demandarían una excesiva precisión en las integraciones. Sin embargo, el proceso iterativo es inevitable, pues para dibujar la forma de equilibrio, así como para el resto de los es ludios teóricos, es preciso operar en términos de a y <f> , como se desprende de las ecuaciones generales que determinan la solución del problema, recogidas en la Tabla 1. En efecto, si designamos por Lvfiz el algoritmo de cál- culo representado en la Tabla 1, el esquema sería el siguiente: —Problema directo: conocidos a y $, determinar L,V. Lvfiz a , cj) Problema L,V - inverso: conocidos L y V, c a l c u l a r Lvsiz a , cj> „ T o 'Y o a± A1 (1) L,V o lvfiz - L 1 5 a y c¡> . 3(L,V) o Ó {a , <p ) V 1 5 > IvflZ (2) •* L , V El paso denotado por el símbolo -> es decisivo pues, al haber puntos singulares por medio, una desacertada elec_ ción de los valores de a y * de Dartida desestabiliza el proce o o — so de cálculo. Sin embargo, la solución aparece naturalmente al intentar obtener resultados explícitos. En efecto, lo que siempre se hace al empezar el análisis es obtener una visión de conjunto representando a y § en función de L y V obtenidos directamente por medio de la aplicación de ( 1 ) , tal y como se representa en la Fig. 2 para las zonas cortas donde suelen ser mayores los problemas. Con este gráfico ya es fácil proceder en ( 2 ) , pues se trata de introducir directamente como a y d> los valores eso - o -6Tabla Resumen mas te de de las ecuaciones equilibrio entre discos un v o l u m e n 1 utilizadas para y límites de estabilidad diámetro D, separados de líauido 0<a<65.4 65.4<a<92.6 92.6<a<180 D Límites de estabilidad (j)=cf)(a) <j> = 0 una una las zona distancia for flotan L y con 180<a<270 270<a<360 B((})A,a) A ($"',a) C(90,a)-C((j)",a) C(tj)*,a) A3(cJ)*,a) A3((j)",a) 2 A((p%aT 3_ A(<j>,a) 2 A(cj)",a) i B(90,a)-B((}),a) 2 A(c¡>",a) 2 A(<í>*,a) R z para de 180<a<360 B(90,a)-B(cf>*,a) ~ A (<}>*, a) D cálculo V. 0<a<180 3 el J(" <}>,cr <}> = a r c t g =arctg/ : cosa / : cosa $ = 90 Las funciones A, B y C se definen por: A((j),a) = (l-sen 2 asen 2 (})) 1//2 B((J),a) = cosaF(<f),a)+E((f>,a) C(({),a) = Tr[sen2asenc()cos(})A(cj),a)-cosaB((}),a) + 2(l+cosa) E(<j),a)]/12 Las funciones F, E y J son respectivamente las integrales elípticas de pri mera y segunda especie, y el operador jacobiano. Todos los ángulos en grados. Resulta ventajoso, sin embargo, utilizar R=R/Rm y Z=Z/Rm, así como las variables auxiliares Dm Rm fr/2 ' Rm = D/2 "Rm" donde Rm es el valor del radio de la zona en la sección intermedia entre los discos. -7250 260 270 2 90 Fig. 2. Mapa de la transformación (a ,<j>)->(L ,V) mostrando los límites de estabilidad de las zonas flotantes cortas (0<L<1). timados con ayuda de dicha figura, con lo que se parte ya de un entorno próximo al punto de solución. Aún más, si la resolución en la figura es suficiente, se obtiene una aproximación aceptable simplemente tomando como solución la pareja a,c¡) estimada directamente del gráfico y ya no es necesario realizar iteración. ni cálculo alguno. De hecho, este ha sido el método adoptado en la versión actual del programa, por ser el más rápido y sencillo de utilizar, si bien ha requerido una preparación ardua y costo- -8- sa al tener que discretizar manualmente el gráfico para almacenarlo en el ordenador. 4.4. CASOS PARTICULARES El desarrollo analítico presentado en el apartado ante rior contiene ciertas singularidades y casos especiales. Para a=Ü, zonas cilindricas, la solución es tan elemen tal que vale la pena evitar el complicado algoritmo de la Tabla 1 y disponer de una rutina separada que trate con rapidez este caso especial. Conviene, sin embargo, mencionar que a la hora de la integración del programa este caso dio bastantes problemas, ya que es uno de los límites de separación de la formulación pr_e sentada en la Tabla 1. Para resolver esta dificultad se asignaron diferentes valores a ciertas variables, según se tratase de a=Ü (a=ü ) o de a=36Ü° (a=Ü ) , como puede verse por ejemplo en la Ta bla 2. Para ct = 9Ü°, zonas catenoides, la formulación contenida en la Tabla 1 deja de ser válida. Este caso singular se resuelve por separado con relativa sencillez; sin embargo, en las proximi_ dades de a = 9ü° los valores que toma la variable <j) en la región de interés son también procirnos a 4> = 9Ü 0 y el cálculo con las integrales elípticas se hace lento e impreciso. De hecho, el número de puntos requeridos para la representación de una curva suave crece exponencialmente (debido a que la densidad de puntos es fuertemente heterogénea) y el criterio usado para fijar el número de puntos con los que se construye la forma de equilibrio ha sido tomar el mínimo número de puntos compatible con una definición aceptable. Este problema se manifiesta parti.cularm.ente cuari -9- do se pretende dibujar las curvas <£ = cte para valores de este parámetro próximos a 9Ü° (a partir de 0=85° ya se empieza a apreciar irregularidades en la "suavidad" de la curva). Para a = 18Ü°, zonas bidimensionales, y en sus procimida. des, no se obtiene información y sí pueden surgir errores en el algoritmo, por lo que estos casos no son tratados por el programa, que muestra un mensaje aclarando este punto. Las zonas bidimensionales tienen todas .formas circulares y su estudio carece de interés aquí. Para a=27ü°, zonas esféricas, la solución es muy simple y con objeto de evitar los problemas que aparecen en el caso límite a = 270°, cf) = 9Ü 0 se ha. preparado una subrutina de cálculo espe cial . Finalmente, aunque el valor de a se reduce módulo 36 0° para permanecer siempre en el intervalo Ü<a<36Ú°, se ha obtenido el valor a=36Ü° en el fichero de límites de estabilidad para facilitar la interpolación en ese último intervalo (ver Tabla 2 ) . 4.5. DISEÑO DEL PROGRAMA "FZ-ESS" El diseño del programa. "FZ-ESS" (Floating l¿bh.¿am Shape.& and Stab¿l¿£ij) 10n<¿. Equ¿- se ha hecho tratando de optimizar la adecuación de las especificaciones impuestas a las posibilida. des del equipo disponible (HP 9 845 B GRAPHICS) que en general se resumen en una gran versatilidad en la presentación de gráficos, potencia de cálculo y abundante memoria, con la limitación de una cierta lentitud en el manejo de gráficos. Con vistas a su aplicación fundamental en la enseñanza de los astronautas del Spacelab y para facilitar el intercambio -10- de información entre los seis grupos europeos de investigación en Física de Fluidos, se decidió redactar este programa en inglés. Dado que la comunicación entre el usuario y el ordenador se establece únicamente a través del programa, se ha tratado desde el primer momento de conseguir un diseño ágil, que permitiese modificaciones sobre la marcha, dotándole de una estructura modular de subprogramas con misiones claramente diferenciadas, que interaccionasen entre sí mediante entrefases fácilmente analizables. Con este mismo fin se han dispuesto sentencias, subrutinas y hasta un subprograma para el seguimiento, depuración e introducción de modificaciones. La Fig. 3 muestra un diagrama de bloques resumido del programa diseñado, aunque el llamado "Resumen general" no ha sido colocado exactamente al principio del programa, sino que aparece corno una opción adicional bajo el título Ovtfialt plctu.no. (Fig. 4) pues, con el equipo actual, este bloque introduce un tiempo muerto de varios minutos, lo que, de no ser opcional, resulta incómodo para el utilizador. Para acelerar más todo el proceso, los cálculos más com plicados han sido sustituidos por archivos de datos accesibles al programa. Los dos archivos preparados han sido: —"I-Limt". Discretización de la solución a la ecuación J(a,cj))=Ü así como del resto de la función (j) = (j)(a) que marca el límite de estabilidad (Tabla 1 ) , junto con los valores de L, V, R y Z asociados. Este cálculo se llevó a cabo en una etapa anterior con ayuda del programa "I-JACO", que también se encuentra documen- -11- Resumen general I Selección del menú Figuras de equilibrio Diagramas de estabilidad (formas a escala) (gráficos Z-R, L-V y L-Dm) Entrada D,L,V Salida Entrada Salida Curva meridiana bímites de estabilidad Perspectiva paralela Alpha = cte Perspectiva cónica Ver Fig. 4- Phi = cte L = cte V = cte Dm = cte Fig. 3. Resumen de la estructura del programa "FZ-ESS". tado al final del capítulo. —"I-Invr". Discretización de la Fig. 2 que sirve para determinar la pareja (a,<j>) correspondiente a los valores (L,V) dados. Conviene comentar aquí con algún detalle el problema del almacenamiento del gráfico de la Fig. 2 en memoria accesible al ordenador. En términos más generales, se braba de consbruir una malla para regisbrar valores discrebizados, regularmente espaciados, de las cobas (una por a y otra por <j)) correspondientes a una superficie de nivel representada por curvas de nivel constante. Esbe problema, de dadas las curvas de nivel rellenar la matriz, así como el inverso, de dada la matriz restaurar las cur vas de nivel, con ser problemas clásicos de cartografía digitali_ zada, son muy complicados en cuanto el "terreno" tiene "fallas" notables, como en nuestro caso ocurre en los límites de estabili -12dad y en la zona de curvas catenoides, por lo que no se utilizaron los procedimientos cartográficos y se optó por una discretización manual para cargar la matriz, y por una reconstrucción re petitiva de todo el proceso de cálculo en lugar de dibujar las curvas a = cte, (¿> = cte a partir de la matriz cargada. 4.6. FUNCIONAMIENTO En este apartado se comenta, en líneas generales, cómo funciona el programa "FZ-ESS" desde el punto de vista del utilizador. Para un estudio más completo del mismo, se pueden consultar los organigramas particulares y demás documentación recogida al final del capítulo. Al activar el programa por primera vez, el ordenador carga en memoria el subprograma Lvfiz y la matriz de los límites de estabilidad almacenada en "I-Limt". En posteriores ejecuciones del programa ya no se realiza este paso. inmediatamente aparece en pantalla la carta de opciones disponibles (Fig. 4) y la primera de ellas resalta a la vista por FLOATIHG Z Ü N É : EQUILIBFIÜM SHRPES AND STREILITY N E H U GENERAL 2,R GRAPHIC L, V GRRFHIC L.Dní GRAPHIC Gueral1 pie ture Input Alpha,Phi Input Alpha,Phi Input Alpha 0 u t «• r i h ap e P ar a 1 1 e 1 p e r s p . C o n i cal p e r s p . I n pu t P 1 ph a I r¡ p u t P h i A11 A l p h a All Phi All Alpha,Phi I n p u t L,V Input L I nput V Al 1 L At 1 V A l l L,V All Alpha,V I n pu t ñ 1 ph a I npu t Ph i All A l p h a All Phi All filpha,Phi I n p u t Dm A l l Dm A 1 1fl1 p h a I nput V All V F i g . 4. Opciones d i s p o n i b l e s en e l programa "FZ-ESS". -13estar enmarcada en un recuadro luminoso o ventana; moviendo dicha ventana con las teclas de movimiento del cursor arriba, abajo, a derecha y a izquierda, el operador selecciona de un modo sencillo e intuitivo la opción elegida. En principio, conviene echar un vistazo al resumen grá fico general que se presenta bajo la opción Ove.Aa.ll plc.ta.A2.. De_s graciadamente la cantidad de memoria requerida para presentar la imagen almacenada es superior al espacio libre que deja el programa "FZ-ESS" en la presente configuración del equipo, por lo que en esta operación se borra todo el programa de la memoria, se carga el programa auxiliar "1-PICT" y luego se vuelve a cargar el programa "EZ-ESS". Aunque todo el proceso es automático, la duración es considerable (unos tres minutos). En la Fig. 5 se muestra una fotografía con la figura mencionada tal y como apare ce en la pantalla del ordenador. A continuación, si la opción elegida es la de calcular y presentar la sección de la zona flotante, OutUA ¿hape.^ grama pide los datos particulares el pro- (D, L y V) que el operador de- berá introducir, bien en forma dimensional, bien ya adimensionalizados. Entonces, para esa esbeltez de la zona, L, se determinan los valores límites del volumen adimensional, V, con ayuda de los datos almacenados en el fichero "I-Limt" mediante el subprograma genérico li.mi.ti, , cuyo funcionamiento pasamos a describir. Para cada curva, definida por el valor de a, la teoría predice un límite de estabilidad <t> (Tabla 1 ) , y los consiguientes valores de L, V, R y Z. En la Fig. 6 se presenta la solución. Pa. ra aumentar la velocidad de todo el programa se han almacenado en el fichero "I-Limt" los valores seleccionados que se muestran Fig. 5. Fotografía de la presentación en pantalla del resumen gráfico general del programa "FZ-ESS". -15- L,Y Z,R «f>° 2 Fig. 6. Límites de estabilidad de las zonas flotantes, en función del parámetro de la curva meridiana, a. en la Tabla 2. Al acceder al subprograma Li.mi,tt> con un. b dado, se hace un barrido para encontrar los cortes con la curva corres pondiente a b limite en la Fig. 6 y se devuelven como salida los valores de a , <J> y V en el corte, para ver el margen en volumen respecto a los límites de estabilidad y dibujar las formas de la zona . Tras calcular los límites de estabilidad para la esbeltez dada, se busca en el archivo de datos "I-Invr" los valores de a y $ que corresponden a los L y V dados. Como en este proceso de inversión no se realiza ninguna iteración de las expuestas -16Tabla 2 Valores de (f>, L, V, R y Z correspondientes al límite d - - ' t ^ b i l i d a d df- una zond con paráiir t r o de l a c u r v a , Rou H ! f, h A 1 2 3 4 5 6 7 8 9 18 1 1 12 13 14 15 16 17 18 19 28 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 48 41 42 43 44 45 46 47 48 49 58 51 52 53 54 55 56 57 58 59 68 61 S2 63 64 63 €-6 6? 68 69 78 71 72 8 . 888 3 3.55 7 4 4.415 51.318 56.251 68 . 080 6Z.964 65.355 67 . 380 69 . 075 78.529 72 . 368 73 . 872 75.5 23 77.160 78.46 3 79.524 88.4 06 81 .787 82.819 84.261 8 6. 17 7 87.134 , 38.03 8 88.854 89.427 89.714 89.88 5 88.008 90. 1 15 98.237 98.573 91.146 91.918 92.681 92.866 93.823 94.788 95.739 97.181 98.213 99.594 181.537 182. 640' 184.4 78 166.682 109.471 113.5 78 1 2O . 008 123.749 131.818 148.285 146.443 155.380 188.888 28 5.84 2 216.878 225.573 233.130 24 8.0 O O 246.422 252.542 258.463 261.373 264.261 27 0.8 8 0 275.739 281.537 293.573 3 O 6.87 8 323.138 368.080 Phi 0 . 888 8 . 888 0 , 008 8 . 888 8 . 888 8 , 888 8 . 800 . 006 4. 823 9.21 8 1 3. 258 18.6 99 23. 488 29 . 048 3 4.915 39.815 44.277 47.461 53.152 57.546 63 . 328 72.488 76.7 6 2 81.155 84.687 87.342 88.673 89.4 6 9 90.008 89.471 38.679 87.348 84.705 81.150 77.974 77.396 75.523 73.898 72.452 78.529 69.282 67.792 65.905 64.760 63.435 61.875 60.008 57.689 54.736 53 . 388 58.769 48.747 47.688 46.365 45.888 46.589 48.198 58.882 52.239 54.736 57.689 61.298 65.985 68.829 72.4 52 98 . 888 98.808 9 8. 0 8 8 90.000 90 . 008 90.880 98.888 L 3.142 2.874 2.674 2.518 2. 393 2. 28 9 2 . 282 2. 12 8 1 . 953 1.38 9 1. 639 1 .544 1 .428 1. 38 7 1 . 19 2 ' 1.184 1 .833 . 980 . 897 .'o¿6 . 756 . 65 5 .686 . 560 .524 .498 .485 .477 .472 . 463 .461 .458 .423 . 389 .361 . 368 .384 .39 5 .481 .485 .485 .482 .394 . 388 .378 .364 .343 .31 1 . 268 . 231 . 172 . 1 18 .885 .846 8. 00 0 .055 . 122 .204 .389 .443 .638 .920 1.395 1.791 2.445 ?99 . 808 13.356 8.269 5.236 4. 123 3.523 3. 142 V 2.467 1.912 1 . 586 1 . 376 1 . 232 1. 127 1 .043 . 988 .855 .754 .675 . 585 .519 .453 . 394 . 352 .319 . 295 . 259 . 233 . 288 .160 . 141 . 123 .109 .899 .894 .891 .889 .888 . 885 . 888 . 878 .858 .047 .849 .858 . 865 .072 . 881 . 837 . 894 . 102 . 187 .112 .117 .122 . 125 . 121 .116 .899 . 876 . 058 . 834 8.000 . 047 . 114 .214 . 367 .619 1 . 86S 1.973 4.300 7. 169 14.234 999 . 008 687.413 88.134 15.824 6. 122 3.546 2. 467 a. R 1 . 888 1 . 280 1 . 400 1 . 600 1 . 808 2 . 000 2 . 20 0 2.398 2. 592 2. 768 2. 929 3. 142 3. 326 3.530 3. 734 3 .894 3.999 4. 123 4.273 4.375 4.502 4.635 4.682 4.718 4.736 4. 744 4.746 4.747 4.748 4.747 4.743 4. 744 4.733 4.717 4.694 4.472 3.373 3.464 3. 162 2. 328 2. 644 2.450 2. 236 2.121 2. 088 1.871 1.732 1.531 1.414 1.342 1.225 1. 148 1 . 095 1 . 849 1 . 000 .949 .394 .837 . 775 . 707 .632 .548 . 447 .387 .316 0 . 000 . 180 .200 .400 . 600 .800 1 . 088 3 . 14 2 3. 4 49 3. 744 4 . 82 9 4. 307 4. 579 4.845 5. 104 5. 061 5. 003 4.948 4.850 4. 749 4.614 4.451 4. 300 4. 184 4.041 3.331 3.659 3.403 3 . 033 2.840 2.642 2.482 2.361 £, 2^9 2. 262 2.240 2.218 2. 174 2. 133 1.996 1.838 1.695 1.644 1.489 1 . 368 1.268 1. 145 1 . 070 . 984 .882 . 322 . 756 .681 .594 .491 .367 . 309 .21 1 . 135 .09 3 .048 0. 000 .052 . 109 .. 171 . 248 .316 . 483 . 504 .624 .694 .773 1.008 1.386 1 . 654 2. 094 2.474 2.819 3. 142 -17- en (2) sino que se dan por buenos los valores iniciales, a conti nuación se procede a un ajuste fino unidireccional lo (J)) con la. subrutina Vi.t-t (variando só- oara conseguir que el valor de L o coincida con la L dada ya que, de no ser así, el pequeño error en la esbeltez que introduce el proceso de inversión discreta'zada se nota en el dibujo (error de 1 mm entre el extremo de la cur va y el borde del disco) y produce un efecto indeseable. Si el operador selecciona la opción VaKdLtdt ue o la Conical para OutZK. ¿hapz, p<¿n.í,pz(itiv t, pdfi6pe,ct¿ el proceso es similar al explicado sólo que ahora la representación es tridimen- sional con un ángulo de proyección similar al que subtiende la cámara de cine sobre la zona de ensayo en el Módulo de Física de Fluidos. El resto de las opciones disponibles en el programa "FZ-ESS" se refieren a los diagramas de estabilidad correspondióla tes a la teoría de la hidrostática de la zona flotante. Estos dia gramas son: - D i agrama Z,R. Es el gráfico más completo, y en él se representan las formas de equilibrio y las regiones estable e in_ estable, habiendo adimens ional i zado con el ra.dio en la sección intermedia entre los discos (garganta o vientre, según el volumen sea inferior o superior al de la zona cilindrica). Las curvas de esbeltez constante son radiales que parten del origen, y las de estrechamiento constante son rectas horizontales. La situación del punto (L,V) en este diagrama muestra directamente la deformación que en la forma externa produce una variación de volumen así como la forma en la rotura (véase Fig. 7 ) . — Di.agrama._L_, V . Este es el gráfico más sencillo y fá- -18- cil de comprender, y permite el posicionado inmediato del punto (L,V) correspondiente a la zona en estudio, y su comparación directa con los límites de estabilidad, lo cual sirve para estimar rápidamente el margen posible de variación del volumen antes de que la zona pueda romperse (véase Fig. 8 ) . -Diagrama L,D.m. Este gráfico es de especial importancia para los experimentadores con zonas flotantes (se diseñó pen sando en los astronautas del Spacelab) ya que suministra una ayu da "visual" sencilla: basta observar el estrechamiento de una ZCJ na de esbeltez conocida y mirar en este diagrama su situación res pecto al volumen mínimo estable, para decidir sobre las posibles acciones posteriores (véase Fig. 9 ) . 4•7. MANTENIMIENTO Normalmente, para los programas de ordenador suele bas_ tar con dar una descripción de su funcionamiento y una documenta ción que siempre incluye el listado y que a veces se amplía con organigramas detallados para hacer mas comprensible aquél. Sin embargo, en los programas de cierta envergadura, resulta conveniente suplementar dicha información con explicaciones sobre seguimiento, depuración, estructura interna, ampliaciones, puntos negros, etc. Esto es particularmente válido para programas "vivos" que han de adaptarse al continuo progreso de las investiga- ciones y la consiguiente demanda de los utilizadores. Idealmente, un programa debería consistir en módulos autónomos enlazados según esquemas sencillos. En estas uniones intermódulo se colocarían elementos de inspección y control para el seguimiento del flujo de información. Sin embargo, condiciona -19- RELACION DE FIGURAS QUE, DEBIDO A SU TAMAÑO, SE HAN INCLUIDO EN LA BOLSA SIGUIENTE: Fig. 7. Diagrama Z-R de la hidrostatica de la zona flotante. Fig. 8. Diagrama L-V de la hidrostatica de la zona flotante. -20 Fig. 9. Valores límites del estrechamiento de una zona flotante, Dm (diámetro en el plano medio entre discos dividido por el diámetro de los discos) en función de la esbeltez, L (separación entre discos dividido por el diámetro de éstos). mientos de optimización de memoria, a veces, y de tiempo de ejecución en nuestro caso, llevan a una estructura menos "limpia". En cualquier caso, si el programa es multifuncional (sirve para muchos cometidos), conviene mantener en memoria permanente, común a todos los subprogramas, el código de la opción elegida. En nuestro caso se utiliza el vector Cod<¿{o) de tres elementos: el primero define la columna en la carta del menú (Fig. 4 ) ; el segundo la fila dentro de esa columna, y el tercero sirve de con trol de fin de selección y de ayuda en el seguimiento del progra ma . Fl usuario sólo ve la parte externa del programa. Así, cuando la máquina está realizando cálculos laboriosos que requie ren un tiem.po considerable, en la pantalla permanece la imagen -21- anterior, o bien un mensaje tranquilizador (una de las situaciones más embarazosas en el uso de estas máquinas es cuando no se sabe lo que está haciendo ni el tiempo que se tardará en reestablecer la comunicación). Pues bien, seleccionando el código de seguimiento se consigue que el ordenador vaya presentando de vez en cuando (en las entradas y salidas de subrutinas y subprogratiias) resultados intermddios que sirvan de control y ayuda al ope rador. En este sentido, se han dispuesto a lo largo del programa instrucciones, subrutinas, y un subprograma de aclaración, el denominado Knatii (¿A ^ aunque por el momento su acción se redu- ce a la presentación de un listado estructurado lógicamente, tal como se muestra en la Fig. lü, en el cual se comenta la función de cada subprograma tantas veces como aparece, con el fin de sim plificar el seguimiento de cada segmento particular de programa. Posteriormente se irán añadiendo subrutinas adicionales que muestrearán verdaderamente el programa con valoréis cuya solución sea conocida, lo que servirá para construir árboles lógicos de flujo de información, presentando en pantalla en forma de organigrama las anomalías detectadas, las posibles causas, y las posibles medidas a tomar para corregirlas. 4 -8- DOCUMENTACIÓN De acuerdo con la estructuración del programa, se ha organizado la información por segmentos, de forma que pueda analizarse cada uno con independencia del resto, y al mismo tiempo pueda obtenerse una idea general del programa, sin descender al detalle del funcionamiento de cada segmento, al explicitarse en -22- BNHÜTfiTED L I S T 'FZ-ESS . . . . Load... I - L i mt I-Lvrz M e n u. . . S e 1 e c t i otile t I-PICT.. I-F'i c t Shapes. G r id. . Li mi ts Invers Lurz.. E D i agr ams . . . Gr i d . . L Pea. . . Limi Lurz Pcp. L i rn i Lvrz Pe y . Limi t I nver Lvrz Pcdm. L i rn i Lvrz final i s e r OF í u BF ROGRHKS HUD F I L E S USED F 1 c a t i ng Zone : Equ i 1 i b r i i.:ni S h a p e s 'i St ab i 1 i t y L o a d s a r r a y f o r l i m i t a L'172,6) & subprogram Lurz To l o a d p r e c o m p u t e d s t a b i l i t y l i m i t s C o n t a i ni s u b p r og r am L u r z P r e s e n t í a b i d i m e n s i anal menú car te E t-i a b l e s k e y b o a r d e a s y i» e n u s s l e c t i o n P r í í e n t ; a b i d i m í n s i o n a l menú c a n t e I f' í.ri r - i - s r á l 1 p i e t u r e i s u a n t e d . ( E r a s e s - p r o g r a m ) F i l e f o r t h e o u e r a l 1 i mage 0 c mput e s S- p r e se n t s f 1 o a t i ti g z o n e sh ap es C h o s í í S draws t h e a p p r o p r i a t e gr i d F i nds pf- e 1 o a d e d st ab i 1 i t y 1 i rn i t s ( ' I - L i mt "' > F i n d s ir. ' I - I n v - ' r ' ( F l l p h a . P h i ) c o r e s p o n d . t o ( L , V > C o m p u t e = ( L , V , R , Z ') as a f u n c t i o n o f ( fi 1 p h a , P h i > E 1 1 i p t- i c i n t e q r a 1 s- b y L an d e n •" s t r an s f o r m at i o n Thí-or e t i c a 1 a n a l y s i s o f F - Z - H y d r os t a t i c s C h o s e s i-: d r aw s t h e ap p r o p r i a t e g r i d C o m t-i ij t e s ( L , V , R , Z > as a f u n c t i o n o f ( fi 1 p h a, P h i > P 1 o t s c u i'- v e o f c o n s t an t. fi 1 p h a F i nds. p r e 1 o-ade d s t ab i 1 i t y 1 i m i t s ( •' I - L i mt ' > Co:¡iput es ( L , '•-•', k , Z ) as a i unc t i on o f ( ñ 1 p h a , Ph i > P 1 o t s c u r'- • e o f c o n s t a ri t, F' h i F i nds pr e 1 oade d s t ab i 1 i t y 1 i rn i t s ( "" I - L i m t ' ) Computes ( L , V , R , Z ) as a f u n c t i o n o f ( f i 1 p h a , P h i > P 1 o t s c u r w e o f c o n s t an t V F i n d s pr e 1 o a d e d st ab i 1 i t y l i m i t s ( ' I - L i mt "' > F i n d s i r< ' I - 1 n v r ' ( fi 1 p h a , P h i > c o r e s p o n d . t o ( L , V > C o m p u t e s ( L , V , R , Z > as a f u n c t i o n o f ( fi 1 p h a , P h i :> P1 o t i c u r ve o f c o ns t a n t D rn F i n d s p r e 1 o a d e d s t ab i 1 i t y 1 i m i t s < ' I - L i m t ' ) C o ni p u t e s ( L , V , R , Z > as a f u n c t i o n o f ( ñ 1 p h a , P h i > finnotated 1 i s t o f s u b p r o g r ams. YOL) fiRE HERE F i g . 10. L i s t a d o e s t r u c t u r a d o y comentado de l o s subprogramas empleados en programa "FZ-ESS". cada uno l a s mismo, férente relaciones se puede r e a l i z a r a cada mato g e n e r a l segmento, que c o n s t a que el tiene acceso pues é s t a de l o s con e l resto selectivo del a la programa. Asi_ información r_e s e ha o r g a n i z a d o siguientes s e g ú n un for puntos: Nombre: Nombre del segmento de programa (programa o subprograma) y descripción de la función que desempeña. -23- Nombre del archivo: Nombre del archivo en memoria auxiliar en que está almacenado el segmento . Sintaxis de acceso: Cuando se trata de un subprograma se detalla el formato de la instrucción de llamada del mismo. Parámetros de entrada: Descripción de las variables por las que el subprograma recibe los datos. Parámetros de salida: Descripción de las variables por las que el subprograma ofrece los resultados . Variables comunes: Descripción de las variables que, por residir en el área de memoria compartida, se utilizan para transmitir información básica entre los diferentes segmentos. Subprogramas requeridos: Descripción de la función que realizan los subprogramas que necesita el segmento. Archivos requeridos: Descripción de los archivos de datos manejados, en aquellos segmentos que los necesiten. Variables: Descripción de las variables utilizadas por el segmento. Organigrama: Descripción del funcionamiento lógico del segmento. Comentarios al organigrama: Descripción de las tareas que realizan los diferentes bloques del organigrama . Listado: Listado del segmento de programa, escrito en lenguaje HP-BASIC. -24- SUBRUTINAS Descripción de las subrutinas del segmento, cuando la importancia de las mismas lo requiera. La información referente a las subrutinas consta de los siguientes apartados: Nombre: Nombre de la subrutina y descripción de la función que desempeña. Variables propias: Descripción de las variables empleadas por la subrutina que no aparecen en el segmento al que ésta pertenece. Organigrama: Descripción del funcionamiento de la subrutina. Listado: El l i s t a d o de l a s u b r u t i n a e s t á i n c l u i d o en e l del segmento a l que p e r tenece . loda agrupado dor] información en e l A p é n d i c e selectiva n a un r ó t u l o ffiere . la que s i g u e , s e ha d i s p u e s t o con el referente nombre d e l a la documentación y para en l a parte facilitar inferior s e g m e n t o de p r o g r a m a su ha localiza- de c a d a al se pagi" que se re •25- APÉNDICE DOCUMENTACIÓN DEL PROGRAMA Y PROGRAMAS "FZ-ESS" AUXILIARES -26- Nombre del programa: "FZ-ESS" Es el programa principal. Proporciona el soporte para la selección de las diferentes posibilidades de funcionamiento y transfiere el control a los subprogramas encargados de realizarlas. Nombre del archivo: " F Z - E S S " Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección v de depuración. L(72,6) Matriz de 72 por 6 elementos que guarda los valores de Alpha, Phi, L, V, R y Z de 72 puntos correspondien tes a los límites de estabilidad. Subprogramas requeridos: Load Carga en memoria la matriz de los límites de estabilidad y el subprograma Lvrz. Menú Presenta las diferentes posibilidades de funcionamiento. Seiection Permite la selección del menú a través del teclado. "I-PICT" Presenta un resumen gráfico de todas las opciones. Shapes Calcula y presenta la forma externa de una zona flotante . Diagrams Calcula y presenta gráficamente en modo interactivo el análisis teórico de la hidrostática de la zona flotante. Variables: Code(3), L(72,6) Ver variables comunes. Items¿(4,13)[20] Matriz alfanumerica de 4 filas y 13 columnas (20 caracteres por elemento) que guarda los Ítems del menú. Organiqrama: Ver Fig. •27 Menú presentation Enable INTP NO Menú selection Disable INTP Code (1) = 1 > V Code ( 2 ) = ^ ^ YES LOAD "I - P I C T " "Jm YES Code(l)= 1 ? Shapes NO Diagrams "ÜL End 3 Fig. 11- Organigrama del programa "FZ-ESS". ("FZ-ESS'j) -28- Comentarios al organigrama: Initialize Dimensiona y reserva espacio para las variables empleadas en el programa, y asigna valores iniciales. First time ? Si es la primera vez que se ejecuta el programa se cargan en memoria la matriz L y el subprograma Lvrz. Load Carga la matriz L y el subprograma Lvrz. Menú presentation Presenta las diversas opciones entre las que se puede elegir. Enable INTP Permite que el programa acepte interrupciones procedentes del teclado de la máquina con el fin de poder seleccionar opciones con pantalla interactiva. INTP ? Espera interrupciones. En el caso que se haya pulsado una tecla se produce la transferencia de control al subprograma Selection que realiza el tratamiento de las interrupciones y determina de acuerdo con ellas el vector de código. Code(3) ? Cuando se devuelve el control a la secuencia principal procedente del subprograma Selection se transfie re el control, de acuerdo con el código, Code(3), a: la espera de nuevas interrupciones, la ejecución de la opción seleccionada, o al final del programa. Disable TNTP Termina el modo interactivo con pantalla. LOAD "I-PICT" Carga el programa "I-PICT" que resume gráficamente las diversas opciones (borra el programa principal). Shapes Calcula y presenta la forma externa de una zona flotante en función del volumen y la esbeltez. Diagrams Calcula y presenta gráficamente en modo interactivo el análisis teórico de la hidrostática de la zona flotante. ("FZ-ESS") -29- Listado: 10 ########################### i "FZ-ESS" ############ FLOñTING ZONE. EQLILIERIUM SHHPES & STñBILIT 20 I-(5.'12..'S0> 30 Primer is CRT 40 I nitialize: PRÍNTER IS 16 P 1 o 1t e r i s C R T PLOTTER IS "GRRPHIC3" 50 OPTION EflSE 1 F i r s t i n d e x v a l u é f o r a r r a y s is 1 60 C 0 M C o d e (3 > , L i 7 2 , 6 ':> C o d e < * > f o r c o n t r o l . L < * > f o r 1 i r» i t s 76 DIM Iteri,sí<4, 1 3 > C 2 0 3 M e n ú a r r a y is 4 c o l u m n a of 13 rotos 80 MflT C o d e = Z E R Resé t s f o r m e nu p r e s e n t a ti o n 90 I F L C 2 , 1 ) = 0 THEN C ñ L L L o a d L o ad s d e s t ab i 1 i t ',-• 1 i m i t s í< s u b r u t i n e s 100 P resent s menu 110 M e n ú : C ñ L L M e n ú < 0 , 1 1 e r n s * ( * > ) ON KED CñLL Selection ,HLL E n ab 1 e s i n t e r r u p t s t o sel e c t t ti e m e n u 120 ON Code<3>+l LOTO 120,143,End Chek s for end of se 1 ec ti on 139 OFF KED 140 D hiasn ab e r rduepbtu sg g i n g is w a n t e d C ge1 te.io i= n1 t if CodeC3>=Q 150 IF ' X o d e C 1 ' = 1':> M H D < C o d e < 2 ) = l> T H E N L O A D " I - P I C T " ! o ü e r a l 1 p i c t u r e 160 IF C o d e < 1•)= 1 THE H C ñ L L S h ap e s ' P r o g r am 1 : 3 h ap e s S, p e r s p e c t i u e s 170 IF C o d e < 1 Í > 1 T H E N C ñ L L Ii i a g r a m s ! P r o g r a m 2 : Z - R , L - V 'i L - D rn d i a g r a m s 130 IF C o d e < 3 ) THEN L I N K !11 -ñNñL" , Last_end ! ñnaliser subp. for debugging 190 EEEP End: 200 DISP TftBC72) ,CHRí< 129) ; " END " ; CHRf <. 1 23 ) 210 END 220 ("FZ-ESS") -30- Nombre del subprograma: Load Carga en memoria la matriz de los límites de estabilidad y el subprograma Lvrz. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: C A L L Load Parámetros de entrada: Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. L(72,6) Matriz de 72 por 6 elementos que guarda los valores de Alpha, Phi, L, V, R y Z de 72 puntos pertenecientes a los límites de estabilidad. Subprogramas requeridos: Archivos requeridos: "I-Limt" Guarda la matriz L. "I-Lvrz" Guarda el subprograma Lvrz. Variables: L(72,6) Ver variables comunes. Organigrama: Comentarios al organigrama: Listado: 1 fi 2Q 30 40 58 60 70 80 90 L '"> B.d l Ls;t •'"< i' B L o -id ' '•} '•?!? £ 8 f?!? (?'~'- é ¡í1 Q <B <$ i* if'? 0? (? i? ¡If? 5 $f?'? $ í? Í? y i?C? 'i1'?fi?y 8i? 8 f? 91? 5 'i 1 ¡l1 § i]? $8 ; ? 5 9 8 8 81? 8 8 8 if O P T I O H BfiSE 1 COM C o d e <3 J , L i 7 2 , 6 ) DISP " l i a i t a [iiinijt.t, p i s a s e : ñSSIGN #1 10 " I - L i m r , " P.EfiD # l ; L ' ' * : - ' LlhK " I - L i ' i z ' S L ü t j n d SUfcEXIT í n d : SUBEND 1 i nk i n g ! ! Loads Loads. S: loading t he SUB data" stability Lvrz 1i mi t s -31- Nombre del subprograma: Menú Presenta en la pantalla el menú y/o lo almacena en la matriz ítems Nombre del archivo: "FZ-ESS" Sintaxis de acceso: C A L L Menu(p,items¿(-';)). Parámetros de entrada: Determina la función del subprograma: P=0, escribe el menú; P=l, carga el menú en la matriz Items¿. Parámetros de salida: Iterase,13)[20] Matriz alfanumérica en la que se carga el menú. Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Variables: p Ver parámetros de entrada. Items¿('+,13)[20] Ver parámetros de salida. Code(3) Ver variables comunes. I índice del bucle que escribe los Ítems del menú en la pantalla Organigrama: Ver Fig. 12. Comentarios al organigrama: Print? Transfiere el control de secuencia de acuerdo con el valor de P. Instructions Muestra las instrucciones a seguir para realizar la selección. Presentation Presenta en pantalla el menú. Read Carga en la matriz Items^ los iteras del menú. -32- Fig. 12. Organigrama del subprogpama M&na. Listado: 10 Menú: SUB 20 3ü 40 EI-'IT GRRPHIÜS ! Reads, stores i- displays the menú OPTIÚH BfiSE 1 COM Code<. 3> I F P = l THEN MfiT REliD í t e m s * ! 11" c a l l e d j u s t t o l o a d í t e m s * IF P = l T H E N S U B E K I T B I S P " S e 1 e c t y o u r •: h o i •: e I.J i t h d i s p 1 a y ar r o w s - " ; C H R í < 2 4 0 '; ; " " ; B I SP CHR* < 243 ~> ; " - " ; CHRÍ ^ 224 !) ; " " ; CHR* < 247 > ; " : Then press 58 Re ad: 60 ?0 Ir str 80 M i=- n u Í P * 11 e m s- "í ( * ) ) ! í 5 i? i? i? '5 $ £ £'? ¡? $ i? £ & £ 'í!? $ & £ *?>- •? 5 £ # £ ¡? 'i? §té£ 3 £'?£'? £tététététété£ $ £ COHT H 90 1 00 110 120 130 140 150 160 1 70 180 190 200 210 22Ú 230 246 PRINT CHRÍt. 27,'í:"E" ; TflBv 18) ; "FLÜHTING ZOHE: EQUILIBRIUM SHRFES ñND " ; E H U" : LINC 1 : PRINT " S T H E I L I T V " ; L I H <\ Z '• \ TRI (3S " M ; " G E N E R A L "2.R G R Ñ P H I C " PRINT USIHG "#,2<22H L,V G R ñ P H I C " , " L . D m GRflPHIC" PRINT USING "2<22R>, . __ B ñ T H 0 <-> e r a! 1 p i c t u r e , 0 u t e r; h a p e , P ar al leí p e r s p . , C o n i c al p e r s p . , " " , " " , D H T H " I n p u t fl1pha,Ph i ", " I n p u t fi1pha", " I n p u t P h i ", "R1 1 ñ 1 p h a " , "fi1 1 P h i ' , " R 1 1 fi 1 p h a , P h i " , " I nput. L , V " , " I n p u t L " , " I n p u t V " , " ñ 1 1 L " , "fl1 1 V " B R T H "fll 1 L , V " , r , H l l ñ l p h a . V " BfiTfi " I n p u t R l p h a , P h i " , " I n p u t R 1 p h a " , " I n p u t Phi","flll filpha","Hll Phi ,"flll R l p h a , P h i " , " I n p u t Bm","fill p m ","","","","","" BflTH Input R1pha,fl1 1 R1pha, Input V,fi1 i V, " ", " " , " " , " " , "", "", "", "","" MfiT REfiB ítems* Pe esent at. i on: FOR 1 = 1 TÜ 13 ! Frints formaled menú t. ab 1 e PR I NT US I NG " 20FI " ; 11 5»ü$( 1 , I > , 11 emsí < 2 , I ) , 11 ems * í 3 , I ) , 11 e m s * < 4 , I ) HEKT I C o d e i; 1 > = C o d e i. 2 > = 1 ! D i s p 1 a y f i r s t its m i n i n <•> e r s e y i d e o P R I N T C H R í < 2 7 > :;:" :i-aér-yC " ; C H R í '• 1 2 9 ) ; I t e m s í C 1 , 1 > ; C H R í < 1 2 3 ) SUBENB (Menú J -33- Nombre del subprograma: Selection Tramita las interrupciones que se realizan identificando las teclas pulsadas y actuando de acuerdo con ellas cambiando la presentación y elaborando el código (Code(:'0). Nombre del archivo: " F Z - E S S " Sintaxis de acceso: Cali Selection, ALL Parámetros de entrada: Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Es elaborado dentro de este subprograma. Subprogramas requeridos: Menú Lee los Ítems del menú. Variables: Code(3) Ver variables comunes. KBD¿ Función que lee el contenido de la memoria de interrupción en la que el sistema almacena el valor alfa numérico de las teclas pulsadas. Ké Variable alfanumérica definida por el programa para guardar el contenido de KBD¿. Num Variable numérica que traduce el valor alfanumérico de las teclas pulsadas. Items^ Matriz alfanumérica que contiene el menú. Organigrama: Ver Fig. 13. Comentarios al organigrama: Decode Recupera el valor numérico de la tecla pulsada. (Selection) •34- í S t a r t ^ Decode Code(3) = 2 YE Reset oíd item New oosition Find nearest £ Lights nev; ítem Code(3) = 1 c 5 End Display warn 3 Fip,. 13. Organigrama del subprograma Se.Ze.ct¿on. (Selection) -35Spected key? Las teclas esperadas son: STOP, CONTINUÉ o flechas de movimiento de cursor. ¿Es alguna de las flechas de posicionamiento de cursor? . Within bounds? "Está dentro de la pantalla?. Reset oíd Ítem Escribe el antiguo item sin subrayar. New position Calcula la posición del nuevo item de acuerdo con la flecha pulsada. Menú available? ¿Hay un item en esa posición?. Si no, mueve el cursor al más próximo en su misma columna. Lights new ítem Escribe el nuevo item subrayado. Display warn Avisa que la tecla pulsada no era adecuada u oportuna. Listado: 1 6 3 € 1 e c * i o n' S11B S e 1 e c t i o n ! £ £ £ £ $ £ £ & & ú? $ 3 £ £ £ £ & £ •-'?'&$ ! - l - £ £ $ £ £ $ L? '£ £fé£ £ $ £ £ 'i 1 £ í #*-te!-£ ¡¿ $ J' ? £ 2@ 0 P T I 0 N BASE 1 ! M enu s e 1 e c t i o n b y k e y b o a r d d i s p . a r r o w s 30 COM C o d e < 3 ) 40 S T fi H DfiR D ! T o av o i d p r o b 1 e t¡¡ s w i t h p r i n t i n g c o d e s 50 ÜN ERROR GOTO Warn 60 üecode: KÍ=KBDÍ ! Reads KBD buffer 70 IF NUMcKí[1; II )<>255 THEN Warn! Unexpected key entry 80 N u m = N U H •'. K í C 2 ; 1 ] > ! F i n d s c o d * o f •: o m ni a n d k e y s 90 IF Hum = 52 THEN Codee. 3; =2 ! Escape :i STOP 108 IF Nurn=19 THEH Cont ! Continué, selection done 110 IF < N u m > 2 1 > ñ H D < Mu m < 2 6 > THEH M o y e ! E x e c u t e a r r o w c o rn m a n d 1 20 Warn : D I SP CHRÍ < 129 > , " UNEXPECTED r EY ENTRY " , , CHRÍ (. 123 > 138 IF Cüde(3><>2 THEN WñlT 15O0 148 DISP "Select your choice w i t h display ari-ous -";CHRÍ<240);" "; 150 DISP CHRí<248); "- " ; CHRÍC224 ) ; " ";CHRÍí247); " : Then press CONT " 160 SUEEXIT 170 Cont: Codeí3)=l ! For escape 130 PRINT CHRí>,27):i"E" ! Ciears printed área 190 DISP ! Ciears displayed área 209 SUEEXIT 210 M o v e : DIM 11 ernsí í 4 , 1 3 ) í 20 ] 220 IF <Code< 1) = 1) RHD í.Num = 22) OR (Code <. 1 )=4 ) flHD (NUÍÍ> = 2 3 ) THEH Warn 230 IF <Code(2)=l> flHD (Num=24) OR íCodeí2)=13> RHD ( N u m = 2 5 :< THEH Warn 240 CHLL Menú(1,11 emsí ( * ) > 258 PRINT CHRÍ(27>í-:M&a"3íiv'fiL$<Coae(2>+5)&"r"iiVflLÍ(20*o:ode( 1 >-l ) >&"C"; 260 PRIHT CHRÍ( 128) ; Iternsíí Code <: 1 ) , C o d e ( 2 ) ) ; CHRÍ ( 123) ! Reset s oíd 270 IF <Num = 22) OR ( Num=23 ,' THEH Code < 1 ) =Code < 1 ) + ( Hurn-22 . 5 ) *2 ! Lights new 2S0 IF <Nurii = 24) OR CNurú = 25> THEH Code ( 2 ) = Code < 2 ) + í Nurú-24 . 5 ,' *2 ! Lights new 290 IF I t e m s í Í C o d e ( 1 ) , C o d e ( 2 ) ) [ 1 ; 1 K > " " THEN 3 2 0 ! Empty menú item 300 Code<2)=Code(2)-l 310 GOTO 2 9 0 ! Search fot- t he nearest selectable item 320 PRINT CHRÍf:27)S,"';a":i,/lHLÍ(Cooeí 2 )+5 ) & " r " Í.VRLÍ í 2 0 * í Code ( 1 )-l ) ) í< •' C " ; 330 PRIHT CHRí'.: 129) ; 11 emsí ( Code ( 1 ) , C o d e < 2 ) > ; CHRÍ ( 128) 340 SUBEND (Selectior) -36- Nombre del programa: "I-PICT" Presenta la imagen almacenada en el archivo "I-Pict", que corresponde al resumen gráfico general de las prestaciones del programa "FZ-ESS". (Borra y vuelve a cargar en memoria el programa "FZ-ESS"). Nombre del archivo: " I - P I C T " Variables comunes: Subprogramas requeridos: Variables: S(16380) Matriz entera que almacena la imagen en memoria prin cipal. Organigrama: Comentarios al organigrama: Listado: 10 20 30 40 50 60 70 30 90 180 110 ! "I-PICT" ! INTEGER S<16380) PRI NT PñGE;TflE < 20 >;"L 0 H DIHG PICT U RE - I-Pi cl ' 0 H ME M Q RY";LIH < 3) PRIHT TñB<24); "E = t uiiitsd delay: 50 seconds" PRIHT TflEC10);"Once the beep is heard, pressing CONT bringj. 'FZ-ESS' back DI3P TftB(60>; "Hai t a minute-, pitase" ñSSIGM #3 TO "I-Pict" M H T REñD #3;S GLOfiD S(*> GRAPHICS EEEP 120 PHUSE 130 140 LOAD "FZ-ESS" END ("I-PICT") -37- Nombre del subprograma: Shapes Calcula y dibuja la forma externa de una zona flotante comprendida entre discos iguales de diámetro D, separación L y volumen líquido V. Nombre del archivo: "FZ-ESS" Sintaxis de acceso: CALE Shapes Parámetros de entrada: Parámetros de sal ida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Grid Elige y dibuja la cuadrícula apropiada. Limits Busca los límites de estabilidad en volumen para L dado . Inversión Busca en el archivo "I-Invr" los valores de Alpha y Phi correspondientes a L y V dados. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Variables: Code(3) Ver variables comunes. R(20),Z(20) Almacenan las coordenadas R y Z de la curva meridia na (mitad). Alpha(3) ,Phi(3),V(3) Valores de los parámetros Alpha, Phi y V. El índice representa los valores correspondientes de las zonas de esbeltez elegida: en el límite de volumen máxi- mo, 1; en el límite de volumen mínimo, 2; y de volu men elegido, 3. Np Número de puntos en una curva. Nc Número de cortes azimutales empleados para represen tar la superficie de la zona en las diferentes proyecciones . -38- Dimen Controla las dimensiones de las variables de entrada L y V : 0, sin dimensiones; 1, con dimensiones. D Diámetro de los discos, en mm. L Longitud de la zona, adimensional. 1 índice del bucle que calcula la curva elegida (1=3), y en caso de que se pidan, las correspondientes de volumen máximo (1=1) y mínimo (1=2). Alpha,Phi__fi Valor actual de Alpha(I) y Phi(I) dentro del bucle. Phi_in Valor inicial de Phi calculado con ayuda del valor de Alpha. J índice del bucle que calcula los puntos de la curva meridiana (mitad). Phi,L4,V,R,Z Valores de los parámetros (variable de barrido, Phi; longitud, L4; volumen, V) en el punto de coordenadas (R,Z) de la curva meridiana. Rl Valor del radio del disco (en mm). R0 Valor del radio del cuello de la zona (en mm). Laprox,Vaprox Valores de L y V usados en la representación gráfica, calculados por la subrutina Fit 1. Aé Variable alfanumérica de control de respuesta. Organigrama: Ver Fig. 14 Comentarios al organigrama: Initialize Dimensiona los vectores y asigna valores Iniciales. Grid Dibuja cuadrícula para la presentación de formas ex_ ternas. Input D,L,V Entrada de datos. Según se seleccione con la variable DImen la entrada es: si Dimen=0, D en mm , L y V adimensíonales; si Dimen=l, D en mm , L en mm, V en cm . ( Start ) 11 Initialize / Input D,L,V / '• Limits 1 • Disp V limits NO Inversión Perspectives Outer shape Fit given 1 Shape calculation YES YES Scaling Fig. 14. Organigrama del subprograma ShapQÁ . New New -40Limits Busca los valores límites superior e inferior de V y los correspondientes de Alpha y Phi para el valor de L dado, mediante el subprograma Limits. Disp limits Muestra los límites superior e inferior de V. Input new V En el caso que no se haya elegido un volumen correcto solicita un valor nuevo del volumen. New Punto de conexión para comienzo de cálculo de curvas de la forma externa de la zona elegida, y en su caso las correspondientes al volumen mínimo y máximo. Inversión Busca en el archivo "I-Invr" los valores de Alpha y Phi correspondientes a L y V dados. Fit given 1 Mediante la subrutina Fit 1 aproxima el valor de L para disminuir el error debido a la discretización de la transformación inversa. Shape calculation Calcula los puntos de la curva meridiana con ayuda del subprograma Lvrz. Scaling Cambia de magnitudes adimensionales a dimensionales. Outer shape Dibuja la curva meridiana por medio de la subrutina Outer shape. Perspectives Dibuja la perspectiva elegida por medio de la subrutina Perspectives. Listado: d ¡S i d i ;l i a I d fd |ri; d | d ttíI d i j i t í . í ¡1 , i L¿Cai;d:;dC«:j|?Ca¡Si?r«fli?i5i»!?i:ji;ai?,]i!?C»:?i>'?¡?i?L''ií¡j ÍÜB '5h ; ¡ifl OPT I ON BfiSE 1 Mee i d i an c u n ; í = ;• i- p e r i p t í t i y í : COH fodeCí.) Thr ee í hapt i l s e l * c t e d , V rn I M , ! R 'i 2 t o i t o r t h a 1 f t h sh; D 111 R • 2 0 ) , Z i 2 0 :> , h 1 f:.ha< 3 ') , P h i < 3 , V ( 3 ) FIXEB 3 BEG : u r ,' e < h a 1 f s r Np=10 i-I o . o f' p o i n t s i n a : i r c u ru f e "•t e r Nc = 14 N u m b s r- o t" p o i n t s Dimen=e ' V t •i e n D i TÚ e i-.= 1 I f di iisns i o na 1 L GPRPHICS 2 T H E N CriLL G r i d ! lew b y U n g r i d IF C e d e í 2 ! L a b e 1 f o r p e r =• p t- c t i u 6- s I F C o d s ( 2 2 T H E N G 0 S U B L a b el RRE I N SUBPROGRHÍl 3 H H P E S " ; L I H c 2 ) P R I N T "YO B s ¡a o n s t r at i o n <•,' a 1 u e f o r B < imnni,> D=40 In p ot Bemons t r a t i o n •,'al us f o r L < not d i ru L=2 Demons-1 r a t i o n '-.•>al i j s f o r V (. r¡or d i m V <3)=1 ¡.1 u e : P R I N T "Díi.-.o-.it r-a ' L < n ond i m ) = " , L , " V < no nd i m > = " , V > PRINT USÍNG í ~á; ü ' i n m 1Ü Shi;;. 20 Ic.it 60 70 80 90 100 110 120 130 14 0 150 160 170 180 -41I H R G E 2 5 X , 1 l M , 4 D , ••• P R I N T L I f I <. 1 •• ; " I n p u t '..' o u r c h c i c e o r p r- e s s 0 n H T " PR I N T L I ti •: 2 >; TAB,:. 5t3 •, : >• •• E;,pe.r -, ,f d_r-ange o f ,,at- , a b 1 e s : " ; T A B < 5 4 :• ; " 1 0 m m < " P R I N T " D ( i n m m ':> •:.' 14 0 r.i s¡"; T ht!.S-ij; " 1 0 ni m < L <. i n ni ni > < 1 4 0 ni m " ; TfiE <.' 5 5 ',• P R I H T " 0 . 1 •-' V ',' n o n d i ni > <:. 2 . 5 " ; T R B •:' 6 5 •• ; ,: L C n o n d i m > = L -' D ) . " I F N 0 T D i m € r, T H E H I H P U T " D < i n n, m > , L < n o n din,) , V < n o n d i m > '• " , B , L , V í .3 ') IF H0T Din-,en THEH 290 I N P U T "I n p u t D ( i n m m ) , L < i n m m ) :i V < in c c ) ? " , D, L , V L = L ••' D ! C h an g e t o n o n d í ni e n s i o n a 1 L V e 3 > -=V.-Ti - 3 + Í 0 0 0 ! C h a n q e t o n o n d i me-ns i o nal V IF <IK5> O R ai.>160) T H E H M a m IF < L > . n A N D <l_<3.2> R H H < V < 3 :> >. 1 ) A N D ( V Í 3 K 2 . 5 ) T H E H G o o n EXIT GRRPHICS DISP CHRÍC129),"IHPUT VARIABLES ARE OUT OF RRHGE",CHRÍ(123> WAIT 3000 GRAPHICS GOTO 240 : C A L L L i mi t s '• 3 , ( L i , A 1 p h a C 1 > , A 1 p h a í 2 ) , P h i < 1 > , P h i C 2 ':> , V ( 1 > , V (. 2 > > P R I N T P A G E ; " Y o u r i npi.it « a s D ( i n m m > = " ; D ; " L < n o n d i ni ) = " ; L ; " V (. n o n d i m ) = " : P R I N T V (3 >; L IN í 1 "> ; "The- s t a b H i t y 1 i ni i t s a r e V m i n = " ; V (. 2 :>; " V rnax= " : V i 1 > IF ( V Í 3 X V < 1 ) > OR <VC3) >V(2>) THEN Preloaded D I S P " V < V m i n o r V > V m a x " ; C H R % i 1 3 3 ':> ; " C h ati g e V " ; C H R í < 1 2 8 > ; IHPUT " New V=",\'<3:> GOTO 370 aded: Alpha<3>=55 ' ! Assumes demonstration val UÍ-Í ; i f not , ph i < 3 ; = 1 9 ! i t f i n d s t h e c o r- r e s p o n d i n g v a 1 u e s IF L - 2 O R V < 3 > - 1 T H E N C A L L I n v s r i i o n f y L > , ( V í 3 >':> , R 1 p h a í 3 > , P h i ( 3 > j FOR 1=3 TO 1 STEP -1 ! 3=Your_choice, 2=Vmin, l=:v'max DISP "Pie ase, uait a minute" ! Busy message G0SUE Eusy_ 1 abe 1 ! Eus-y mes-sage f or gr aph i c s ñlpha=fllphaíI) Phi_fi =Phi(I) IF Hlpha<130 THEN Phi_in=90 IF filpha>130 THEN Phi_in=0 GOSUE Fit-_1 ! Rdjusts fot- AES <\ Laprox-Lexat ':• -; . 05 IF Code(3) THEH PRINT PAGE," Alpha Phi L V R Z' IF Code<3) THEH PRINT CHRÍ C 1 3 > , CHRf < 27 > 'i, " 1 " : FOR J = Np TC 1 STEP -1 ! Computes Hp pointí fot- a half shape Phi =Phi_i n+< Ph; f i -Ph i _i n > -- Np*J ! Linearly espaced in Phi CALL Lurz<<Alpha>,íPrn j,L4,V,R,Z> ! L4 is only Cor debugaina IF Code<3) THEN PRIHT A 1pha;Phi;L4;V;R;Z R<J>=R Z<J>=2 HEXT J ! D i s c r ad i u s < i n m m > ng R 1 = D --' 2 R 0 = Rl/RCHp;i Hez k r ad i u s ''. i n mm ) MAT R=R*(R0> R a d i al c o o r . •'. i n m m ) HAT Z=Z^vP0i L o n a . c o o r . <'. i n m m !) IF Code('3) T H E H P R I N T " R a i s c í i n m m > = " : R 1 , " R n e c k ( i n mrn:) = " ; R 0 , IF C o d e < 3 > T H E H P R I H T " L a p r o » x D = " ; L a p r o x , " V a p r ox--'D- 3 = " ; Vapr-o; GRRPHICS PEN -1 G O S U E E u s ;.,' __ 1 a b e 1 ! C1 e a r s b u s y n i e s s a g s PEN 1 IF CCode <2:>>2:> HHD t I í ">3 > THEN GCLERR ON Code'2í DIV 3+1 GOSUE Outer_ihapes.Perspeeti ves DISP "(Sor-ry. Execute GRhPHICS:' to hold : t) , "; IF 1=3 '' HEN I N P U T "JO yo-..- war.t ihe ^ . O J E R ¿ r a e ; 1 ity 1 i ,n i t fít IF I~2 TriES IHPüT í:I¡o :j0i.¡ ...lar-t. the ÜP-EP: st ab ¡ 1 i t...- 1 i .-,-> i t I f UPC i •:. Hí L 1 ; : j > = " N " TKE N SUEEx I T I F i.' o d e ('3 ':> T H E N F R I H T C H F $ >' 2 7 :• i-." m " , P M G E IF Cod*'..3,' T H E N EX! 1 7 G P h f ' H I C S HEXT I SUEEXIT ! S--<=.r ,,t. ir.íi fol 1 o..i _ shapes: FOR K : - 0 TO 1 - T y j p 1 ?.t •> s o¿' ? miii CLIP -Pl,Pi.L*F'l*'"l-2* K. i y , •:. 51- L - P 1 > -r <:. l - i> K í > FRAME UNCLIP NEXT Kl ! CLIP -3,3,L + Rl,L*RÍ+5 Injecti en hols FRAME T Shapes J -429yw 919 92u 939 940 95¡J 9 S £t 970 9 8 tí 990 1 6 £i 0 1010 UNCLIP FOR k2=-l Tú 1 8TEP 2 NOVE -Rl*k2,L*Rl FOR K 3 = - l TÚ 1 S T E P FOR F0R 1070 1tí8 0 1140 I1 HU 1 180 1170 1180 1190 1200 1210 122Ú 1240 1250 1260 1270 1280 1293 1300 1310 1320 1330 1340 Fi- bottosi 1-t- 5TEP K THEH DPHiJ -Kk*k2,0 :•(?•: t. i v e s : L e ar.ie ' a = 4 2 8 ! ( i n n¡u¡.> f ' c r t h í p r o i s - c t i e Q = R 1 * L ••••' L c am e r a * M a x i mu r.'i e x c e r. t r i c i t y FOR M = - l T j 1 8TEP 2 ! T o e t. b o t t o m L I M I T tí, 1 8 0 , 7 0 * (' 1+W> , 7 8 * ' : 1 - U > MSCfiLE 90,70 1 O80 1 09S 1 100 1110 1 1 20 Top & K4 I F K3 =- l NEXT K 3 HEXT K 2 P.ETURN Pe ' and 1 K 4 = a + k 3 + N f :,*'. l - > ; 3 ; . ;< 2 7 0 C 1 - K 3 - Í - N C . Í ( PLOT - R O i 4 ; ' * K 2 , - Z O : 4 ' - * K 3 , - 1 NEAT 1020 1 030 1040 19 "50 2 Riqhi. r K = N e •••' 2 * •'. 1 - W > T j H c - 2 í '. 1 + 11 > 3 T E ? H P h i =3SG.--Nc*K FOR J = l T u Hp ! Í.-.P 1 ! Piots the I F O í - N o-" 2 > * H > C T H E H L I M E T Y F E l I F O í - N o - - 2 . ' *»'J-"3 T K E : H L I M E T V P E 3 , . l i 0 i r c u ¡ÍI f' e t- e n >: •=• I F ( k = 0 > CR í k = Hc:- 0F: Í K = N c •'2'> THEH L I H E T V P E 3 , 1 M 0 D 2 = •:: 1 -- W > - 2 ':> H r i D í k : .; O ;. fl N p ••' k < .-• N c • H h D '-. K •• > N c -' 2 > T * I F C o d € < 2 > = 4 T H E N C = OR 1 * L - Z U • - * U + , 5 * R 1/•-• 2 - L e a a . e r a I F J = 1 T H £ H P L 0 T P 0 ~ 0 0 8 í F h : > , Q •- K O * 3 I H í - k i > , - 2 P L 0 T R '" J ) * C 0 8 '.. F h i ;• , y * R Í. J ;> * 8 I N í P h i > + Z í . T > , - 1 ' riEKT J HEXT K í Erd oí f>-e; sur face drauínq : FOR k = 0 T 0 1 Pica o í ' B t t S: d t - y d i s e faces FOR J = 0 T 0 He ' Ü i r-curnf e r enespoint= I F Í j - H o - 2 ) * W 0 3 THEH L l H E TYFE 3 . . 1 i ~ í í J - H c .-- 2 ':> * Í'J > á ) 0 R (' ' -. N c •- 2 > H í J I¡ í k = ; "> ñ H i ! C W = 1 ) T H E H L. Phi =380--Nc*J IF J = 0 T H E H P L O T R . * C G 3 C Ph i ) , 8-R 1 *S I H •: "Ph i > *Lk ++•;L * R l . - 2 P L O T R 1 * C 0 S C Ph i ) , S* R 1*8 I N ( Ph i ;• + 5*k' + L*R 1 , - 1 HEXT J HE-O" K J MOVE riRnW MÜVE DRflW HE;!T W R1,L*R1 Rl,L*Rl+5 ! Di s e edgí: -R1,L*R1 -Rl,L*Rl+5 L I M I T tí, 1 8 0 , O , 140 PETURH _l: Step=l ts ! R« ! fídjust s l i tu i T. to the giyen L l'or bí 1 1 * r 1 ••: C H L L L '..i r- z '• < ñ 1 p h a ) , >'. P h i _Lf O , V , R , Z > 1 350 C P L L L'-'r-zC •• H 1 p h a > , P h i _ f í +S1:- e p , L 1 , V , R , Z > 1380 D e r = ('L 1-Lü>--St. e p 1370 IF H B S í D e r > < . 0 O 1 THEH RETURH 1380 1 3 9 0 Nei t e n : P h i _f i = P h i _ f i + •:' L - L O - •••- •• L 1 - L O ; »St e p C ñ L L L v r z < < H 1 p h a ) , v P h i _ f i > , L a p r c::, V a,. r o 1400 IF H E S a a p r o x - D k .01 THEH RE.TÜFN S t e p = 3 1 e p ••••' 2 1420 G O T O 1350 1430 RE TURN 1440 ! Label f 14 5Ü L aie l : ¡lO'-E 5 0 * P R V I O , 9 5 C3IZE 5,.£,15 1480 LÜRG 4 14 70 L B E E L " P e r s p e e i i •••'e y 1 .=- •,> f r e r; F F11-1 c a n i e r a. 1480 R ETUPH 1 490 1410 1500 B'J: y_1ab el :M8 C ñ L E M O V E 8 5,-65 15 10 CSIZE 4,.4 1520 L0RG 5 1530 LHEEL "EUSV" 1540 1550 RETÜRN 1560 SUBENTJ 9 0,70 Shapes ) -43SUBRUTINAS: Nombre de la subrutina: Outer shape Dibuja los discos, el orificio de inyección y la curva meridiana. Variables propias: Kl índice del bucle, que dibuja los discos. K2 índice del bucle que dibuja las partes derecha e izquierda, aprovechando la simetría axial. K3 índice del bucle que dibuja las mitades superior e Inferior, aprovechando la simetría respecto al plano medio paralelo a los discos. K4 índice del bucle que dibuja los puntos de la curva. Organigrama: Ver Fig. 15. Listado: Ver subprograma Nombre de la subrutina: Perspectives Dibuja los discos y la curva meridiana en perspectivas paralela o cónica, según la opción elegida. Variables propias: Lcamera Distancia del plano meridiano a la cámara fotográfica, actualmente 420 mm, que se utiliza en el cálculo de ambas perspectivas. Excentricidad de la elipse resultado de proyectar una sección (circular) de la zona, que en la proyección paralela no varía con la posición axial de la sección, pero que en proyección cónica hay que calcu lar para cada Z. índice del bucle que dibuja primero la parte superior y después la inferior, teniendo en cuenta las peculiaridades de la simetría de la forma proyectada res pecto al plano medio paralelo a los discos. índice del bucle que dibuja los diferentes cortes azimutales que forman la perspectiva. -44- c Start } Discs Iniection hole Right & left K2,-l,l,2 n Top & bottom K3,-l,l,2 Curve points K4,l,Np r" Draw curve i L_J c El End J Fig. 15. Organigrama de la subrutina OlltQA ¿kape. índice del bucle que dibuja los puntos de la curva. Organigrama: Ver Fig. 16 Comentarios al organigrama: Line type selection 1 Selecciona el tipo de línea a utilizar dependiendo de gi gl punto est^ en i a parte anterior o posterior y si pertenece a la curva meridiana del perfil, permitiendo dibujar las líneas a trazos con el fin de dar un mayor efecto de perspectiva. Wet & dry disc faces Bucle para dibujar la cara mojada por el líquido y la externa del disco. •45- C Start 3 Eccentricity Top & bottom W,-l,l,2 ) Circumference K,l,Nc Curve points J,l,Np r Line type selection 1 YES Eccentricity Draw curve L__l__. 5 Wet & dry disc faces K,0,1 Circumference J,l,Nc Line type selection 2 Draw d i s c I JL 4 Disc L. c edges ZJ End J F i g . 1 6 . O r g a n i g r a m a de l a s u b r u t i n a PeAApe.c£¿v&¿>. -46- Line type selection 2 Selecciona el tipo de línea para dibujar las líneas vistas y no vistas de los discos. Listado: Ver subprograma Nombre de la subrutina: Fit 1 Ajusta el valor de Phi con el fin de reducir los errores introducidos en la discretización de la transformación inversa (L,V) (Alpha,Phi) y mejorar el dibujo. Variables propias: Step Incremento de Phi fi. L0 Longitud obtenida para Phi_fi de partida. Ll Longitud obtenida para Phi_fi incrementado. Der Cociente de los incrementos de L y Phi, l 3PhiJ Alpha=cte Organigrama: Ver Fig. 17. c Start } Derivative 9L/9Phi Newton Laprox, Vaprox NO Fig. 17. Organigrama de .la subrutina F¿£ t. -47- Comentarios al organigrama: Newton Calcula el valor de Phi que corresponde a la longitud dada, L, por el método de Newton. Laprox,Vaprox Calcula los valores de L y V correspondientes a Phi ajustados. Listado: Ver subprograma ( Shapes J Nombre del subprograma: Grid Elige y presenta en pantalla la cuadrícula adecuada a cada opción. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: C A L L Grid Parámetros de entrada: Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. L(72,6) Matriz de 72 por 6 elementos que guarda los valores de Alpha, Phi, L, V, R y Z de 72 puntos pertenecien tes a los límites de estabilidad. Subprogramas requeridos: Variables: Code(3),L(72 ,6) Ver variables comunes. i índice del bucle que determina los valores de los parámetros de la cuadrícula, de acuerdo con el código . A,B,C,D Parámetros de la cuadrícula. I índice del bucle que dibuja los límites de estabili_ dad en el gráfico seleccionado por el código. Organigrama: Ver Fig. 18. Comentarios al organigrama: Plot grid Gl Dibuja la cuadrícula apropiada para las formas externas . Plot grid G234 Dibuja la cuadrícula apropiada para los gráficos Z-R, L-V y L-Dm. Plot stability Dibuja en el gráfico correspondiente los límites de estabilidad, contenidos en la matriz L. -49- YES Plot grid G234 Plot grid Gl Plot stability limití C Fig. S UB í End 18. Organigrama del G r i d ! i? :¿ ¡"? i;J ¡i11_? ^á i d i d ^ l o t í i a i ó l í l ; 0PTI0H ERSE 3 1 COPl C o d e o : ' , L ( 7 2 i o, 5 BRTH e s u b p r o g r a m a G>vLd. i :ji ¡í ,;„,3 ¿i id :d:. ,d id :a y i? ií fa ¡d ¡fl y is i_d la i= ?i]-5=:?i?¡?:?¡?S00.=i!di}' G r i id t e l e c t i o n The stabi Bounds B< i u n d í Et i u n d s 1i ty for for f or i ¿ done 1i mit? a is r e f al; o drawn 2,R graph i c L,V g r a p h i c L , Dtii q r a p h i < DfiTñ 8 , 2 , 0 , 2 . 5 .5,0,1.4 URTfi 0 4 :.de<l > - i : + 1 GÜTÜ G 1 , G OH SGNCC g r i d i n mrn f o r o u t e r - shapePlot; MSCfiLE 98,70 . 1 LIME TYPE 3, -7(1. CLIP -90,90, GRID 10, 10 LIME TYPE 1 FRHHE CSIZE 6,.5,. MOVE 0,7 2 :.h LORG 4 LRBEL "Outer P 1 o t. i- g r i d f o r Z , R L , V L , D m g r a p h i c s SUBEXIT F 0P 1=2 T O Co a RERI¡ fi,B,C,D NEXT I S CALE h , B , C ,D CLIP R,B,C,D LIME TYPE 3,.1 GRID 1,1 OR < C o d e ^ 2 i = 12> T H E N L i fu i t LIME TYPE 1 FRRME i, D - < D - C :• / 10 ! L a b f l s t y p e o tc u r ••; í IF < C o d e < 2 ;• = t.) C S I 2 E 4 , . 5 , . 30R <Code<.2>=4> ñ N D < C o d e ( 1 > 0 4 :• THEN LRBEL MOVE fl+<B-l>--'2 R N D < C o d e ( 1 ) = 4') T H E N L R B E L "fllpl•¡ a " IF <Codeí2>=2> ñ N D < C o d e < 1 > < > 4 > 0R < C o d e < 2 :'=5 :>THEN LABE fiHD ( C o d e < l > ^ 2 ) 0R ( C o d e < 2 ) = 1 8 ) THEN LRBE IF < C o d e <. 2 ) = 1 > HEN LRBEL " V o l u m e " IF í C o d e ( 2 > = 3 > 0R CCode(2) = l 1 T"> IF < C o d e < 2 J = S ) RND (CodeO ) = 4 >T H E N L R B E L " V o l u m e " IF íC o d e C 2 ) = 9 > RND <Code<2)>6> T H E N L R B E L " S t r e t c h i n g "fllpha' 'Phi •L" (Code<2>>2) < C o d e O > = 3> ( Grid ) -50- 380 Limit: FOR 1 = 1 TO 72 ! Plots t he stabtlit' ] i m i t s 398 IF < Code < 1) =2 > RHD <. I = 1 > THEN PLOT LÍI,6;.L(I,5 > , -2 469 IF Codeín=2 THEH PLOT La,f¡,L(I,5),-T 418 IF <Code(l :>=2) PHD <I=fc"5> THEH PLOT .39,. 2,-1 428 IF CCodeCl>=2> RHD (1=65) THEH PLOT .9375, . 1 4 1 4,- 1 430 IF < Code < 1 > = 2 :> HHD < 1=65 > THEH PLOT . 965 ,.1,-1 440 IF < C o d e < n = 3 > RHE CI = 1) THEH PLOT L < I , 3 ':> , L < I , 4 > , -2 450 IF Code<l>=3 THEH PLOT L < I , 3 > , L < I , 4 ) , - 1 469 IF (Codí(l)=4) RHD <I = 1> THEN PLOT L < I , 3 > , 1 .-'L < I , 5 > ,-2 479 (Code(l>=4) RHD < L < I , 5 > > . 5 ) THEH PLOT L C I , 3 > , 1 -'L í I . IF 4 SO HEKT I 490 SUEEHB C Grid ) -51- Nombre del subprograma: Limits Busca para un valor dado de una de las variables Alpha, Phi, L, V 6 R los valores de las demás variables en ios límites de estabilidad. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: CALL Limits(J0,Value,A,B,C,D,E,F) Parámetros de entrada: J0 Subíndice de la matriz L que indica para qué variable se realiza la búsqueda de los límites de estabilidad (ver Tabla 3 ) . Valué Valor de la variable para el que se realiza la búsqueda de los límites de estabilidad del resto de las variables (ver Tabla 3 ) . Tabla 3 Variables de entrada/salida del programa Limits Entrada Salida J0 Valué A B C D E F 0 0 0 0 0 360 0 0 a 1 Alpha F(l,2) 2 Phi 3 L F(2,l) F(l,l) F(2,2) F(l,2) F(2,4) F(l,4) 4 V F(l,3) F(2,3) F(3,3) F(4,3) 0 0 5 R F(l,l) F(2,l) 0 0 0 F(l,l) F(2,l) 0 0 Ver lista de variables para F(I,J) Parámetros de salida: A,B,C,D,E,F Ver Tabla 3. Variables comunes: Code(3) Vector de 3 elementos que indican: ios dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. L(72,6) Matriz de 7 2 por 6 elementos que guarda los valores de Alpha, Phi, L, V, R y Z de 72 puntos pertenecientes a los límites de estabilidad. (^ Limits J -52- Subprogramas requeridos: Variables: J0,Valué Ver parámetros de entrada. A,B,C,D,E,F Ver parámetros de salida. Code(3) ,L(72,6) Ver variables comunes. F('4,6) Matriz que guarda los valores de Alpha, Phi, L, V, R y Z en cada corte (puede haber hasta cuatro cortes). K Contador del número de cortes. I índice de barrido por filas de la matriz de los limites de estabilidad L. J índice de barrido por columnas de la matriz L. Da,Dp,Ds Derivadas anterior, posterior y segunda utilizadas para la interpolación cuadrática entre los extremos del intervalo en que se encuentra el valor elegido. Organigrama: Ver Fig. 19 Comentarios al organigrama: Search Bucle de lectura por filas de la columna de la matriz L seleccionada por J0. Valué 6 Interval ? Compara el valor dado con cada pareja de valores con secutivos almacenados en la matriz L, para determinar su pertenencia al intervalo. Cut Registra el corte, interpola en cada una de las columnas y guarda los valores interpolados en la matriz F, en la fila indicada por el número de corte. Tailoring Confecciona las variables de salida de acuerdo con el valor de J0, como se muestra en la Tabla 3. ( Limits J 53- Flg. : SUB 19. Organigrama d e l subprograma LÁmíAA .didididididid L i FM i t. s < J 0 , V a 1 u s , H , E , C • D , E , F > ' Ca Ca i? i? ií L" @ Cd 0 ií @ i* C1* Cd 0 i? i»tfi? i? L° ií ¡» 0i d í?'? OF'TION E ñ S E 1 ! I n p u t : J O , V a l u é , Üut. put : H , E ,, CE , E , F COM Code'CS) , L Í 7 2 , S ) ! JO is t h e c o l u m n of L < ? 0 , 6 > H I H F ( 4 , 6 -> K •= O ! C o u n t e r f' o t- t h e 111; m b e r o f c u t s FÚR 1=1 TÜ 71 IF ¡J0 = 2> ñ H D ¡:i=55> THEN V al u e = 9 0 - Val U Í IF <L< I , J O X . Val ue i H M D >: l. v I + 1 , JO ) > = Val ue ) T H E H G O S U E Cut ¡F < L < I , J O ) > V a l u e ) h N D CL<I + 1 , J O ) < = V a l u e > THEN G O S U E Cut IF <je=n aun < K = D THEH I4.0 IF <J0 = 2"' ñHD G:: = 2:< THEH 140 IF ( J O ^ ) HNfi a: =2) THEH 140 HEKT I IF CodeCJ) THEH GOSUE I¡eh ON JO GOTO Jl,J2,J3,J4,J5,End fl = F( 1,2:* I F V a 1 u e = 9 0 THEH H = £ 7 . 71" IF Value>=270 THEH H = 90 SUEEXIT E = F(1,1) C=F<2,1) D=360 SUEEXIT ñ=F<2, 1 > E = F( 1,1) C=FÍ2,2) Ii = F< 1,2) E=F(2,4) F=F<1,4) -54- 300 310 J4: 320 330 340 350 360 J5: 370 380 390 4 00 410 Cut: 420 430 4 40 450 460 470 43 0 490 500 510 D e b : 520 530 540 550 560 570 5S0 590 End: SUBEXIT H=F<1,3) B=F(2,3) C=F<3,3> H=F<4,3) SUBEXIT ñ=F < i, i ;• B=F<1,2> C=F<2,1) D=F(2,2> SUBEXIT K = K+1 ! Interpólate*, uithin tht ínter-val IF 1=1 THEH 1=2 FOR J=l TO 6 Da= ( . L <: i, J :> - L a - 1 , J > > ,-• < L (i, J O > - L <: i - 1 , J O :o Dp=CL<I + l , J)-Líl , J)>/<L< I + l , J 0 ) - L U , JO) ) Ds=<Dp-Da> "ÍLC I + l , J0)-L':: 1-1, J0;> :> FíK, J>=l_< I , J> + >::VaÍue-L( I , JO > ) * C Iia+Dp ) / 2 + D s * < Val u e - L U , J0;O IF tiñES', FÍK, 2)-90)< . 5 J ñND i RES ( . F '.. K , 1 ) -90 ) < 1 > THEH F < K , 2 > = . i n g . HEXT J RETURN PR I N T U S I H G " 8 ( 4X , 6R ) " ; " Cut ",""." ii 1 p h a " , " P h i " , " L " , " V " , " R " , FOR K=l TO 4 F R I H T K, FOR J=l TO 6 PRINT USIHG "#,3D.3D,3X";FCK,J) NEXT J HEXT K RETURN 3UBEND c Límits } -55- Nombre del subprograma: Inversión Busca en el archivo "I-Invr" los valores de Alpha y Phi correspondientes a L y V dados. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: CALL Inversion(L,V,Alpha,Phi) Parámetros de entrada: L Longitud adimensional de la zona. V Volumen adimensional de la zona. Parámetros de salida: Alpha Parámetro que caracteriza una forma de equilibrio. Phi Valor final de la variable de barrido de la curva de la forma de equilibrio. Variables comunes: Subprogramas requeridos: Archivos de datos requeridos: "I-Invr" Contiene los valores de los pares (Alpha,Phi) corres pondientes a la discretización de las curvas de Alpha constante y Phi constante en el gráfico L,V. Variables: L,V Ver parámetros de entrada. Alpha,Phi Ver parámetros de salida. Row,Col Valores discretizados de la ordenada y la abscisa de un punto del gráfico L,V. Organigrama: Comentarios al organigrama: - -56- Listado: 10 lrweri 0 n: SUE In ,• e r = i o n ( L , V , R 1 p h P h i > ! § ¡1 i l ¡1 |1 Id |d |1 i l |]j |111 ' d 'j? ' I\á |d íú !jí |d |d fc \h ¡h ¡tí fb \~á fd (tí (d \~h \ai i i(ad 20 Finds. fllpha a n d Pl- i i n f i e "I-Invr" OPT IÜH BASE 1 30 C h e o k f o r e x i s t e n c P h a .> b i e n d o n e COM Codees) 40 Ho f u r t her- i n t e r p o i l a t o n u a n t e d Sho rt = l 50 RSS IGN #1 TO "I-Ino'r•" 60 IF V<=1 THEN Smal 1 70 arge IF V>1 THEH 80 S m a l 1 : N u fu b e r o f r o w s R = 50 90 (tumbe r o f o o 1 umn s C=l 87 Y i r: = . o: D i s c r e t i n ng i n Xin 180 val Record or i gin g for Ror ig = 0 110 Row numbe r 128 1 = 1 NTCV-' • i n c , C o 1 u ni n n u m b e r 130 J = I NTCL-- í i n c '. 140 GOT 0 Read 150 Lar-ge: R 30 6 160 C 170 ':' i n c = . 1 Y i nc = .05 180 Ror i g = 5 3 5 Q 190 1 = 1NTC(V-l),' v i n c > 200 J=I NTCCL-.6> /Xi nc> 210 GOT 0 Read 220 R o r i g + C*(. 1-1 J+.J i N e a r e s t b o 1 1 o m - 1 e f t d SO r e t e p o i n t 230 Read: Eas IF 240 de(3> T H E M P R I H T " R e a d " , R ; L ; ':< i n c ; Y i n c ; R o r i g ; B a i e i ; J ; T Y p e 1 :>; RER D #l,Ease ; R l p h a , P h i ! Bol t uní-I eft. 250 IF Short RHD C o d e e s ; T H E N P P Í H T " ñ = " ; R l p h a ; " 260 P=";Phi IF Short THE H C o m p o n i t i o n 270 ! I f no i n t er p o 1 1at i o r s r e q u i r e d 280 Interp ol RERD #1 , E a i e + 1 ; R 1 ü , P 1 tí ! E o t t o nt - r i g h t RER D #l,Ease + C ; R ü 1 , P 6 1 298 ! Top-left 1 PER B #l,Ea3.s + c + i ; H I I , P I i Top-right 300 IF Cod«e3> T H E H P R I H T Rol ; r y fl 1 1 : P 1 1 ; L I H < 1 ') 310 IF Codef3> T H E H P R I H T M l p h a ; Ph i , R i ó ; p i e ; L I H e 2 ) 32M Rl = e R i e - ñ i ¡j ah+ R 1 1 - R 0 1 > --'2* ! P a r c i a l d s r i y a t i u e i d .R P ) - - d e L , '-/y 333 X i r> flu =''H01-H!ph a + H l 1-R10 V'2-'348 Yi n P l = <P10-Phi+ P I i-peí;••-•• 2.--xi> 350 Pv = <P81-Phi+ P l l - P 1 0 ) / 2 / Y i r 360 fllpha=filpha+ fil * e L - J * ••: i r,c >•>H \ • -1+Yii 376 Phi = Phi + Pl+<L - J * N i ri.: J + P v * < i r í e ':> 388 O-Phi IF R l p h a > 1 8 9 THEN Ph 390 ' o ni p o s1 1 . i on: EHD 400 €n v e r s i o 1) -57- Nombre del subprograma: Lvrz Calcula los valores de la longitud, L, el volumen, V, y las coordenadas radial, R, y axial, Z, de la forma de equilibrio de una zona flotante entre discos iguales definida por los parámetros Alpha y Phi. Nombre del archivo: "I-Lvrz" Sintaxis de acceso: C A L L Lvrz(Ai P ha,Phi,L,v,R,z). Parámetros de entrada: Alpha Parámetro que caracteriza una forma de equilibrio. Phi Valor final de la variable de barrido de la curva. Parámetros de salida: L,V,R,Z Valores de la longitud, volumen y posición radial y axial. Variables comunes: Subprogramas requeridos: Ell Dados Alpha y Phi, calcula las integrales elípticas completas e incompletas de primera y segunda especie. Variables: Alpha,Phi L,V,R,Z C,S Ver parámetros de entrada. Ver parámetros de salida. Coseno y seno de Alpha. Integrales elípticas de primera y segunda especie, F,E,F90,E90 incompletas y completas. Ce,Se Coseno y seno de Phi. A,B,B90,Cv,C90 Variables auxiliares de cálculo que se corresponden con los valores A, B, B(90), C y C(90) de las funciones A, B y C dados por la Tabla 1. Organigrama: Ver Fig. 20. (_ Lvrz ) •58- Cylinder Catenoid Error Sphere Elliptic integráis NO Barrel Spindle l End C ) F i g . 20. Organigrama del subprograma büHZ. Comentarios al organigrama: Cylinder El valor Alpha=0 corresponde a zonas cilindricas cuyo cálculo se simplifica con esta subrutina. Catenoid El valor Alpha=90° corresponde a zonas catenoidales, caso singular que requiere una subrutina especial. Error El valor Alpha=180° corresponde a zonas bidimensiona_ les no tratadas en este programa. Sphere El valor Alpha=270° corresponde a formas esféricas cuyo cálculo se simplifica con esta subrutina. -59- Elliptic integráis Calcula integrales elípticas completas e incompletas de primera y segunda especie. Spmdle Evalúa L, V, R y Z para zonas que tienen menor volumen que la cilindrica de igual esbeltez. íiarrel Evalúa L, V, R y Z para zonas que tienen mayor volumen que la cilindrica de igual esbeltez. Listado: H i f.r-' .-.-¡1 ! p F -j I l u i i 30 ¿0 7o tñ 90 • ÍF ¿oU HÍ : 3 • fi I j-ir-i i - i ¡ y > : 1E- 1 I í r ^E3G"ii p h i - 2 7 S > ; 1 E - 2 GOTO N o r m a l I. ,:¡ h •= f - : F " 2 03: Ph i • 100 110 12o 100 1 46 1 5 i..' THFÍ, T HEn '.:-í [N''p!-. i :¡ ir F - Ú Thti L. -'.' = 9 9 9 9 ¡F P = 0 THEn 3U3E7 1T L-3 P V = 1 ,' 1 2 * P if i. 3 • i - 2 3 .) P •'- ':• 2UBE7IT hi 170 loo 190 200 v' = PI 4xL P=l ::--L SUEE;-:IT ¿:o ¡; a r. „:•t-, o í d : D E F F H c i-¡ <.;: .• =*.: E x p •: ;••: • + E o F *: - h v-. • 2 0 20 D E F F U 3 h í A • = < E: iP •' ;>i > - E Y.P i. -!': > ••- 2 2 30 2 40 7=90 -Ph i F. = FMCh'.:Z.' 2 70 3!..¡BE:--iIT 2 6 0 N o r f!, a 1 : C = C 0 S ;, ñ i ph a ) 2 90 3 •- 3 I N •: Ft 1 p n a '* 300 Chí.L E I 1 'i r P h i ) , !i H i ah i,• , F , E , ¡-90 , E 9 O > 3 io .; c - c o s'-. P h i > 3 20 3c = S I H \ F h l ; 04o. 3 5o £=C*F+E E 9 ti = 0 * F 9 y + E 9 ti 3 70 C 9 0 - P I .•••' 1 2 -r ' '• - C * £ 9 0 + 2 * • l + C > •'•• 2 :- E 9 ú .':• 390 Ear re ! : L = RE¿ '. B J -'FI 4 00 V = RE3'.:Cvo i i,--ñ'--3 4 10 F: - H 4¿0 2 = L~P 4 30 3i.EE/' I T 4 4 0 s p > ••. ci ' 4-: L = H E 3 <. h 9 0 - E ..< • ñ 455 ',' = PtB3 C 9 0 - 0 ! . > Ó ! ¡ • F¡ ' 3 ( Lyrz) -60- 4o 8 4 7u 4S0 R=P).'t9£S',e:> 2=L^P 'SUBEXIT •: B I 3 P CHRf v 1 2 9 ) ; " H l p h = = í 3 0 .; o,-1- ¿ ¿ f.: . ; „ V j ; snap-' 8UBENB 5 10 E ' SUE E l I ( F h i , F t l p h a , F , E, f 9 0 , E 9 0 ' -?.?;,!.,?:=;; • ' J Í ' J L ' . r r i !d . j ¡ i t o id ;d ;rf ij ó Ir a1 i z! ng: F ñD ! E 1 1 i p t i c i n t i a r a i ; b y L ! í ri •' ¿ t- r fl I p h a= H 1 ph a * P I - 1 3 8 54ü P h i = P h i + PI--188 550 9=INT<Pni ,-pI*2) 5 se H l p h i = ñ E S C P I * I h T C ','fll p h a + P I 2:'- P I : ' - H l p h . 570 I F Q=0 THEH C l e a n 530 Redüí i r ; . g : Q 2 = £ N T < < P h i + P I . - ' 2 > P I ,• 590 Phi=HESü32*PI-Phi > 600 I F H ! p h a = F I < - ' 2 THEN E r r o r 6 1 0 C ! =• ar: I F P I - ' 2 - P h i < 1 E - 1 1 THEH P h i =P I - • 2 - 1 E - 1 1 620 I F ñ E S O ñ l K P h i > ^ 2 - 1 . ' ' C 0 Í ^ : R 1 p h a J ' ' 1 E - 6 Ti 630 V=l 64 0 Phi = P I . 2 - 1 E - 1 1 650 I F P I - ' 2 - f l l p h a : . l E - l l THEH H i r.h a = P I .••£- 1 E6 6 O Lindi B = CÚS< H l p h a > 670 C= SnKHlpha> 630 D = C-2 690 G=0 700 7 18 FQR 1 = 1 T0 3 0 ñO = H 720 730 743 7 58 760 7 78 7S8 798 300 810 3£0 S3O 340 350 360 8 7O aao 390 900 918 32O 9 '3 O 940 95u 96O 97O CHPí ' í •? Ü"!-'•=r¿ M :i: I n p i.it ir. D£i B0 = E H=<:flO + B0> - 2 B=SQRCM0*BO:.' C=<ñ0-B0>''2 D=D+C*C*2'I P2=PI*INT<Phi/PI> P 2 = P 2 + P I * I N T •: ( F h i -P2 > ,'P 1*2:.' Ph 1 =Ph i +P2 + RTH < E 0 / H 0 TTñH ••; F h 1 :• '• G= G +C*SIrKPhi > IF C < l E - 4 THEN 8 4 0 NEXT I F 9 0 = PI---H, 2 E98 = F90*'' 1 -D -2> F = Phi.- H '2--I E=< 1-D.'2>*F + G I F V=8 THEN 9 ! 8 3 pe-.: ia l : F = F 9 0 / 2 E = < E9a + 1 - C 0 3 (H 1 p h a^ :> <• 2 I F 0 = 0 THEN Erid C o riip.: ; i U ú r i : F = 2 ? r Ü 2 - F 9 0 - K - 1 :> --Ü*F E = 2 * 0 2 * E 9 Ü + < - l ) •'•• Q * E GOTO E n d Error : F = E = 9 9 9 9 Erid: 3 U E E ; : I T L ai t Í H J : 3UEEND ( Lvrz J -61- Nombre del subprograma: Diagrams Calcula y presenta gráficamente en modo interactivo el análisis teórico de la hidrostática de la zona flotante. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: CALL Dia grams Parámetros de entrada: Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. L(72,6) Matriz de 72 por 6 elementos que guarda los valores de Alpha, Phi, L, V, R y Z de 72 puntos pertenecientes a los limites de estabilidad. Subprogramas requeridos: Grid Elige y presenta en pantalla la cuadrícula adecuada a cada opción. Pea Calcula y dibuja curvas de Alpha constante. Pcp Calcula y dibuja curvas de Phi constante. Pcv Calcula y dibuja curvas de volumen V constante. Pcdm Calcula y dibuja curvas de estrechamiento (diámetro en el cuello dividido por el diámetro en el disco) constante. Variables: Code(3),L(72,6) Ver variables comunes. Np Número de puntos en una curva. Alpha Parámetro que caracteriza una curva meridiana. Phi Variable de barrido de la curva meridiana. I Variable auxiliar de lectura de datos que indica la fila de la matriz L. (biagrams) -62L Longitud de la zona. v Volumen de la zona. Dm Estrechamiento (diámetro en el cuello dividido por el diámetro en los discos). Organigrama: Ver Fig. 21 Comentarios al organigrama: Initialize Dimensiona los vectores y asigna valores iniciales. Grid Dibuja cuadrícula para la presentación de gráficos. El resto del organigrama se resume en la Tabla H. Listado: 10 20 3O D i a g r af;¡¿ ; 3 i j I: ]j i a:! r a¡n -•'•¡P ~*£ 3 £-.í 3 3 '3 C- 0 C" 3 í -^'^ L^:?;? £ 0»?3 333*3 'j 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 M 3¡3 3 3 3 3 I n i t i a l i z e : OPTIÜM E f l í E 1 ! Z - R , L - V , í. L-H,n p i í q r i s : ; C0M Co d e -. 3 > ! P r s ¿ _-• S T 0 F' t o Í .< i t r r o,-„ „, t h , s f:, r,;,,-i t- an, 40 50 68 70 Sy 90 100 1 10 120 1,11 130 140 150 1¿0 170 180 190 200 218 220 2 30 240 250 260 270 280 290 300 310 320 330 348 3 50 360 370 380 3*0 400 Hp = 2Ó ! Hurubs-r- oí points i ri a c urvf GRñPHICS CÑLL Grid IF Codt(3) THEH EXIT CPhPHIC3 IF Codí<l)^2 THEH FRÍNT "YOU H R L IH 2,R GRñFHICS NODE"; IF Code.C 1 >=3 THEN F'RIMÍ "YO 0 HRE IH L,V GRñFHICS MODE" ; IF Ccide(l)=<í THEN PRIHT "YOL HRE IH L.Dm GRñFHICS. HUBE" ; PR I M T " . ( R e t¡í: p r t í s i r'i g i'-. E''. H 0 <=• 5 •: a p e z c ur '•,' e p1 oT ting)";LIHC3) Input : Ir C o d e < l . ) = 2 T H E N O H C o d e •: 2 ,• G O S U B 1 1 , 1 2 , 1 3 , 1 4 ,15,16,17,18,19, 110,11 2,113 IF C o d € 0 > = 3 T H E H OH Cod*<2.' G O S U B 1 1 , 1 2 , 1 3 , 1 4 , 1 5 .16,114,115 11: 12: 13: IF C e d e < 1 >=4 T H E H OH Cedí-'2 > G O S U B 12,14,19,111 SU EE X I T ! Subruti nes fo 1 1 ou I H P U T "ñl ph.a, Phi ^" , ñl p h a , Phi C ñ L L Lur-z '. ', H i p h a ) , .. P h i > , L , V , R , Z > IF C o d e a > = 2 T H E H POIHTEF: 2,R IF C o d s (.!>--3 T H E H P 0 1 H T E R L,V G0T0 1 60 IHPUT "R! phi---" , Mi pha CñLL Pcaí.filpha, NpV GÜTO 21Ü IHPUT "Phi-",Phi CHLL 14: 15: Pe p ( P i n ,l¡ p > GOTO 240 RESTORE 230 Uñíñ O,30,45,6 0,70,75,80,35,90,95, 100, !10, 120,240 , 2 6 0 , 2 7 O , 2 8 0i0,360 , 3i REñD ñlpha IF filpha=360 THEH RETURH CñLL PeaCñlpha,Hp> GOTO 290 IF C o d e a ) =2 THEH RESTORE 350 IF C o d e a ) =3 THEN RESTORE 360 DflTfi 1 0,20 , 30,40,50,60,70,80,90,0 DfiTR 1 O,20,?0,35,40,45,50,55,60,65,70,30,30,0 REñD Phi IF Phi=0 THEH RETURH CñLL Pcp<Phi,Hp) GOTO 370 (j)iagrams) 1 Input Apha,Phi 2 Input Alpha 3 i 4 J 5j Input Phi All Alpha All Phi 6 All Alpha,Phi 7 8m 9 !0 1 11- f Start J •> 12 j 13 » Input L,V Input L Input V All L All V All L,V All Alpha,V Initialize 1„ Input Alpha,Phi ' Grid 2^ Input Alpha 3, Input Phi 4 5fc. 6 7 8 . 1 2 3 4 Fig. All Alpha All Phi All Alpha,Phi Input Dm All Dm Input Alpha All Alpha Input V All V 2 1 . O r g a n i g r a m a d e l s u b p r o g r a m a V-iaQftami,. -64- Tabla '+ Subrutinas del subprograma Di.agrams Bloque del organigrama sa Input Alpha,Phi 11 Input Alpha 12 Input Phi 13 All Alpha 14 All Phi 15 All Alpha,Phi 16 Input L,V 17 Input L 18 Input V 19 All L 110 All V 111 All L,V 112 All Alpha,V 113 Input Dm 114 All Dm 115 Comentarlos Presentación Señala los puntos de coordenadas Z-R,L-V (Alpha,Phi) elegidos. Dibuja las curvas de Alpha consZ-R,L-V,L-Dm tante elegidas. Dibuja las curvas de Phi constan Z-R,L-V te elegidas. Dibuja un conjunto de curvas de Z-R,L-V,L-Dm Alpha constante dadas. Dibuja un conjunto de curvas de Z-R,L-V Phi constante dadas. Dibuja juntos los dos conjuntos Z-R,L-V anteriores de curvas. Señala los puntos de coordenadas Z-R (L,V) elegidos. Dibuja las curvas de L constante Z-R elegidas. Dibuja las curvas de V constante Z-R,L-Dm elegidas. Dibuja un conjunto de curvas de Z-R L constante dadas. Dibuja un conjunto de curvas de Z-R,L-Dm V constante dadas. Dibuja juntos los dos conjuntos Z-R,L-Dm anteriores de curvas. Dibuja juntos los conjuntos de Z-R curvas de Alpha y V constantes. Dibuja las curvas de Dm constanL-V te elegidas. Dibuja un conjunto de curvas de L-V Dm constante dadas. Sub C Lvrz Pea Pcp Pea Pcp Inversión Lvrz Pcv Pcv Pcdm Pcdm Subrutina. D Presenta el dibujo en el gráfico Z-R, L-V 6 L-Dm según sea Code(2) igual a 2, 3 ó 4 respectivamente. " Subprogramas utilizados por las subrutinas. -65- 410 16: 429 4 30 440 450 460 17; 478 480 499 506 510 520 18: 530 54 0 550 MQVE 0,0 56O 6 6 0 I10: 610 620 630 640 650 660 111: 680 690 700 710 720 730 112: 740 750 760 770 780 790 800 810 820 830 840 850 860 870 880 890 900 910 920 CfiLL L w i ( ( H 1 ph Ü ) , < Ph i ) , L , V , R , Z > IF C e d e d i=2 THEH PÜÍNTER Z,R IF C o d e d ) = 3 THEN PÜIHTER L,V G0TÜ 4 6 0 L i N E ! V >u' c .:',.! INPUT "L=",L l'Rñtí b^L.t G U T U 0 '.-' el 57 0 19: 5S0 590 6?Q LIHE TYF'E 3, . 1 GOSUE 15 LIME TVPE 1 GOSUE 14 RETURN INPUT "L,V=",L.V CfiLL I n y s,- s i on c < L >, < V ) , R 1 p h .=•, p h i INPUT "V=",V CfiLL Pcu<V,Np) GOTO 570 RE3TORE 610 PÑTH .1,.15,.2,.25,.3,.4,.5,.6,. REflD L IF L=0 THEN RETURH MUVE 0,8 DRñU b*L,6 GOTO 62 0 RESTORE 680 1,1.2,1, 5,10,0 IiRTH 2 . 5 , 2 , 1 . 5 , 1 , . 7 5 , . 5 , . 3 , . 1 , . O REfiD V IF V = 0 T H E H R E T U R N CfiLL P c v C V . N p ) GOTO 69 0 LIHE TYPE 3,.1 GOSUE I11 LIHE TYPE 1 GOSUE 118 RETURN I i 3 : LIHE TYPE 3,.1 GOSUE 14 LINE TYPE 1 GOSUE I11 RETURN 114: INPUT "Dm=",rim CfiLL PcdfiUl'ín, Np:< GOTO 330 115: REST0KE 87O DfiTñ 1 . 4, 1 . 2 , 1 , . 8 , . 6, . 4 , , 3 , 0 REflD Dffl IF Dr.i = 0 T H E H R E T U R N CfiLL P c d m C D m , H p > GOTO 380 SUEEND (5íagrams¡> -66- Nombre del subprograma: Pea Calcula y dibuja las curvas de Alpha constante en el gráfico elegido. Nombre del archivo: "FZ-ESS" Sintaxis de acceso: C A L L Pca(Aipha,N P ) Parámetros de entrada: Alpha Parámetro que caracteriza una forma de equilibrio. Np Número de puntos en una curva. Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Limits Busca el valor de Phi final que corresponde al limite de estabilidad. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Variables: Alpha,Np Ver parámetros de entrada. Code(3) Ver variables comunes. Phil,Phi2 Valor inicial y final de Phi, variable de barrido de la curva de la forma externa. 02,03,04,05,06 Variables de relleno para completar la lista de para metros de llamada del subprograma Limits. índice del bucle que calcula y dibuja los puntos de la curva. L,V,R,Z Valores de: longitud, volumen y posición radial y axial del punto representativo de la zona. Organigrama: Ver Fig. 22 Cj^ED •67- Plot curve I,l,Np Lvrz Plot Z,R Plot L,V C E nd Plot L,Dm J Fig. 22. Organigrama del subprograma Pea. Comentarios al organigrama: Error Muestra aviso cuando Alpha valga 180°, valor que corresponde a zonas bidimensionales, no tratadas aquí. Limits Busca para el valor de Alpha dado el valor final de Phi que corresponde al límite de estabilidad. Plot curve Calcula y dibuja la curva. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Plot Z,R Dibuja el punto correspondiente en el gráfico Z,R (si Code(l)=2). -68- Plot L,V Dibuja el punto correspondiente en el gráfico L,V (si Code(l) = 3) . Plot L,Dm Dibuja el punto correspondiente en el gráfico L,Dm (si Code(l)=4) . Listado: P L ai H 1 pr, i, Np ' i '! ,fl d ;,, ,.n • . ;» ;_d ]d ,3 ,d i_d ¡a .3 ;_d la § id ¡d !d I? i ? d ¡B Id |d ;¿ Id i d ¡_d j_d |j i d |^! | d fd \~á Id ¡d j ^ 10 Pea: 20 ! P ] o t s c o r i s t ari t - fi 1 [;ha c i OH K EV # 0 G O T ü Eí,d 30 DPT IOH BRSE 1 46 CÜM Ccd€-C3") 50 FI;;E D 3 66 BEG 70 f¡ 1 p ha = H l p h a HOIi 3 6 0 86 IF H ESCfll p h a - 1 8 0 .)•••: 1 T H E H E r r o r 90 ÍF ñ l p h a < I S O TriEN P h i 1 = 9 0 IF ñ 1 p h a > 1 8 0 T H E H Phi 1=0 10Ü C tí L L L i m i t s í l , ( H 1 p h a >,P h i 2 , 0 2 , 0 3,04 , ¡ 110 IF C o d e í 3 > T H E H P R I H T " F o r h 1 p h a = " ; H 1 ph a; " Ph 120 i_fi ; 1 ; P h i ; IF C o d e C 3 .:• T H E H P R I H T " I H 1 pha Ph i 130 L 140 Plot_.:un.'«: FOR 1=0 TO Hp P h i =F'h i 1 + í. P h i 2 - P h i 1 :> ,'Hpí I 150 CfiLL L I T I ( C f i l p h a ) , i P h i ) , L , V , R , Z ) 160 IF C o d e < 3 > THEH PRIHT I;h1pha;Phi;L;V;R;Z 170 IF (Code( 1 :>=2> RNB '"I=0> THEH PLOT Z,R,-2 130 IF Code<l>=2 THEH PLOT ?,R,- 1 190 IF CCodeC1>=3> fiHIi <I=0) THEH PLÜT L,V,-2 200 IF Cede(1)=3 THEH FLOT L,V,- 1 210 IF < C e d e d 1=4) HHU <I=0; THEH PLÜT L,1.R,220 IF íCode< 1 i = 4) ñNII <R>.2> THEH PLOT L , 1 <• -1 R, 230 IF I=Hp THEH GOSUE Labe 1 240 IF Code<l)=2 THEH MOVE 2,R 250 26 0 I F C o d e < 1 ':> = 3 THE H M 0 V E L , V T H E H M O V E L, 1--R 270 IF <Code<1>=4> flHÜ <R>. 230 HEXT I ! Subrut i nes f1 o low 290 SUEEXIT 300 Labe 1 : C3I2E 3 310 LORG 1 320 IF R!pha;90 THEH LORG 7 ÍF H l p h a M ü O THEH LORG 9 330 IF fllpha>=270 THEH LORG 3 340 FIXED 0 350 LñBEL ñlpha 360 FIXED 3 370 RETURH 380 sponds to bidim. snapes";CHRi(1: 390 Error : DISP CHRÍ': 129) ; "Rlpha=130 UflIT 1000 400 SUEEND 410 End: !? L : i? i d | d |d Id | d Id -69- Nombre del subprograma: Pcp Calcula y dibuja las curvas de Phi constante en el gráfico elegido. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: C A L L Pcp(Phi0,Np) Parámetros de entrada: Phi0 Valor final de la variable de barrido de la curva. Np Número de puntos en una curva. Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Limits Busca los valores límites de Alpha correspondientes a un Phi dado. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Variables: Phi0,Np Ver parámetros de entrada. Code(3) Ver variables comunes. A1,A2 Valores de Alpha máximo y mínimo del primer tramo de la curva de Phi constante. A3,A4 Valores de Alpha máximo y mínimo del segundo tramo de la curva de Phi constante. 05,06 Variable de relleno empleadas para completar la lista de parámetros del subprograma Limits. Phi Valor auxiliar de Phi (usado para compensar el cambio de referencia en Alpha=0 y Alpha=180°). índice del bucle que calcula los puntos de la curva de Phi constante. -70- L,V,R,Z Valores de: longitud, volumen y posición radial y axial. Organigrama: Ver Fig. 23 Comentarios al organigrama: Catenoid Si Phi=90°calcula y dibuja las formas catenoides. Limits Busca los valores de Alpha que, para Phi constante, corresponden a los límites de estabilidad. Como estas curvas presentan dos intervalos en los que las zonas correspondientes son estables, aparecen dos pares de valores máximos y mínimos. Plot curve Dibuja los puntos de la curva. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Plot Z,R Dibuja el punto en el gráfico Z,R. Plot L,V Dibuja el punto en el gráfico L,V. Listado: 18 20 38 48 50 P c Fj: S U B P c f:• '•. P h i 0 , N p .' ! ^ '¿ '•? ^ L-- ft''? LJ if é 0 ú c •? í '~s ÍÍ1 '5 i? ^ í £ >? ¡i* £ ^ & (? ta '3 li* 21 =• y ib !?'.*>* ¡ °1? L? <]?!? L? £ i]1 ¡I1i p li1 fp £ í OH i'EY # 0 GOTO c n d ! Plots constant-F'hi curves 0 P T I 0 M BRSE 1 COn C o d e í 3 > FIXED 3 DEG I F F ' h i C 0 8 9 THEN C i t e n c i ' J C B L L L i rn i t s (. 2 , •. P h i 0 ) , H i , R 2 , P 3 , R 4 , 0 5 , 0 6 ':> I F C o d e < 3 > TREN F'PIMT " F c r F h i = " ; P h i 0 ; " fl ? p h a _ l i ro i t s a r t : " ; fí 1 ; Ñ2 ; ri3 ; F¡4 I F C o d e - < 3 > TU EN P R I N T " I fllpha Phi L V R 2" 60 70 80 90 1 00 FOR 1=8 T0 Hp i 1 0 P 1pt_ c u r v e : I F ñ l O R 3 THEM fil p h a = H ¿ - •• ñ 2 - ñ l j ••- 1 . 7 - I ! From R = 0 t o H j a c o . N o n l i n . 120 I F ( h l < > H 3 ) AND ( I = H p ) THEM H l p h a = R 2 ! Upper adjus-t 130 I F H2 = H4 TKEíl fl 1 p h a - f i l + '->-2-fll :> "1 . J"- O i p - I ) I Fr-o» fi = a t n t- o H - 1 3 0 . Non 140 1 . 150 I F (fl2= ñ4 > HNB •; I = 0 ;• THEM fil ph a=fl1 ! L o wer ad j u z t IF ñlpha<180 THEN 230 160 IF Phi8<=45 THEN fl 1 ph a=H i + ( R2-R 1 > /Hf.- * I ! For 1£0<R<270 Linear i nt . 170 IF Phi0<=45 THEN 230 130 IF J = 0 THEH 1=0 ! Reset fot- 130<fi<360 i-. P>45 190 fl 1 = 1 8 0 + i C o d e < 1 J - 2 > * 1 tí ! to ad d m o r e p o i n t s t h e r e 200 IF Phi Ó) =45 THEN H i pha=fl i + ( R2-R 1 >-'Hp* I ! Linear i nt erpol. i i betfer 216 J=l ! To ayo id con». . reseting 220 fllpha=ñlpha M0D 360 238 I F H B S < H1 p h a - 1 8 0 ':> < 5 T H E N 3 3 0 248 IF filpha>130 THEN Fh i = 9 0 ~ P h i 0 250 IF filphaíl3Ü THEN P h i = P r n 9 260 CflLL L u r z << H 1 p h a ) , < P h i > , L , V , P , 2 > 270 I F CodeC3> THEN PPINT I:p1pha;Phi;L;V;R;Z 280 -71- C Start J YES. Catenoid Limits i Plot curve 1,0,Np F Í P . 23. Organigrama del subprograma Pcp. CJ^ED IF ( C o d e a > = 2> fi'NB <I=ñ> THEH PLOT Z,R,-2 IF Code(l>=2 THEN PLOT Z,R,-1 IF (Code(l)=3) HHD (1=0; THEH PLOT L,V,-2 IF Code(l>=3 THEN PLOT L,V,-1 NEKT I ond: IF ñ2 = H4 THEN SUEEXIT ! Second hal t" of FU=ñ3 ft2 = H4 GOTO Pl ot _cur",.'€ enoid: fl!fjh=i=90 FOR 1=0 TO Hp Phi=98-2.24-'Np^I CfiLL LwrzC<fllpha) , <Phi "•',L, V,R, Z) IF Code(3> THEN PRINT I;ñ1pha;Phi;L;V;R;Z IF ( C o d e a > = 2 ) RHD (I=0> THEN PLOT Z,R,-2 IF C o a e a > = 2 THEH PLOT Z,R,-1 IF .-Codea >=3> HNÜ <I=0> THEH PLOÍ L,V,-2 IF C o d e a ) = 3 THEN P L O T L.V,-1 NEÍÍT I : SUEEND -73- Nombre del subprograma: Pcv Calcula y dibuja las curvas de volumen V constante en el gráfico elegido, Nombre del archivo: " F Z - E S S " Sintaxis de acceso: C A L L Pcv(v,Np) Parámetros de entrada: V Volumen adimensional de la zona. Np Número de puntos en una curva. Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Limits Busca los valores límites de L correspondientes a un V dado. Inversión Busca en el archivo "I-Invr" los valores de Alpha y Phi correspondientes a L y V dados. Lvrs Calcula (L,V,R,Z) como función de (Alpha,Phi). Variables: V,Np Ver parámetros de entrada. Code(3) Ver variables comunes. Ll ,L2,L3,L4 Para volúmenes menores de 0.26 existen dos intervalos de estabilidad para zonas de volumen dado, los comprendidos entre los valores de longitud de la zona Ll y L2, y entre L3 y L4. índice del bucle que calcula y dibuja los puntos de la curva. Valor actual de la longitud de la zona. Alpha,Phi Valores de los parámetros de las curvas obtenidos rae diante la transformación inversa. -74- R 'Z Coordenadas radial y axial de los puntos de la curva. Organigrama: ver Fig. 24Comentarios al organigrama: Display Avisa que el volumen elegido se encuentra fuera de los límites del dibujo. Limits Busca para un valor de V dado los valores de L correspondientes a los límites de estabilidad. Cuando V es menor que 0.26 existen dos intervalos en los que puede estar comprendido L. Plot curve Calcula y dibuja los puntos de la curva. Inversión Busca en el archivo "I-Invr" los valores de Alpha y Phi correspondientes a L y V dados. Lvrz Calcula (.L,V,R,Z) como función de (Alpha,Phi). Plot Z,R Dibuja los puntos en el gráfico Z,R. Plot L,Dm Dibuja los puntos en el gráfico L,Dm (Dm es el diámetro en el cuello dividido por el diámetro en los discos). Listado: 1 fT1 p r ' i ; 20 30 40 50 60 70 80 90 : ,! I L f~ ' i ' •' V , N fj i ! •_" 0 0 i? ¡¿ 0 •.? lí £ ',} ~¿ C-'? C 0 0 0 0 ^ ¡r '? if1 if1 0 ií 0 & (? 0 Ld 0 !? I? •:-!!? '<~i ^ i? 0 C" Lri T? £ i? ¡i5 if' ¡i* 1° 0 1? 1^ i? L¿ 'r '.? i? OH L E Y *>0 COTO Li'id ! Plot; c orí = t a n t - Vo 1 ume cur^e; OPTIOM EñSE i C ü h CodeCS.:' Np = 5 FIxF.fl 3 DEG I F V > 2 . 5 THEN l i i í p ! T o o 1 a r q e u o 1 u m e < o u t o t" g r a p h i c b o u n d CRLL L I mi t.¿ C4« C ••.•' > , L 4 , L 3 , 1.2, L 1 , 0 5 . 0 6 ) 100 • 110 120 1 30 P1 ot 140 "" IF r:odt<3> THEN FRINT "Fot- '•••='•; V; " L_l ; m i t s are: " ; L 1 ; L2 ; L 3 ; L4 IF L1=L2 THEN Sscocd IF Codf('u THEN PRIHT " I filpha Phi L V R 2" c urve: F0R I =0 T0 Np L = L2-(L2-L1 >-'1 . 7--I 150 160 170 130 190 200 210 220 230 240 I F 1 = 0 THEH CRLL L i rr, i t .=• '• 3 , < L 1 > , H 1 p h a , 0 2 , F'h i , 0 4 , 0 5 , Ufa > I F I = H p THEN C R L L L i M I r ; -' 2 , < L 2 > , 0 1 , R 1 p h a , 0 3 , Ph i , 0 5 , 0 6 .> IF <I>0> fiüD i.:ií.MpJ THEN CRLL I r , c e r s i o n < (. L > , < V ) , Ft 1 p h a , F'h i ) C f i L L L'-,'r 2 •' ', ñ I o i.a '•• , •••' f h i > , l. 5 , V5 , R , Z > IF Code^C) THEN PRINT I ; f-1 pha; Ph i ; L5 ; V5 ; R ; Z IF CCode'" 1 >=2> RND ' I=0*> THEN PLOT Z,R,-2 iF Codeil)=2 THEN PLOT I,ft, - 1 IF < Cede ' 1 -'=4> RÍIH ¿I^O: THEN PLOT L,l,-'R,-2 IF Codeíl>=4 THEN PLOT L,l--R,-1 NEXT I -75- Display Limits £ Plot curve I,0,Np Inversión Lvrz NO Plot L,Dm Plot Z,R YES C End J Fig. 24. Organigrama del subprograma Pcv. 250 S e c c t i d : I F L 1 = L 3 THEN S U B E X I T 260 L1=L3 270 L2 = L4 280 G0T0 P1 ot _ cur w t 2 9 0 I M s p : D I S P "TOO LRRGE VÜLÜME ''.•: 300 310 328 :ond of gr-aph ic hal f of t-hs c ur 1 i tu i t s > " WflIT 2000 End: SUBEXIT SUEEHD C Pcv ) -76- Nombre del subprograma: Pcdm Calcula y dibuja curvas de estrechamiento (diámetro en el cuello divida! do por el diámetro en el disco) constante. Nombre del archivo: " F Z - E S S " Sintaxis de acceso: C A L L Pcdm(Dm,Np) Parámetros de entrada: Dm Estrechamiento. Np Número de puntos en una curva. Parámetros de salida: Variables comunes: Code(3) Vector de 3 elementos que indican: los dos primeros el código de la opción elegida y el tercero sirve de control en el proceso de selección y de depuración. Subprogramas requeridos: Limits Busca los valores límites de Alpha correspondientes a (Rm=l/Dm) seleccionado. bvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Variables: Dm.Np Ver parámetros de entrada. Code(3) Ver variables comunes. Rm Radio del disco adimensionalizado con el radio del cuello de la zona. Alphal,Alpha2 Límites superior e inferior de Alpha para un valor dado de Rm. índice del bucle que calcula y dibuja los puntos de la curva. Alpha Valor actual de Alpha, parámetro que caracteriza una forma de equilibrio. -77- Ste P Incremento empleado para calcular el valor final de Phi que para cada valor de Alpha da lugar a una zona con el estrechamiento dado. p hi Valor actual de la variable Phi en el bucle de cálcu lo del valor final de Phi. L,V,R,Z Valores de: longitud, volumen y posición radial y axial. Organigrama: Ver Fig. 25 Comentarios al organigrama: Display Avisa que el valor elegido está fuera del dibujo o de los límites de estabilidad. Limits Busca los valores límites de Alpha correspondientes al Dm seleccionado. Plot curve Calcula y dibuja los puntos de la curva. Surround Realiza particiones del intervalo de variación de Phi hasta encontrar el que corresponde a R igual a Rm. Lvrz Calcula (L,V,R,Z) como función de (Alpha,Phi). Plot L,V Dibuja el. punto en el gráfico L,V. Listado: i 0 F'" i1 r,i '. -' •• i ; P c d í¡i' D r;¡, N p ,' !tététététététététététéQtététété0tétététététététététététététététététététététététététététét 26 0N KEV #O G0T0 End ! P! o t ¿ c o n s t ar¡ t, - 311- e % c h i n g C U r v e S 30 0PTI0H EflSE 1 40 C 0 M C o d e- ( 3 > 50 FIHEn 3 60 DEG 70 I F Du,< .211 THEH D i sp 1 ! Jriit a b 1 •= 90 IF CCodeC ! >-3> ñND '• Dm > 1 , 4 ;• THEH Disp2 ! Üut of bounds 90 I F ñI"3 < Dm -!"'-:. O 1 T H E H í p •=• c i -:.• 1 ! T o i- i m p 1 i f y t h i s t r i u i a 1 c a s c? 1 0y F: u\ - 1 •' D di ! C h a n g e- f r- o rr, u n i t - D d i s I; t o u n í t. - K n e c k 110 C f l L L L i r.n t. i . : 5 , ¡ :Pfn> , H l , P l , Fi2, P 2 , 0 5 , 0 6 ) 120 I F C o d e < 3 ) THEH P R I H T " I fllpha Phi L V R Z" 13ü P l o t c u r v ü POP 1 = 0 T 0 Hp 14Ü "" I F li[,i< 1 THEM R i pf, a - ^ i-r., H 2 - A 1 > •-1 . ?•'-1 ! Each H l p h a i s a c u r v e 150 I F [ U i i M THEM ñ 1 p h a--=H l ~ iH2-H1 ) .<•' 1 . 4 •'•• I ! Each H l p h a i s a c u r v e 160 IF I=0 THEH CHLL Lvr Z C I. H2 > , ( . P2 > , t., V , P, Z ) 170 IF I=Np THEH CHLL Lvr z '. • H IV , < P 1 > , L , V , R , Z ) 1S0 IF CI=0> 0R CI-Np:' THEH Plot 1 90 St ep=-90• 2 200 I F ftBSífll p h a - ñ 2 V < . 0 0 1 THEH S t e p = - 9 £ i 210 P h i --50 2 20 K=0 ! T h i í i s a sec u r i t y co u nt e r •78- Display Limits Plot curve I,0,Np Surround NO Fig. Pcdm. 25. Organigrama del subprograma 230 Loop: 240 K=K+1 P h i = P h i + St e p 250 260 270 288 ÜHLL L o r z •' >: H 1 p í i i ' , t P h i > , L , V , R , Z > I F C o d e ( 3 ) THEH PRIíJT I ; H1 p h a ; P h i ; L ; V ; R; 2 I F ñ B S C R n . - R X . OÍ THEH P l o t / I F K > 1 0 THEN P l o t 290 St ep = SGN<R-Riíi )*fiES( St ¿p > -'2 300 COTO Loop 310 Plot: IF Cods-<3> THEH PRIHT CHRí C 27 > i<" H " ;" round 320 IF 1=6 THEH PLOT L,V,-2 330 PLOT L,V,-1 340 HEXT I 358 SUEEXIT 366 Spec i al : MÜVE 0,0 370 HRHW PI,PI*PI/4 211";CHRtí12: 330 SUEEXIT 399 Hispí: M S P CKRíC 129) ; "LOWER STrtEILITV LIMIT IS I¡ f,¡ 460 WftIT 2000 410 SUEEXIT 420 Ii i s p 2 : D I S P " T 0 0 L R R G E D m ( o u t o f q r ap h ic 436 UflIT 2000 446 End: SUEEHD limits)" (_ Pcdm ) -79- Nombre del subprograma: Analiser Presenta un listado estructurado y comentado de todos los subprogramas que intervienen en el programa "FZ-ESS". Nombre del archivo: "i-ANAL" Sintaxis de acceso: C A L L Analiser Parámetros de entrada: Parámetros de s a l i d a : Variables comunes: Subprogramas requeridos: Variables: Sub¿[30] Almacena el nombre de un subprograma. Comment^[50] Almacena el comentario correspondiente a un subprograma . Organigrama: Comentarios al organigrama: Listado: 10 fin a. 1 20 30 40 50 tG 70 8O 90 100 1 10 120 130 140 150 160 17t 3 ISt 19*1 2 01 21t -. \' '. S L¡ £ ,_d ¡¿ Id 1" ¡i H n a l i • e r ! !?fe0 0fefefefefefefeyfefe'fe 0 0 ¡i>' 0fefefeL?fe' * 0fefeÍS ip 'fefefefeidfefeK»fefeio ;• ¡a \¿ in D I Ti 3 u b í [ 3 0 ] , C o r.-j m e n t í C 5 0 ] P R I N T T R E <\ 2 0 > ; " ñMHÜTflTFIIi L I S T OF SÜÍ'PRüGPRHS RUS F I L E S ÜSED " ; L I H < OH ERROR GCTO L a s t _ e n d DflTñ 1 , ' FZ-ESS ' , F 1 o a t • r,q Züor-t : Equ i 1 i br 1 um S n a p e s ; i: St ab i 1 i t y D R T H 2 , L o ad , " L o ad s a r r a y f o r 1 i rn 1 t s L < 7 2 , 6 ) S< s u b p r o g r am L y r z " DñTR 3 , " I —L i m t " , To l o a d pr••=Computed s t a b i l i t y 1 i r n i t s BfiTfi 3 , " I - L v r z ': , Con t a i n s . s ut: pr oqr-an: Ly r z DfiT fi 2 , fi e n u , P r e s e n t s a b i d i r, e M S 1 o n a 1 ni e n u c ar t e DñTR 2 , Sel €-c t i o n , E n a b l í-s k e y b c s r d e a s y n ? n u s e l e c t i o n D H T R 3, H e n u , P r E S Í T I t. s a b 1 d i t' í n s i o n a l m enu c a n t e ••era'l pie t u r e i s wanted. (Erase i pr gran DfiTR 2 " I - P I C T " , I f a n •"• T he o i ' e r a l 1 1 rnage DñTR 3 " I - F i c t " , F i ! e Sh a p i •= , Comput e 5: p r e s e n t i f' 1 o at i n q z o n e s h ap e i URTR 2 G r i d , L h o s e 5. i: íus the a p p r o p r i a t e g r i d DñTR 3 L i rn 1 t i , F i 'id = p 1 o ad -:; d 2 t ab i 1 i t y 1 1 m i t s < ' I - L i n t •" > DHTH 3 I n y c- r i i c f i , " r i r¡ d s i n •' I - 1 ti y r ' <' H 1 p h a , P h 1 > c o r e s jf.n d . t , D R T R 3 Ly r ^ , " Co';•.put-ss < L , V , P . Z > as a f un c t i on o f '• H 1 p Y i,Phi ) ' D ñ T R 3 E 1 1 , E 1 1 i p t 1 c inte-c¡r a ' = by L a>;d-: n •' s t r an s f o r rn a t DñTR 4 D i a g r a n i i , T h e o r e t 1 •: a l an ai y s i i ot" F - Z - H y d r o s t a t DRTH 2 G r i d , C h o = e s S. d 1- a y s t h e a p p r o p r i a t e g r i d DñTR 3 (AnaliserJ :ü 'd -80- T! ñ T ñ 4 , L y r 2, "C o ¡M fj u t. e s ( L , V, P, Z ' a i a f u n c t i o n o f < ñ 1 p h -a, P h i ) " P ñ T H 3 , P c a, P 1 o t. s c u r v e o f c c n i. t. an t fl ] p h a D Ñ T H 4 , L i m i t s , F i n d s p r e i o a d s d s * ab i ] i t y ! i t« i t s < •'' I - L i m t. "' > DñTfl 4 , L u r z , " C o m p u t e s < L , V , P , Z > as a f u n c t i o n c f < Ñ ] p h a , P h ! ' j " DflT fl 3 , P c (:•, P 1 o t s c u r ' ' e o f •: ons t an t. Ph i I'ihTfl 4 , L í r.i i t i . r i nds p r e i o-adí-d s t a b i l i t y 1 i m i t s í •' I - L i rnt •' > £ H T fl 4 , L y r z , " C o m p u t. e s ( L , V , P, Z ) a s a f u n c t i o n o f C ñ 1 p h a , P h i ) '' PflT fl 3 , P c y , P 1 o t s c i.< r v * o f c c n s t an t V DHTfl 4 , L i m i t s , F i nds p r e ) o a d e d st- ab i 1 j t y l i m i t í < ' I - L i mt ' :> DflT fl 4 , I n >,) s t - j i o r,, " F i n d s i n "' I - I n u r ' Cfl1 p h a , F' h i ) c o r e s p o n d . t o < L , V ': IiH T H 4 , L > J r i , " Cor,i p u t e s i' L , 7 , F?, Z > as a t" unc t i on o f < ñ 1 p h a , Ph i > " I¡ fi T ñ 3 , P c d ni, P 1 o t s c u r u e O t c o n s t an t Ii r„ DñTfl 4 , L i ríii t s , F i nds p r e l o a d e d s t - a b i l i t y l i m i t s c - ' I - L i nU ' > Il H T fl 4 , L y r - , " C o ni p u t. s s ( L , 7 , P, Z ) as a t" u n c t i o n o f Cfl1 p h a , P h i j " DñTfl 2, Final i ser-, ftnnotatfd l i s t o f s u b p r o g t - a m s . YOU ñRE HERE R E H Ii T , S u b í , C o!« m e n t, t Lsub=LEH<Subí> 3 u b í = R P T í ( " " , Í T - 1 >*5>&Subíí. : RPTÍC " . " , 2 ' 3 - L s t ; b - i T - 1 > * 5 ; INfiGE 2 9 f l , f l , 5 0 ñ FRINT USIHG 400 ; S u b í , " : " , Cor; ment í GOTO 370 SUBEXIT t. e n d : SUBEND (Xnaliser) -81- Nombre del programa: "1-JACO" Calcula los valores de la longitud, L; el volumen, V; las coordenadas ra dial, R, y axial, Z, y el jacobiano de la transformación, Jaco, de la forma de equilibrio de una zona en los límites de estabilidad, en funciór del parámetro Alpha que caracteriza la forma de equilibrio. Nombre del archivo: " I - J A C O " Variables comunes: Subprogramas requeridos: Lvrzj Calcula (L,V,R,Z,Jaco ) como función de (Alpha, Phil, Phi2). Variables: Alpha Parámetro que caracteriza una forma de equilibrio. Phi Valor final de la variable de barrido de la curva. L,V,R,Z,Jaco Valores de la longitud, volumen, posición radial y axial, y el jacobiano de la transformación, calculados por el subprograma Lvrzj. Epsilon Valor de la tolerancia con que se mide la anulación del jacobiano. Step Incremento de la variable Phi en el bucle que calcula el valor de Phi, que para un valor de Alpha dado anula el jacobiano. Organigrama: Ver Fig. 26 Comentarios al organigrama: Cylinder El valor Alpba=Q corresponde a zonas cilindricas cuyos datos se ofrecen sin necesidad de cálculos. Period Para valores de Alpha comprendidos entre 0 y 65.4° y entre 270° y 360° el límite de estabilidad está caracterizado por el valor final de Phi = 0 y Phi = 90° , respect ivamente. Catenoid El valor de Alpha=90° corresponde a zonas catenoidales, caso singular, cuyos datos se ofrecen, no realizándose aquí los cálculos precisos. ("I-JACO") •82. Start -*J Input Alpha . ^ YES Alpha<65.4°? - ^ YES Alpha=0? Cylinder Jr° Period JÑO Alpha=90°? . « ^ YES Catenoid i^° Alpha<92.6°'? . YES ^ YES Find JNO Alpha=180°? Error jCro Alpha<270°?"-~ - ^ YES Atncos J&JO Alpha=270°?^" -^> YES Sphere TNO Period (>* NO Stop: .YES End Fig. 26. Organigrama del programa "I-JACO . (^T^JACO^) -83- Find Para los valores de Alpha comprendidos entre 6 5.4° y 92.6° el límite de estabilidad corresponde al valor de Phi que anula el jacobiano de la transformación, cuya determinación se realiza por medio de un bucle iterativo. Error El valor Alpha=180° corresponde a zonas bidimensiona les no tratadas en este programa. Atncos Para los valores de Alpha comprendidos entre 92.6° y 270° el límite de estabilidad está caracterizado por una cierta relación entre el valor de Alpha y el valor final de Phi. Sphere El valor de Alpha=270° corresponde a formas esféricas cuyos datos se presentan directamente. Listado: 10 20 30 40 50 i " I -JñCO" PIFÍETE ! ! C o r,- p u t é : t h e ¡E t ab i 1 i t y 1 i m i t s f o r q i w c ti ñ 1 p h a DEG ! P u t, 1 f o t- d e b u g g i n g Deb = 0 P R I H T US IMG X. 3 O Í R >" ; " f> L f¿!i? _ " ' " J l t i l J "' " Fh i 2 " , " L 7 », " R ", Z "," ' Jaco " 60 I HRGE Sfl , 3D . 3B. 2X, 3D . 3B , 2X , 31'. 3D , 2X , 3D . 3D , 2X , 3H . 31), 2X, 3D. 3I¡, 2X , 31' . 3D , 2 X,N2D.3H,2X ?0 I n;iut : I MPUT " H 1 pha = ? " , R 1 pha !fi1 pha i s % he indep t• nden t var i a b 1 e 80 R 1ph a=H1pha H0D 3 6 0 90 IF R1pha=8 THEH Colinden ! The eaíiest case 100 I F R 1 ph a< 6 5 . 3 5 6 THEH P e r i o d ! R 1 ph a= 65 i s t h e- s o 1 u t i on o f J < R 1 ph a, 0 ) -- 0 110 ! Rlpha=93 is thi ÍOIUT. ion of J (H1 pha, Ph i ) =0 RHD contact angle 0 GR 130 120 IF H E S < H 1 p h a -9 0 ) < .2 T H E H C a t t n o i d i 3 i n g u i a r i t y o f t h i s f o r- m u 1 a t i o n 133 IF < R l p h a > 6 5 . 3 5 3 ) R H D < R 1 p h a í 9 2 . 6 ) T H E H F i r.d ! S o H ' * s fot- J < ñ ! p h a , P h i ) = 0 140 IF H E S Í R I p h i - 1 S O J í . 1 T H E H E r r o r ! W i til o u t, me a 11 i n q h e r t 150 I F C H 1 p h a -' ? 2 . ¿ ,< R N l¡ < H I p h a< 2 7 0 ) T H E H R t n eos. I C o n t ac t a n g 1 e 0 o r 1 3 3 160 IF filpha=276 THÍIM S p h e r - e 179 I F R I p h a > 2 7 3 TriEN P e r i o d ' Rgair, contact. a n q l t a i b r e a k a g e = 90 183 E r r o r - D l S P CHF.Í- O 2 9 ) ; " R i p h a= 1 3 3 CORRESPGHDS TO E 1D I M . " 3HRPES " ; CHR$ O 2 3 ) 190 GOTO I t i p u t 280 P e r i o d l I F RlpnaOSO THEH P h i = 0 210 IF R l p h a > 1 8 0 T H E H Phi=90 220 G Ú S U E Phi 12 230 C H L L L y r z j ( H 1 p h a, F h i 1 , P h i 2 , L , V , R , 2 , .1 ac o > 240 P R I H T U S IMG 6 0 ; "Feri o d " ; R l p h a ; P h i 1;Phi2;L;V;P;2;Jaco 250 GOTO Input 2 6 8 Rt n e o s : Phi = R T M ( 1 .•-SOR <.-CUS < R 1 p h a ) "> ) 270 G0SUE Phi 12 280 CRLL LVI-IJ '.Rl pha, Phi 1 . Phi 2, L, 7, R, Z, J a c o ) 290 PPIMT US IMG 6 8 ; "fit.nc os";R1pha;Fhi 1;Phi 2;L;V;R;Z;Jac o 308 GOTO Input -84Fitid: E p s i 1 o n = . 081 ! tole-ranee i n Jaco=8 I F flFS < R ] p h a - 9 8 > < . 2 THEN Cat e n o i d St. s-p = - 4 5 Phi=98 D I S P " W a i t a m i n u t e p 1 e as e " Ph i =Phi +St ep GOSUE P h i 12 CflLL L v r z j ( f l l p h a , P h i 1 , P h i 2 , L , V , R , 2 , J a c o > I F Deb THEH PRINT t i l p h a ; Ph i 1 ; Ph i 2 ; L ; V ; R ; Z ; Jac o ; Eps i 1 on I F flESC J a c o X E p s .i I o n THEH 430 S t £ p = S G H ( J ac o ) *flE 3 < S t 1 p > -' 2 GOTO 36G PRI N T U S ING 6 ü ; " F o u n d " ; ñ 1 p h a ; P h i 1; Ph i 2 ; L ; V ; R ; 2 ; J a c o G Ü T 0 I n p u t. '-y ! i n d e r : P R I N T U S I N G 6 8 ; " Cy 1 i n d í r " ; 8 ; 0 ; 1 SO ; P I ; 2 . 4 6 7 ; 1 ; P I ; 8 G O T O Input C a t e n o i d : I'ISP " F ü R 3 9 . 2 < Fl 1 p h a < 9 0 . 2 R N S U E R IS P R E L O Ñ D E D fiND N O T C O M P U T E D ' UñIT 1000 P R I N T U S I N G 6 0 ; "Cat e-no i d " ; ñ 1 p h a ; 9 0 ; 9 0 ; . 4 7 2 ; . 0 S 9 ; 4 . 7 4 8 ; 2 . 2 4 ; 8 G 0 T O I n p '.i t S p h e- r- e : P R I H T U S I N G 6 0 ; " S p h e r e " ; 2 7 8 ; ? 8 ; 8 ; 9 9 9 ; 9 9 9 ; 8 ; 1 ; - 9 9 GOTO Input -• h i 1 2 : IF ñ l p h a - c l S O T H E H P h i l = P h i ! Fot- e q u a l s i z e d i s c s IF R1pha<138 THEH Fhi 2=138-Fh i IF RlphaMSO THEH Phil=-Phi IF Rlpha)130 THEH Phi2=Phi RETURN ENB -85- Nombre del subprograma: Lvrzj Calcula los valores de la longitud, L; el volumen, V; las coordenadas ra dial, R, y axial, Z, y el jacobiano de la transformación, Jaco, de la forma de equilibrio de una zona flotante definida por los parámetros Alpha y Phi. Nombre del archivo: " I - J A C O " Sintaxis de acceso: CALL Lvrzj(Alpha,Phil,Phi2,L,V,R,Z,Jaco). Parámetros de entrada: Alpha Variable que caracteriza una forma de equilibrio. Phil,Phi2 Valores inicial y final de la variable de barrido de la curva. Parámetros de salida: L,V,R,Z,Jaco Valores de la longitud, volumen, posición radial y axial, y jacobiano de la transformación. Variables comunes: Subprogramas requeridos: Ell Dados Alpha y Phi, calcula las integrales elípticas completas e incompletas de primera y segunda especie. Variables: Alpha,Phil,Phi2 Ver parámetros de entrada. L,V,R,Z,Jaco Ver parámetros de salida. C,S,Ta Coseno, seno y tangente de Alpha. Phi(2) Vector que contiene los valores de Phi en ambos extremos de la zona. II Índice del bucle que calcula los valores de las variables siguientes en ambos extremos de la zona. F(H),E(H) Integrales elípticas incompletas de primera y seguii da especie. F90,E90 Integrales elípticas completas de primera y segunda especie. -86- C(H),S(II) Coseno y seno de Phi(H). A(H) ,B(H),Cv(H) Valores de las variables auxiliares de cálculo A, I y Cv (ver Tabla 1 ) . Fa(H),Ea(H) Derivadas parciales de las integrales elípticas incompletas de primera y segunda especie respecto de Alpha. Aa(H),Ba(H),Cva(H) Derivadas parciales de las variables auxiliares de cálculo A, B y Cv, respecto de Alpha. Ap(H),Bp(H),Cvp(H) Derivadas parciales de las variables auxiliares de cálculo A, B y Cv, respecto a Phi. La,Va,Lp,Vp Derivadas parciales de L y V respecto de Alpha y Phi. Organigrama: Comentarios al organigrama: Listado: 0 L'.' r z J : O 3U 40 50 60 70 80 90 1 00 110 120 130 140 150 160 170 ISO 190 200 210 2 2.0 H)-4Í 230 ci+c: 240 250 2b0 270 280 290 S U E L y r z ,j Í. R 1 p h a , P h i 1 , P h i 2 , L , V , R , ¿ , J ac o ) ! Ld ¡> >s •? <s 'é i' ¡< l? \'í La Q ¡¿ í¡ i? L? L? ¡í i? y i? ¡J? i? i? Cd Cd C3 La r.i£b=l ! Put 1 f o r debugginq DEG Phií 1 >=Phi 1 Phi<2>=Fhi2 C=C08<Hlpha) £=SINÍñlphk> POR H=l TO 2 C 8 L L El 1 < CPhi CH> >, ;. h 1 ph a> , F í H ;• , E < H J , F90,E9O:> C<H>=Cü3'::Phi (PO > S<H>=SIMCPhiÍH)) H(H:> = SQRC I - S * S * S ' , H > * S ' . : H : J :• E<H) = C*FÍH>+E<H':' C','< H ) = P I • " 1 2 + ' ! 8 * 3 * 3 C H ) * C C H > * R ( H > - C * E < H > + 2 * ( 1 + C > " - 2 * E < H > > E a í H > = ¿ . E ' H > - F ( . H > : ) "T F a < H > = E a < H :> + T * <:. E •" H :> - 3 >, H ;• * C C H ':< •>' H C H > ) Ba<H)=-'i^F'.H)+C*Fa':H:'+Ea(H) B p ( H > = C.'H':H:'+H<H> Ra<H > = - ' 3 * C * S < H ) * S < H > .- H C H ;' H p < H > = - 3 * 3 * S < H > * C < H ':• - ñ ', H '.< C u a f H> = P I , ' 1 2 * ( S * C * £ ' : H ' ' * C ' : H ) * 2 * H < H > + S * S * S < : H J * C C h O * H a ' ; H > + S * I ; ( H > - C * B a ( : *.\ 1 + C >*E'::H} + 2*>: l + C > ' - 2 * E a < : P D ) C v p < : H > = P I - ' 1 2 * < S * S * C 0 S < 2 * P h i C H ;• > * ñ < H > + S * S * S < H : : < * C < H > * ñ p < H : ' - C * B p ( 1 - 0 + 2 * >* R C H > > NEíiT H L = H B 3 < E < 2 ' > - ! : ( . 1 > > ••' R < 1 >-"2 V = RBS ( C u í 2 > - C v < 1 > ) sft < 1 > •"•3/2 IF H l p h a > 1 8 0 T H E N R = H < 2 5 IF filpha>180 T H E N 2 = B < 2 > IF R l p h a < 1 8 0 T H E H R = R B S •' R í 1 > •- C > ( Lvrzj J -87- IF Rlpha<130 THEN 2 = C E •; 2 ) -E C 1 ) > .-'C,- 2 La=< <Ea(2)-Ea< 1 '> )*ñ( 1 )-fiaí 1 :•*< B< 2>-E< 1 > ;• >/2/ft<. 1 >-2 Va=< (CMaí 2>-Cv-aí 1 ) >*ñ< 1 >-3*fia< 1 > * < C'J<2 >-Cv< 1 ) ) > ^2^ñ( 1 j '"-4 Lp=íSGN(ftl pha-18Ü>*<Ep(2:?+Ep'; 1 > >*R< 1 J-ñpC 1 !> * •'B Í2 )-E < 1 ) > :>.-'2 •-'R ¡. 1 )'-2 Vp=(SGM<flpha-l98>*<Cvp<2>+Cvp<l))*ftO)-3*ñp(:0*>Xv<2;-CiAi:>) >.'2 -'fl ( 1 :> -4 J ac o =L a* Vp - L p * V a I F N Ü T D e b THE H S U B E X I T ! I f f u r t h e- r t r ac i n g i i r e- q u i r e d PR I NT PñGE , TRE < 20 ) , " DEEUGG I NG FÜR •' I - U T Z j ' " , L I H t i ) , RPTÍ < "_" , SO ) , L I H ( 2 PRIHT "fllpha=";Rlpha,"C=";C,"S=";3 PR i N T " p h i (i ;• = " ; P h i a ;•," c í i > = " ; c (i >, " s < i > = " ; s c i > • PRIHT PRINT PRIHT PRI NT PRIHT PRIHT PRIHT PRIHT PRINT " P h i t 2 ) =" ; P h i ( 2 ) , " C í 2 > = " : C t 2 ) , " S t 2 ) = " ; S t 2 ) "F=" ; F( 1 ) ; F C 2 ) , "Fa=" ; Fa( 1 ) \ F a t 2 ) , "F90= ,: ; F96 " E= " ;E(1);E < 2 ) , "Ea=";Eat1);EaC 2 ) , "E96 = ";E99 "fl=";ñCl);fl(2), "Ra=";Raí1>;Ra(2>, "flp=";flpt1);Rp<2) "B=";B(i:';B<2>, PRINT "Ea=";Ea<l>;Ea<2), PRIHT "Ep=";Ep<l);Bp(2) PR I NT " C M = '' ; C u •'. 1 "> ; Ce* < 2 ) , P R I H T " C y a = " ; C u a t i ) ; C >.-' a ( 2 ) , P R I N T "Cp=";Cp'': i );Cpí2) PRINT PRIHT "L = ";L, "La=";La, "Lp=" ;Lp PRIHT " V ="; V, " V a="; V a, " V p =" ; V p PRINT "R=";R,"2=";2,"Jaco=";Jaco PRINT WñlT 500 SU6EHD -88- REFERENCIAS 1. L a m í , "Columnas me Final Líquidas 1977, Expediente en C o n d i c i o n e s CONIE de I n g r a v i d e z " , 1 3 / 7 7 , M a d r i d , Febrero Infor 1978. -89- 5. DISIPACIÓN DE LA CANTIDAD DE MOVIMIENTO CHORRO DE LLENADO DEL -90- 5. DISIPACIÓN 5.1. DE LA C A N T I D A D DE M O V I M I E N T O DEL C H O R R O DE LLENADO INTRODUCCIÓN El propósito de este capítulo es hacer una recopilación de la información existente en la literatura de utilidad para el estudio de ciertos aspectos de la inyección en la zona flotante. El proceso de inyección una vez transcurrida la etapa inicial, de complicado análisis y difícil experimentación, [ l ] , puede considerarse cuaslestacionario, ya que la relación entre el tiempo de residencia de una partícula fluida (cociente de una longitud y de una velocidad características) y el tiempo caracte ristico de variación de las condiciones de contorno (desplazamien to de los discos o de la superficie libre) es la relación entre los cuadrados de los diámetros del conducto de inyección y de los _2 discos, <que es el del orden de 10 en nuestro caso, por lo que el tiempo puede considerarse como un parámetro introducido por las condiciones de contorno. Así pues, el movimiento será el oryp gi nado por un chorro sumergido que incide perpendicularmente sobre una pared finita (disco) limitada por una superficie libre anclada al borde del disco. La influencia del tiempo se muestra a través de la distancia al disco del orificio de salida del ch£ rro o de la posición de la superficie libre, por lo que el estudio se reduce al de una posición genérica estacionaria. De acuerdo con el propósito del capítulo, puede considerarse el campo fluido como un conjunto de reglones en las que el problema del movimiento en las mismas, aisladas, ha recibido ya atención en la literatura, como son: — Chorro axial (producido por la Inyección de fluido en la zona). -91- — Punto de remanso (producido en la región de impacto del chorro con el disco). — Chorro parietal (producido por la dispersión del cho rro axial sobre la superficie del disco). — Rebordeo (producido zar la s u p e r f i c i e El m o v i m i e n t o que ajuste los por el chorro parietal libre a n c l a d a en el en el r e s t o del campo flujos de fluido que al borde). fluido será son a r r a s t r a d o s alean tal por los r e s - p e c t i v o s c horros . has s o l u c i o n e s constantes para empalme de las s o l u c i o n e s 5.2. CHORRO en las d i f e r e n t e s r e g i o n e s cuya d e t e r m i n a c i ó n sería n e c e s a r i o de r e g i o n e s contienen realizar el contiguas. AXIAL El problema del movimiento axi Isimetrico producido por un chorro que sale de un orificio es un caso al que es aplicable la teoría de la capa límite, [ 2 ] . Como puede considerarse en el caso de descarga de chorros, la presión será constante a lo largo del mismo, por lo que se conservará la cantidad de movimiento en la dirección del eje del chorro al no existir obstáculos que a o t ue n s o bre el f' luido. Con ayuda de las simplificaciones usuales en el modelo de capa límite, las ecuaciones del movimiento que se obtienen son: 9w , Jr + u 3w 1 d Jz~-Vvd¥^'J¥¡ VJ 3w 3z + |H+u = ár r r ü con las condiciones de contorno: ,., dwA ' , ( 1 ) (2) •92- r =O : u =ü r = °° : w =Ü ^ =o ( 3) , (4) donde r y z son las coordenadas radial y axial, u y w las componentes radial y axial de La velocidad, y v la viscosidad cinemát i ca. El empleo de la función de corriente, \p , definida como d\b 31!; ru = que satisface rw= 3? , rN (5) -3t idénticamente la ecuación de continuidad, permite reducir a uno el número de ecuaciones. El problema se resuelve empleando las variables de semejanza F(s) y s, definidas por: *=vzF(s) s = k| , (6) , (7) donde k es una constante que se determina con la condición de con servación de la cantidad de movimiento. Ea solución que se obtiene es la siguiente: 2 F(s) = ~ , (8) i+iV 1 .3 3K u A/ "V V ir 1 IbrT 4r 1+ ( 1 + ra\ s 2 ) -. W - -5 8'ivr i 1 1 ( 1 + _3K_ _r_ 16TT v z l ñ 2 ) o 2 ' ( 9 } , ( 1 Ú) 2 ' ( 11) donde K representa el flujo de cantidad de movimiento cinemático en la dirección del eje del chorro, dado por: -93- K = W 2TT ' r dr , ( 12) J o que por ser independiente de z puede evaluarse a la salida del conducto de inyección. Se ha representado en la Fig. 1 la velocidad axial, w, en una sección, adimensionalizada con la velocidad máxima en la sección, w m , en función de s, así como el flujo de fluido que pa sa a través de un círculo de radio s, perpendicular al eje del chorro adimensionalizado con el flujo total a través de la sección, F(s)/4. S F i g . 1. Velocidad a x i a l , w, adimensionalizada con l a velocidad máxima en l a s e c c i ó n , wm, en función de s . Flujo de f l u i d o adimensionaliza_ do con e l f l u j o t o t a l en la s e c c i ó n , F(s)/ 1 !-. El del chorro, flujo Q, volumétrico que pasa a t r a v é s de u n a sección es: . OQ Q-2ir wrdr J o = 8uvz . (13) -94- L'l fluido situado en las proximidades del chorro es arrastrado por éste, por lo que el chorro se ensancha, a la vez que se dece lera, transportando mayor cantidad de fluido a medida que avanza. Como se deduce de ( 1 3 ) , el flujo de fluido es independiente de la cantidad de movimiento del chorro, de forma que cuando la velocidad de salida sea grande (chorro con mucha cantidad de movimiento) el chorro permanecerá más estrecho que en el caso de velocidad de salida pequeña (chorro con poca cantidad de movimient o ) , ya que. en ambos casos la cantidad de fluido que atraviese una sección dada ha de ser la misma. La forma de las soluciones autosemejantes presenta una singularidad en el origen, en el que la velocidad es infinita y el flujo de fluido es nulo. Con el fin de salvar esta dificultad se elige un origen virtual, situado en z, =--ñ-¿— , de forma que fc o 8TTV - por el origen pase un flujo de (luido dado, Q. En el caso que el 3-1 chorro sea agua, de un gasto de 1 cm .s , el origen virtual se encontraría en z =-4 cm. o Puede estimarse la cantidad que se ensancharía el mismo chorro saliendo de un orificio de 6 mm de diámetro. Como se muestra en la Fig. 1, el 8Ü% del gasto que atraviesa una sección lo hace a través de un círculo de. radio s = 4, y para este valor _2 de s , de (11) se deduce que r/z=3><10 5.3. PUNTO DE REMANSO Cuando una. corriente de fluido incide, perpendicularmeri te en una pared, (disco), el fluido se dispersa radialmente en to das direcciones, como ocurre, por ejemplo, en las proximidades del punto de remanso de un cuerpo situado en el. seno de una co- -95- rriente. Es posible encontrar para este caso, [ 2 ] , suponiendo el movimiento axilsimétrico, una solución exacta de las ecuaciones de Navier-Stokes . Si se utilizan coordenadas cilindricas r,0,z, estando el disco situado en z=Ü, el punto de remanso en el origen y el movimiento fluido en el sentido negativo del eje z, llamando a las componentes radial y axial de la velocidad del movimiento ex terior a la región U(r) y W ( z ) , y a las componentes en el interior de la región u y w, las ecuaciones del movimiento pueden es cr i bir se: 9u , UTT— + U 9u 13 p, W7T— = - — 3r 3z 3w , 3w 3r + W — 3z — p3r 1 3p , p 3T zT ^ + V — =- |ü + ü + |H = 3r r 3 z T T ^ + V 2 /-9u,13u + — 7T— 2 u - — - . 9 u-i + ^ 2 r 3 r 2 „ 2J 2 2 3r w , 1 3w , r3 w^ 3z ^3 1 3w , 3 w, -,2 + ~r 37T— r + -, 2 • , ,2 r 3 r ~ . ir 3z Q , ,, , x , (14) ' , . r •. (Ib) (16) donde p es la presión, p y v son la densidad y la viscosidad cinemática del fluido, junto con las condiciones de contorno z =Ü : u =w =Ü , (17) z =~ : u = U(r) . (18) Para la corriente exterior pueden suponerse los valore: para U(r) y W(z) dados por: U =ar W =-2a z , (19) donde a es una constante, que satisfacen la ecuación de continui_ dad, y aunque corresponden a un movimiento exterior no viscoso, son adecuados en las proximidades del punto de remanso, ya que constituyen el primer término del desarrollo en serie de potencias de la velocidad en el entorno del mismo, válido por ser pe- -96- queñas las velocidades en dicha región. Las distribuciones de velocidades en la región pueden escribirse en función de las variables adimensionales F(s) y s como: u = r a F'(s) , (20) w =- 2/av F(s ) (21) /a/v z (22) La ecuación (14) puede escribirse F"'+ 2 F F" - F'2 + 1 = Ú (23) con las condiciones de contorno s =Ú : F = F' = Ü (24) c: — co F' = 1 (25) , para lo que se ha supuesto la presión como una combinación lineal de una ['unción de z y una f: unción cuadrática de r, tal como sugiere el campo exterior de presiones. La solución del problema es una serie en potencias de s, mostrándose en la Fig. 2 la velocidad radial u, adimensionali_ zada con la velocidad radial exterior, U, y la velocidad axial w, adimens i onal i zada con 2/av, en. función de la distancia a la pared, s . Como se observa en la mencionada figura, la componente axial de la velocidad decrece a cero con suavidad, mientras que la componente radial lo hace con mayor brusquedad, como era de esperar al ser la superficie perpendicular a la primera componen te. -97- 1.6 / w / 2Vav 0.8 u / U(r)/ 1.6 5 3.2 Fig. 2 . V e l o c i d a d r a d i a l , u , a d i m e n s i o n a l i z a d a con l a v e l o c i d a d e x t e r i o r , U ( r ) , y v e l o c i d a d a x i a l , w, a d i m e n s i o n a l i z a d a con 2vca~V, en f u n c i ó n d e l a d i s t a n c i a a l a p a r e d s = v / a/v z . •4 • CHORRO PARIETAL El dir el ción, so caso chorro siendo del chorro axial ax.ilsimetr.ico es generado al inci- sobre disco al orificio de inyec- aplicable chorro del parietal el para el estudio d e l mismo, de capa límite axial, el modelo Utilizando el mismo punto de r e m a n s o , sistema las dU , ÓU 9r 9z como en e l q u e en del movimiento 9 U ca- [3]. de c o o r d e n a d a s ecuaciones U 7;— + W T:— = V 9(ru) 9r opuesto el serán: (26) - „ 2 9Z 9(rw) , 8z (27) ' con las condiciones de contorno Empleando z = Ü : u =w = Ü z = °° : w =Ü . , (28) (29) la función de corriente, i'p , definida como en •98- (5) y las variables de semejanza, f(s) y s, definidas po r J • v 5,3.1/t r •TI 3 f f: (s) ) v3 , ( 3Ü) 1/4 (31) 5 4 V ' donde U es una velocidad característica, se obtiene la ecuaci on '"' + f í " + 2 f ' ¿ = Ü , (32) con las condiciones f( Ú) = f' ( 0) = 0 , f ' (°°) = Ü (33) (34) Integrando se obtiene: 2 llnolÍÉÍi log 2 (1-g) 2 /3 g + /3 arctg -^ (35) donde (36) g Las ecuaciones (35) y (36) permiten calcular f, f y s en función de la variable1 auxiliar g. La solución del problema b = { J T 3 15 F - f(s) (37) (s) (38) 1/2 2vr ( 1/4 135 r >, (39) 32 v r en la que se ha eliminado la constante U, reemplazándola por otra constante, F, que es el flujo del flujo de cantidad de movimiento exterior, magnitud no usual, definida por: F = 1 ru 'o r u dz | dz ; (4Ü) -99que es independiente de r, como puede demostrarse a partir de la integración de las ecuaciones del movimiento. La utilidad de definir F proviene de que puede evaluarse en el chorro axial a par tir del cual se genera el chorro parietal, si se tiene en cuenta que ([4Ü) puede integrarse (considerando u'' = d"-u, siendo U" una velocidad característica del chorro incidente) se obtiene: 1 f2 * F = -i ü" v r u dz J (41) o de donde se deduce que F es el semiproducto de una velocidad característica del chorro y del cuadrado del flujo de fluido. En ia Fig. 3 se muestra la variación de la velocidad radial adimensionalizada con ia velocidad máxima, f'(s), y del flujo de fluido adimensionalizado con el flujo total, f(s), en función de la distancia al disco, s. 0-4 V \ J^ 0.2 <—/ 6 Fig. 3. Variación de la velocidad radial adimensionalizada con la velocidad máxima, f'(s), y del flujo de fluido adimensionalizado con el flujo total, f(s), en función de la distancia al disco, s. -100- La v e l o c i d a d r a d i a l m á x i m a u tiene un valor: m u =0.315 í 15 F "1 1/2 (42) 2 v r"3' que se consigue para un valor de la variable s=2.ü3 . El gasto, Q, que atraviesa un cilindro de radio r, coaxial con el eje es: Q 1/4 Q = 7: 5.5. REGIÓN DEL r u d z = 2 TÍ [ - 3 ( 4 3) BORDE En el estudio de la región del borde, [ 4 ] , la compleji dad del problema requiere la introducción de ciertas simplificaciones que permitan realizar un análisis aproximado del mismo. En primer lugar, el tratarse de una región próxima al borde y de reducida dimensión comparada con el radio del disco, permite analizar el problema como si fuera bidimensional. En segundo lugar, se supondrán dominantes los esfuerzos viscosos frente a los convectivos; es decir, el número de Reynolds del movimiento será pequeño frente a la unidad. Las hipótesis anteriores permiten escribir la ecuación del movimiento para la función de corriente, \¡i , definida por ru 3r 36 (44) como V 4 ijj (45) que admite soluciones separadas de la forma (en coordenadas polares r,6, con el polo en el punto de contacto de la superficie libre con el borde del disco): -101- 4> = K r p f (6) , (46) donde p es un número real o complejo, llamado exponente de la so lución, y K una constante. ba forma general de la función f (6) es: P f (6)=A eos p 9 + B sen p 9 + C cos(p-2) 0 + D sen(p-?) 6 . (47) El numero de Reynolds, R, será R = — — — , que para que sea pequeño frente a la unidad debe ser r suficientemente pequeño cuando p>0. El movimiento originado lejos del borde, no tiene una marcada influencia sobre el movimiento en las proximidades del borde, estudiándose aquí el comportamiento asintótico cerca del mi smo. Las condiciones de contorno en el disco serán, en el caso de zona localmente cilindrica: fU/2) = f ' U/2) = U (4 8) si se considera que la superficie libre no se deforma apreciable_ mente, de forma que puede tomarse como 6=ú, mientras que el disco será 6 =i/2. bas condiciones de contorno en la superficie libre exqf gen que — TTTV = Ü, lo que se satisface si se estudia un movimiento que sea simétrico respecto a la linea que representa la superficie libre; es decir, si se estudia el movimiento simétrico respecto a 9 = 0 entre dos placas situadas en 9 = TT/2 y 6 = -TT / 2 . La simetría del movimiento exige que la función f (9) p sea impar, es decir: f (0)= B sen p 6 + D sen(p-2) 9 . (49) El cumplimiento de las condiciones de contorno en pía- -102 cas que comprendan un ángulo de 2a exige que para que exista solución no trivial debe satisfacerse la condición: sen 2a(p-l) = (p-l)sen 2a , (50) que proporciona, cuando a = ir , el valor de p=3. La condición (48) exige que B=D, y la solución será: i = K r 3 ( sen 30 + sen 0 ) , (51) u = K r 2 ( 3 eos 30 + eos 6 ) , (52) v =-3 K r 2 (sen 30 + sen 9) (53) . En la Fig. 4 se muestra la variación de las componentes horizontal, U, y vertical, W, de la velocidad (en coordenadas cartesianas) a lo largo de un rectángulo limitado por rectas v ////////////////////////////////////, Fig. 4. Variación de las componentes horizontal, U, y vertical, W, de la velocidad a lo largo del rectángulo limitado por las rectas AB y AC. Líneas de corriente. -103- x =cte y z =cte . En el caso en que la zona no fuese c a , sino que el ángulo comprendido entre localmente el disco y la s u p e r f i - cie libre (que puede seguir considerándose localmente sea a, de la condición cilindra: rectilínea) (50) se deduciría el valor del exponente, p, de la solución, obteniéndose de (48) la relación entre B y D. REFERENCIAS 1. L a m í , " C o l u m n a s L í q u i d a s me Final en C o n d i c i o n e s 1978, Expediente CONIE 2. S c h l i c h t i n g , H . , "Boundary Layer de I n g r a v i d e z " , Infor PDP 1 1 / 7 9 , M a d r i d , Marzo 1 9 7 9 . T h e o r y " , M c G r a w - H i l l , p. 1 8 1 , 1960. 3. G l a u e r t , M . B . , "The Wall J e t " , J. Fluid Mech. 1_, p p . 625-6 4 3, 19 5 6. 4. M o f f a t , H.K., "Viscous C ó r n e r " , J. Fluid and R e s i s t i v e Eddies M e c h . 1 8 , pp. 1 - 1 8 , 1 9 6 4 . near a Sharp