Changeset 5223


Ignore:
Timestamp:
2015-04-17T14:31:07+02:00 (6 years ago)
Author:
smasson
Message:

dev_r5218_CNRS17_coupling: keep exact same results with old version

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5218_CNRS17_coupling/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssm.F90

    r5220 r5223  
    6262       
    6363      !                                        !* surface T-, U-, V- ocean level variables (T, S, depth, velocity) 
    64       DO jj = 1, jpj 
    65          DO ji = 1, jpi 
    66             zts(ji,jj,jp_tem) = tsb(ji,jj,mikt(ji,jj),jp_tem) 
    67             zts(ji,jj,jp_sal) = tsb(ji,jj,mikt(ji,jj),jp_sal) 
     64      IF( nn_components == jp_iam_opa ) THEN 
     65         DO jj = 1, jpj 
     66            DO ji = 1, jpi 
     67               zts(ji,jj,jp_tem) = tsb(ji,jj,mikt(ji,jj),jp_tem) 
     68               zts(ji,jj,jp_sal) = tsb(ji,jj,mikt(ji,jj),jp_sal) 
     69            END DO 
    6870         END DO 
    69       END DO 
     71      ELSE 
     72         DO jj = 1, jpj 
     73            DO ji = 1, jpi 
     74               zts(ji,jj,jp_tem) = tsb(ji,jj,mikt(ji,jj),jp_tem) 
     75               zts(ji,jj,jp_sal) = tsb(ji,jj,mikt(ji,jj),jp_sal) 
     76            END DO 
     77         END DO 
     78      ENDIF 
    7079      zub(:,:)        = ub (:,:,1       ) 
    7180      zvb(:,:)        = vb (:,:,1       ) 
     
    8493         sss_m(:,:) = zts(:,:,jp_sal) 
    8594         !                          ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 
    86          IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
    87          ELSE                    ;   ssh_m(:,:) = sshb(:,:) 
     95         IF( nn_components == jp_iam_opa ) THEN 
     96            IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
     97            ELSE                    ;   ssh_m(:,:) = sshb(:,:) 
     98            ENDIF 
     99         ELSE 
     100            IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = sshn(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
     101            ELSE                    ;   ssh_m(:,:) = sshn(:,:) 
     102            ENDIF 
    88103         ENDIF 
    89104         ! 
     
    104119            sss_m(:,:) = zcoef * zts(:,:,jp_sal) 
    105120            !                          ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 
    106             IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = zcoef * ( sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) ) 
    107             ELSE                    ;   ssh_m(:,:) = zcoef * sshb(:,:) 
     121            IF( nn_components == jp_iam_opa ) THEN 
     122               IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = zcoef * ( sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) ) 
     123               ELSE                    ;   ssh_m(:,:) = zcoef * sshb(:,:) 
     124               ENDIF 
     125            ELSE 
     126               IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = zcoef * ( sshn(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) ) 
     127               ELSE                    ;   ssh_m(:,:) = zcoef * sshn(:,:) 
     128               ENDIF 
    108129            ENDIF 
    109130            ! 
     
    129150         sss_m(:,:) = sss_m(:,:) + zts(:,:,jp_sal) 
    130151         !                          ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 
    131          IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
    132          ELSE                    ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) 
     152         IF( nn_components == jp_iam_opa ) THEN 
     153            IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
     154            ELSE                    ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) 
     155            ENDIF 
     156         ELSE 
     157            IF( ln_apr_dyn ) THEN   ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 
     158            ELSE                    ;   ssh_m(:,:) = ssh_m(:,:) + sshb(:,:) 
     159            ENDIF 
    133160         ENDIF 
    134161         ! 
Note: See TracChangeset for help on using the changeset viewer.