c
c     collect eigenvalues, fractional variances explained..
c
      do i=1,M
           sum(i) = sum(i) + S(i)**2
           sumtot = sumtot + S(i)**2
           do j=i,M
             partsum(i)=partsum(i)+S(j)**2
           end do
      end do
c
c
      open (unit=16,file='TPCA/tpca-eigenvals.out',status='unknown')
c
      do i=1,M
          write (16,*) i,S(i),
     $      real(sum(i)/sumtot),
     $      one-real(partsum(i+1)/sumtot)
      end do
c
      do i=1,ipc
        id1 = i/10
        id2 = i-id1*10
        name1 = 'TPCA/eof'
     $     //char(48+id1)//char(48+id2)//'.out'
        open (unit=30+i,file=name1,status='unknown')
        do j=1,iabv
           eof(j,i)=real(VV(j,i))
           write (30+i,*) j,real(VV(j,i))
        end do
        close (unit=30+i)
      end do
c
      do i=1,ipc
        id1 = i/10
        id2 = i-id1*10
        name2 = 'TPCA/pc'
     $     //char(48+id1)//char(48+id2)//'.out'
        open (unit=30+i,file=name2,status='unknown')
        do j=1,nmax1
           write (30+i,*) j,real(UU(j,i))
        end do
        close (unit=30+i)
      end do
c
c
