Questions about profiles(:)%gas_units

Viewing 15 posts - 1 through 15 (of 18 total)
  • Author
    Posts
  • #48951
    liu xuanliu xuan
    Participant

    Hi,

    I have some questions when using the RTTOV_SCATT model.If I set the gas units = 1, does this mean that the units of cld_profiles and q and 2m q are all the same kg/kg? Very much looking forward to receiving your reply.

    Thanks,
    Liu Xuan

    #48953
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    The profiles(:)%gas_units only specifies the units for water vapour (q and 2m q) in the profiles.

    The units for hydrometeor concentrations in RTTOV-SCATT are kg/kg regardless of gas_units.

    Best wishes,
    James

    #48954
    liu xuanliu xuan
    Participant

    Hi James,

    Sorry to bother you again.What I simulate is the AMSR2 microwave sensor. I want to know if I can specify the simulated band. I learned that I can specify the number of simulated bands.

    Thanks,
    Liu Xuan

    #48956
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    Yes, you can specify the instrument channels that you want to simulate using the “chanprof(:)” input argument. This specifies the channels to simulate for each profile being passed into RTTOV or RTTOV-SCATT. Section 7.4 of the RTTOV user guide covers this.

    Best wishes,
    James

    #48957
    liu xuanliu xuan
    Participant

    Hi,

    Sorry, I still don’t understand here.‘For example, if coefficients for only channels 3 and 5 of a sensor with five
    channels are read from the coefficient file, then chanprof(1:2)%chan should typically be (/1, 2/) corresponding to the
    channels 3 and 5 respectively. ’ The chanprof(1:2)%chan represents /1, 2/ that I can understand.But I don’t understand why 1 and 2 here represent channel 3 and channel 5 respectively.Looking forward to receiving your reply.

    Thanks,
    Liu Xuan

    #48959
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    This example applies in the case where you specify the “channels(:)” argument to the rttov_read_coefs subroutine to read in only a subset of channels from the coefficient file(s). For RTTOV-SCATT you should not do this, so that you always read data for all channels from the coefficient file. In this case you don’t need to worry about the channel numbering referred to in that example: channel numbers run from 1 to the number of instrument channels in the rtcoef file as you would expect.

    I hope that helps, but let me know if not.

    Best wishes,
    James

    #48960
    liu xuanliu xuan
    Participant

    Hi James,

    Sorry, I’m still confused about this.A sensor with five channels,if I only read channels 3 and channel 5.Firstly, I need set the nchan = 2 in the shell file.But what I need tO set in the fortran program.Should I change here channel_list(1:nchannels) to channel_list(3,5).Thank you for always answering my questions.

    Best Wishes,
    Liu Xuan

    #48962
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    If want to simulate channels 3 and 5 of a sensor, then in the run_example_*sh shell scripts you should set

    NCHAN=2
    CHAN_LIST=3 5

    This will read all channels from the coefficient file, but will only simulate radiances for channels 3 and 5. You don’t need to modify the Fortran code in this case.

    The description regarding chanprof(:) relates to writing your own Fortran code to call RTTOV or RTTOV-SCATT. If you are only using the example shell scripts to run RTTOV/RTTOV-SCATT, then you don’t need to worry about it. Sorry for the confusion, but it wasn’t clear how you are running RTTOV-SCATT.

    Best wishes,
    James

    #48963
    liu xuanliu xuan
    Participant

    Hi James,

    Thank you very much for helping me solve this problem. Sorry to bother you again. I have some questions that I would like to ask. The AMSR2 microwave sensor I simulated has 7 frequencies (6.925GHz, 7.3GHz, 10.65GHz, 18.7GHz, 23.8GHz, 89.0GHz), but the coefficient file shows 14 channels. Does this mean two polarizations per band? If so, can I understand that each number corresponds to a different band and polarization method. Is there any specific information here on how to respond?

    Thanks,
    Liu Xuan

    #48964
    liu xuanliu xuan
    Participant

    Hi James,

    I looked at the coefficients file in detail. These 14 numbers correspond to vertical polarization/horizontal polarization and are repeated seven times.I looked at the coefficients file in detail. These 14 numbers correspond to vertical polarization/horizontal polarization and are repeated seven times. And it is in order of frequency from small to large.Thanks again for your help.

    Best wishes,
    Liu Xuan

    #48965
    liu xuanliu xuan
    Participant

    Hi James,

    I looked at the coefficients file in detail. These 14 numbers correspond to vertical polarization/horizontal polarization and are repeated seven times.I looked at the coefficients file in detail. These 14 numbers correspond to vertical polarization/horizontal polarization and are repeated seven times. And it is in order of frequency from small to large.Thanks again for your help.

    Best wishes,
    Liu Xuan

    #48968
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    Yes, as you discovered, in the AMSR2 coefficient file the channels are in ascending order of frequency with V- and H-pol channels at each frequency in that order.

    Best wishes,
    James

    #48973
    liu xuanliu xuan
    Participant

    Hi James,

    When I was simulating with the RTTOV_SCATT model, I entered many contours, but the nlevels were different for each one. So I have to setup the subroutine rttov_alloc_direct once for each contour, and the parameters nprof,nchanprof used in rttov_alloc_direct can not be simulated with the total number of contours, so in this case, the subroutine rttov_scatt_setupindex will have to be reset every time we simulate?

    Thanks,
    Liu Xuan

    #48976
    James HockingJames Hocking
    Keymaster

    Hi Liu Xuan,

    When you say “contours” I assume you mean pressure levels. RTTOV-SCATT profiles are on a given number of pressure levels, and RTTOV data structures are allocated for that number of levels. So if you have to run simulations on different numbers of levels, you will have to allocate memory for each different nlevels (by calls to rttov_alloc_direct, for example). Note that the surface must always lie on the bottom pressure half-level in RTTOV-SCATT.

    The rttov_scatt_setupindex subroutine sets up the channel and profile indices. You don’t need to call this every time if the number of profiles you pass to RTTOV-SCATT is always the same and you are always simulating the same set of channels for each profile.

    Best wishes,
    James

    #48977
    liu xuanliu xuan
    Participant

    Hi James,

    Sorry for the misunderstanding.’ Contours’ is wrong. What I meant to say was ‘profiles’. I have to enter a lot of profiles, and the nlevles for each profile are different. So I want to make a loop structure that for each simulated profiles,swap the subroutine rttov_alloc_direct for allocate and deallocate.I also call rttov_scatt_setupindex in each loop.Because I found that both subroutines use nprof. I fixed nprof directly at 1 per loop, and nchanprof fixed to the number of frequencies to be simulated per profiles (same for each profiles). Both subroutines are called with the same parameters except for these parameters. This is because each profiles has different nlevels when simulated.I think my understanding is correct.

    Thanks,
    James

Viewing 15 posts - 1 through 15 (of 18 total)
  • You must be logged in to reply to this topic.