Changeset 3982


Ignore:
Timestamp:
Dec 2, 2025, 11:54:50 AM (18 hours ago)
Author:
debatzbr
Message:

Pluto PCM: Add optical/HR diagnostics.

Location:
trunk/LMDZ.PLUTO/libf/phypluto
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.PLUTO/libf/phypluto/callcorrk.F90

    r3966 r3982  
    4444      use recombin_corrk_mod, only: corrk_recombin, call_recombin
    4545      use planetwide_mod, only: planetwide_maxval, planetwide_minval
    46       use radcommon_h, only: wavev,wavei
     46      use radcommon_h, only: wavev,wavei,bwnv,bwni
    4747      use mp2m_diagnostics
    4848      implicit none
     
    219219      real :: vmrch4(ngrid,nlayer)              ! vmr ch4 from vmrch4_proffix
    220220
     221      LOGICAL diagrad_rates ! Diagnostics
    221222      REAL dtlw_nu(nlayer,L_NSPECTI) ! heating rate (K/s) due to LW in spectral bands
    222223      REAL dtsw_nu(nlayer,L_NSPECTV) ! heating rate (K/s) due to SW in spectral bands
     
    12331234         endif
    12341235
    1235       endif
     1236         !  Heating rates vs altitude in a .txt file
     1237         diagrad_rates=.true.
     1238         if(diagrad_rates)then
     1239            open(120,file='heating_rates.out')
     1240            write(120,*) "Pressure - Alt - HR tot - Rates (wavel SW)"
     1241            do l=1,nlayer
     1242              write(120,*) pplay(1,l),zzlay(1,l),dtsw(1,l),dtsw_nu(l,:)
     1243            enddo
     1244            close(120)
     1245
     1246            open(121,file='cooling_rates.out')
     1247            write(121,*) "Pressure - Alt - CR tot - Rates (wavel LW)"
     1248            do l=1,nlayer
     1249              write(121,*) pplay(1,l),zzlay(1,l),dtlw(1,l),dtlw_nu(l,:)
     1250            enddo
     1251            close(121)
     1252
     1253            open(122,file='bands.out')
     1254            write(122,*) "wavel - bands boundaries (microns)"
     1255            do nw=1,L_NSPECTV
     1256              write(122,*) wavev(nw),1.e4/bwnv(nw+1),1.e4/bwnv(nw)
     1257            enddo
     1258            do nw=1,L_NSPECTI
     1259              write(122,*) wavei(nw),1.e4/bwni(nw+1),1.e4/bwni(nw)
     1260            enddo
     1261            close(122)
     1262
     1263            open(123,file='c2h2_rates.out')
     1264            write(123,*) "Pressure - Alt - CR c2h2"
     1265            do l=1,nlayer
     1266              write(123,*) pplay(1,l),zzlay(1,l),dtlw_hcn_c2h2(1,l)
     1267            enddo
     1268            close(123)
     1269
     1270            open(124,file='opt_depth_vi.out')
     1271            write(124,*) "Pressure - Alt - dtau vi (wavel SW)"
     1272            do l=1,nlayer
     1273              write(124,*) pplay(1,l),zzlay(1,l),int_dtauv(1,l,:)
     1274            enddo
     1275            close(124)
     1276
     1277            open(125,file='opt_depth_ir.out')
     1278            write(125,*) "Pressure - Alt - dtau vi (wavel SW)"
     1279            do l=1,nlayer
     1280              write(125,*) pplay(1,l),zzlay(1,l),int_dtaui(1,l,:)
     1281            enddo
     1282            close(125)
     1283            endif
     1284      endif ! end of (lastcall) and (ngrid.eq.1)
    12361285
    12371286      ! See physiq.F for explanations about CLFvarying. This is temporary.
  • trunk/LMDZ.PLUTO/libf/phypluto/physiq_mod.F90

    r3973 r3982  
    24202420      ! Warning this is exp(-dtau), I let you postproc with -log to have tau and k itself
    24212421      ! VI
    2422       call write_output('dtauv_4656nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,2))  ! 4.656 um (17x28)
    2423       call write_output('dtauv_1181nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,21)) ! 1.181 um (17x28)
    2424       call write_output('dtauv_700nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,24))  ! 0.700 um (17x28)
    2425       call write_output('dtauv_185nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,27))  ! 0.185 um (17x28)
    2426       call write_output('dtauv_118nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,28))  ! 0.118 um (17x28)
     2422      call write_output('dtauv_4656nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,2))  ! 4.656 um (28 VIS Bands)
     2423      call write_output('dtauv_1181nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,21)) ! 1.181 um (28 VIS Bands)
     2424      call write_output('dtauv_700nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,24))  ! 0.700 um (28 VIS Bands)
     2425      call write_output('dtauv_185nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,27))  ! 0.185 um (28 VIS Bands)
     2426      call write_output('dtauv_118nm','Layer optical thickness attenuation in VI band','',int_dtauv(:,nlayer:1:-1,28))  ! 0.118 um (28 VIS Bands)
    24272427      ! IR
    2428       call write_output('dtaui_81250nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,2)) ! 81.250 um (17x27)
    2429       call write_output('dtaui_3859nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,16)) ! 3.859 um (17x27)
     2428      call write_output('dtaui_81250nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,2)) ! 81.250 um (17 IR Bands)
     2429      call write_output('dtaui_3859nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,16)) ! 3.859 um (17 IR Bands)
     2430     
     2431      !call write_output('dtaui_25250nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,4)) ! 25.250 um (25 IR Bands)
     2432      !call write_output('dtaui_20800nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,6)) ! 20.800 um (25 IR Bands)
     2433      !call write_output('dtaui_18000nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,8)) ! 18.000 um (25 IR Bands)
     2434      !call write_output('dtaui_15050nm','Layer optical thickness attenuation in IR band','',int_dtaui(:,nlayer:1:-1,10)) ! 15.050 um (25 IR Bands)
     2435     
    24302436      if (callmufi) then
    24312437         ! Aerosol optical thickness
Note: See TracChangeset for help on using the changeset viewer.