*-- Author : S.Burke / J.V. Morris
SUBROUTINE FKLWM(IFL,S1,C1,S2,C2,S3,C3,IERR)
**********************************************************************
* *
* Take the weighted mean of two state vectors *
* *
* ERROR CONDITIONS; *
* IERR = 0 ; normal termination *
* -> IERR = 111 ; failure to invert output covariance *
* IERR = 16 ; output theta > pi/2 (reset to pi/4) *
* IERR = 17 ; output theta > 1 (warning) *
* *
* -> Fatal error *
* *
**********************************************************************
*KEEP,FKECODE.
*KEND.
**********************************************************************
*
* compute the inverse of the weighted average covariance ...
*
CALL FKADD(C1,C2,C3)
CALL FKDIFF(S2,S1,S4)
CALL FKSUB(C2,C1,C3)
CALL FKDIFF(S1,S2,S4)
CALL DSINV(5,C3,5,IFAIL)
CALL FKERR(IUTIL,IROUT,IFATAL,IOCV,IERR)
CALL FKMLT(C1,C3,W)
CALL FKMLT2(W,C2,C3)
*
* compute the weighted average state vector ...
*
CALL FKNORM(S3,IFAIL)
IF (IFAIL.NE.0) CALL FKERR(IUTIL,IROUT,IWARN,IFAIL,IERR)
*