FUNCTION CH_IFIND(KBUFRN,KPARM,CDSTNID) 1,1
C
IMPLICIT NONE
C
INTEGER KBUFRN,CH_IFIND,KPARM
CHARACTER*(*) CDSTNID
C
#if defined (DOC)
************************************************************************
*
* PURPOSE: TO FIND THE INDEX OF A BUFR ELEMENT NUMBER IN THE CMA
* VARIABLE TYPES LIST FOR 'TR' FAMILY ONLY.
*
* ARGUMENTS:
* INPUT:
* -KBUFRN: THE BUFR ELEMENT NUMBER
* -KPARM : Species if number or 0 for dynamics
* -CDSTNID:Station/instrument ID.
* Equals ' ' if irrelevant.
*
* OUTPUT:
* - IFIND: THE FOUND INDEX (=-1 IF NOT FOUND)
*
* AUTHOR: Y.J. Rochon *ARQX/MSC June 2005
* Extension of IFIND by P. KOCLAS (CMC TEL. 4665)
* Revision:
* Y. Yang Oct. 2003
* - Changed 'DO IN=1,57' to 'DO IN=1,jpnbrelem' to make
* it general (change to IFIND).
* Y.J. Rochon June 2005, Feb 2006
* - Added comparison with list of species descriptor elements
* - Added KPARM and test on KPARM
* - Added CDSTNID and test with CTRSTNID
* Y.J. Rochon August 2010
* - Replaced test with use of CH_KGETPOS.
*
************************************************************************
#endif
C
#include "comnumbr.cdk"
#include "comdim.cdk"
#include "comchem.cdk"
C
INTEGER IN,INJ,CH_KGETPOS
EXTERNAL CH_KGETPOS
C
CH_IFIND=-1
DO IN=1,jpnbrelem
IF ( NVNUMB(IN) .EQ. KBUFRN ) THEN
IF (CH_KGETPOS
(KBUFRN,KPARM,CDSTNID).GT.0) THEN
CH_IFIND=IN
RETURN
END IF
ENDIF
END DO
C
RETURN
END