Fortran - AYUDA CON CODIGO FORTRAN

 
Vista:

AYUDA CON CODIGO FORTRAN

Publicado por ascari ROMO (1 intervención) el 29/04/2006 20:10:27
Hola, tengo que codificar este programa a C,C++ ó JAVA y hay algunas cosas que no entiendo. Por ejemplo supongo que TTYIN es una instruccion para meter datos desde el teclado, pero no entiendo por ejemplo esto:

TIN=TTYIN(4HTIN ,2H = )

¿Que quiero decir eso de 4HTIN,2H = ) me imágino que debe ser algun tipo de formato para la entrada de datos, pero si alguien me puede explicar mejor su funcion le estare agradecido.

Por ejemplo otra duda es en WRITE(61,99)DX , supongo que WRITE(61,99) son las coordenadas X,Y donde se va a imprimir el valor de la variable DX, estoy en lo cierto??

Otra duda más, que haria estas instrucciones:

WRITE(61,100)((T(I,J),I=1,N1),J=1,M1)

100 FORMAT(1H ,7(2X,F6.2))

101 FORMAT(1H0,6HTIME =,F9.6)

Si pudieran explicarme como funciona el DO, por que tiene delante un 1 o un 2 etc, tiene algo que ver con eso de 1 CONTINUE, 2 CONTINUE, ETC

Si alguien puede explicarme el funcionamiento de este código a grandes rasgos le estare muy agradecido.

Reciban un cordial saludo!!!

PROGRAMA D2TC
DIMENSION T(50,50),D(50,50)
N=TTYIN(4HN = )
TIN=TTYIN(4HTIN ,2H = )
XL=TTYIN(4HXL =,1H )
DX=XL/N
TC=TTYIN(4HTC =,1H )
DY= DX
YL=TTYIN(4HYL =,1H)
WRITE(61,99)DX
99 FORMAT(1H ,16 ANCHO DEL INTERVALO =,F7.4)
L=TTYIN(4HL = )
M = YL/DY
DT =TTYIN(4HDT =1H)
TMAX=TTYIN(4HTMAX,3H = )
HC=TTYIN(4HHC =,1H )
EPS= TTYIN(4HEPS ,2H = )
DEN=TTYIN(4HDEN ,2H = )
TTB=TTYIN(4HTTB ,2H = )
TBB=TTYIN(4HTBB ,2H = )
TRB=TTYIN(4HTRB ,2H = )
TLB=TTYIN(4HTLB ,2H = )
N1=N+1
M1=M+1

C ASIGNA TEMPERATURAS INICIALES

DO 1 I=1,N1
DO 1 J=1,M1
T(I,J)=TIN
1 CONTINUE
ALM=(DT*TC)/(DX*DX*HC*DEN)
TI=0.0
WRITE(61,101)T1
WRITE(61,100)((T(I,J),I=1,N1),J=1,M1)

C FIJA VALORES DE FRONTERA

DO 2 I=1,N1
T(I,1)=TTB
T(I,M1)=TBB
2 CONTINUE
DO 7 J=1,M1
T(1,J)=TLB
T(N1,J)=TRB
7 CONTINUE

C FIJA COEFICIENTE B,E

B=1.0 + 4.0 * ALM
E=ALM/B
9 IC=0.0
3 TI=TI + DT
IC=IC+1
IF(TI.GE.TMAX)GO TO 6
DO 4 I=1,N1
DO 4 J=1,M1
D(I,J)=T(I,J)/B
4 CONTINUE
5 SEPS=0.0
DO 8 I=2,N
DO8 J=2,M
TEMPT=T(I,J)
T(I,J)=D(I,J)+E*(T(I-1,J)+T(I+1,J)+T(I,J-1)+T(I,J+1))
8 SEPS=SEPS+ABS(TEMPT-T(I,J))
IF(SEPS.GT.EPS) GO TO 5
IF(IC.LT.L)GO TO 3
WRITE(61,101)TI
WRITE(61,100)((T(I,J),I=1,N1),J=1,M1)
100 FORMAT(1H ,7(2X,F6.2))
101 FORMAT(1H0,6HTIME =,F9.6)
GO TO 9
6 END

NOTA: EL PROGRAMA ES UNA APLICACION QUIMICA
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

ME PODRIAS AYUDAR?

Publicado por carlos venezuela (2 intervenciones) el 19/10/2006 04:20:56
TE AGREGE I TE MANDE UN MAIL AGRADESKO TUS RESPUESTAS CHAO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar