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 3372 for branches/2012/dev_r3337_NOCS10_ICB/NEMOGCM/NEMO/OPA_SRC/ICB/icbclv.F90 – NEMO

Ignore:
Timestamp:
2012-04-30T12:50:36+02:00 (12 years ago)
Author:
sga
Message:

NEMO branch dev_r3337_NOCS10_ICB: change all routine names and create more Gurvanistic havoc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_r3337_NOCS10_ICB/NEMOGCM/NEMO/OPA_SRC/ICB/icbclv.F90

    r3370 r3372  
    1212   !!---------------------------------------------------------------------- 
    1313   !!---------------------------------------------------------------------- 
    14    !!   accumulate_calving : 
    15    !!   icb_gen            : generate test icebergs 
     14   !!   icb_clv_flx   : transfer input flux of ice into iceberg classes 
     15   !!   icb_clv       : calve icebergs from stored ice 
    1616   !!---------------------------------------------------------------------- 
    1717   USE par_oce        ! NEMO parameters 
     
    2828   PRIVATE 
    2929 
    30    PUBLIC   accumulate_calving  ! routine called in icbrun.F90 module 
    31    PUBLIC   calve_icebergs      ! routine called in icbrun.F90 module 
     30   PUBLIC   icb_clv_flx  ! routine called in icbrun.F90 module 
     31   PUBLIC   icb_clv      ! routine called in icbrun.F90 module 
    3232 
    3333   !!---------------------------------------------------------------------- 
     
    3838CONTAINS 
    3939 
    40    SUBROUTINE accumulate_calving( kt ) 
     40   SUBROUTINE icb_clv_flx( kt ) 
    4141      !!---------------------------------------------------------------------- 
    42       !!                 ***  ROUTINE accumulate_calving  *** 
     42      !!                 ***  ROUTINE icb_clv_flx  *** 
    4343      !! 
    4444      !! ** Purpose :   ? 
     
    9595      berg_grid%tmp(:,:) = berg_dt * berg_grid%calving_hflx(:,:) * e1e2t(:,:) * tmask_i(:,:) 
    9696      berg_grid%stored_heat (:,:) = berg_grid%stored_heat (:,:) + berg_grid%tmp(:,:) 
    97       CALL incoming_budget( kt,  zcalving_used, berg_grid%tmp ) 
     97      CALL icb_dia_income( kt,  zcalving_used, berg_grid%tmp ) 
    9898      ! 
    99    END SUBROUTINE accumulate_calving 
     99   END SUBROUTINE icb_clv_flx 
    100100 
    101    SUBROUTINE calve_icebergs() 
     101   SUBROUTINE icb_clv() 
    102102      !!---------------------------------------------------------------------- 
    103       !!                 ***  ROUTINE calve_icebergs  *** 
     103      !!                 ***  ROUTINE icb_clv  *** 
    104104      !! 
    105       !! ** Purpose :   This seems to be the routine that takes a stored ice field and calves to the ocean, 
    106       !!                so I assume that the gridded array stored_ice has only non-zero entries at selected 
     105      !! ** Purpose :   This routine takes a stored ice field and calves to the ocean, 
     106      !!                so the gridded array stored_ice has only non-zero entries at selected 
    107107      !!                wet points adjacent to known land based calving points 
    108108      !! 
    109109      !! ** method  : - Look at each grid point and see if there's enough for each size class to calve 
    110110      !!                If there is, a new iceberg is calved.  This happens in the order determined by 
    111       !!                the class definition arrays (largest first?) 
     111      !!                the class definition arrays (which in the default case is smallest first) 
    112112      !!                Note that only the non-overlapping part of the processor where icebergs are allowed 
    113113      !!                is considered 
     
    150150                  newpt%heat_density = berg_grid%stored_heat(ji,jj) / berg_grid%stored_ice(ji,jj,jn)   ! This is in J/kg 
    151151                  ! 
    152                   CALL increment_kounter() 
     152                  CALL icb_utl_incr() 
    153153                  newberg%number(:) = num_bergs(:) 
    154154                  ! 
    155                   CALL add_new_berg_to_list( newberg, newpt ) 
     155                  CALL icb_utl_add( newberg, newpt ) 
    156156                  ! 
    157157                  zcalved_to_berg = rn_initial_mass(jn) * rn_mass_scaling(jn)           ! Units of kg 
     
    165165                  icnt = icnt + 1 
    166166                  ! 
    167                   CALL calving_budget(ji, jj, jn,  zcalved_to_berg, zheat_to_berg ) 
     167                  CALL icb_dia_calve(ji, jj, jn,  zcalved_to_berg, zheat_to_berg ) 
    168168               END DO 
    169169               icntmax = MAX( icntmax, icnt ) 
     
    177177      CALL lbc_lnk( berg_grid%stored_heat, 'T', 1._wp ) 
    178178      ! 
    179       IF( nn_verbose_level > 0 .AND. icntmax > 1 )   WRITE(numicb,*) 'calve_icebergs: icnt=', icnt,' on', narea 
     179      IF( nn_verbose_level > 0 .AND. icntmax > 1 )   WRITE(numicb,*) 'icb_clv: icnt=', icnt,' on', narea 
    180180      ! 
    181    END SUBROUTINE  calve_icebergs 
     181   END SUBROUTINE  icb_clv 
    182182 
    183183   !!====================================================================== 
Note: See TracChangeset for help on using the changeset viewer.