da_crtm_tl.inc

References to this file elsewhere.
1 #ifdef CRTM
2 subroutine da_crtm_tl(  nsensor, nchan, nprof, Atmosphere,   &
3                             Surface,      &
4                             Atmosphere_TL,&
5                             Surface_TL,   &
6                             GeometryInfo, &
7                             ChannelInfo,  &
8                             RTSolution,   &
9                             RTSolution_TL)
10 
11    integer, intent(in)            :: nsensor, nchan, nprof
12    type (CRTM_RTSolution_type ),  intent(inout)  :: RTSolution(nchan,nprof),RTSolution_TL(nchan,nprof)
13    type (CRTM_ChannelInfo_type),  intent(in)  :: ChannelInfo(nsensor)
14    type( CRTM_Atmosphere_type ),  intent(in)  :: Atmosphere(nprof), Atmosphere_TL(nprof)
15    type( CRTM_Surface_type ),     intent(in)  :: Surface(nprof),Surface_TL(nprof)
16    type( CRTM_GeometryInfo_type ),intent(inout)  :: GeometryInfo(nprof)
17 
18    integer :: Error_Status
19 
20    if (trace_use) call da_trace_entry("da_crtm_tl")
21 
22          Error_Status = CRTM_Tangent_Linear(Atmosphere,   &
23                             Surface,      &
24                             Atmosphere_TL,&
25                             Surface_TL,   &
26                             GeometryInfo, &
27                             ChannelInfo,  &
28                             RTSolution,   &
29                             RTSolution_TL) 
30 
31          if ( Error_Status /= 0 ) then
32               call da_error(__FILE__,__LINE__, &
33                  (/"Error in calling CRTM_Tangent_Linear"/))
34          end if
35 
36 
37    if (trace_use) call da_trace_exit("da_crtm_tl")
38 
39 end subroutine da_crtm_tl
40 #endif