anchor.diff:  
   C**********************************************************************
   
  -      SUBROUTINE TMATR0 (NGAUSS,X,W,AN,ANN,S,SS,PPI,PIR,PII,R,DR,DDR,
  +      SUBROUTINE TMATR0 (NGAUSS,X,W,AN,ANN,PPI,PIR,PII,R,DR,DDR,
        *                  DRR,DRI,NMAX,NCHECK)
         INCLUDE 'ampld.par.f'
         IMPLICIT REAL*8 (A-H,O-Z)
  -      REAL*8  X(NPNG2),W(NPNG2),AN(NPN1),S(NPNG2),SS(NPNG2),
  -     *        R(NPNG2),DR(NPNG2),SIG(NPN2),
  +      REAL*8  X(NPNG2),W(NPNG2),AN(NPN1),R(NPNG2),DR(NPNG2),SIG(NPN2),
        *        J(NPNG2,NPN1),Y(NPNG2,NPN1),
        *        JR(NPNG2,NPN1),JI(NPNG2,NPN1),DJ(NPNG2,NPN1),
        *        DY(NPNG2,NPN1),DJR(NPNG2,NPN1),
        *        DJI(NPNG2,NPN1),DDR(NPNG2),DRR(NPNG2),
        *        D1(NPNG2,NPN1),D2(NPNG2,NPN1),
  -     *        DRI(NPNG2),DS(NPNG2),DSS(NPNG2),RR(NPNG2),
  -     *        DV1(NPN1),DV2(NPN1)
  +     *        DRI(NPNG2),RR(NPNG2),DV1(NPN1),DV2(NPN1)
   
         REAL*8  R11(NPN1,NPN1),R12(NPN1,NPN1),
        *        R21(NPN1,NPN1),R22(NPN1,NPN1),
  
positive.code:            SI=-SI
             SIG(N)=SI
      5 CONTINUE
     20 DO 25 I=1,NGAUSS
           I1=NGAUSS+I
           I2=NGAUSS-I+1
           CALL VIG ( X(I1), NMAX, 0, DV1, DV2)
  
negative.code:          NGGG=2*NGAUSS
  !  7336    FORMAT('WARNING: NGAUSS=NPNG1')
  !  7337    FORMAT(' NG=',I3,'  DC2=',D8.2,'   DC1=',D8.2)
           CALL CONST(NGAUSS,NMAX,X,W,AN,ANN,S,SS,NP,EPS)
           CALL VARY(LAM,MRR,MRI,A,EPS,NP,NGAUSS,X,P,PPI,PIR,PII,R,
       &              DR,DDR,DRR,DRI,NMAX)
           CALL TMATR0 (NGAUSS,X,W,AN,ANN,PPI,PIR,PII,R,DR,
       &                 DDR,DRR,DRI,NMAX,NCHECK)
           QEXT=0D0
           QSCA=0D0
  