updated top-level README and version_decl for V4.5 (#1847)
[WRF.git] / var / da / da_radiance / da_crtm_ad.inc
blobb578bf9bd4ade376c57733de6fb0b74f74ad816e
1 #ifdef CRTM
2 subroutine da_crtm_ad( nsensor, nchan, nprof, Atmosphere,   &
3                             Surface,      &
4                             RTSolution_AD, &
5                             GeometryInfo, &
6                             ChannelInfo,  &
7                             Atmosphere_AD,   &
8                             Surface_AD,   &
9                             RTSolution,   &
10                             Options)
12    integer, intent(in)            :: nsensor, nchan, nprof
13    type (CRTM_RTSolution_type ),  intent(inout)  :: RTSolution(nchan,nprof)
14    type (CRTM_RTSolution_type ),  intent(inout)  :: RTSolution_AD(nchan,nprof)
15    type (CRTM_ChannelInfo_type),  intent(in)  :: ChannelInfo(nsensor)
16    type( CRTM_Atmosphere_type ),  intent(in)  :: Atmosphere(nprof)
17    type( CRTM_Atmosphere_type ),  intent(inout)  :: Atmosphere_AD(nprof)
18    type( CRTM_Surface_type ),     intent(in)  :: Surface(nprof)
19    type( CRTM_Surface_type ),     intent(inout)  :: Surface_AD(nprof)
20    type( CRTM_Geometry_type ),    intent(inout)  :: GeometryInfo(nprof)
21    type (CRTM_Options_type),      intent(in)     :: Options(nprof)
23    integer :: Error_Status
25    if (trace_use) call da_trace_entry("da_crtm_ad")
27          Error_Status = CRTM_Adjoint(Atmosphere,   &
28                             Surface,      &
29                             RTSolution_AD,&
30                             GeometryInfo, &
31                             ChannelInfo,  &
32                             Atmosphere_AD,&
33                             Surface_AD,   &
34                             RTSolution,   &
35                             Options)
36          if ( Error_Status /= 0 ) then
37               call da_error(__FILE__,__LINE__, &
38                  (/"Error in calling CRTM_Adjoint"/))
39          end if
41    if (trace_use) call da_trace_exit("da_crtm_ad")
43 end subroutine da_crtm_ad
44 #endif