!-------------------------------------- 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_u2cma(na_index,da_u,na_udim) 5,1
  use modmask, only : lmask
  IMPLICIT NONE
  !Argument declarations
  integer,intent(in) :: na_udim ! size of masked array
  integer,intent(in) :: na_index ! row index of CMA array to be transfer
  real*8, dimension(na_udim),intent(in) :: da_u ! Masked array
  !
  !Purpose:
  !Transfer an array dimensioned as the control vector in observation space to
  !assimilated data of a CMA data array of index na_index
  !
  !Author  : S. Pellerin *ARMA/MRB January 2009
  !
  !Revision:

!ping  IMPLICIT NONE

#include "comdimo.cdk"
#include "comoabdy.cdk"
#include "comoahdr.cdk"
#include "comoba.cdk"

  INTEGER jdata, idata
  idata = 0
  DO JDATA=1,ndata
     IF (lmask(jdata)) THEN
        idata = idata + 1
        ROBDATA8(na_index,JDATA) = da_u(idata)
     ENDIF
  END DO

  RETURN
END SUBROUTINE oda_u2cma