New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3873 – NEMO

Changeset 3873


Ignore:
Timestamp:
2013-04-15T14:36:02+02:00 (9 years ago)
Author:
clevy
Message:

Bugfixes in SAS_SRC : diawri.F90 and sbcssm.F90, see ticket #1077

Location:
trunk/NEMOGCM/NEMO/SAS_SRC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/SAS_SRC/diawri.F90

    r3331 r3873  
    259259         CALL histdef( nid_T, "sowaflup", "Net Upward Water Flux"              , "Kg/m2/s",   &  ! (emp-rnf) 
    260260            &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
    261          CALL histdef( nid_T, "sowaflcd", "concentration/dilution water flux"  , "kg/m2/s",   &  ! (emps-rnf) 
    262             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     261         CALL histdef( nid_T, "sosfldow", "downward salt flux"                 , "PSU/m2/s",  &  ! (sfx) 
     262             &         jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
    263263         CALL histdef( nid_T, "sohefldo", "Net Downward Heat Flux"             , "W/m2"   ,   &  ! qns + qsr 
    264264            &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     
    309309      CALL histwrite( nid_T, "sst_m", it, sst_m, ndim_hT, ndex_hT )   ! sea surface temperature 
    310310      CALL histwrite( nid_T, "sss_m", it, sss_m, ndim_hT, ndex_hT )   ! sea surface salinity 
    311       CALL histwrite( nid_T, "sowaflup", it, emp   , ndim_hT, ndex_hT )   ! upward water flux 
    312       CALL histwrite( nid_T, "sowaflcd", it, emps  , ndim_hT, ndex_hT )   ! c/d water flux 
     311      CALL histwrite( nid_T, "sowaflup", it, (emp - rnf )  , ndim_hT, ndex_hT )   ! upward water flux 
     312      CALL histwrite( nid_T, "sosfldow", it, sfx           , ndim_hT, ndex_hT )   ! downward salt flux  
     313                                                                                  ! (includes virtual salt flux beneath ice  
     314                                                                                  ! in linear free surface case) 
     315 
    313316      CALL histwrite( nid_T, "sohefldo", it, qns + qsr     , ndim_hT, ndex_hT )   ! total heat flux 
    314317      CALL histwrite( nid_T, "soshfldo", it, qsr           , ndim_hT, ndex_hT )   ! solar heat flux 
  • trunk/NEMOGCM/NEMO/SAS_SRC/sbcssm.F90

    r3364 r3873  
    8181       
    8282      ! 
     83      IF (kt == nn_it000 ) CALL sbc_ssm_init() 
     84 
    8385      IF( nn_timing == 1 )  CALL timing_start( 'sbc_ssm') 
    8486 
     
    100102      tsn(:,:,1,jp_tem) = sst_m(:,:) 
    101103      tsn(:,:,1,jp_sal) = sss_m(:,:) 
     104      IF ( nn_ice == 1 ) THEN 
     105         tsb(:,:,1,jp_tem) = sst_m(:,:) 
     106         tsb(:,:,1,jp_sal) = sss_m(:,:) 
     107      ENDIF 
    102108      ub (:,:,1       ) = ssu_m(:,:) 
    103109      vb (:,:,1       ) = ssv_m(:,:) 
     
    135141      TYPE(FLD_N) :: sn_usp, sn_vsp, sn_ssh 
    136142      ! 
    137       NAMELIST/namsbc_ssm/cn_dir, ln_3d_uv, sn_tem, sn_sal, sn_usp, sn_vsp, sn_ssh 
     143      NAMELIST/namsbc_sas/cn_dir, ln_3d_uv, sn_tem, sn_sal, sn_usp, sn_vsp, sn_ssh 
    138144 
    139145      !!---------------------------------------------------------------------- 
     
    151157      ! 
    152158      REWIND( numnam )                          ! read in namlist namsbc_ssm 
    153       READ  ( numnam, namsbc_ssm ) 
     159      READ  ( numnam, namsbc_sas ) 
    154160      !                                         ! store namelist information in an array 
    155161      !                                         ! Control print 
    156162      IF(lwp) THEN 
    157163         WRITE(numout,*) 
    158          WRITE(numout,*) 'sbc_ssm : standalone surface scheme ' 
     164         WRITE(numout,*) 'sbc_sas : standalone surface scheme ' 
    159165         WRITE(numout,*) '~~~~~~~~~~~ ' 
    160          WRITE(numout,*) '   Namelist namsbc_ssm' 
     166         WRITE(numout,*) '   Namelist namsbc_sas' 
    161167         WRITE(numout,*) 
    162168      ENDIF 
     
    277283      ALLOCATE( ub(jpi,jpj,1)     , STAT=ierr1 ) 
    278284      ALLOCATE( vb(jpi,jpj,1)     , STAT=ierr2 ) 
    279       ierr = ierr0 + ierr1 + ierr2 
     285      IF ( nn_ice == 1 ) ALLOCATE( tsb(jpi,jpj,1,jpm), STAT=ierr3 ) 
     286      ierr = ierr0 + ierr1 + ierr2 + ierr3 
    280287      IF( ierr > 0 ) THEN 
    281288         CALL ctl_stop('sbc_ssm_init: unable to allocate surface arrays') 
Note: See TracChangeset for help on using the changeset viewer.