da_crtm_ad.inc
References to this file elsewhere.
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
11 integer, intent(in) :: nsensor, nchan, nprof
12 type (CRTM_RTSolution_type ), intent(inout) :: RTSolution(nchan,nprof)
13 type (CRTM_RTSolution_type ), intent(inout) :: RTSolution_AD(nchan,nprof)
14 type (CRTM_ChannelInfo_type), intent(in) :: ChannelInfo(nsensor)
15 type( CRTM_Atmosphere_type ), intent(in) :: Atmosphere(nprof)
16 type( CRTM_Atmosphere_type ), intent(inout) :: Atmosphere_AD(nprof)
17 type( CRTM_Surface_type ), intent(in) :: Surface(nprof)
18 type( CRTM_Surface_type ), intent(inout) :: Surface_AD(nprof)
19 type( CRTM_GeometryInfo_type ),intent(inout) :: GeometryInfo(nprof)
20
21 integer :: Error_Status
22
23 if (trace_use) call da_trace_entry("da_crtm_ad")
24
25 Error_Status = CRTM_Adjoint(Atmosphere, &
26 Surface, &
27 RTSolution_AD,&
28 GeometryInfo, &
29 ChannelInfo, &
30 Atmosphere_AD,&
31 Surface_AD, &
32 RTSolution) !, &
33 !Options = Options)
34 if ( Error_Status /= 0 ) then
35 call da_error(__FILE__,__LINE__, &
36 (/"Error in calling CRTM_Adjoint"/))
37 end if
38
39 if (trace_use) call da_trace_exit("da_crtm_ad")
40
41 end subroutine da_crtm_ad
42 #endif