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

    r3370 r3372  
    1212   !!---------------------------------------------------------------------- 
    1313   !!---------------------------------------------------------------------- 
    14    !!   thermodynamics : initialise 
    15    !!                    reference for equations - M = Martin + Adcroft, OM 34, 2010 
     14   !!   icb_thm : initialise 
     15   !!             reference for equations - M = Martin + Adcroft, OM 34, 2010 
    1616   !!---------------------------------------------------------------------- 
    1717   USE par_oce        ! NEMO parameters 
     
    2929   PRIVATE 
    3030 
    31    PUBLIC   thermodynamics ! routine called in icbrun.F90 module 
     31   PUBLIC   icb_thm ! routine called in icbrun.F90 module 
    3232 
    3333CONTAINS 
    3434 
    35    SUBROUTINE thermodynamics( kt ) 
     35   SUBROUTINE icb_thm( kt ) 
    3636      !!---------------------------------------------------------------------- 
    37       !!                  ***  ROUTINE thermodynamics  *** 
     37      !!                  ***  ROUTINE icb_thm  *** 
    3838      !! 
    3939      !! ** Purpose :   compute the iceberg thermodynamics. 
     
    4141      !! ** Method  : - blah blah 
    4242      !!---------------------------------------------------------------------- 
    43       INTEGER, INTENT(in) ::   kt   ! timestep number, just passed to print_berg 
     43      INTEGER, INTENT(in) ::   kt   ! timestep number, just passed to icb_utl_print_berg 
    4444      ! 
    4545      INTEGER  ::   ii, ij 
     
    6868         pt => this%current_point 
    6969         nknberg = this%number(1) 
    70          CALL interp_flds( pt%xi, pt%e1, pt%uo, pt%ui, pt%ua, pt%ssh_x, & 
    71          &                 pt%yj, pt%e2, pt%vo, pt%vi, pt%va, pt%ssh_y, & 
     70         CALL icb_utl_interp( pt%xi, pt%e1, pt%uo, pt%ui, pt%ua, pt%ssh_x, & 
     71         &                    pt%yj, pt%e2, pt%vo, pt%vi, pt%va, pt%ssh_y, & 
    7272         &                 pt%sst, pt%cn, pt%hi, zff ) 
    7373         ! 
     
    159159            zheat = zmelt * pt%heat_density              ! kg/s x J/kg = J/s 
    160160            berg_grid%calving_hflx (ii,ij) = berg_grid%calving_hflx (ii,ij) + zheat    * z1_e1e2    ! W/m2 
    161             CALL melt_budget( ii, ij, zMnew, zheat, this%mass_scaling,       & 
    162             &                         zdM, zdMbitsE, zdMbitsM, zdMb, zdMe,   & 
    163             &                         zdMv, z1_dt_e1e2 ) 
     161            CALL icb_dia_melt( ii, ij, zMnew, zheat, this%mass_scaling,       & 
     162            &                          zdM, zdMbitsE, zdMbitsM, zdMb, zdMe,   & 
     163            &                          zdMv, z1_dt_e1e2 ) 
    164164         ELSE 
    165             WRITE(numout,*) 'thermodynamics: berg ',this%number(:),' appears to have grounded  at ',narea,ii,ij 
    166             CALL print_berg( this, kt ) 
     165            WRITE(numout,*) 'icb_thm: berg ',this%number(:),' appears to have grounded  at ',narea,ii,ij 
     166            CALL icb_utl_print_berg( this, kt ) 
    167167            WRITE(numout,*) 'msk=',tmask(ii,ij,1), e1e2t(ii,ij) 
    168             CALL ctl_stop('thermodynamics', 'berg appears to have grounded!') 
     168            CALL ctl_stop('icb_thm', 'berg appears to have grounded!') 
    169169         ENDIF 
    170170 
     
    189189 
    190190         IF( zMnew <= 0._wp ) THEN       ! Delete the berg if completely melted 
    191             CALL delete_iceberg_from_list( first_berg, this ) 
     191            CALL icb_utl_delete( first_berg, this ) 
    192192            ! 
    193193         ELSE                            ! Diagnose mass distribution on grid 
    194194            z1_e1e2 = 1._wp / e1e2t(ii,ij) * this%mass_scaling 
    195             CALL size_budget( ii, ij, zWn, zLn, zAbits,   & 
    196             &                 this%mass_scaling, zMnew, znMbits, z1_e1e2) 
     195            CALL icb_dia_size( ii, ij, zWn, zLn, zAbits,   & 
     196            &                  this%mass_scaling, zMnew, znMbits, z1_e1e2) 
    197197         ENDIF 
    198198         ! 
     
    209209      ENDIF 
    210210      ! 
    211    END SUBROUTINE thermodynamics 
     211   END SUBROUTINE icb_thm 
    212212 
    213213   !!====================================================================== 
Note: See TracChangeset for help on using the changeset viewer.