상길! 홈페이지 상길이를 만나요| ZanNavi's space
  현재위치 ► ZanNavi's space : Research : KRHF  

----------------------------------------------------------------------
1997-1999 @KAIST

KRHF input 만들기


(input file의 이름은 argosin으로 되어있다고 가정, shell script를 보면서 적당히 고칠수 있을 것이다.)
    ARGOS의 input file : ARGOSIN
            output file : ARGOSLS
            labeled integral files : AOINTS, AOINTS2
    
계산 순서
  1. AREP 계산과 G94의 결과와 같은지 비교. 만약 다르다면 REP계산은 할 생각도 하지말라.
  2. AREPMO를 읽어서 REP 계산에 이용한다. argosin에서 KRHF SCF input부분 중 처음 숫자를 1로 바꾼다. 그리고 계산결과로 나온 argosin.krmout을 argosin.krmoin으로 바꾼다. REP계산에서도 AREP의 MO를 읽어서 계산하는 것이 좀더 나은 결과를 준다.
  3. Bond length(or angle)를 변화시켜가면서 scan한다. 계산결과로 나온 argosin.krmout을 argosin.krmoin으로 바꾸어서 이전에 사용된 계산의 MO를 읽는 것이 빨리 계산되며 좀더 나은 결과를 준다. input file에는 소수점 둘째자리까지 변화시켜가며 3~4개의 point에서 계산하는 것이 적당하다.
  4. Dunham analysis로 fitting한다. fitting결과는 소수점 세째자리까지 얻는다.
예제 input파일을 보자. KRHF는 symmetry를 이용하지 않으므로 (2)일부와 (3)-(7)항목은 거의 바뀌지않고 사용된다. symmetry를 이용하는 원래의 argos input은 argos.doc파일을 참조하라.
  1. 적당한 제목을 붙여준다.
    ---------------------------------------------------------------------------
    TlH
    ---------------------------------------------------------------------------
    
    
  2. 첫번째부터 차례대로 이름을 붙이면 다음과 같다. KRHF에서 항상 같은 값으로 사용되는 항목에는 #로 표시하였다.
      # NGEN   : symmetry operators의 갯수.
                 KRHF에서는 symmetry가 없으므로 0을 넣어주면 된다.
        NS     : symmetry가 서로 다른 atom center의 갯수
        NAORDS : AO reduction set의 갯수
        NCONS  : basis set의 block 갯수
        NGCS   : AO에서 SO로 transform시키는 matrix의 갯수
                 일반적으로 NGCS == NAORDS
        ITOL   : overlap에서 AO integral의 tolerance값, 기본값은 20
        ICUT   : AO와 SO integral의 tolerance값, 기본값은 9
      # AOINTS : output integral file의 unit number
                 KRHF에서는 0, ARGOS기본값은 4
      # ONLY1E : 0이면 1-e와 2-e integral계산, 1이면 1-e만 계산
      # INRM   : 1이면 one-center integral에 대해 symmetry orbital normalize
        NCRS   : ecp와 so potential expansion의 서로 다른 set의 수
                 만약 TlH라면 1, Tl2H2라도 1, TlPb라면 2가 된다.
      # L1REC  : 1-e integral을 위한 maximum record length
      # L2REC  : 2-e integral을 위한 maximum record length
      # AOINT2 : output integral file의 unit number
                 KRHF에서는 1, ARGOS기본값은 8
      # FSPLIT : 1이면 1-e와 2-e integral값을 AOINTS 한 파일에 저장
                 2이면 2-e integral값을 AOINTS2에 따로 저장
                 KRHF에서는 1, ARGOS기본값은 2
      
    ---------------------------------------------------------------------------
    0  2  3  5  3  20  15  0  0  1  1  0  0  1  1
    ---------------------------------------------------------------------------
    
    
  3. Irrep label 갯수를 적어주고 라벨을 나열한다. KRHF에서는 symmetry가 없으므로 고칠 필요가 없다.
    • 주의 : 이것은 FORMATTED문장이다. 자리수를 꼭 맞추어야 한다. FORMAT(I3,12(I3,A3))
    • C2v인 경우 :   4   1a1   1a2   1b1   1b2
    ---------------------------------------------------------------------------
      1  1a  
    ---------------------------------------------------------------------------
    
    
  4. Irrep product의 갯수를 적고 irrep product 연산이 어떻게 정의되는지 직접 적어야 한다. KRHF에서는 symmetry가 없으므로 고칠 필요가 없다.
    • C2v인 경우 :
                         1        / Irrep product 갯수
                         4  3  2  / 연산 정의 4 = 3 x 2
                         
    ---------------------------------------------------------------------------
    0
    ---------------------------------------------------------------------------
    
    
  5. 윗줄에서 차례대로 s, p, d, f, ...를 의미하며 각 orbital의 갯수와 어떤 irrep에 속하는지 나열한다. 따라서 총 줄의 수는 AO reduction set의 갯수(NAORDS)가 된다.
    KRHF에서는 symmetry를 이용하지 않으므로 모두 같은 irrep(1)이 되며 따라서 사용되는 basis종류(d냐 f냐)만 신경쓰면 된다.
    ---------------------------------------------------------------------------
    (6D인 경우)
      1  1                          / s set
      3  1  1  1                    / p set
      6  1  1  1  1  1  1           / d set
    (5D인 경우)
      1  1                          / s set
      3  1  1  1                    / p set
      5  1  1  1  1  1              / d set
    ---------------------------------------------------------------------------
    
    
  6. AO를 SO로 바꾸어주는 부분이다. 총 NGCS개의 set이 존재한다.
    먼저 SO의 갯수, AO의 갯수, AO set의 index를 적어주고, symmetry를 적용하여 어떤 AO가 섞여서 SO가 나오는지 적어준다. 각 열이 AO에 해당 하고, 각 행이 SO에 해당한다.
    KRHF에서는 symmetry를 이용하지 않으므로 아래와 같이 적어주기만 하면 된다. 5D를 사용할 것인지 6D를 사용할 것인지 주의해야 하며 population analysis를 하기 위해서는 반드시 5D를 사용해야 한다. population analysis는 현재 cray버젼에서만 사용할수 있다.
    ---------------------------------------------------------------------------
    (6D인 경우)
    1  1  1                         / AO reduction set : s orbitals
      1
    3  3  2                         /                  : p orbitals
      1  0  0
      0  1  0
      0  0  1
    6  6  3                         /                  : d orbitals
      1  0  0  0  0  0
      0  1  0  0  0  0
      0  0  1  0  0  0
      0  0  0  1  0  0
      0  0  0  0  1  0
      0  0  0  0  0  1
    (5D인 경우)
    1  1  1                         / AO reduction set : s orbitals
      1
    3  3  2                         /                  : p orbitals
      0  0  1
      1  0  0
      0  1  0
    5  6  3                         /                  : d orbitals
     -1 -1  4  0  0  0
      0  0  0  0  1  0
      1 -1  0  0  0  0
      0  0  0  0  0  1
      0  0  0  1  0  0
    ---------------------------------------------------------------------------
    
    
  7. basis set을 적어주는 부분이다. 총 NCONS갯수 만큼의 basis set block이 존재한다.
    primitive갯수, (l+1)값, contracted basis갯수
    ---------------------------------------------------------------------------
    4  1  4				/ s orbital of Tl
        0.5323    1.0 0.0 0.0 0.0 
        0.3023    0.0 1.0 0.0 0.0 
        0.0964    0.0 0.0 1.0 0.0 
        0.0370    0.0 0.0 0.0 1.0 
    5  2  5				/ p orbital of Tl
        0.7128    1.0 0.0 0.0 0.0 0.0 
        0.2248    0.0 1.0 0.0 0.0 0.0 
        0.0994    0.0 0.0 1.0 0.0 0.0 
        0.0459    0.0 0.0 0.0 1.0 0.0 
        0.0213    0.0 0.0 0.0 0.0 1.0 
    5  3  5				/ d orbital of Tl
        9.9370    1.0 0.0 0.0 0.0 0.0 
        1.6752    0.0 1.0 0.0 0.0 0.0 
        0.7170    0.0 0.0 1.0 0.0 0.0
        0.3090    0.0 0.0 0.0 1.0 0.0
        0.1276    0.0 0.0 0.0 0.0 1.0 
    5  1  3				/ s orbital of H
     33.865000     0.0254938  0.0  0.0
      5.0947900    0.1903730  0.0  0.0
      1.1587900    0.8521610  0.0  0.0
      0.325840      0.0       1.0  0.0
      0.102741      0.0       0.0  1.0
    1  2  1				/ p orbital of H
      0.900    1.0
    ---------------------------------------------------------------------------
    
    
  8. ECP를 적어주는 부분
    제일 처음에 AREP에서 max_l값과 so의 갯수를 넣어준다. 단, KRHF에서는 so의 갯수를 (-)값으로 넣어주며 이것은 하나의 약속이다.
    ---------------------------------------------------------------------------
    4  -3				/ ECP of Tl
    6				/ g
      2     1.188500    -1.305280  
      2     2.826400   -11.615490 
      2     8.247200   -44.717980 
      2    20.529000  -130.115524 
      2    70.763200  -340.590473 
      1   223.323400   -53.444254 
    7				/ s-g
      2     0.985000    44.021089
      2     1.135800  -142.719578
      2     1.489600   282.763667
      2     2.107900  -306.241150
      2     2.925500   186.004451
      1    10.644300    55.996380
      0    34.876400     6.371788
    8				/ p-g
      2     0.290400     0.115591 
      2     0.920100   -54.439704 
      2     1.084500   175.902403 
      2     1.430100  -220.556211 
      2     1.989300   204.958085 
      2     2.780900  -130.962041 
      1     2.842100    45.825781 
      0    11.049000     5.996205 
    8				/ d-g
      2     0.432300    -0.218699  
      2     1.632300   -29.019674  
      2     1.959400    86.319069  
      2     2.657300  -154.261861  
      2     3.919600   263.326014  
      2     5.707100  -188.003359  
      1     9.006300    66.478281  
      0    45.861500     6.709649  
    8				/ f-g
      2     0.597400    19.797970  
      2     0.679300   -62.511195  
      2     0.860600   116.891258  
      2     1.185700  -202.106483  
      2     1.719400   274.155344  
      2     2.387800  -150.327522 
      1     3.857300    49.980030 
      0    13.488900     9.284637 
    8				/ p(so)
      2     0.290400      0.005999
      2     0.920100     -7.943666
      2     1.084500     31.194340
      2     1.430100    -48.783651
      2     1.989300     38.961025
      2     2.780900    -17.016225
      1     2.842100     -0.452240
      0    11.049000     -0.147665
    8				/ d(so)
      2     0.432300     -0.037005
      2     1.632300      4.031599
      2     1.959400     -9.421223
      2     2.657300      8.472723
      2     3.919600      1.512927
      2     5.707100     -7.754193
      1     9.006300      0.432276
      0    45.861500     -0.060172
    8				/ f(so)
      2     0.597400     -0.231395
      2     0.679300      0.712332
      2     0.860600     -1.238520
      2     1.185700      1.683135
      2     1.719400     -1.484585
      2     2.387800      0.504732
      1     3.857300      0.011897
      0    13.488900      0.000852
    ---------------------------------------------------------------------------
    
    
  9. Molecular Geometry에 해당하는 부분
    atom이름, basis set의 갯수, related atom, 핵전하(실수)
    • 주의 : atom과 전자수를 적어주는 곳은 FORMATTED문장이다. FORMAT(A3,2I3,F3.0) 그다음은 (x,y,z)좌표.
    • 주의 : 반드시 확인하라~~!!! bohr단위이다.
    (8)에서의 basis set index와 (7)번에서의 SO set index를 맞춰 적어준다. 마지막으로 ECP index를 표시한다. ECP가 없으면 0을 적어준다.
    ---------------------------------------------------------------------------
    Tl   3  1 13			/
      0.0000    0.0000    0.0000	/ (x,y,z)
      1  1				/ s set
      2  2				/ p set
      3  3				/ d set
      1				/ with so
    H    2  1  1			/
      0.0000    0.0000    3.5000	/ (x,y,z)
      4  1				/ s set
      5  2				/ p set
      0				/ without so
    
    ---------------------------------------------------------------------------
    
    
  10. KRHF에서 사용하는 SCF input이다. RS6000 version
         u:scf  <-- 요 문장은 꼭 적어주어야 한다.
         그 다음 문장은 주석이다.
         아래의 예제에서 나온 값으로 설명하면 다음과 같다.
         0   : 미리 만들어진 MO를 읽을 것인가 (1:읽는다, 0:읽지않는다)
         256 : 최대 iteration 횟수
         12  : energy criteria, 소수점 자리수
         6   : DIIS dimension (0:DIIS를 사용하지 않는다)
         0   : 모르겠다.
         -1  : AREP/REP계산 (-1:AREP, 1:REP)
         7   : occupation MO 갯수
        
    • 주의 : 각 행의 마지막에는 꼭 /를 넣어주어야한다.
    ---------------------------------------------------------------------------
    u:scf
    TlH : optimized geometry with AREP
    0  256  12  6  0  -1 /
    7  0  0  0  0        /
    ---------------------------------------------------------------------------
    
    
    KRHF에서 사용하는 SCF input이다. CrayC90 version
         u:scf  <-- 요 문장은 꼭 적어주어야 한다.
         그 다음 문장은 주석이다.
         아래의 예제에서 나온 값으로 설명하면 다음과 같다.
         0   : 미리 만들어진 MO를 읽을 것인가 (1:읽는다, 0:읽지않는다)
         0   : AREP/REP계산 (1:AREP, 0:REP)
         512 : 최대 iteration 횟수
         3   : 3번째 iteration부터 DIIS시작
         6   : DIIS dimension (0:DIIS를 사용하지 않는다)
         13  : energy convergence criteria 소수점 자리수
         13  : density convergence criteria 소수점 자리수
         13  : vector component minimum 소수점 자리수
         -1  : population analysis (-1:안한다, 1:한다)
         그 다음 문장은 print option에 해당한다.
         그 다음 문장은 symmetry갯수를 적어준다. KRHF에서는 무조건 1이다.
         7   : occupation MO 갯수
        
    • 주의 : 각 행의 마지막에는 꼭 /를 넣어주어야한다.
    ---------------------------------------------------------------------------
    u:scf
    TlH
      0  0  512  3  6  13  13  13  -1 /
      0 0 0 0 0 0 6 1 6 0 /
      1 /
    7  0   /
    ---------------------------------------------------------------------------
    
    
----------------------------------------------------------------------

이 페이지의 최종수정일: 1998.12.17
Copyright (C) 2000-2025 손상길
저작권에 대한 본 사항이 명시되는 한, 어떠한 정보 매체에 의한 본문의 전재나 발췌도 무상으로 허용됩니다. [copyleft]