Next: Consideraciones para ver los
Up: Discusión del programa PRYPO
Previous: Subrutina REGP
  Contents
Esencialmente, el programa principal sirve para realizar algunos
cálculos para ser utilizados en las llamadas a subrutinas, la
entrada de datos y la condición de salida determinada por la
variable NU, se realizan desde el programa principal. Desde
aquí se limpian también las páginas donde ha de
graficarse, colocandose también todos los ejes, quedando
aquellos, listos para cargar puntos. En la lectura de datos,
además de los parámetros dinámicos se leen ciertos valores
para y donde queremos calcular los valores de
y . El criterio para escoger y consiste en
tomar valores para esas variables dentro de los rangos en que el
movimiento es permitido, valores que pueden buscarse analizando
los resultados que dan los programas REGP, las mismas
gráficas de PRYPO o bien, los resultados de TURN en
el programa TWOC. Como se calculan los valores absolutos del
polinomio de cuarto grado y obtener después el valor de un
movimiento, siempre aparecerá impreso algún valor para esa
cantidad pero pondremos un texto para indicar los casos en que
resulta imaginario, eso porque estamos variando diferentes
parámetros dentro del programa según nos interese y las
regiones donde puede ocurrir el movimiento van a depender de
aquellos.
El rango de graficación está entre los límites (-5,5) para
la variable independiente y vamos moviendonos hacia la derecha
sumando cada vez un incremento que llamamos XINCR hasta
ciento veinte veces eso se hace con un DO pequeñito que
termina en la etiqueta número 15; para cada valor de la
variable llamamos a la subrutina CALCA para cargar un
símbolo si el valor del primer argumento es 1 se trata de las
gráficas para la variable , si vale dos la variable será
y ya vimos cómo en CALCA se lleva el control de
dichas variables.
Nosotros queremos variar un parámetro y ver como van cambiando las
curvas, eso lo logramos encimando las gráficas por lo que no
limpiamos la página sino hasta haber obtenido una familia de curvas
en un número que nos parezca más adecuado, estamos usando cinco
curvas por página, podemos colocar las que queramos, pero cinco, son
suficientes; una vez calculada toda la familia imprimimos la página.
Otra cosa que se hace aquí, es llamar a REGP para ver cómo
cambia la región permitida al variar el parámetro que estamos
variando.
C
C ************************************************************************
C * *
C * EL PROGRAMA PRYPO SIRVE PARA OBTENER GRAFICAS QUE PERMITEN CONOCER *
C * LA REGION EN QUE PUEDE MOVERSE UNA PARTICULA EN EL PROBLEMA DE DOS *
C * CENTROS COULOMBIANOS; SU PAPEL ES EN CIERTO MODO SEMEJANTE AL QUE *
C * DESEMPENAN LAS SUBRUTINAS "CNTU" Y "TURN" DEL PROGRAMA "TWOC" *
C * *
C ************************************************************************
COMMON AZ,BZ,X,IXIN,IETN,III(600),JJJ(600),H,ALFA,PFI,G1,G2,Z1,Z2,
@ EPP,EPM,GMI,GPL,JII(120)
5 READ (2,300) NU,H,ALFA,PFI,G1,G2,Z1,Z2,XI,ETA
300 FORMAT (I1,7F10.0,2F4.0)
PFI2=PFI*PFI
IF (NU.EQ.0) GO TO 19
CALL PAG (III)
CALL PAG (JJJ)
DO 10 I=1,60
CALL GRAFI (48,I,1H:,III)
CALL GRAFI (48,I,1H:,JJJ)
CALL GRAFI (60,I,1HI,III)
CALL GRAFI (60,I,1HI,JJJ)
CALL GRAFI (72,I,1H:,III)
CALL GRAFI (72,I,1H:,JJJ)
10 CONTINUE
DO 11 J=1,120
CALL GRAFI (J,25,1H-,III)
CALL GRAFI (J,25,1H-,JJJ)
11 CONTINUE
CALL GRAFI (48,25,1H+,III)
CALL GRAFI (48,25,1H+,JJJ)
CALL GRAFI (60,25,1H+,III)
CALL GRAFI (60,25,1H+,JJJ)
CALL GRAFI (72,25,1H+,III)
CALL GRAFI (72,25,1H+,JJJ)
GMI=G1-G2
GPL=G1+G2
EPM=Z1-Z2
EPP=Z1+Z2
DO 18 K=1,5
IXIN=0
IETN=0
WRITE (3,310) H,ALFA,PFI,GMI,GPL,EPM,EPP
310 FORMAT(1X,'H = ',F6.3,' ALFA = ',F6.3,' PFI = ',F6.3,' GMI = ',F5.
@2,' GPL = ',F5.2,' EPM =',F5.2,' EPP = ',F5.2,///)
CALL POLN (1,XI,H,-EPP,-(GMI*GMI/2.+H+ALFA),EPP-2.*PFI*GMI,GMI*GMI
@/2.-ALFA-PFI2)
CALL POLN (2,ETA,H,EPM,-(H+ALFA+GPL*GPL/2.),-(EPM+2.*PFI*GPL),ALFA
@-PFI2-GPL*GPL/2.)
IF (IXIN.EQ.1) WRITE (3,350)
350 FORMAT (40X,' EL MOMENTO PXI ES IMAGINARIO ')
IF (IETN.EQ.1) WRITE (3,400)
400 FORMAT (40X,' EL MOMENTO PETA ES IMAGINARIO ',/)
PETA=BZ/(1.-ETA*ETA)
PXI=AZ/(XI*XI-1.)
XINCR=0.0833333
X=-5.
DO 15 I=1,120
X=X+XINCR
CALL CALCA (1,I,H,-EPP,GMI*GMI/2.-ALFA,PFI,GMI)
CALL CALCA (2,I,H,EPM,GPL*GPL/2.-ALFA,PFI,GPL)
15 CONTINUE
CALL REGP (1)
H=H+1.5
18 CONTINUE
CALL REGP (2)
WRITE (3,250)
250 FORMAT (40X,'CURVAS PARA LA VARIABLE XI')
DO 775 I=1,52
CALL IMPRE (I,III,JII)
775 PRINT 100,JII
WRITE (3,410)
WRITE (3,550) G1,G2,Z1,Z2,XI,ETA,PXI,PETA,PFI
550 FORMAT (' G1= ',F6.2,'G2 = ',F6.2,'Z1 = ',F6.2,'Z2 = ',F6.2,'XI =
@',F6.2,'ETA = ',F4.2,' PXI = ',F4.2,' PETA = ',F4.2,' PFI V ',F4.2
@,///)
WRITE (3,600)
600 FORMAT (40X,' CURVAS PARA LA VARIABLE ETA')
DO 776 I=1,52
CALL IMPRE (I,JJJ,JII)
776 PRINT 100,JII
410 FORMAT (1H1)
10O FORMAT (1X,120A1)
GO TO 5
19 CALL EXIT
END
Todo el proceso descrito anteriormente se realiza por un DO
que termina en la etiqueta número dieciocho, el índice K
no forma parte del cómputo y solamente sirve para hacer la
interación.
Todas las gráficas llevan encabezados o notas al pie de página
donde se especifica de qué variable se trata y cuáles son los
valores de los parámetros que ahí intervienen. Se explicó al
principio de qué manera se usa la subrutina PAG de García
Jurado y con eso creeemos haber explicado todo lo necesario para
entender el programa.
Next: Consideraciones para ver los
Up: Discusión del programa PRYPO
Previous: Subrutina REGP
  Contents
Pedro Hernandez
2006-02-20