Page 321 - Introduction to Computational Fluid Dynamics
P. 321

P1: ICD
                                                                                   May 11, 2005
                                         0 521 85326 5
                            CB908/Date
                                                                                                 15:43
            0521853265appb
                     300
                                   DO 3000 NTIME=1,MXSTEP         APPENDIX B. 1D CONDUCTION CODE
                                   TTIME=TTIME+DELT
                            C SET NEW VALUES AT THE BOUNDARY OR SOURCES (USER FILE)
                                   IF(UNSTEADY)CALL NEWVAL
                            C***   BEGIN ITERATIONS AT A TIME STEP
                                   IF(PSI.NE.0.0)WRITE(6,*)’   ITER      FCMX ’
                                   ITER=0
                            1000   ITER=ITER+1
                            C CALL PROPERTIES ROUTINE (USER FILE)
                                   CALL PROPS
                            C***   CALCUALTE THE COEFFICIENTS AW AND AE
                                   CALL COEF
                            C***   CALCULATE THE SOURCE TERMS SU AND SP (USER FILE)
                                   CALL SORCE
                            C***   SPECIFY THE BOUNDARY CONDITIONS
                                   CALL BOUND
                            C***   SOLVE THE DISCRETISED EQUATION
                                   CALL SOLVE
                            C***   WRITE RESIDUAL, CHECK CONVERGENCE
                                   WRITE(6,500)ITER,FCMX
                                   IF(ITER.GT.ITERMX) GO TO 2000
                                   IF(STEADY.AND.ITER.EQ.1)GO TO 1000
                                   IF(FCMX.GT.CC) GO TO 1000
                            2000   CONTINUE
                                   IF(STEADY)GO TO 5000
                            C END OF TIME STEP
                            C UPDATE OLD TEMPERATURES AND PRINT OUT VARIABLES (USER FILE)
                                   CALL INTPRI
                                   CALL UPDATE
                                   IF(ISTOP.EQ.1)GO TO 5000
                                   IF(TTIME.GT.TIMEMX)GO TO 5000
                            3000   CONTINUE
                            5000   CONTINUE
                            500    FORMAT(I5,6X,E10.3)
                                   RETURN
                                   END
                            C *************************************************
                                   SUBROUTINE GRID
                                   INCLUDE ’COM1D.FOR’
                                    CHARACTER*20 HEADER
                            C *************************************************
                            C GRID DATA ARE GIVEN IN BLOCK DATA (USER FILE)
   316   317   318   319   320   321   322   323   324   325   326