Changeset 2264


Ignore:
Timestamp:
Mar 20, 2020, 2:00:37 PM (5 years ago)
Author:
emillour
Message:

Mars GCM:
Cleanup of phyetatO and only apply conversion of negative water ice surface
to the watercap variable if there was is initial "watercap" field in the
start file.
EM

Location:
trunk/LMDZ.MARS
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/README

    r2263 r2264  
    29022902if it exists, is set in watercap.
    29032903
    2904 
     2904== 20/03/2020 == EM
     2905Cleanup of phyetatO and only apply conversion of negative water ice surface
     2906to the watercap variable if there was is initial "watercap" field in the
     2907start file.
     2908
  • trunk/LMDZ.MARS/libf/phymars/phyetat0_mod.F90

    r2260 r2264  
    461461
    462462
    463 ! Surface water ice :
    464 write(*,*) "qsurf(vap) : ", qsurf(:,2)
    465 write(*,*) "qsurf(ice) : ", qsurf(:,3)
    466 
    467 
    468463call get_field("watercap",watercap,found,indextime)
    469464if (.not.found) then
     
    471466                       "<watercap> is set to zero"
    472467  watercap(:)=0
    473 else
    474   write(*,*) "phyetat0: Surface water ice <watercap> range:", &
    475              minval(watercap), maxval(watercap)
    476 endif
    477 
    478    write(*,*) 'Surface water ice cannot be allowed', &
    479                    ' to be negative if not on watercap !'
    480 ! tracer on surface
    481 if (nq.ge.1) then
    482   do iq=1,nq
     468
     469  write(*,*) 'Now transfer negative surface water ice to', &
     470             ' watercap !'
     471  if (nq.ge.1) then
     472   do iq=1,nq
    483473    txt=noms(iq)
    484 !    if ((txt.eq."h2o_vap").or.(txt.eq."h2o_ice")) then
    485474    if (txt.eq."h2o_ice") then
    486475      do ig=1,ngrid
     
    488477          watercap(ig) = qsurf(ig,iq)
    489478          qsurf(ig,iq) = 0.0
    490 !        else if (qsurf(ig,iq)>0.5) then
    491 !          watercap(ig) = watercap(ig) + qsurf(ig,iq) - 0.5
    492 !          qsurf(ig,iq)=0.5
    493479       end if
    494480      end do
    495481    endif
    496 !    if (txt.eq."h2o_vap") then
    497 !      do ig=1,ngrid
    498 !        qsurf(ig,iq)=0.0
    499 !        else if (qsurf(ig,iq)>0.5) then
    500 !          watercap(ig) = watercap(ig) + qsurf(ig,iq) - 0.5
    501 !          qsurf(ig,iq)=0.5
    502 !      end do
    503 !    end if
    504   enddo
    505 endif
    506 ! tracer on surface
    507 !if (nq.ge.1) then
    508 !  do iq=1,nq
    509 !    txt=noms(iq)
    510 !    if (txt.eq."h2o_vap") then
    511       ! There is no surface tracer for h2o_vap;
    512       ! "h2o_ice" should be loaded instead
    513 !      txt="h2o_ice"
    514 !      write(*,*) 'phyetat0: loading surface tracer', &
    515 !                           ' h2o_ice instead of h2o_vap'
    516 !do ig=1,ngrid
    517 ! if (qsurf(ig,igcm_h2o_vap).lt.0.0) then
    518 !    watercap(ig) = watercap(ig) + qsurf(ig,igcm_h2o_vap)
    519 !    qsurf(ig,igcm_h2o_vap)=0.0
    520 !  else if (qsurf(ig,iq)>0.5) then
    521 !    watercap(ig) = watercap(ig) + qsurf(ig,iq) - 0.5
    522 !    qsurf(ig,iq)=0.5
    523 ! end if
    524 !end do
    525 !    endif
    526 !  enddo
    527 !endif
    528 
    529 
    530 
    531 !do ig=1,ngrid
    532 !  if (qsurf(ig,'h2o_ice').lt.0.0) then
    533 !    watercap(ig) = watercap(ig) + qsurf(ig,'h2o_ice')
    534 !    qsurf(ig,'h2o_ice')=0.0
    535 !  else if (qsurf(ig,iq)>0.5) then
    536 !    watercap(ig) = watercap(ig) + qsurf(ig,iq) - 0.5
    537 !    qsurf(ig,iq)=0.5
    538 !  end if
    539 !end do
     482   enddo
     483  endif ! of if (nq.ge.1)
     484
     485else
     486  write(*,*) "phyetat0: Surface water ice <watercap> range:", &
     487             minval(watercap), maxval(watercap)
     488endif
     489
    540490
    541491! Call to soil_settings, in order to read soil temperatures,
Note: See TracChangeset for help on using the changeset viewer.