Page 381 - Handbook Of Multiphase Flow Assurance
P. 381

380                          10.  Research methods in flow assurance

                 ccc      call random(aa)
                      aa=rand()
                       bb=dble(aa)
                       roulet = bb+bb-1.D0
                       ncalls=ncalls+1
                      RETURN
                      END
                 C
                 C-------------------------------------------------------------------
                 C
                      SUBROUTINE CYCLES(N1,Ntimes)
                      IMPLICIT REAL*8(A-H,O-Z)
                      COMMON /NRUN  / Ncycle,Ndead,Kprint,Kdprnt,Kcyc,Neq
                      COMMON /ESAVE / Eold,Epold,Epoly(99,99),Ep(99,99),Esurf(99),Es(99)
                 C
                 C ... main Monte Carlo simulation loop
                 C translation move attempt
                      DO 100 Kcyc = N1, Ntimes
                      CALL NEWPOS
                      CALL ENERGY(Ener)
                      CALL DECIDE(Ener, 0)
                 C rotation move attempt
                      CALL NEWORI
                      CALL ENERGY(Ener)
                      CALL DECIDE(Ener, 1)
                 C pivot move attempt
                      CALL NEWPIV
                      CALL ENERGY(Ener)
                      CALL DECIDE(Ener, 2)
                 C adjust maximum step sizes, based on move acceptances
                      IF (MOD(Kcyc,10) .EQ. 0) CALL ADJUST
                 C ... output information for the POSVIEW and POS2BMP programs
                        IF(MOD(Kcyc,Kdprnt).EQ.0) CALL GRAPHDATA
                 C
                        IF(MOD(Kcyc,Kprint).EQ.0) then
                          CALL PRTOUT
                        CALL CRASHSAVE
                          CALL SAMGOZ
                      endif

                 C
                  100  CONTINUE
                 C
                      RETURN
                      END
                 C
   376   377   378   379   380   381   382   383   384   385   386