Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Radiance (clear) and Brightness Temperature (clear) to RTS in K_matrix modules #136

Closed
chengdang opened this issue May 14, 2024 · 3 comments
Assignees

Comments

@chengdang
Copy link
Contributor

Hello @BenjaminTJohnson, I made some adjustment to the k_matrix modules that the RTS computed with it will also output Radiance/BT for clear-sky. With my test cases, the code changes in draft PR #135 works.

The major changes are:

  1. adding the following code block:
             !** output Tb_clear in the case of n_clouds = 0  (note this is NOT aerosol cleared)
             IF (Atm%n_Clouds == 0 .OR. CloudCover%Total_Cloud_Cover < MIN_COVERAGE_THRESHOLD) THEN
                RTSolution(ln,m)%Tb_clear = RTSolution(ln,m)%Brightness_Temperature
                RTSolution(ln,m)%R_clear  = RTSolution(ln,m)%Radiance
             END IF
  1. Comment out the IF statement:
           ! IF ( SpcCoeff_IsInfraredSensor( SC(SensorIndex) ) .OR. &
           !     SpcCoeff_IsMicrowaveSensor( SC(SensorIndex) ) ) THEN

With this IF statement, I wonder if all the visible jacobians with fractional cloud coverage are wrong.

@chengdang
Copy link
Contributor Author

In PR #135, I also modified the unit test test_simple for k_matrix a bit to include the comparisons of RTS computed with Forward and K_matrix modules:

  ! Compare the RT structures
  ! --------------------------
  IF ( ALL(CRTM_RTSolution_Compare(RTSolution, RTSolution_forward)) ) THEN
    Message = 'RTSolution results are the same! (Forward vs. K_Matrix)'
    CALL Display_Message( PROGRAM_NAME, Message, INFORMATION )
  ELSE
    Message = 'RTSolution results are different!'
    CALL Display_Message( PROGRAM_NAME, Message, INFORMATION )
    STOP 1
  END IF

So far all the following ctests built upon this passed:

Test project /Users/dangch/Documents/CRTM/CRTM_dev/crtm_code_review/CRTMv3/build
    Start 73: test_k_matrix_Simple_atms_n21
1/8 Test #73: test_k_matrix_Simple_atms_n21 .......   Passed    0.11 sec
    Start 74: test_k_matrix_Simple_cris-fsr_n21
2/8 Test #74: test_k_matrix_Simple_cris-fsr_n21 ...   Passed    5.39 sec
    Start 75: test_k_matrix_Simple_v.abi_g18
3/8 Test #75: test_k_matrix_Simple_v.abi_g18 ......   Passed    0.09 sec
    Start 76: test_k_matrix_Simple_atms_npp
4/8 Test #76: test_k_matrix_Simple_atms_npp .......   Passed    0.10 sec
    Start 77: test_k_matrix_Simple_cris399_npp
5/8 Test #77: test_k_matrix_Simple_cris399_npp ....   Passed    1.06 sec
    Start 78: test_k_matrix_Simple_v.abi_gr
6/8 Test #78: test_k_matrix_Simple_v.abi_gr .......   Passed    0.09 sec
    Start 79: test_k_matrix_Simple_abi_g18
7/8 Test #79: test_k_matrix_Simple_abi_g18 ........   Passed    0.12 sec
    Start 80: test_k_matrix_Simple_modis_aqua
8/8 Test #80: test_k_matrix_Simple_modis_aqua .....   Passed    0.13 sec

These tests passed because RTsolution%R_clear and RTsolution%TB_clear are assigned in K_matrix moduls now, and because the TOA reflectance are conveniently all zeros. Otherwise, the TOA reflectance would be different because there are no cloud-fraction adjustment to reflectance, in CRTM TL, AD, and K_matrix modules.

@BenjaminTJohnson
Copy link
Contributor

@chengdang is there anything else that needs to be done on this issue? as far as I can tell, it's completed.

@chengdang
Copy link
Contributor Author

Yes it is completed. I'll close it for now. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants