!-------------------------------------- LICENCE BEGIN ------------------------------------
!Environment Canada - Atmospheric Science and Technology License/Disclaimer,
! version 3; Last Modified: May 7, 2008.
!This is free but copyrighted software; you can use/redistribute/modify it under the terms
!of the Environment Canada - Atmospheric Science and Technology License/Disclaimer
!version 3 or (at your option) any later version that should be found at:
!http://collaboration.cmc.ec.gc.ca/science/rpn.comm/license.html
!
!This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
!without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
!See the above mentioned License/Disclaimer for more details.
!You should have received a copy of the License/Disclaimer along with this software;
!if not, you can write to: EC-RPN COMM Group, 2121 TransCanada, suite 500, Dorval (Quebec),
!CANADA, H9P 1J3; or send e-mail to service.rpn@ec.gc.ca
!-------------------------------------- LICENCE END --------------------------------------
!
subroutine oda_H 5,9
implicit none
!
!Purpose:
!Compute simulated observations from profiled model
!increments.
!It returns Hdx in ROBDATA8(NCMOMA,*)
!Calls the several linear observation operators
!
!Author : S. Pellerin *ARMA/MRB January 2009
!
!Revision:
! L. Fillion, ARMA/EC, 5 Jun 2009. Introduce 1 Obs experiment.
! S. Macpherson ARMA 11 Sep 2009
! - added ground-based GPS (ZTD) observation operator
!
!Local declarations
integer, save :: nl_ncall = 0
real*8 :: dl_bidon
#include "comdim.cdk"
#include "comcva.cdk"
nl_ncall = nl_ncall + 1
if(l1obs) then
call oda_H1obs
else
call tmg_start(56,'PPROF') !
call oda_Hpp
! fill in NCMOMA : Hdx
call tmg_stop(56)
call tmg_start(59,'SFC')
call oda_Hsf
! fill in NCMOMA : Hdx
call tmg_stop (59)
call tmg_start(60,'RTTOV') !
call oda_Hto
! fill in NCMOMA : Hdx
call tmg_stop (60)
call tmg_start(62,'GOESRAD') !
if (nl_ncall .eq. 1) CALL ROBSGOES
(DL_BIDON)
call oda_Hgo
call tmg_stop (62) !
call tmg_start(90,'GPSRO') !
call oda_Hro
call tmg_stop (90) !
call tmg_start(63,'ZPROF') !
call oda_Hzp
call tmg_stop (63) !
call tmg_start(64,'GPSZTD') !
call oda_Hgp
call tmg_stop (64) !
endif
end subroutine oda_H