7 | | should be |
| 5 | {{{ |
| 6 | ! |
| 7 | !----------------------------------------------------------------------- |
| 8 | ! Apply momentum transport point sources (like river runoff), if any. |
| 9 | !----------------------------------------------------------------------- |
| 10 | ! |
| 11 | IF (LuvSrc(ng)) THEN |
| 12 | DO is=1,Nsrc(ng) |
| 13 | i=SOURCES(ng)%Isrc(is) |
| 14 | j=SOURCES(ng)%Jsrc(is) |
| 15 | IF (((IstrR.le.i).and.(i.le.IendR)).and. & |
| 16 | & ((JstrR.le.j).and.(j.le.JendR))) THEN |
| 17 | IF (INT(SOURCES(ng)%Dsrc(is)).eq.0) THEN |
| 18 | DO k=1,N(ng) |
| 19 | cff1=1.0_r8/(on_u(i,j)* & |
| 20 | & 0.5_r8*(z_w(i-1,j,k)-z_w(i-1,j,k-1)+ & |
| 21 | & z_w(i ,j,k)-z_w(i ,j,k-1))) |
| 22 | u(i,j,k,nnew)=SOURCES(ng)%Qsrc(is,k)*cff1 |
| 23 | END DO |
| 24 | ELSE IF (INT(SOURCES(ng)%Dsrc(is)).eq.1) THEN |
| 25 | DO k=1,N(ng) |
| 26 | cff1=1.0_r8/(om_v(i,j)* & |
| 27 | & 0.5_r8*(z_w(i,j-1,k)-z_w(i,j-1,k-1)+ & |
| 28 | & z_w(i,j ,k)-z_w(i,j ,k-1))) |
| 29 | v(i,j,k,nnew)=SOURCES(ng)%Qsrc(is,k)*cff1 |
| 30 | END DO |
| 31 | END IF |
| 32 | END IF |
| 33 | END DO |
| 34 | END IF |
| 35 | }}} |
| 36 | Notice that when **Dsrc(is) = 2**, no contribution is added to **u** and **v**. That is done as volume vertical influx in **omega.F**. |
9 | | ELSEIF (INT(SOURCES(ng)%Dsrc(is)).eq.1) |
10 | | |
11 | | with, implicitly, the Dsrc==2 is do nothing. |
12 | | |
13 | | Presently, Dsrc==2 sources get activated here as uv-sources. This is because logical LuvSrc(ng) is global, and the encompassing |
14 | | |
15 | | IF (LuvSrc(ng)) |
16 | | |
17 | | is true is ANY(LuvSrc), not specifically THIS source. |
18 | | |
| 38 | Propagated change to the **TLM**, **RPM**, and **ADM** versions of **step3d_uv.F**. |