anchor.diff:              D1(I2,N)=DD1*SI
               D2(I2,N)=-DD2*SI
      25 CONTINUE
  -   30 DO 40 I=1,NGSS
  +      DO 40 I=1,NGSS
              RR(I)=W(I)*R(I)
      40 CONTINUE
   
  
positive.code:          NGGG=2*NGAUSS
  !  7336    FORMAT('WARNING: NGAUSS=NPNG1')
  !  7337    FORMAT(' NG=',I3,'  DC2=',D8.2,'   DC1=',D8.2)
           CALL CONST(NGAUSS,NMAX,MMAX,P,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,S,SS,PPI,PIR,PII,R,DR,
       &                 DDR,DRR,DRI,NMAX,NCHECK)
           QEXT=0D0
           QSCA=0D0
  
negative.code: 
  C**********************************************************************
  
        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),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),RR(NPNG2),DV1(NPN1),DV2(NPN1)
  
        REAL*8  R11(NPN1,NPN1),R12(NPN1,NPN1),
       *        R21(NPN1,NPN1),R22(NPN1,NPN1),
  