Satellite Application Facility for Numerical Weather Prediction › Forums › RTTOV › RTTOV v13 › RTTOV v13 General Discussion › Questions about rttov_scatt
Tagged: rttov_scatt
- This topic has 3 replies, 2 voices, and was last updated 2 years, 8 months ago by James Hocking.
-
AuthorPosts
-
March 25, 2022 at 8:04 am #47385Li ZetingParticipant
Hi,
I want to use rttov_scatt to simulate radiation in cloud and rain areas. But I have no idea how to calculate half-level pressures(ph(:)). Could somebody tell me how to calculate half-level pressures ,like the example input file
(prof_rttovsactt.dat)Thanks!
ZetingMarch 25, 2022 at 8:16 am #47387James HockingKeymasterHi Zeting,
NWP models often provide both the “full” and “half” level pressures. In the IFS and related models for example, the pressure half levels are computed using the surface pressure together with a fixed set of coefficients. The full pressure levels are then computed as the mean of adjacent half-level pressures.
If you currenty have the “full” pressure levels, then it would be reasonable to compute ph(2:nlevels) as the mean of adjacent full level pressures, and set ph(1) = 0 and ph(nlevels+1)=s2m%p (remembering that RTTOV-SCATT requires that the bottom half-level is at the surface).
Best wishes,
JamesMarch 27, 2022 at 12:13 pm #47389Li ZetingParticipantHi James,
Thank you for your answer. My biggest problem is that the data I used is the ERA5 , the “full” pressure levels is fixed in (1000,975,925 and so on). When I compute ph(2:nlevels) as the mean of adjacent full level pressures, and set ph(1) = 0 and ph(nlevels+1)=s2m%p , the bottom levels ph(nlevels+1) ofen small than ph(nlevels).For example,
the full pressure : 1000hpa 975hpa 950hpa ….
surface pressure :985hpa
so the ph(nlevels+1)= 985hpa = s2m%p ph(nlevels)=(1000+975)/2=987.5hpa ph(nlevels+1)<ph(nlevels)And rttov will report an error:
fatal error in module rttov_iniscatt
iniscatt : problem with user-defined pressure layeringHow do I calculate correctly half-level pressures?
Thanks!
ZetingMarch 27, 2022 at 4:59 pm #47390James HockingKeymasterHi Zeting,
It is not possible to run RTTOV-SCATT on fixed pressure levels like that directly. RTTOV-SCATT requires that the surface pressure is on the bottom half-level, and all profiles must have the same number of levels.
If you are unable to obtain the ERA5 data on the full IFS model levels (e.g. 137 levels), then there are probably only two options, neither of which is very appealing:
1. set ph(nlevels+1) to the surface pressure for each profile, and then you will need to insert “padding” levels at the top of the atmosphere (with suitably extrapolated profiles) to ensure every profile has the same number of levels
2. run RTTOV-SCATT for each profile individually, and deallocate and reallocate the profiles and cloud_profiles structures with the appropriate number of levels for everyprofile (this may be quite slow if you are running for very many profiles), where you set ph(nlevels+1) to the surface pressure and set the number of levels accordingly (typically the number of pressure levels above the surface).
Note that in both cases you need to take care of the case where the surface lies on (or extremely close to) a pressure level.
Best wishes,
James -
AuthorPosts
- You must be logged in to reply to this topic.