Ignore:
Timestamp:
Feb 7, 2005, 4:47:11 PM (19 years ago)
Author:
Laurent Fairhead
Message:

Modifications pour le couplage carbone LOOP, PC
LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/IPSL-CM4_IPCC_patches/libf/phylmd/oasis.true

    r524 r589  
    2020c     INCLUDE "param.h"
    2121c
    22       INTEGER kastp, kexch, kstep,imjm
     22      INTEGER kastp, kexch, kstep,imjm,klon
    2323      INTEGER iparal(3)
    2424      INTEGER ifcpl, idt, info, imxtag, istep, jf
     25
     26c -- LOOP
     27c
     28#include "dimensions.h"
     29      INTEGER jjmp1
     30      PARAMETER (jjmp1=jjm+1-1/jjm)
     31#include "dimphy.h"
     32c      REAL zu10m(klon), zv10m(klon)
     33       REAL zwindsp(klon)
     34c
     35c -- LOOP
    2536c
    2637#include "param_cou.h"
     
    7182c         must be the same as (1) of the field  definition in namcouple:
    7283c
    73       cl_writ(1)='COSHFICE'
    74       cl_writ(2)='COSHFOCE'
    75       cl_writ(3)='CONSFICE'
    76       cl_writ(4)='CONSFOCE'
    77       cl_writ(5)='CODFLXDT'
     84      cl_writ(8)='COSHFICE'
     85      cl_writ(9)='COSHFOCE'
     86      cl_writ(10)='CONSFICE'
     87      cl_writ(11)='CONSFOCE'
     88      cl_writ(12)='CODFLXDT'
    7889c      cl_writ(6)='COICTEMP'
    79       cl_writ(6)='COTFSICE'
    80       cl_writ(7)='COTFSOCE'
    81       cl_writ(8)='COTOLPSU'
    82       cl_writ(9)='COTOSPSU'
    83       cl_writ(10)='CORUNCOA'
    84       cl_writ(11)='CORIVFLU'
    85       cl_writ(12)='COCALVIN'
     90      cl_writ(13)='COTFSICE'
     91      cl_writ(14)='COTFSOCE'
     92      cl_writ(15)='COTOLPSU'
     93      cl_writ(16)='COTOSPSU'
     94      cl_writ(17)='CORUNCOA'
     95      cl_writ(18)='CORIVFLU'
     96      cl_writ(19)='COCALVIN'
    8697c$$$      cl_writ(13)='COZOTAUX'
    8798c$$$      cl_writ(14)='COZOTAUV'
    8899c$$$      cl_writ(15)='COMETAUY'
    89100c$$$      cl_writ(16)='COMETAUU'
    90       cl_writ(13)='COTAUXXU'
    91       cl_writ(14)='COTAUYYU'
    92       cl_writ(15)='COTAUZZU'
    93       cl_writ(16)='COTAUXXV'
    94       cl_writ(17)='COTAUYYV'
    95       cl_writ(18)='COTAUZZV'
     101      cl_writ(1)='COTAUXXU'
     102      cl_writ(2)='COTAUYYU'
     103      cl_writ(3)='COTAUZZU'
     104      cl_writ(4)='COTAUXXV'
     105      cl_writ(5)='COTAUYYV'
     106      cl_writ(6)='COTAUZZV'
     107c -- LOOP
     108      cl_writ(7)='COWINDSP'
     109c -- LOOP
    96110c
    97111c     Define files name for fields exchanged from atmos to coupler,
     
    116130      cl_f_writ(17)='flxatmos'
    117131      cl_f_writ(18)='flxatmos'
     132c -- LOOP
     133      cl_f_writ(19)='flxatmos'
     134c -- LOOP
    118135
    119136c
     
    309326
    310327c $Id$
     328c -- LOOP
    311329      SUBROUTINE intocpl(kt, imjm, fsolice, fsolwat, fnsolice, fnsolwat,
    312330     $    fnsicedt, evice, evwat, lpre, spre, dirunoff, rivrunoff,
    313      $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v
    314      $    , last)
     331     $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v,
     332     $    windsp, last)
     333c -- LOOP
    315334c ======================================================================
    316335c S. Valcke (02/99) adapted From L.Z.X Li: this subroutine provides the
     
    320339c ======================================================================
    321340      IMPLICIT NONE
     341c -- LOOP
     342c
     343#include "dimensions.h"
     344      INTEGER jjmp1
     345      PARAMETER (jjmp1=jjm+1-1/jjm)
     346#include "dimphy.h"
     347c      REAL zu10m(klon), zv10m(klon)
     348       REAL zwindsp(klon)
     349c
     350c -- LOOP
     351c
     352
    322353      INTEGER kt, imjm
    323354c
     
    344375      REAL tauzz_u(imjm)
    345376      REAL tauzz_v(imjm)
     377c -- LOOP
     378       REAL windsp(imjm)
     379c -- LOOP
    346380      LOGICAL last
    347381c
     
    423457c         WRITE fields to files         
    424458          DO jf=1, jpflda2o1 + jpflda2o2
    425             IF (jf.eq.1)
     459            IF (jf.eq.8)
    426460     $          CALL locwrite(cl_writ(jf),fsolice, imjm,
    427461     $          file_unit_field(jf), ierror)
    428             IF (jf.eq.2)
     462            IF (jf.eq.9)
    429463     $          CALL locwrite(cl_writ(jf),fsolwat, imjm,
    430464     $          file_unit_field(jf), ierror)
    431             IF (jf.eq.3)
     465            IF (jf.eq.10)
    432466     $          CALL locwrite(cl_writ(jf),fnsolice, imjm,
    433467     $          file_unit_field(jf), ierror)
    434             IF (jf.eq.4)
     468            IF (jf.eq.11)
    435469     $          CALL locwrite(cl_writ(jf),fnsolwat, imjm,
    436470     $          file_unit_field(jf), ierror)
    437             IF (jf.eq.5)
     471            IF (jf.eq.12)
    438472     $          CALL locwrite(cl_writ(jf),fnsicedt, imjm,
    439473     $          file_unit_field(jf), ierror)
    440 c            IF (jf.eq.6)
     474c            IF (jf.eq.13)
    441475c     $          CALL locwrite(cl_writ(jf),ictemp, imjm,
    442476c     $          file_unit_field(jf), ierror)
    443             IF (jf.eq.6)
     477            IF (jf.eq.13)
    444478     $          CALL locwrite(cl_writ(jf),evice, imjm,
    445479     $          file_unit_field(jf), ierror)
    446             IF (jf.eq.7)
     480            IF (jf.eq.14)
    447481     $          CALL locwrite(cl_writ(jf),evwat, imjm,
    448482     $          file_unit_field(jf), ierror)
    449             IF (jf.eq.8)
     483            IF (jf.eq.15)
    450484     $          CALL locwrite(cl_writ(jf),lpre, imjm,
    451485     $          file_unit_field(jf), ierror)
    452             IF (jf.eq.9)
     486            IF (jf.eq.16)
    453487     $          CALL locwrite(cl_writ(jf),spre, imjm,
    454488     $          file_unit_field(jf), ierror)
    455             IF (jf.eq.10)
     489            IF (jf.eq.17)
    456490     $          CALL locwrite(cl_writ(jf),dirunoff, imjm,
    457491     $          file_unit_field(jf), ierror)
    458             IF (jf.eq.11)
     492            IF (jf.eq.18)
    459493     $          CALL locwrite(cl_writ(jf),rivrunoff, imjm,
    460494     $          file_unit_field(jf), ierror)
    461             IF (jf.eq.12)
     495            IF (jf.eq.19)
    462496     $          CALL locwrite(cl_writ(jf),calving, imjm,
    463497     $          file_unit_field(jf), ierror)
     
    474508c$$$     $          CALL locwrite(cl_writ(jf),tauyu, imjm,
    475509c$$$     $          file_unit_field(jf), ierror)
    476             IF (jf.eq.13)
     510            IF (jf.eq.1)
    477511     $          CALL locwrite(cl_writ(jf),tauxx_u, imjm,
    478512     $          file_unit_field(jf),ierror)
    479             IF (jf.eq.14)
     513            IF (jf.eq.2)
    480514     $          CALL locwrite(cl_writ(jf),tauyy_u, imjm,
    481515     $          file_unit_field(jf),ierror)
    482             IF (jf.eq.15)
     516            IF (jf.eq.3)
    483517     $          CALL locwrite(cl_writ(jf),tauzz_u, imjm,
    484518     $          file_unit_field(jf),ierror)
    485             IF (jf.eq.16)
     519            IF (jf.eq.4)
    486520     $          CALL locwrite(cl_writ(jf),tauxx_v, imjm,
    487521     $          file_unit_field(jf),ierror)
    488             IF (jf.eq.17)
     522            IF (jf.eq.5)
    489523     $          CALL locwrite(cl_writ(jf),tauyy_v, imjm,
    490524     $          file_unit_field(jf),ierror)
    491             IF (jf.eq.18)
     525            IF (jf.eq.6)
    492526     $          CALL locwrite(cl_writ(jf),tauzz_v, imjm,
    493527     $          file_unit_field(jf),ierror)
     528c -- LOOP
     529            IF (jf.eq.7)
     530     $          CALL locwrite(cl_writ(jf),windsp, imjm,
     531     $         file_unit_field(jf),ierror)
     532c -- LOOP
     533
    494534          END DO
    495535C
     
    521561          DO jn=1, jpflda2o1 + jpflda2o2
    522562C           
    523           IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
    524           IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
    525           IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
    526           IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
    527           IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
     563          IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
     564          IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
     565         IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
     566         IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
     567         IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
    528568c          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, ictemp, info)
    529           IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
    530           IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
    531           IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
    532           IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
    533           IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
    534           IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
    535           IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
     569          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
     570          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
     571          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
     572          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
     573          IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
     574          IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
     575          IF (jn.eq.19) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
    536576c$$$          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxu, info)
    537577c$$$          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauxv, info)
    538578c$$$          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauyv, info)
    539579c$$$          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauyu, info)
    540           IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
    541           IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
    542           IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
    543           IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
    544           IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
    545           IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
    546          
     580          IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
     581          IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
     582          IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
     583          IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
     584          IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
     585          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
     586c -- LOOP
     587          IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, windsp, info)
     588c -- LOOP         
    547589            IF (info .NE. CLIM_Ok) THEN
    548590                WRITE (nuout,*) 'STEP : Pb giving ',cl_writ(jn), ':',jn
Note: See TracChangeset for help on using the changeset viewer.