Changeset 894


Ignore:
Timestamp:
2008-04-21T14:36:04+02:00 (13 years ago)
Author:
rblod
Message:

Correct remaining bugs in LIM3 implementation, see ticket #71

Location:
trunk/NEMO/LIM_SRC_3
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/LIM_SRC_3/ice.F90

    r888 r894  
    455455   !!-------------------------------------------------------------------------- 
    456456   ! REMOVE 
    457    INTEGER(wp), PUBLIC, DIMENSION(jpl)                ::   &  !: 
     457   INTEGER, PUBLIC, DIMENSION(jpl)                ::   &  !: 
    458458      ice_types      !: Vector making the connection between types and categories 
    459459 
    460    INTEGER(wp), PUBLIC, DIMENSION(jpm,2)              ::   &  !: 
     460   INTEGER, PUBLIC, DIMENSION(jpm,2)              ::   &  !: 
    461461      ice_cat_bounds !: Matrix containing the integer upper and  
    462462                     !: lower boundaries of ice thickness categories 
    463463 
    464464   ! REMOVE 
    465    INTEGER(wp), PUBLIC, DIMENSION(jpm)                ::   &  !: 
     465   INTEGER, PUBLIC, DIMENSION(jpm)                ::   &  !: 
    466466      ice_ncat_types !: Vector containing the number of thickness categories in each ice type 
    467467 
  • trunk/NEMO/LIM_SRC_3/limdia.F90

    r888 r894  
    421421       ! oututs on file ice_evolu     
    422422!MV      IF( MOD( numit , ninfo ) == 0 ) THEN 
    423           WRITE(90,fmtw) ( titvar(jv), vinfom(jv)/naveg, jv = 1, nvinfo ) 
     423          WRITE(numevo_ice,fmtw) ( titvar(jv), vinfom(jv)/naveg, jv = 1, nvinfo ) 
    424424          naveg = 0 
    425425          DO jv = 1, nvinfo 
     
    453453 
    454454       CHARACTER(len=jpchinf) ::   titinf 
     455       CHARACTER(len=50)      ::   clname 
    455456       !!------------------------------------------------------------------- 
    456457 
     
    576577 
    577578       ! opening  "ice_evolu" file 
     579       clname = 'ice.evolu' 
    578580       irecl = ( jpchinf + 1 ) * nvinfo  
    579        OPEN( 90, file='ice.evolu', status='unknown', RECL = irecl) 
    580        OPEN( 90, file='ice.evolu', status='unknown') 
     581       CALL ctlopn( numevo_ice, clname, 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', 
     582          &         irecl, numout, lwp, 1 ) 
    581583 
    582584       !- ecriture de 2 lignes d''entete : 
    583        WRITE(90,1000) fmtr, fmtw, fmtitr, nvinfo, ntot, 0, nfrinf 
     585       WRITE(numevo_ice,1000) fmtr, fmtw, fmtitr, nvinfo, ntot, 0, nfrinf 
    584586       zxx0 = 0.001 * REAL(ninfo) 
    585587       zxx1 = 0.001 * REAL(ndeb) 
    586        WRITE(90,1111) REAL(jpchinf), 0., zxx1, zxx0, 0., 0., 0 
     588       WRITE(numevo_ice,1111) REAL(jpchinf), 0., zxx1, zxx0, 0., 0., 0 
    587589 
    588590       !- ecriture de 2 lignes de titre : 
    589        WRITE(90,'(A,I8,A,I8,A,I5)')                                      & 
     591       WRITE(numevo_ice,'(A,I8,A,I8,A,I5)')                                      & 
    590592          'Evolution chronologique - Experience '//cexper   & 
    591593          //'   de', ndeb, ' a', nferme, ' pas', ninfo 
    592        WRITE(90,fmtitr) ( titvar(jv), jv = 1, nvinfo ) 
     594       WRITE(numevo_ice,fmtitr) ( titvar(jv), jv = 1, nvinfo ) 
    593595 
    594596 
  • trunk/NEMO/LIM_SRC_3/limitd_me.F90

    r888 r894  
    625625               DO ji = 1, jpi 
    626626 
    627                   IF                                                           & 
    628                   (       ( a_i(ji,jj,jl)    .GT. epsi11 )                     & 
     627                  IF(     ( a_i(ji,jj,jl)    .GT. epsi11 )                     & 
    629628                    .AND. ( athorn(ji,jj,jl) .GT. 0.0    ) ) THEN 
    630629                     hi = v_i(ji,jj,jl) / a_i(ji,jj,jl) 
  • trunk/NEMO/LIM_SRC_3/limupdate.F90

    r888 r894  
    942942!------------ 
    943943 
    944 !RB had to split the loop for mpp reproducibility, why ??? 
    945       DO jj = 1, jpj 
    946          DO ji = 1, jpim1 
     944      DO jj = 2, jpjm1 
     945         DO ji = fs_2, fs_jpim1 
    947946            IF ( at_i(ji,jj) .EQ. 0.0 ) THEN ! what to do if there is no ice 
    948                ! mask u 
    949947               IF ( at_i(ji+1,jj) .EQ. 0.0 ) u_ice(ji,jj)   = 0.0 ! right side 
    950             ENDIF 
    951          END DO 
    952       END DO 
    953       DO jj = 1, jpj  
    954          DO ji = 2, jpi 
    955             IF ( at_i(ji,jj) .EQ. 0.0 ) THEN ! what to do if there is no ice 
    956                ! mask u 
    957948               IF ( at_i(ji-1,jj) .EQ. 0.0 ) u_ice(ji-1,jj) = 0.0 ! left side 
    958             ENDIF 
    959          END DO 
    960       END DO 
    961       DO jj = 1, jpj - 1 
    962          DO ji = 1, jpi 
    963             IF ( at_i(ji,jj) .EQ. 0.0 ) THEN ! what to do if there is no ice 
    964                ! mask u 
    965949               IF ( at_i(ji,jj+1) .EQ. 0.0 ) v_ice(ji,jj)   = 0.0 ! upper side 
    966             ENDIF 
    967          END DO 
    968       END DO 
    969       DO jj = 2, jpj  
    970          DO ji = 1, jpi 
    971             IF ( at_i(ji,jj) .EQ. 0.0 ) THEN ! what to do if there is no ice 
    972                ! mask u 
    973950               IF ( at_i(ji,jj-1) .EQ. 0.0 ) v_ice(ji-1,jj) = 0.0 ! bottom side 
    974951            ENDIF 
Note: See TracChangeset for help on using the changeset viewer.