| 1 | 
       subroutine step_plumes(uplume,vplume,thplume,splume,dt, | 
| 2 | 
     .  Nxplumes,Nyplumes,Nr,Nsx,Nsy,bi,bj, | 
| 3 | 
     .                                 duplume,dvplume,dthplume,dsplume) | 
| 4 | 
c----------------------------------------------------------------------- | 
| 5 | 
c Routine to step plumes state forward using the increments  | 
| 6 | 
c | 
| 7 | 
c----------------------------------------------------------------------- | 
| 8 | 
       implicit none | 
| 9 | 
#include "CPP_OPTIONS.h"                                                                | 
| 10 | 
       integer Nxplumes,Nyplumes | 
| 11 | 
       integer Nr,Nsx,Nsy,bi,bj | 
| 12 | 
       _RL uplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 13 | 
       _RL vplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 14 | 
       _RL thplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 15 | 
       _RL splume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 16 | 
       _RL duplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 17 | 
       _RL dvplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 18 | 
       _RL dthplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 19 | 
       _RL dsplume(Nxplumes,Nyplumes,Nr,Nsx,Nsy) | 
| 20 | 
       _RL dt | 
| 21 | 
c | 
| 22 | 
       integer i,j,L | 
| 23 | 
 | 
| 24 | 
       do L = 1,Nr | 
| 25 | 
        do j = 1,Nyplumes | 
| 26 | 
        do i = 1,Nxplumes | 
| 27 | 
         uplume(i,j,L,bi,bj) = uplume(i,j,L,bi,bj) +  | 
| 28 | 
     .                              duplume(i,j,L,bi,bj) * dt | 
| 29 | 
         vplume(i,j,L,bi,bj) = vplume(i,j,L,bi,bj) +  | 
| 30 | 
     .                              dvplume(i,j,L,bi,bj) * dt | 
| 31 | 
         thplume(i,j,L,bi,bj)=thplume(i,j,L,bi,bj) +  | 
| 32 | 
     .                              dthplume(i,j,L,bi,bj)* dt | 
| 33 | 
         splume(i,j,L,bi,bj) = splume(i,j,L,bi,bj) +  | 
| 34 | 
     .                              dsplume(i,j,L,bi,bj) * dt | 
| 35 | 
        enddo | 
| 36 | 
        enddo | 
| 37 | 
       enddo | 
| 38 | 
 | 
| 39 | 
       return | 
| 40 | 
       end |