Skip to content

Radar Linear Reflectivity - #363

Open
imoradi wants to merge 14 commits into
developfrom
feature/im_active_sensor
Open

Radar Linear Reflectivity#363
imoradi wants to merge 14 commits into
developfrom
feature/im_active_sensor

Conversation

@imoradi

@imoradi imoradi commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR adds radar linear reflectivity values, along with their tangent-linear (TL) and adjoint (AD) implementations, to the RTSolution.

Issue(s) addressed

Resolves #<issue_number>

Dependencies

None

Impact

Expected impact on downstream repositories:

  • Enables downstream repositories to access radar linear reflectivity values from the RTSolution.
  • Adds support for TL and AD calculations of radar linear reflectivity.
  • No expected breaking changes to existing functionality.

Checklist

  • [ X] I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • [ X] I have run the unit tests before creating the PR

@imoradi imoradi self-assigned this Aug 20, 2026
Comment thread src/RTSolution/CRTM_Active_Sensor.f90 Outdated
perm = Water_Permittivity_Turner_2016(Frequency * 1.0d9, Atm%Temperature)
perm_re = REAL(perm)
perm_im = AIMAG(perm)
Kw_2 = ABS((perm_re - ONE) / (perm_re + ONE)) ** TWO

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kw_2 should use the complex permittivity (perm instead of perm_re)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed both TL and AD! Thanks

write(500,'(i40,f40.5,f40.5,f40.5)') ii, Atm(1)%Cloud(1)%Water_Content(ii), RTSolution(ichan,iprof)%Reflectivity(ii), RTSolution(ichan,iprof)%Reflectivity_Attenuated(ii)
write(*,'(i40,f40.5,f40.5,f40.5)') ii, Atm(1)%Cloud(1)%Water_Content(ii), RTSolution(ichan,iprof)%Reflectivity(ii), RTSolution(ichan,iprof)%Reflectivity_Attenuated(ii)
write(500,'(i40,f40.5,f40.5,f40.5,f40.5,f40.5)') ii, Atm(1)%Cloud(1)%Water_Content(ii), RTSolution(ichan,iprof)%Reflectivity(ii), RTSolution(ichan,iprof)%Reflectivity_Attenuated(ii), RTSolution(ichan,iprof)%ReflectivityLinear(ii), RTSolution(ichan,iprof)%Reflectivity_AttenuatedLinear(ii)
write(*,'(i40,f40.5,f40.5,f40.5,f40.5,f40.5)') ii, Atm(1)%Cloud(1)%Water_Content(ii), RTSolution(ichan,iprof)%Reflectivity(ii), RTSolution(ichan,iprof)%Reflectivity_Attenuated(ii), RTSolution(ichan,iprof)%ReflectivityLinear(ii), RTSolution(ichan,iprof)%Reflectivity_AttenuatedLinear(ii)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

generally try to avoid general write(* statements in CRTM, you can use the call display_message routine instead.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replaced these with Display_Message

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

Successfully merging this pull request may close these issues.

2 participants