/[lmdze]/trunk/dyn3d/addfi.f
ViewVC logotype

Diff of /trunk/dyn3d/addfi.f

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

revision 82 by guez, Wed Mar 5 14:57:53 2014 UTC revision 91 by guez, Wed Mar 26 17:18:58 2014 UTC
# Line 4  module addfi_m Line 4  module addfi_m
4    
5  contains  contains
6    
7    SUBROUTINE addfi(ucov, vcov, teta, q, ps, dufi, dvfi, dtetafi, dqfi, dpfi)    SUBROUTINE addfi(ucov, vcov, teta, q, dufi, dvfi, dtetafi, dqfi)
8    
9      ! From dyn3d/addfi.F, v 1.1.1.1 2004/05/19 12:53:06      ! From dyn3d/addfi.F, v 1.1.1.1 2004/05/19 12:53:06
10    
# Line 22  contains Line 22  contains
22      ! potential temperature      ! potential temperature
23    
24      real, intent(inout):: q((iim + 1) * (jjm + 1), llm, nqmx)      real, intent(inout):: q((iim + 1) * (jjm + 1), llm, nqmx)
     real, intent(inout):: ps((iim + 1) * (jjm + 1))  
25    
26      ! Tendencies:      ! Tendencies:
27      REAL, intent(in):: dufi((iim + 1) * (jjm + 1), llm)      REAL, intent(in):: dufi((iim + 1) * (jjm + 1), llm)
28      REAL, intent(in):: dvfi((iim + 1) * jjm, llm)      REAL, intent(in):: dvfi((iim + 1) * jjm, llm)
29      real, intent(in):: dtetafi((iim + 1) * (jjm + 1), llm)      real, intent(in):: dtetafi((iim + 1) * (jjm + 1), llm)
30      REAL, intent(in):: dqfi((iim + 1) * (jjm + 1), llm, nqmx)      REAL, intent(in):: dqfi((iim + 1) * (jjm + 1), llm, nqmx)
     REAL, intent(in):: dpfi((iim + 1) * (jjm + 1))  
31    
32      ! Local variables :      ! Local variables :
33      REAL xpn(iim), xps(iim), tpn, tps      REAL xpn(iim), xps(iim), tpn, tps
# Line 61  contains Line 59  contains
59      ENDDO      ENDDO
60    
61      vcov = vcov + dvfi * dtphys      vcov = vcov + dvfi * dtphys
     ps = ps + dpfi * dtphys  
62    
63      DO iq = 1, 2      DO iq = 1, 2
64         DO k = 1, llm         DO k = 1, llm
# Line 81  contains Line 78  contains
78         ENDDO         ENDDO
79      ENDDO      ENDDO
80    
     DO ij = 1, iim  
        xpn(ij) = aire(ij) * ps(ij)  
        xps(ij) = aire(ij+(iim + 1) * jjm) * ps(ij+(iim + 1) * jjm)  
     ENDDO  
     tpn = SUM(xpn)/apoln  
     tps = SUM(xps)/apols  
   
     DO ij = 1, iim + 1  
        ps(ij) = tpn  
        ps(ij+(iim + 1) * jjm) = tps  
     ENDDO  
   
81      DO iq = 1, nqmx      DO iq = 1, nqmx
82         DO k = 1, llm         DO k = 1, llm
83            DO ij = 1, iim            DO ij = 1, iim

Legend:
Removed from v.82  
changed lines
  Added in v.91

  ViewVC Help
Powered by ViewVC 1.1.21