2 subroutine da_crtm_ad( nsensor, nchan, nprof, Atmosphere, &
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, &
36 if ( Error_Status /= 0 ) then
37 call da_error(__FILE__,__LINE__, &
38 (/"Error in calling CRTM_Adjoint"/))
41 if (trace_use) call da_trace_exit("da_crtm_ad")
43 end subroutine da_crtm_ad