Está en la página 1de 5

PROGRAM PRUEBADEINCREMENTO

IMPLICIT NONE

/*SE DECLARAN LAS VARIABLES


REAL(KIND=2),ALLOCATABLE,DIMENSION(:,:)::A
REAL(KIND=2)::TP,PWF,A11,Z1,A22,Z2,A12,A21,AA,b,d,Q,BO,U,H,P,FC,RW,S,K,P1
INTEGER::I,N,OP

/*ASIGNACI�N DE VALORES INICIALES DE ALGUNAS VARIABLES


TP=310
PWF=2761
A11=28
A12=0
Z1=0
A22=0
Z2=0
A21=0

/*SE ABREN LOS ARCHIVOS


OPEN(UNIT=10,FILE="C:\Users\LENOVO\Documents\ESCUELA\PROGRAMACION
AVANZADA\FORTRAN\PRUEBADEINCREMENTO\DELTA-T.txt")
OPEN(UNIT=11,FILE="C:\Users\LENOVO\Documents\ESCUELA\PROGRAMACION
AVANZADA\FORTRAN\PRUEBADEINCREMENTO\PWS.txt")
OPEN(UNIT=12,FILE="C:\Users\LENOVO\Documents\ESCUELA\PROGRAMACION
AVANZADA\FORTRAN\PRUEBADEINCREMENTO\X-LOG(DELTA-T+TP).txt")
OPEN(UNIT=13,FILE="C:\Users\LENOVO\Documents\ESCUELA\PROGRAMACION
AVANZADA\FORTRAN\PRUEBADEINCREMENTO\Y-PWS.txt")

/*MENSAJE EN PANTALLA
WRITE(*,*)"*******************************************************"
WRITE(*,*)"* PROGRAMA ELABORADO POR SIERRA MURILLO BRYAN DAVID *"
WRITE(*,*)"*******************************************************"
WRITE(*,*)
WRITE(*,*)
WRITE(*,*)"ESTE PROGRAMA USA EL METODO DE HORNER PARA CALCULAR EL FACTOR DE DANO"
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"CUANTOS VALORES INGRESARAS"
READ(*,*)N

/*SE ALOJA EL TAMA�O DE LA MATRIZ


ALLOCATE(A(N,12))

/*LIMPIA PANTALLA
CALL SYSTEM('CLS')

/*MENSAJE EN PANTALLA Y SE SOLICITA AL USUARIO DATOS PARA CALCULAR EL DA�O


WRITE(*,*)"*******************************************************"
WRITE(*,*)"* PROGRAMA ELABORADO POR SIERRA MURILLO BRYAN DAVID *"
WRITE(*,*)"*******************************************************"
WRITE(*,*)
WRITE(*,*)
WRITE(*,*)"DE CUANTO ES TU GASTO(qo): "
READ(*,*)Q
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"QUE VALOR TIENE Bo"
READ(*,*)BO
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"CUANTO VALE LA VISCOSIDAD"
READ(*,*)U
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"CUANTO ES TU PRESION A 1 HORA"
READ(*,*)P1
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"DE CUANTO ES EL ESPESOR"
READ(*,*)H
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"QUE VALOR TIENE LA POROSIDAD"
READ(*,*)P
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"QUE VALOR TIENE EL FACTOR E COMPRESIBILIDAD C"
READ(*,*)FC
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"DE CUANTO ES EL RADIO DE DRENE rw"
READ(*,*)RW

CALL SYSTEM('CLS')

/*SE LES ASIGNA LOS VALORES INGRESADOS EN LOS ARCHIVOS A LA MATRIZ


DO I=1,N
A(N,1)=I
READ(10,*)A(I,2)
READ(11,*)A(I,3)
END DO

/*SE REALIZAN LAS OPERACIONES (TIEMPO DE HORNER) Y SON GUARDAS EN UN LUGAR EN


CONCRETO DE LA MATRIZ
DO I=2,N
A(I,4)=A(I,2)+TP
A(I,5)=(A(I,2)+TP)/A(I,2)
A(I,6)=log10(A(I,5))
A(I,7)=A(I,3)-PWF
END DO

/*SE LES ASIGNA EL VALOR DE CERO A CASI TODA LA PRIMERA FILA


DO I=4,7
A(1,I)=0
END DO

/*SE LE ASIGNA DE VALOR DE CERO DE LA PRIMERA FILA A LA CUARTA YA QUE ESTOS VALORES
NO SERAN TOMADOS EN CUENTA
DO I=1,4
A(I,8)=0
A(I,9)=0
A(I,10)=0
A(I,11)=0
END DO

/*OPERACION PARA LA REGRESION LINEAL


DO I=5,N
A(I,8)=A(I,6)
A(I,9)=A(I,3)
A(I,10)=(A(I,8))**2
A(I,11)=A(I,8)*A(I,9)
A12=A12+A(I,8)
Z1=Z1+A(I,9)
A22=A22+A(I,10)
Z2=Z2+A(I,11)
END DO

A21=A12

CALL SYSTEM ('CLS')

/*CALCULO DE VALORES PARA EL AJUSTE DE CURVA


d=(A11*A22)-(A12*A21)
AA=((A22*Z1)-(A12*Z2))/d
b=((A11*Z2)-(A21*Z1))/d

/*CALCULO DE PWS
DO I=2,N
A(I,12)=(b*A(I,6))+AA
END DO

/*CALCULO DEL FACTOR DE DA�O


K=(162.6*Q*BO*U)/(-b*H)
S=(1.1513)*(((P1-PWF)/(-b))-(log10((K*12**2)/(P*U*FC*RW**2)))+3.2275)

OP=1

/*MENSAJE EN PANTALLA
DO WHILE(OP==1)
WRITE(*,*)"*******************************************************"
WRITE(*,*)"* PROGRAMA ELABORADO POR SIERRA MURILLO BRYAN DAVID *"
WRITE(*,*)"*******************************************************"
WRITE(*,*)
WRITE(*,*)"SE REALIZO UNA REGRESION LINEAL Y OBTUVIMOS LA SIGUIENTE RECTA DE
AJUSTE"
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"PWS=",b,"*","(Log((tp + DELTA_t)/DELTA_t))","+",AA
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"QUE DESEAS HACER (DIGITA TU OPCION):"
WRITE(*,*)
WRITE(*,*)"1)COMPROBAR QUE LOS VALORES X - Log((tp + DELTA_t)/DELTA_t)"
WRITE(*,*)"2)COMPROBAR QUE LOS VALORES DE Y - PWS"
WRITE(*,*)"3)MOSTRAR EL FACTOR DE DANO"
WRITE(*,*)"4)IMPRIMIR LOS VALORES"
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)"RESPUESTA: "
READ(*,*)OP

CALL SYSTEM('CLS')

/*SELECCI�N DE CASOS
SELECT CASE(OP)

CASE(1) /*CASO 1
/*MENSAJE EN PANTALLA
WRITE(*,*)"X-Log((tp + DELTA_t)/DELTA_t)"
WRITE(*,*)"------------------------------------------------"

/*IMPRIME EN PANTALLA LOS VALORES DE X


DO I=5,N
WRITE(*,*)A(I,8)
END DO
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)
WRITE(*,*)"SON CORRECTOS ESTOS DATOS(DIGITA EL DIGITO)"
WRITE(*,*)
WRITE(*,*)"1)SI"
WRITE(*,*)"2)NO"
WRITE(*,*)
WRITE(*,*)"RESPUESTA: "
READ(*,*)OP
CALL SYSTEM('CLS')

CASE(2)/*CASO 2
WRITE(*,*)"Y - PWS"
WRITE(*,*)"------------------------------------------------"

/*IMPRIME EN PANTALLA LOS VALORES DE Y


DO I=5,N
WRITE(*,*)A(I,12)
END DO

WRITE(*,*)"------------------------------------------------"
WRITE(*,*)
WRITE(*,*)"SON CORRECTOS ESTOS DATOS(DIGITA EL DIGITO)"
WRITE(*,*)
WRITE(*,*)"1)SI"
WRITE(*,*)"2)NO"
WRITE(*,*)
WRITE(*,*)"RESPUESTA: "
READ(*,*)OP
CALL SYSTEM('CLS')

CASE(3)/*CASO 3

/*IMPRIME EL FACTOR DE DA�O


WRITE(*,*)"TU FACTOR DE DANO=",S
WRITE(*,*)"------------------------------------------------"
WRITE(*,*)

WRITE(*,*)"DESEAS REGRESAR AL MENU PRINCIPAL(DIGITA EL DIGITO)"


WRITE(*,*)
WRITE(*,*)"1)SI"
WRITE(*,*)"2)NO"
WRITE(*,*)
WRITE(*,*)"RESPUESTA: "
READ(*,*)OP
CALL SYSTEM('CLS')

CASE(4)/*CASO 4

/*IMPRIME EN ARCHIVO
WRITE(12,*)"*******************************************************"
WRITE(12,*)"* PROGRAMA ELABORADO POR SIERRA MURILLO BRYAN DAVID *"
WRITE(12,*)"*******************************************************"
WRITE(12,*)
WRITE(12,*)" X"
WRITE(12,*)"------------------------------------------------"
WRITE(13,*)"*******************************************************"
WRITE(13,*)"* PROGRAMA ELABORADO POR SIERRA MURILLO BRYAN DAVID *"
WRITE(13,*)"*******************************************************"
WRITE(13,*)
WRITE(13,*)" Y"
WRITE(13,*)"------------------------------------------------"

DO I=5,N
WRITE(12,*)A(I,6)
WRITE(13,*)A(I,12)
END DO

WRITE(*,*)"------------------------------------------------"
WRITE(*,*)
WRITE(*,*)"DESEAS REGRESAR AL MENU"
WRITE(*,*)
WRITE(*,*)"1)SI"
WRITE(*,*)"2)NO"
WRITE(*,*)
WRITE(*,*)"RESPUESTA: "
READ(*,*)OP
CALL SYSTEM('CLS')

END SELECT/*FIN DE SELECCION DE CASOS

END DO /*FIN DE DO WHILE

/*CIERRA ARCHIVOS
CLOSE(10)
CLOSE(11)
CLOSE(12)
CLOSE(13)
DEALLOCATE(A) /*BORRA LOS VALORES ALMACENADOS

END PROGRAM

También podría gustarte