使用AMBER中遇到的一些問題


1.讀取蛋白問題

讀取無配體pdb文件(loadpdb complex.pdb)時,出現一堆 FATAL: Atom .R<ARG 18>.A<HD1 27> does not have a type 錯誤,導致 check不過關,也無法 saveamberparm

錯誤原因:AMBER不能識別用戶PDB文件里特定殘基(<ARG 18>)的H原子

解決方法:我遇到的問題是很多H原子都無法被識別,所以解決方法比較直接,刪除所有氫,再根據AMBER的規則,重新添加H:

1) 使用pdb4amber刪除所有氨基酸的H:

pdb4amber -i WT.pdb -o WT_noH.pdb -y --dry

pdb4amber的幫助信息如下:

$ pdb4amber -h

Options:
  --version            show program's version number and exit
  -h, --help           show this help message and exit
  -i FILE, --in=FILE   PDB input file                      (default: stdin)
  -o FILE, --out=FILE  PDB output file                     (default: stdout)
  -y, --nohyd          remove all hydrogen atoms           (default: no)
  -d, --dry            remove all water molecules          (default: no)
  -p, --prot           keep only Amber-compatible residues (default: no)
  --noter              remove TER, MODEL, ENDMDL cards     (default: no)
  --constantph         rename GLU,ASP,HIS for constant pH simulation
  --most-populous      keep most populous alt. conf. (default is to keep 'A')
  --reduce             Run Reduce first to add hydrogens.  (default: no)
  --model=MODEL        Model to use from a multi-model pdb file (integer).
                       (default: use all models)

 

2) 使用reduce添加H原子:

reduce WT_noH.pdb > WT_H.pdb

3) 使用pdb4amber對加氫后的pdb文件進行規划化處理:

pdb4amber -i WT_H.pdb -o WT_new.pdb

 

2.小分子文件准備問題:

非標准殘基或者小分子文件,若想被amber讀入,則需要對小分子文件進行定義及分配力場參數。

簡單來說,需要以下兩類文件:

AGI.frcmod

AGI.lib

1.先對小分子文件加氫:

reduce AGI.pdb > AGI_h.pdb 

2.加氫完畢轉換為mol2格式:

antechamber -i AGI_new.pdb -fi pdb -o AGI.mol2 -fo mol2 -c bcc -s 2

3.用parmchk檢查參數的可用性,產生frcmod力場參數文件:

parmchk -i AGI.mol2 -f mol2 -o AGI.frcmod

4.加載AGI.frcmod和mol2文件到tleap中,產生lib庫文件:

$ tleap -f oldff/leaprc.ff99SB
> source leaprc.gaff
> AGI = loadmol2 AGI.mol2 > check AGI > loadamberparams AGI.frcmod > saveoff AGI AGI.lib

 可以參考另外一篇博客https://www.cnblogs.com/wq242424/p/9157072.html

3. GPU加速及多GPU運行問題:

擁有多GPU card時,使用 export CUDA_VISIBLE_DEVICES 命令指定使用哪張顯卡,

1.使用命令前先用 unset CUDA_VISIBLE_DEVICES 命令清空變量;

2.再使用 export CUDA_VISIBLE_DEVICES 命令設置使用哪張或者哪幾張顯卡;

 export CUDA_VISIBLE_DEVICES=0 使用0號顯卡(pmemd.cuda)

 export CUDA_VISIBLE_DEVICES=0,1 使用0,1兩張顯卡(mpirun -np 2 pmemd.cuda.MPI)

3.指定顯卡后,我們使用pmemd.cuda命令或者mpirun -np 2 pmemd.cuda.MPI命令(指定兩張顯卡)運行amber。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM