/[MITgcm]/MITgcm/pkg/fizhi/fizhi_gwdrag.F
ViewVC logotype

Diff of /MITgcm/pkg/fizhi/fizhi_gwdrag.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.4 by molod, Wed May 25 19:27:19 2005 UTC revision 1.6 by molod, Tue May 31 20:14:37 2005 UTC
# Line 213  c -------------------------------------- Line 213  c --------------------------------------
213        dragv(i,j,L) = sign( min(0.006,abs(dragv(i,j,L))),dragv(i,j,L) )        dragv(i,j,L) = sign( min(0.006,abs(dragv(i,j,L))),dragv(i,j,L) )
214        dragt(i,j,L) = -( uz(i,j,L)*dragu(i,j,L)+vz(i,j,L)*dragv(i,j,L) )        dragt(i,j,L) = -( uz(i,j,L)*dragu(i,j,L)+vz(i,j,L)*dragv(i,j,L) )
215       .                                                         *cpinv       .                                                         *cpinv
216  c      dudt(i,j,L) = dudt(i,j,L) + dragu(i,j,L)         dudt(i,j,L) = dudt(i,j,L) + dragu(i,j,L)
217  c      dvdt(i,j,L) = dvdt(i,j,L) + dragv(i,j,L)         dvdt(i,j,L) = dvdt(i,j,L) + dragv(i,j,L)
218  c      dtdt(i,j,L) = dtdt(i,j,L) + dragt(i,j,L)/pkz(i,j,L)         dtdt(i,j,L) = dtdt(i,j,L) + dragt(i,j,L)*pz(i,j)/pkz(i,j,L)
219        enddo        enddo
220        enddo        enddo
221        enddo        enddo
# Line 414  c ------------------------- Line 414  c -------------------------
414        do l = 2,Lm        do l = 2,Lm
415        do i = 1,irun        do i = 1,irun
416         roiave  = ( 1./ro(i,L-1) + 1./ro(i,L) )*0.5         roiave  = ( 1./ro(i,L-1) + 1./ro(i,L) )*0.5
417         dz(i,L) = agrav*roiave*( pl(i,Lm+1-L-1)-pl(i,Lm+1-L) )         dz(i,L) = agrav*roiave*( pl(i,Lm+2-L)-pl(i,Lm+1-L) )
418        enddo        enddo
419        enddo        enddo
420    
# Line 433  c --------------------------------- Line 433  c ---------------------------------
433    
434        do  i = 1,irun        do  i = 1,irun
435        do  L = 1,nbase(i)-1        do  L = 1,nbase(i)-1
436         robar(i) = robar(i) + ro(i,L) * (ple(i,Lm+1-L)-ple(i,Lm+1-L+1))         robar(i) = robar(i) + ro(i,L) * (ple(i,Lm+2-L)-ple(i,Lm+1-L))
437         ubar(i) = ubar(i) + u(i,Lm+1-L) * (ple(i,Lm+1-L)-ple(i,Lm+1-L+1))         ubar(i) = ubar(i) + u(i,Lm+1-L) * (ple(i,Lm+2-L)-ple(i,Lm+1-L))
438         vbar(i) = vbar(i) + v(i,Lm+1-L) * (ple(i,Lm+1-L)-ple(i,Lm+1-L+1))         vbar(i) = vbar(i) + v(i,Lm+1-L) * (ple(i,Lm+2-L)-ple(i,Lm+1-L))
439        enddo        enddo
440        enddo        enddo
441    
442        do  i = 1,irun        do  i = 1,irun
443         robar(i) = robar(i)/(ple(i,Lm)-ple(i,Lm+1-nbase(i))) * 100.0         robar(i) = robar(i)/(ps(i)-ple(i,Lm+1-nbase(i)-1)) * 100.0
444         ubar(i) = ubar(i)/(ple(i,Lm)-ple(i,Lm+1-nbase(i)))         ubar(i) = ubar(i)/(ps(i)-ple(i,Lm+1-nbase(i)-1))
445         vbar(i) = vbar(i)/(ple(i,Lm)-ple(i,Lm+1-nbase(i)))         vbar(i) = vbar(i)/(ps(i)-ple(i,Lm+1-nbase(i)-1))
446    
447         speed(i) = sqrt( ubar(i)*ubar(i) + vbar(i)*vbar(i) )         speed(i) = sqrt( ubar(i)*ubar(i) + vbar(i)*vbar(i) )
448         ang(i) = atan2(vbar(i),ubar(i))         ang(i) = atan2(vbar(i),ubar(i))
# Line 469  c --------------------------- Line 469  c ---------------------------
469        enddo        enddo
470        do i = 1,irun        do i = 1,irun
471        do l = 2,nbase(i)        do l = 2,nbase(i)
472         nbar(i) = nbar(i) + bv(i,L)*(pl(i,Lm+1-L-1)-pl(i,Lm+1-L))         nbar(i) = nbar(i) + bv(i,L)*(pl(i,Lm+2-L)-pl(i,Lm+1-L))
473        enddo        enddo
474        enddo        enddo
475    
# Line 658  C ************************************** Line 658  C **************************************
658    
659        do i = 1,irun        do i = 1,irun
660        do l = nthin(i)+1,Lm        do l = nthin(i)+1,Lm
661         coef = -grav*ple(i,Lm+1)/dpres(i,Lm+1-L)         coef = -grav*ps(i)/dpres(i,Lm+1-L)
662         dudt(i,Lm+1-L) = coef*(xtens(i,L+1)-xtens(i,L))         dudt(i,Lm+1-L) = coef*(xtens(i,L+1)-xtens(i,L))
663         dvdt(i,Lm+1-L) = coef*(ytens(i,L+1)-ytens(i,L))         dvdt(i,Lm+1-L) = coef*(ytens(i,L+1)-ytens(i,L))
664        enddo        enddo
# Line 667  C ************************************** Line 667  C **************************************
667  c Momentum change near the surface  c Momentum change near the surface
668  c --------------------------------  c --------------------------------
669        do i = 1,irun        do i = 1,irun
670         coef = grav*ple(i,Lm+1)/(ple(i,Lm+1-nthin(i))-ple(i,Lm+1))         coef = grav*ps(i)/(ple(i,Lm+1-nthin(i))-ple(i,Lm+1))
671         dudt(i,Lm) = coef*(xtens(i,nthin(i)+1)-xtens(i,1))         dudt(i,Lm) = coef*(xtens(i,nthin(i)+1)-xtens(i,1))
672         dvdt(i,Lm) = coef*(ytens(i,nthin(i)+1)-ytens(i,1))         dvdt(i,Lm) = coef*(ytens(i,nthin(i)+1)-ytens(i,1))
673        enddo        enddo

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.22