SUBROUTINE BGCHECK 1,13
#if defined (DOC)
*
***s/r BGCHECK - BACKGROUND CHECK
*
*
*Author : P. Koclas *CMC/CMDA Nov 1998
*Revision:
* 1.0 P. Koclas
* -modifications for version 8.06
*
* 1.1 JM Belanger CMDA/SMC Jan 2001
* . 32 bits conversion
* P. KOCLAS Sept 2001
* . eliminate unnessary call to suprep
* P. KOCLAS Nov 2001
* . add 'call vint3dfd'
* C. Charette ARMA Feb 2002
* . displaced 'call vint3dfd' to the end
* J. St-James CMDA/SMCJuly 2003
* . add profiler family to the background check
* JM Belanger CMDA/SMC Feb 2004
* . Introduce "scatterometer family SC"
* Y.J. Rochon ARQX Feb 2006
* . added TR family to the background check
* J.M. Aparicio ARMA Octobre 2006
* . add GPSRO family to the background check
* Y.J. Rochon, ARQX July 2010
* , Account for LSIMOB=.true.
*
* -------------------
** Purpose: DO a background check on all observations
*
*Arguments
* -NONE-
#endif
IMPLICIT NONE
*implicits
#include "comct0.cdk"
#include "comlun.cdk"
#include "comdimo.cdk"
#include "comdim.cdk"
#include "comoabdy.cdk"
#include "comoahdr.cdk"
#include "comoba.cdk"
#include "comchem.cdk"
*
C
INTEGER J,JDATA
REAL*8 ZJO
*----------------------------------------------------------------------
WRITE(NULOUT,FMT=9000)
9000 FORMAT(//,3(" *****************"),/
S ," BEGIN BACKGROUND CHECK",/
S ,3(" *****************"),/)
C
C* 1. Preliminary initializations
C . ---------------------------
C
100 CONTINUE
C Transfer REAL*8 part of CMA to REAL*4
C (follows observation operators computations).
call cprob8to4
C
C TRANSFER O-A to O-P in cma
C
DO JDATA=1,NDATA
ROBDATA(NCMOMF,JDATA) = ROBDATA(NCMOMA,JDATA)
ENDDO
C
IF (LSIMOB) go to 200
C
C CALCULATE Sigmap AND INNOVATIONS(O-P)
C ----------------------------------------------
C
CALL SIGMAOP
C
C DO A BACKGROUND CHECK ON ALL THE OBSERVATIONS
C ----------------------------------------------
C
CALL BGCDATA
(ZJO,'UA')
CALL BGCDATA
(ZJO,'AI')
CALL BGCDATA
(ZJO,'HU')
CALL BGCDATA
(ZJO,'SF')
C CALL BGCDATA(ZJO,'ST')
CALL BGCDATA
(ZJO,'SW')
CALL BGCDATA
(ZJO,'SC')
CALL BGCDATA
(ZJO,'PR')
CALL BGCGPSRO
IF (LCHEM.AND.NCMTASSI.GT.0) THEN
CALL BGCDATA
(ZJO,'TR')
CALL CH_DIAGN
('OmP')
END IF
C
C . 3.4.3 Convert CMA ---> BURP file and write it
C
200 continue
C
CALL VINT3DFD
(NCMOMF)
CALL FILBRPPOST
c CALL SUPREP
DO j =1,1
CALL PRNTHDR(j,NULOUT)
CALL PRNTBDY(j,NULOUT)
END DO
RETURN
END