subroutine newbilinad,8
*
#if defined (DOC)
*
***s/r NEWBILINAD - Adjoint of horizontal bilinear interpolation of the model variables
* in grid-point space to observation points.
*
* Author : P. GAUTHIER *ARMA/MSC July 2002
* . -------------------------------
*Revision:
* Y. Yang May 2004
* - Added do loops for multiple species.
*
* Purpose: Build GOMU, GOMV, GOMT, GOMGZ, GOMQ and GOMPS with the model variables at the
* observation points from the model variables in grid-points
* space using bilinear interpolation.
*
*
#endif
IMPLICIT NONE
*implicits
#include "comdim.cdk"
#include "comchem.cdk"
#include "comstate.cdk"
*
* Local variables
*
integer ilev, jj
*
* 3D fields
*
if(NGEXIST(nguu).eq.1) call gd2mvoad
('UU',nflev)
if(NGEXIST(ngvv).eq.1) call gd2mvoad
('VV',nflev)
if(NGEXIST(ngq).eq.1) call gd2mvoad
('Q0',nflev)
if(NGEXIST(ngtt).eq.1) call gd2mvoad
('TT',nflev)
DO JJ = 1,NGCMT
if(NGEXIST(ngtr(JJ)).eq.1) call gd2mvoad
(CGCMT(JJ),nflev)
ENDDO
if(NGEXIST(nggz).eq.1) call gd2mvoad
('GZ',nflev)
*
* 2D fields
*
ilev = 1
if(NGEXIST(ngps).eq.1) call gd2mvoad
('PS',ilev)
if(NGEXIST(ngtg).eq.1) call gd2mvoad
('TG',ilev)
*
*
* Conversion of wind images to physical winds
*
call UV2uv
*
return
end subroutine newbilinad