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/icbini.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/icbini.F90

    r3371 r3372  
    1212   !!---------------------------------------------------------------------- 
    1313   !!---------------------------------------------------------------------- 
    14    !!   icb_init      : initialise icebergs 
    15    !!   icb_gen       : generate test icebergs 
    16    !!   icb_nam       : read iceberg namelist 
     14   !!   icb_init     : initialise icebergs 
     15   !!   icb_ini_gen  : generate test icebergs 
     16   !!   icb_nam      : read iceberg namelist 
    1717   !!---------------------------------------------------------------------- 
    1818   USE dom_oce        ! ocean domain 
     
    3434 
    3535   PUBLIC   icb_init  ! routine called in nemogcm.F90 module 
    36    PUBLIC   icb_gen   ! routine called in icbclv.F90 module 
    3736 
    3837   CHARACTER(len=100) ::   cn_dir = './'   ! Root directory for location of icb files 
     
    244243 
    245244      IF( .NOT.ln_rstart ) THEN 
    246          IF( nn_test_icebergs > 0 )   CALL icb_gen() 
     245         IF( nn_test_icebergs > 0 )   CALL icb_ini_gen() 
    247246      ELSE 
    248247         IF( nn_test_icebergs > 0 ) THEN 
    249             CALL icb_gen() 
     248            CALL icb_ini_gen() 
    250249         ELSE 
    251             CALL icebergs_read_restart() 
    252              l_restarted_bergs = .TRUE. 
    253          ENDIF 
    254       ENDIF 
    255       ! 
    256       IF( nn_sample_rate .GT. 0 ) CALL traj_init( nitend ) 
    257       ! 
    258       CALL icb_budget_init() 
    259       ! 
    260       IF( nn_verbose_level >= 2 )   CALL print_bergs('icb_init, initial status', nit000-1) 
     250            CALL icb_rst_read() 
     251            l_restarted_bergs = .TRUE. 
     252         ENDIF 
     253      ENDIF 
     254      ! 
     255      IF( nn_sample_rate .GT. 0 ) CALL icb_trj_init( nitend ) 
     256      ! 
     257      CALL icb_dia_init() 
     258      ! 
     259      IF( nn_verbose_level >= 2 )   CALL icb_utl_print('icb_init, initial status', nit000-1) 
    261260      ! 
    262261   END SUBROUTINE icb_init 
    263262 
    264    SUBROUTINE icb_gen() 
    265       !!---------------------------------------------------------------------- 
    266       !!                  ***  ROUTINE icb_gen  *** 
     263   SUBROUTINE icb_ini_gen() 
     264      !!---------------------------------------------------------------------- 
     265      !!                  ***  ROUTINE icb_ini_gen  *** 
    267266      !! 
    268267      !! ** Purpose :   iceberg generation 
    269268      !! 
    270       !! ** Method  : - blah blah 
     269      !! ** Method  : - at each grid point of the test box supplied in the namelist 
     270      !!                generate an iceberg in one class determined by the value of 
     271      !!                parameter nn_test_icebergs 
    271272      !!---------------------------------------------------------------------- 
    272273      INTEGER                         ::   ji, jj, ibergs 
     
    301302               localpt%xi = REAL( nimpp+ji-1, wp ) 
    302303               localpt%yj = REAL( njmpp+jj-1, wp ) 
    303                localpt%lon = bilin(glamt, localpt%xi, localpt%yj, 'T', 0, 0 ) 
    304                localpt%lat = bilin(gphit, localpt%xi, localpt%yj, 'T', 0, 0 ) 
     304               localpt%lon = icb_utl_bilin(glamt, localpt%xi, localpt%yj, 'T', 0, 0 ) 
     305               localpt%lat = icb_utl_bilin(gphit, localpt%xi, localpt%yj, 'T', 0, 0 ) 
    305306               localpt%mass      = rn_initial_mass     (iberg) 
    306307               localpt%thickness = rn_initial_thickness(iberg) 
     
    313314               localpt%uvel = 0._wp 
    314315               localpt%vvel = 0._wp 
    315                CALL increment_kounter() 
     316               CALL icb_utl_incr() 
    316317               localberg%number(:) = num_bergs(:) 
    317                call add_new_berg_to_list(localberg, localpt) 
     318               call icb_utl_add(localberg, localpt) 
    318319            ENDIF 
    319320         END DO 
    320321      END DO 
    321322      ! 
    322       ibergs = count_bergs() 
     323      ibergs = icb_utl_count() 
    323324      IF( lk_mpp ) CALL mpp_sum(ibergs) 
    324       WRITE(numicb,'(a,i6,a)') 'diamonds, icb_gen: ',ibergs,' were generated' 
    325       ! 
    326    END SUBROUTINE icb_gen 
     325      WRITE(numicb,'(a,i6,a)') 'diamonds, icb_ini_gen: ',ibergs,' were generated' 
     326      ! 
     327   END SUBROUTINE icb_ini_gen 
    327328 
    328329   SUBROUTINE icb_nam 
     
    381382      IF( zfact < 1._wp ) THEN 
    382383         IF( zfact <= 0._wp ) THEN 
    383             CALL ctl_stop( 'icb_init: sum of berg distribution equal to zero' ) 
     384            CALL ctl_stop( 'icb_nam: sum of berg distribution equal to zero' ) 
    384385         ELSE 
    385386            rn_distribution(:) = rn_distribution(:) / zfact 
    386             CALL ctl_warn( 'icb_init: sum of berg input distribution not equal to one and so RESCALED' ) 
     387            CALL ctl_warn( 'icb_nam: sum of berg input distribution not equal to one and so RESCALED' ) 
    387388         ENDIF 
    388389      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.