next up previous contents
Next: Subrutina REGP Up: Discusión del programa PRYPO Previous: Subrutina POLN   Contents

Subrutina CALCA

Ya hablamos de esta subrutina también anteriormente y no difiere grandemente de la misma versión para la 1130, sólo que aquí está un poco más depurada. Sus argumentos son K, IR, A, B, C, D y E; en seguida veremos cual es el papel que les corresponde: JJJ los cuales son declarados en común. K: es un indicador que determina en que columna se carga el punto, el el renglón dependerá del valor que tenga la

\begin{displaymath}Ax^2 + Bx + C \end{displaymath}


\begin{displaymath}\frac{(D + Ex)^2}{x^2-1} \end{displaymath}

Entonces vemos porqué se definen los parametros mudos: A, B, C, D, E.
C   **********************************************************************
C   *                                                                    *
C   * LA SUBRUTINA CALCA CALCULA TRES FUNCIONES Y CARGA PUNTOS EN        *
C   * ARREGLOS RESPECTIVOS PARA FORMAR GRAFICAS                          *
C   *                                                                    *
C   **********************************************************************

      SUBROUTINE CALCA (IR,K,A,B,C,D,E,)
      COMMON AZ,BZ,X,IXIN,IETN,III(600),JJJ(600),H,ALFA,PFI,G1,G2,Z1,Z2,
     @ EPP,EPM,GMI,GPL,JII(120)
      X2=X*X
      XXI=X2-1.
      F=B*X+C
      F=2*F
      IIF=25-IFIX (F)
      IF (IIF.LT.1)  IIF=1
      IF (IIF.GT.50) IIF=50
      GO TO (5,6)  ,IR
    5 CALL GRAFI  (K,IIF,1H.,III)
      GO TO 7
    6 CALL GRAFI  (K,IIF,1H.,JJJ)
    7 F=F/2.+A*X2
      F=2*F
      IEF=25-IFIX (F)
      IF (IEF.LT.1)  IEF=1
      IF (IEF.GT.50) IEF=50
      GO TO (10,20),IR
   10 CALL GRAFI   (K,IEF,1H+,III)
      GO TO 25
   20 CALL GRAFI   (K,IEF,1H+,JJJ)
   25 G=(D+E*X)*(D+E*X)
      IF (ABS(G).GT.(500.*(ABS(XXI)))) GO TO 40
      G=G/XXI
      G=2.*G
      IG=25-IFIX(G)
      IF (IG.LT.1)  IG=1
      IF (IG.GT.50) IG=50
      GO TO (30,35),IR
   30 CALL GRAFI  (K,IG,1H-,III)
      GO TO 40
   35 CALL GRAFI  (K,IG,1H-,JJJ)
   40 RETURN
      END
En esta subrutina, X es el valor de la variable, está en común y se hace variar desde el programa principal, después veremos cómo. En seguida de eso, entender cómo funciona la subrutina ya no es difícil; primero se calcula el valor de la recta de energía cero y su símbolo en las gráficas corresponde a un punto. Ya vimos como se cargan los puntos usando la instrucción GRAFI de la subrutina de García Jurado. Después de cargar la recta, se le adiciona a la función el término $Ax^2$ y tendremos así una parábola a la que vamos a representar con el símbolo (+). Con la otra función, el procedimiento es el mismo pero preguntamos si el numerador no es mucho muy grande comparado con el denominador (aunque el número 500 no es precisamente grande como para causar problemas pero no tiene caso usar uno mayor en nuestro problema) y evitar sobreflujo; esta función la representaremos con el signo menos (-). Como siempre, se tiene la precaución de que el valor de la función no se salga del rango de graficación, para evitar problemas con los arreglos, aunque aquí no es obligatorio porque la subrutina PAG está protegida para evitar ese tipo de error. Con eso puede ya entenderse la subrutina CALCA.
next up previous contents
Next: Subrutina REGP Up: Discusión del programa PRYPO Previous: Subrutina POLN   Contents
Pedro Hernandez 2006-02-20