假设有一套未正交的矢量集,设为C1,C2,…,每个矢量Ci由v1,v2,…,等基矢量构成。在进行对称正交化的时候,这样进行:

  首先v1,v2,...,之间的重叠积分要知道,设为小s,基矢量正交的话s即为I了。
  计算各个Ci,Cj之间的内积,注意是四重循环,因为小s的影响。获得重叠矩阵大S。
  对角化S,获得本证值D和本征矢量X,对每个D值^(-1/2)获得D^(-0.5),(开根号后再倒数);然后X'D^(0.5)X,获得变换矩阵,设为d。
  (可以检验一下d’*S*d=I)
  然后Ck1(New)=dj1*Ck1+dj2*Ck2+...,获得最后的正交归一基矢。NewC

! ——————————– ! Acquire the new vector ! ——————————–

      X=C
      C=0.0d0
      do i=1,ndim
        do j=1,ndim
          do k=1,ndim
            C(k,i)=C(k,i)+D(j,i)*X(k,j)
          end do
        end do
      end do

!———————————-

最后满足的是NewC'*s*NewC=I 这里是s,不是S

  • orth_sym.txt
  • Last modified: 2019/09/24 00:23
  • (external edit)