• Gaussian中有用的IOp一覽

    Gaussian中有用的IOp一覽

    文/Sobereva @北京科音

    First release: 2011-FEB-2  Last update: 2020-Nov-9


    Gaussian中IOp極多,包含了控制程序運行的幾乎全部信息,IOp的介紹可參考筆者的《Gaussian的Link、IOp與非標準計算路徑》(http://www.shanxitv.org/57)。大部分重要、常用的IOp都可以直接通過相應關鍵詞控制,由于關鍵詞明顯更容易記憶,這類IOp我很不建議通過編號輸入(比如總有人非要把pop=full寫成IOp(6/7=3)),基本不會出現在本文,但其中有個別經常在輸入文件中看到,為了方便對照也列出來。有少部分有用或很有用的IOp在Gaussian中并沒有直接提供對應的關鍵詞,這樣的IOp我在本文進行了總結,其中打星號的特別重要,是應當熟悉的。這里主要是解釋每條IOp的要點,并不完整,與官方提供的相應IOp說明也并不相同,使用時建議同時查閱官方的解釋(http://gaussian.com/iops/),有個別的IOp在官方文檔是查不到的。Gaussian版本不同,IOp信息也會發生一定改變,本文以Gaussian09為依據。


    *IOp(1/7=N) 設定優化時的收斂限。力的RMS收斂限設定為N*10^-6(即Threshold顯示的值),最大受力被設為1.5*N*10^-6。RMS位移會設為4*N*10^-6 bohr,最大位移會被設為6*N*10^-6 bohr。
    *IOp(1/8=N) 在優化的時候以N*0.01 bohr/弧度為最初置信半徑,如果優化中不動態更新置信半徑,則每一步步長都不會大于這個值(并非是必須等于這個值)。減小其數值有助于解決收斂震蕩問題,如果勢能面平緩,則應當加大以加快優化速度。默認是30。等價于opt關鍵詞中maxstep選項。
     IOp(1/9=x) 設定對置信半徑的處理。默認對于尋找極小點會每步自動更新置信半徑,對于過渡態尋找則不會。=1代表不更新,=2代表更新,對應opt中NoTrustUpdate和TrustUpdate關鍵詞。當步長超過置信半徑時處理方法用10和20來選擇,10代表將位移向量乘以刻度因子使其模等于置信半徑(對尋找過渡態是默認的),20代表在置信半徑對應的超球面上尋找能量極小點(對尋找極小點是默認的)。
    *IOp(1/11=x) =1即noeigentest關鍵詞,=2為總是測試勢能面曲率符號,錯了就停止任務,即eigentest關鍵詞。默認對LST/QST方法找過渡態及尋找極小點不測試,對Z矩陣或笛卡爾下TS任務進行檢測。
     IOp(1/39) 控制計算極化率、頻率等任務時有限差分的步長,或者IRC的步長。
     IOp(1/40=N) EF方法優化(沒有解析導數的方法默認用的優化方法)過程中每N步重新精確計算一次Hessian矩陣,期間只是使用一階導數更新之前的Hessian矩陣。
     IOp(1/111=N) 設定溫度為N/1000 K,若N為負數則為N/1000000 K。
     IOp(1/112=N) 設定壓力為N/1000 atm,若N為負數則為N/1000000 atm。
     IOp(2/12=x) 默認是1,僅當距離為0時才報錯,即geom=nocrowd。=2是小于0.5埃就報錯,即geom=crowd。=3是即便原子間距離為0,L202也不報錯,此選項似乎目前不能用。
     IOp(2/14=x) 使用內坐標時,控制是否測試內坐標線性依賴性,默認不做測試。見手冊geom=independent。
    *IOp(2/15=x) 控制L202對對稱性處理的細節。nosymm相當于1。2是仍然將分子弄到標準朝向,但不利用對稱性,3是根本不調用處理對稱性的模塊。4是用較松的標準判斷對稱性,然后將體系嚴格地對稱化成這種對稱性。
    *IOp(2/16=x) 如果優化過程中遇到點群改變怎么處理。1是繼續走但關了對稱性,2是繼續走仍使用舊對稱性,3是繼續走并使用新對稱性,4是停止任務。默認是3。
     IOp(2/17=N) 決定對稱性時,距離比較的容差為10^-N。
     IOp(2/18=N) 決定對稱性時,非距離比較的容差為10^-N。當IOp(2/17=4,2/18=3)時相當于symm=loose。
    *IOp(3/10=x) 設定以何種基函數方式儲存波函數信息。1000和2000控制是否將指數相同的S和P殼層組合成SP殼層,默認是2000(組合),1000代表分裂開(int=SplitSP關鍵詞)。100000將收縮基組完全去收縮化,即基函數數目將與高斯函數數目一致。
     IOp(3/18=1) 輸出贗勢信息,和用了GFPrint關鍵詞的效果一樣。
    *IOp(3/24=1) 1、10、100可以分別以老方式、Gen的輸入格式、某種易讀的方式輸出基組信息。1000輸出殼層所屬中心坐標。x0000、x00000可以控制輸出的基組、密度擬合基組信息是否先做歸一化。
     IOp(3/26=N) 控制L311、L314的雙電子積分精度,計算到10^-N,默認為N=10。設為11可以做到盡可能精確。這個目前沒什么用,L311和L314模塊已經廢棄了
     IOp(3/27=N) 扔掉數值小于10^-N以下的雙電子積分信息,默認N=10。
     IOp(3/29=N) 使單電子積分(L302)的精度做到10^-N,默認是N=13。
    *IOp(3/32=2) 避免去除線性相關的基函數。默認是檢驗重疊矩陣本征值,發現存在線性相關問題就去掉多余基函數。
    *IOp(3/33=1) 輸出單電子積分、核哈密頓、勢能、多極矩/重疊積分矩陣(overlap那項)。=3用標準格式輸出雙電子積分,=4用debug格式輸出雙電子積分(對半經驗無效)。=5相當于1、3聯用,=6相當于1、4聯用。(注,要想輸出雙電子積分,光寫這IOp是沒用的,還得寫extralinks(L316) scf=conventional noraff)
     IOp(3/53=N) 設定ECP積分精度為10^-N,-1則不截斷。
    *IOp(3/59=N) 與3/32相關,控制扔掉重疊矩陣本征向量的標準為10^-N。
     IOp(3/60=x) 控制對廣義收縮基組的正交化和簡化處理。-1是不做正交化和簡化,默認是2,即做正交化并去掉系數小的GTF。1是正交化并只去除系數為0的GTF,N是做正交化并去除系數小于10^-N的GTF。在Gaussian與其它量化程序計算結果相比較時此選項有用。
     IOp(3/74=x) 設用什么密度泛函,負數都是交換和相關泛函組合好的,包括那些雜化泛函,如-5=B3LYP,-24=O3LYP,-33=X3LYP。0-99以內的都是代表相關泛函,100及以上的都是代表交換泛函,這兩個可以任意組合起來,比如402=BLYP。
    *IOp(3/76=MMMMMNNNNN) 將HF交換項和DFT交換項按照NNNNN/10000比MMMMM/10000的比例組合。
    *IOp(3/77=MMMMMNNNNN) 使LDA和高階交換泛函按照NNNNN/10000比MMMMM/10000的比例組合。
    *IOp(3/78=MMMMMNNNNN) 使LDA和高階相關泛函按照NNNNN/10000比MMMMM/10000的比例組合。
    *IOp(3/86=N) 扔掉角動量量子數>=N的基函數。
    *IOp(3/93=1) 設定核電荷用點電荷描述,而Gaussian對標量相對論計算默認用的是s型高斯函數描述,為了與文獻比較有時需要設定此項。
     IOp(3/107) 設置定義短程和長程HF交換項的ω值。0時使用標準HF交換項,MMMMMNNNNN時短程用NNNNN/10000的HF交換而長程用MMMMM/10000的HF交換。這兩個數對應于輸出文件中HFx后面的wShort和wLong。
     IOp(3/108) 設置定義短程和長程DFT交換項的ω值。0時使用標準DFT交換項,MMMMMNNNNN時短程用NNNNN/10000的DFT交換而長程用MMMMM/10000的DFT交換。這兩個數對應于輸出文件中DFx后面的wShort和wLong。
    (注:上面兩個選項字面上的意思有點誤導性。實際上,將3/107和3/108都設為MMMMM00000,就相當于用了ω參數為MMMMM/10000的范圍分離泛函。對GGA加LC-時ω默認是0.47/Bohr,等價于0470000000。wB97X默認是ω=0.3,等價于0300000000,但注意wB97X短程是雜化泛函,其雜化比例有參數另設。3/119、3/120、3/121可以具體用來設長程和短程HF、DFT交換/相關項的數值)
     IOp(3/109) 設定短程和長程DFT相關項。0時使用標準DFT相關項,MMMMMNNNNN時短程用NNNNN/10000的DFT相關而長程用MMMMM/10000的DFT相關。
     IOp(3/111=1) PBC計算一開始額外輸出每個晶胞與中心的距離。
     IOp(3/116=x) 具體控制SCF任務的類型,比如限制性、非限制性、實數、復數等問題。
    *IOp(3/124=4) 去掉色散校正。例如wB97XD結合這個關鍵詞的時候就會把其自帶的色散校正關閉掉。
    *IOp(3/125=x) 給MP2計算的二階微擾能(E2)中自旋平行項和自旋相反項貢獻設定校正系數,-3是讓自旋相反項為0,-2是讓自旋平行項為0,-1是讓兩項都為0(即還原到HF結果)。設為MMMMMNNNNN是自旋平行項與自旋相反項的能量貢獻以MMMMM/10000比NNNNN/10000的比例組合,利用這個可以實現比如SCS-MP2,即IOp(3/125=0333312000)。
     IOp(4/6=x) 設定讀入的初猜波函數是否做正交歸一性檢查、正交化和投影。
     IOp(4/11=x) 設置初猜類型、Harris初猜時所用的積分格點設定。
    *IOp(4/15=N) 設定初猜時的自旋多重度為N。
     IOp(4/39=N) 設定guess=mix時的角度為Pi/N,默認N=4。
    *IOp(4/43=3) 在CASSCF任務中且組態數很多時,使所有組態的信息都輸出出來(默認是僅在組態數少的時候才輸出)。
     IOp(4/68=N) 設定分子力學優化微迭代的收斂標準為10^-N。
    *IOp(5/7=-1) MCSCF中不做迭代只做CI(用于實現CAS-CI)。設為N時SCF和MCSCF最大迭代次數為N次。
     IOp(5/9=1) 使用SCF直接最小化(L503)使密度矩陣收斂到10^-3時切換到普通SCF過程。
    *IOp(5/13=1) SCF不收斂時仍繼續執行后續任務。默認是0(等價2),不收斂就停。
    *IOp(5/14=x) For L502,=1對于RHF任務,迭代結束后以UHF波函數形式記錄,對UHF任務起到跳過自旋湮滅的作用(注意得到的密度矩陣將完全錯誤);=2保存自旋湮滅后的密度矩陣,故波函數分析模塊L607使用的波函數將會是自旋湮滅后的;10=在第一次迭代計算完雙電子項后結束;=20僅從儲存的實空間Fock矩陣重新計算能帶結構。
     IOp(5/15=2) 利用對稱性約束使得各個不可約表示軌道的占據方式在迭代過程中保持和初猜波函數一樣(用SCF=QC也可以達到相同目的)。默認=1,即允許發生改變。
     IOp(5/16=x) For L502,設定SCF中對角化方法。
     IOp(5/17=x) For L510,設定MCSCF中對角化方法,1000=為多參考態MP2生成數據,10000=試圖控制根翻轉。
    *IOp(5/33=x) =1在每次迭代時輸出:單電子能量(動能+核吸引勢能)、電子間庫侖作用能(對于雜化泛函,HF交換能部分完全包含在其中)、DFT交換能和DFT相關能。后三項之和即為電子間總相互作用能。=3在每次迭代后輸出核哈密頓矩陣、MO系數、本征值、密度/自旋密度矩陣、Fock矩陣等一大堆矩陣。PBC計算時在最后迭代后還能輸出不同k點的晶體軌道能。
     IOp(5/37=N) 每N次迭代完整構成一次Fock矩陣,而不是默認的每20次一次(期間通過incremental Fock增量方法近似構建Fock矩陣以節約時間)。-1則不用增量方法構成Fock矩陣。
    *IOp(5/38=x) 控制直接SCF過程(每次迭代重算積分)中積分精度。默認=5,允許VarAcc(積分精度可變),=1不允許,=2比當前收斂情況精度高三位小數,=3在最終迭代前用當前收斂情況同樣的精度,最終迭代時高兩位小數。=4首先收斂到10^-5(這個過程電子積分精度為10^-6),然后再完全收斂到期望精度,=7全精度雙電子積分。
     IOp(5/42=N) 為1時在MCSCF模塊中對所有軌道做定域化,設為N時只對前N個軌道做定域化。
    *IOp(5/70=N) 設定解決SCF收斂問題的分數占據方法(溫度展寬)的溫度為N。
     IOp(5/75=N)~(5/78=N) 分別設定分數占據涉及的Alpha電子數、Alpha軌道數、Beta電子數、Beta軌道數。
     IOp(5/80)、IOp(5/81)、IOp(5/82) 設定SCF中共軛梯度法的選項,分別設定最大步長、所用方法和最大步數、收斂標準。
     IOp(5/83=N) SCF中DIIS最大子空間維度,默認是20。
     IOp(5/86=x) 設定能量升高時是否降低DIIS子空間維度,何時開啟能級移動及能級移動的量。
     IOp(5/87=x) 設定構建Fock矩陣的精度,越大越準。默認是10。等價于用int=acc2e=x關鍵詞
     IOp(5/102=N) 設CAS-MP2最大組態數是N,默認是1000。
    *IOp(5/103=N) 設置IOp(5/33=3)輸出的每個k點的占據和非占據軌道數目都為N,默認是5。
    *IOp(6/7=3) 輸出所有的分子軌道信息,即pop=full。
    *IOp(6/8=3) 在L601模塊中輸出密度矩陣。
    *IOp(6/17=x) 設定L602(諸如prop關鍵詞會涉及)計算電場及梯度、靜電勢屬性時包含哪些成分的貢獻。=0計算全部貢獻,=1只計算原子核的貢獻,=2只計算電子的貢獻,-N只計算N號殼層的貢獻。
     IOp(6/20=x) 設定擬合靜電勢電荷的方法和元素半徑的定義。-1=讀入自行設定的擬合點,1000=只擬合重原子電荷,10000只擬合活性原子電荷。
    *IOp(6/26=x) 設定L602、L604模塊中使用哪種密度,默認是1=總密度,2=Alpha密度(好像程序不認)、3=Beta密度、4=自旋密度。
     IOp(6/27=22) 不僅輸出Mulliken電荷,還輸出Mulliken鍵級矩陣,即pop=bonding,實際上只是把Gross布居對角元設成了0而已。此選項數值千位數若是1,可以讀入自定義權重而不是均分交叉項來做Mulliken分析。
    *IOp(6/33=2) 輸出擬合靜電勢時的點(單位為埃)和每個點的精確靜電勢(a.u.)。
     IOp(6/35~39、6/53~55) 詳細設定aim模塊(L609)的任務類型和參數
    *IOp(6/41=N) 擬合ESP電荷時每個原子用N個同中心的點層為,默認N=4。
    *IOp(6/42=N) 擬合ESP電荷時每單位面積的點為N個,默認N=1。17時每個原子大概用2500個點,對于大分子可以稍微降低這個值以減少計算量。
     IOp(6/51=N) 做Extended Koopman's Theorem (EKT)計算,獲得10個IP和EA,見test0362、test0363的例子。
     IOp(6/65=-1) 做NCS分析時讓所有NLMO的貢獻都顯示出來
     IOp(6/75=x) 輸出CM2電荷。Lowdin電荷、Mayer鍵級也一起輸出。x應設為計算波函數所用的理論方法和基組,可以為以下值:
     1 = HF/MIDI!(5D)   
     2 = HF/MIDI!(6D)   
     3 = HF/6-31G*      
     4 = BPW91/MIDI!(5D)
     5 = BPW91/MIDI!(6D)
     6 = B3LYP/MIDI!(5D)
     7 = BPW91/6-31G*   
     8 = HF/6-31+G*     
     9 = HF/cc-pVDZ     
    10 = BPW91/DZVP(6D) 
    11 = AM1            
    12 = PM3            
    14 = ZINDO/S2     
     IOp(6/76=x) 將L607(NBO模塊)的線性依賴判斷閾值設為10^-x。默認x=6。
     IOp(6/79=1) 輸出Hirshfeld電荷(第一列是Hirshfeld電荷,后三列分別是原子的x/y/z偶極矩(a.u.)),G09可以直接用pop=hirshfeld。g03中必須用6d基函數,否則結果是NaN,g09沒這個問題。=3時還利用原子偶極、四極矩計算原子間相互作用能。
    *IOp(6/80=1) 輸出Lowdin電荷、Mayer鍵級。
    *IOp(6/83=111) 輸出每個原子的不同角動量原子軌道的布居數,以及每個分子軌道中各種角動量原子軌道的成分,分子軌道中d、f原子軌道的貢獻和及具體組成也會被輸出。
    *IOp(6/84=-1) 6/83默認只分析占據軌道,此指令讓其分析所有軌道。設為N是分析全部占據軌道和N個最低空軌道。
    *IOp(7/32=x) 將能量、核坐標、受力、力常數之類的信息輸出到scratch/fort.7文件中,可以通過參數設定輸出哪些內容,以及什么坐標下、什么格式。
     IOp(7/33=1) 做freq時,輸出更多細節信息,如偶極矩導數、極化率導數、振動極化率來自各振動模式的貢獻等。
    *IOp(7/64=3) 在freq任務中,將振動頻率做洛倫茲展寬成為紅外光譜x-y數據點,可以導入諸如origin等程序繪制紅外光譜圖。如果也做了Raman,也會得到Raman光譜x-y數據點。
     IOp(7/90=N) 對大體系只分析最低N個振動模式,此功能似乎目前不能用。
     IOp(8/11=N) 0是默認,當MO系數大于1000,或占據軌道與虛軌道能量小于0.001,或內核-價軌道混合過量時,自動終止任務。1則只輸出提示而不終止任務。
     IOp(9/25=x) 控制每一次迭代、或是第一次和最后一次迭代,或是不輸出電子對兒對相關能的貢獻。
     IOp(9/26=M) 每次使用硬盤儲存M個占據軌道的積分變換,對于解決積分變換過程中硬盤不夠有幫助,可將M依次設小直到能算。
     IOp(9/26=1) 歸一化后HF波函數(微擾波函數除外),即令總波函數的模Norm(A)=1,可參考手冊CID關鍵詞。默認只是對參考態HF行列式波函數歸一化(Intermediate normalization)。
    *IOp(9/28=-1) 在CID/CISD迭代的最后一輪把波函數的全部組態系數都打印出來。由于用了中間歸一化,所以還需要除以NORM(A)才是真正的系數。-3是不輸出系數,設為N是輸出系數大于0.0001*N的組態(默認打印大于0.1的)。
     IOp(9/30=x) 控制計算單粒子密度矩陣。
     IOp(9/40=x) 對于L906(半直接MP2),=1時MP2使用CASSCF波函數作為參考態,相當于CASSCF任務中同時寫上MP2關鍵詞。對于L914(CIS、TDDFT等任務),輸出每個激發態信息時將其中組合系數絕對值大于10^-x的行列式輸出出來,默認是x=1。
     IOp(9/44=3) 算基態密度以及來自基態的躍遷密度,還計算所有激發態間的躍遷密度。默認是2,只算算基態密度以及來自基態的躍遷密度。1是計算每個激發態密度。這些結果會被填到rwf文件633位置內。
     IOp(9/46=N) Davidson迭代中(在CIS、TDDFT等任務中都會用到),最低N個態系數收斂就宣告迭代階數,而不是等所有要算的激發態的系數都收斂才結束。
     IOp(9/47=x) Davidson迭代中,=1時不做任何迭代(只用初猜),=2時只做一次迭代后停止。
     IOp(9/76=N) Davidson迭代中最大向量數。
     IOp(11/18=N) 將原子中心基函數下的2PDM(Two-particle-density-matrix)寫入rwf文件N號位置里。
    *IOp(11/28=x) x為負數:計算指定類型的2PDM。x為正數:指定1PDM、W、2PDM信息分別儲存到的rwf文件的x、x+1、x+2位置,默認是626。
     IOp(11/29=x) =1將1PDM從MO轉到AO,=10將2PDM從MO轉到AO,=100將AO 2PDM根據殼層排序。
    *IOp(11/33=3) 輸出2PDM。一般結合IOp(11/18=N),計算相應類型的2PDM。
    *IOp(99/6=100) 輸出.wfn文件,=1100在.wfn中使用自然軌道,=1200/1300連帶著磁軌道導數信息。
    *IOp(99/13=x) 控制這次調用L9999是否就是整個任務的結束,1=是,2=否,3=回到Link 1。
    *IOp(99/18=N) 默認是0,即輸出.wfn不包含虛軌道,-1包含所有虛軌道,N輸出N個虛軌道。
    久久精品国产99久久香蕉