-
Notifications
You must be signed in to change notification settings - Fork 0
FPOS: Activating fields representing synthetic pseudo satellite channels
[Instructions based on cy46t1]
e.g. synthetic Meteosat SEVIRI channels 2 and 6 (IR 10.8 und WV 6.2)
CFP2DF(1)='C002_METEOSAT_09_SEVIRI.POS',
CFP2DF(2)='C006_METEOSAT_09_SEVIRI.POS',
we think that:
Seviri channels 1,2,3 and 12 (VIS1, VIS, NIR, HR_VIS) currently not processed
C001 is IR_039 (= seviri channel 4)
C002 is WV_062 (= seviri channel 5)
C003 is WV_073 (= ...)
C004 is IR_087
C005 is IR_097
C006 is IR_108
C007 is IR_120
C008 is IR_134 (= seviri channel 11)
more seviri channels with RTTOV 13?! (cy46 = Rttov 12.1)
HEALTH Warning:
Make sure that, when using inline fpos, you activate radiative liquid/solid water GFL fields (otherwise just qv is passed over to rttov and ql=qi=0)
NAMGFL:
YIRAD_NL%LGP=.T.,
YLRAD_NL%LGP=.T.,
2) make sure rttov coefficient files are available (in compatible version) during inline/offline fpos run:
export RTTOV_COEFDIR={PATH_TO_YOUR_RTTOV_COEF_FILES}
see example for coef files for cy46 on ATOS: /home/kay/deode/data_in/const/cy46t1/coef_cy46.tar
in the case you don't provide the path/coef files:
2023/01/16 19:42:59 fatal error in module rttov_coef_io_mod.F90:0144
Cannot find any coefficient file named: rtcoef_meteosat_9_seviri.dat/.bin/.h5/.H5
...
ABORT! 1 PHRTSETUP: RTTVI PROBLEM
in the case your coef files are incompatible with the rrtov version:
2023/01/16 20:00:42 fatal error in module rttov_read_binary_coef.F90:0127
Version of coefficient file is incompatible with RTTOV library
2023/01/16 20:00:42 fatal error in module rttov_read_coefs.F90:0210
2023/01/16 20:00:42 fatal error in module rttvi.F90:0340
C002_METEOSAT_09
C002_METEOSAT_09
check FPOS docu for more synthetic channels that might work:
https://www.umr-cnrm.fr/gmapdoc/IMG/pdf/fullpos_usersguide_cycle_46-48.pdf
Implemented in the dev-CY46h1_deode as https://github.com/DEODE-NWP/Harmonie/pull/11
check available channels in arpifs/setup/sufa.F90:
...
YFA_MSAT9C1=YSUFAD('C001_METEOSAT_09',-1)
YFA_MSAT9C2=YSUFAD('C002_METEOSAT_09',-1)
YFA_MSAT9C3=YSUFAD('C003_METEOSAT_09',-1)
YFA_MSAT9C4=YSUFAD('C004_METEOSAT_09',-1)
YFA_MSAT9C5=YSUFAD('C005_METEOSAT_09',-1)
YFA_MSAT9C6=YSUFAD('C006_METEOSAT_09',-1)
YFA_MSAT9C7=YSUFAD('C007_METEOSAT_09',-1)
YFA_MSAT9C8=YSUFAD('C008_METEOSAT_09',-1)
YFA_MSAT10C1=YSUFAD('C001_METEOSAT_10',-1)
YFA_MSAT10C2=YSUFAD('C002_METEOSAT_10',-1)
...
fullpos work/dataflow:
**arpifs/fullpos/phymfpos.F90: ** (physics interface for post-processing)
arrays for different Meteosat-version (7-11) with 8 levels (= channels) each filled via MTS_PHYS (= rrtov interface) Meteosat 10 and 11 new (compared to cy43)
CALL MTS_PHYS(......&
& ZTBMSAT7,ZTBMSAT8,ZTBMSAT9,ZTBMSAT10,ZTBMSAT11,&
& ZTBGOES11,ZTBGOES12,ZTBGOES15,ZTBGOES16,ZTBGOES17,ZTBMTSAT1,ZTBHIMA8)
...
IF(YDQTYPE%LL(TFP%MSAT9C2%ICOD)) CALL STORE_DATA(TFP%MSAT9C2%ICOD,1,ZTBMSAT9(:,2))
IF(YDQTYPE%LL(TFP%MSAT9C3%ICOD)) CALL STORE_DATA(TFP%MSAT9C3%ICOD,1,ZTBMSAT9(:,3))
IF(YDQTYPE%LL(TFP%MSAT9C4%ICOD)) CALL STORE_DATA(TFP%MSAT9C4%ICOD,1,ZTBMSAT9(:,4))
IF(YDQTYPE%LL(TFP%MSAT9C5%ICOD)) CALL STORE_DATA(TFP%MSAT9C5%ICOD,1,ZTBMSAT9(:,5))
IF(YDQTYPE%LL(TFP%MSAT9C6%ICOD)) CALL STORE_DATA(TFP%MSAT9C6%ICOD,1,ZTBMSAT9(:,6))
IF(YDQTYPE%LL(TFP%MSAT9C7%ICOD)) CALL STORE_DATA(TFP%MSAT9C7%ICOD,1,ZTBMSAT9(:,7))
...
arpifs/phys_dmn/mts_phys.F90:
interface to rrtov ...
...
PTBMSAT7(:,:)=0._JPRB
PTBMSAT8(:,:)=0._JPRB
PTBMSAT9(:,:)=0._JPRB
PTBMSAT10(:,:)=0._JPRB
PTBMSAT11(:,:)=0._JPRB
...
satellite positions:
SELECT CASE(SATGRP_TABLE(JSERIES)%RTID)
CASE(7)
ZLONSAT=57.5
ZTBCLD_INT => PTBMSAT7
CASE(8)
ZLONSAT=41.5 ! since juy 2016
ZTBCLD_INT => PTBMSAT8
CASE(9)
ZLONSAT=3.5
ZTBCLD_INT => PTBMSAT9
CASE(10)
ZLONSAT=9.5
ZTBCLD_INT => PTBMSAT10
CASE(11)
ZLONSAT=0.0
ZTBCLD_INT => PTBMSAT11
END SELECT
ZTBCLD_INT pointing to selected sat-array -> filled from ZTBTOT after call to rttov:
CALL RTTOV_EC(...,ZTBTOT(1:IMXCHPF)...)
DO JLON=1,ILONLOC
DO JCH=1,ICHANMAX(JSERIES)
ICHPF=ICHPF+1
ZTBCLD_INT(JLON+IDONE,NVALCHAN_MTS(JCH,JSERIES))=&
& ZTBTOT(ICHPF) * ZMASK(JLON+IDONE)
ENDDO
ENDDO
rrtov entry:
satrad/rttov/ifs/rttov_ec.F90
rttov coeficient files (cy46):
rtcoef_msg_1_seviri.dat (= METEOSAT 8 !?) rtcoef_msg_2_seviri.dat (= METEOSAT 9) rtcoef_msg_3_seviri.dat (= METEOSAT 10) rtcoef_msg_4_seviri.dat (= METEOSAT 11)
e.g. rtcoef_msg_1_seviri.dat (METEOSAT 8):
! Channel number (from instrument original description)
! Channel status
! Central wavenumber
! Band correction coefficients (offset, slope)
! Gamma correction factor
1 1 0.2555727835E+04 0.3080289972E+01 0.9932698046E+00 0.1000000000E+01
2 1 0.1588790140E+04 0.1589328609E+01 0.9947437611E+00 0.1000000000E+01
3 1 0.1359929538E+04 0.2867084238E+00 0.9987965463E+00 0.1000000000E+01
4 1 0.1148276868E+04 0.7754610676E-01 0.9995896451E+00 0.1000000000E+01
5 1 0.1034048112E+04 0.2202921262E-01 0.9998774170E+00 0.1000000000E+01
6 1 0.9277573290E+03 0.1417483986E+00 0.9989030222E+00 0.1000000000E+01
7 1 0.8378221105E+03 0.3285352063E-01 0.9994581923E+00 0.1000000000E+01
8 1 0.7496964919E+03 -0.5684697958E-01 0.9995417857E+00 0.1000000000E+01
! ------------------------------------------------------
coefficient files cy43 vs. cy46 to be ckecked ...