question about ice_mk.h and net heat flux

Discussion about modeling ice with ROMS

Moderators: arango, robertson

Post Reply
Message
Author
turuncu
Posts: 128
Joined: Tue Feb 01, 2005 8:21 pm
Location: Istanbul Technical University (ITU)
Contact:

question about ice_mk.h and net heat flux

#1 Unread post by turuncu »

Hi,

I just wonder that is there anybody who used the ICE model without BULK_FLUX option? In the source file "ice_mk.h", stflx(:,:,items) variable is recalculated base on the ice coverage and the stflx argument is defined as intent(out). Maybe, i am wrong but it seems that the net heat flux is not conserved inside of the ice model. Right? If this is the case, net heat flux defined in the forcing file will not same with the output file (shflux variable). If i put a ifdef construct into the following part of the "ice_mk.h"

Code: Select all

...
...
#ifdef BULK_FLUXES <--- ADD
#ifdef ICESHELF
          IF (zice(i,j).eq.0.0_r8) THEN
#endif
            IF(ai(i,j,linew).LE.min_a(ng)) THEN
               stflx(i,j,itemp) = qao_n(i,j)*fac_shflx
            ELSE
#ifdef ICE_SHOREFAST
              hh = h(i,j)+Zt_avg1(i,j)
              clear = hh-0.9_r8*hi(i,j,liold)
              clear = MAX(clear,0.0_r8)
              IF (clear.lt.1.5_r8) THEN
                fac_sf = MAX(clear-0.5_r8,0.0_r8)/1.0_r8
              ELSE
                fac_sf = 1.0_r8
              END IF
              stflx(i,j,itemp) = (1.0_r8-ai(i,j,linew))*qao_n(i,j)      &
     &                          *fac_shflx                              &
     &                   +(ai(i,j,linew)*qio(i,j)                       &
     &                   -xtot*hfus1(i,j))*fac_sf
#else
              stflx(i,j,itemp) = (1.0_r8-ai(i,j,linew))*qao_n(i,j)      &
     &                   +ai(i,j,linew)*qio(i,j)                        &
     &                   -xtot*hfus1(i,j)
#endif
#if defined WET_DRY && defined CAS
          stflx(i,j,itemp) = stflx(i,j,itemp)*rmask_wet(i,j)
#endif
            END IF

! Change stflx(i,j,itemp) back to ROMS convention
            stflx(i,j,itemp) = -stflx(i,j,itemp) * rhocpr

#ifdef MASKING
            stflx(i,j,itemp) = stflx(i,j,itemp)*rmask(i,j)
#endif
#ifdef WET_DRY
!            stflx(i,j,itemp) = stflx(i,j,itemp)*rmask_wet(i,j)
#endif
...
...
#endif <--- ADD
then net heat flux will be conserved but i am not it is correct or not. Any suggestion will be helpful in this point.

Regards,

--ufuk

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: question about ice_mk.h and net heat flux

#2 Unread post by kate »

The assumption is that say srflx coming in on top of the ice is modified by the ice before entering the ocean. What we have is not the last answer by any means. What are your goals in the ice modeling?

turuncu
Posts: 128
Joined: Tue Feb 01, 2005 8:21 pm
Location: Istanbul Technical University (ITU)
Contact:

Re: question about ice_mk.h and net heat flux

#3 Unread post by turuncu »

Hi Kate,

Thanks for your help. Actually, i coupled ROMS with RegCM regional climate (RCM) model. In this case, the atmospheric component sends net heat flux to ROMS. To conserve the heat fluxes between the model components, i want to use exactly same heat fluxes in the ocean model because i plan to perform long simulation with this model. In this design, ROMS also sends SST and Ice thickness information to RCM. Then, RCM changes the land use category to ice if ROMS produces ice in the domain. If the ice is melted then the land use category set its original value in the grid box. By this way, the feedback mechanisim of the ice formation will be included into RCM.

I also set the following FORCING variables after i checked the code again,

FORCES(ng)%sustr_aw and FORCES(ng)%tau_aix_n are set to sustr (i assume they are equal)
FORCES(ng)%svstr_aw and FORCES(ng)%tau_aiy_n are set to svstr
FORCES(ng)%qao_n and FORCES(ng)%qai_n are set to -FORCES(ng)%stflx(:,:,itemp)*Hscale

I think that i also need to set the FORCES(ng)%snow_n, ICE(ng)%coef_ice_heat and ICE(ng)%rhs_ice_heat variables to setup the ice model forcing requirements. The snow is relatively easier than the others. Can i use any easy assumption for the ice_heat variables? What is the real definition of these variables. So, i think that the current version of the ice model is not designed to work without BULK_FLUX option. Right? So, i try to make it possible.

PS: The standalone version of the ROMS-ICE model works without any problem and produces reasonable results with BULK_FLUX option.

Regards,

--ufuk

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: question about ice_mk.h and net heat flux

#4 Unread post by kate »

Perhaps you should read the Mellor and Kantha paper which describes what we are trying to do with the ice thermodynamics. It's true that I've never used the ice model without BULK_FLUXES of some sort, nor do I expect to.

Post Reply