      SUBROUTINE CPTURB(H,M,EGV,DATEN,MX)
C
C     THIS SUBROUTINE COMPUTES AN ESTIMATE OF THE EIGEN VALUES (EGV ON
C     OUTPUT) OF THE PROBLEM WITH ATENUATION ATEN+DATEN BASED ON THE
C     EIGEN VALUES (EGV ON INPUT) OF THE PROBLEM WITH ATENUATION ATEN.
C
C     IT USES THE PERTURBATION METHOD ON PG. 228 IN PRINC. AND TECH.
C     OF APPLIED MATH BY B. FRIEDMAN
C
      IMPLICIT REAL*8 (A-H,O-Z)
      COMPLEX*16 EGV(MX)
      COMPLEX*16 CDSRT,ONE,CI,CDTAN
      COMPLEX*16 ALPHA,BETA,A,B,X,Y,U,V
C
      COMMON /BLKEVN/ HB,CW,CB,FKW,FKB,ROHW,ROHB,ATEN
C
      ONE=DCMPLX(1.0D0,0.0D0)
      CI=DCMPLX(0.0D0,1.0D0)
C
      DO 500 I=1,M
C
      ALPHA=CDSRT(FKW**2+FKB**2*(EGV(I)-ONE))
      BETA=CDSRT(FKB**2*(EGV(I)+CI*ATEN))
      A=ALPHA*H
      B=BETA*(H-HB)
      X=A-CDCOS(A)*CDSIN(A)
      IF(DIMAG(B) .LT. -44.0D0) GO TO 100
      Y=B/(CDSIN(B)**2)-1.0D0/CDTAN(B)
      GO TO 200
  100 CONTINUE               
      Y=-1.0D0/CDTAN(B)
  200 CONTINUE
C
      U=ROHW*ALPHA*CDSIN(A)**2*Y
      V=ROHB*BETA*X-ROHW*ALPHA*CDSIN(A)**2*Y
C
      EGV(I)=CI*DATEN*U/V+EGV(I)
C
  500 CONTINUE
C
      ATEN=ATEN+DATEN
C
C
      RETURN
      END
