24小时热门版块排行榜    

查看: 4232  |  回复: 12
本帖产生 1 个 模拟EPI ,点击这里进行查看

zyj8119

木虫 (著名写手)

[交流] 【原创】在gromacs的gro中插入小分子 已有8人参与

在gromacs的水盒子中插入小分子一直是一个难题,今天我介绍一种编程插入方法,大家又可以看到程序的威力。可以在表面活性剂的水盒子中插入CO2,这个是原始的没有插入CO2的水盒子的gro文件,gro文件来自于杨小震的教材。
http://pic.muchong.com/file.php?id=207
在VMD中显示的图画是这样的:

FORTRAN程序是这样的:
CODE:
  integer nsurf,natom0,nco2,tatom,nch4
        real xc,yc,zc,dl,blx,bly,blz
*     blx,bly,blz are the length of simulation box in x,y,z direction, respectively.
        parameter(nsurf=36,tatom=43,natom0=9180,nch4=0,nco2=1000,
     &          blx=10,bly=10,blz=15)
        character resid(natom0)*8,atomname(natom0)*3,co2name(3)*3
        integer atomid(natom0),atomsn,molsn
        real coor(natom0,6),co2(nco2*3,3),ch4(nch4,3)
       
        open(10,file='box.gro',status='old')
        do 20 i=1,natom0
        read(10,*)resid(i),atomname(i),atomid(i),coor(i,1),coor(i,2),
     &          coor(i,3)
20    continue
      close(10)

      do 25 i=1,nco2*3
          do 26 j=1,3
          co2(i,j)=0.0
26      continue
25    continue


********************* add CO2 *************************

        do 30 i=1,nco2
50        xc=RAN2(IDUM)*blx
        yc=RAN2(IDUM)*bly
        zc=RAN2(IDUM)*blz
          do 40 j=1,natom0
          dl=sqrt((xc-coor(j,1))**2+(yc-coor(j,2))**2+(zc-coor(j,3))**2)
          if(dl.lt.0.25) goto 50
40      continue

        if(i.ge.2)then
            do 60 k=1,i-1
            kp=(k-1)*3+2
            dl=sqrt((xc-co2(kp,1))**2+(yc-co2(kp,2))**2+(zc-co2(kp,3))**2)
            if(dl.lt.0.25) goto 50
60        continue
        endif
*************** add CO2 *************************
        co2((i-1)*3+2,1)=xc
        co2((i-1)*3+2,2)=yc
        co2((i-1)*3+2,3)=zc

        co2((i-1)*3+1,1)=xc-0.115
        co2((i-1)*3+1,2)=yc
        co2((i-1)*3+1,3)=zc                      

        co2((i-1)*3+3,1)=xc+0.115
        co2((i-1)*3+3,2)=yc
        co2((i-1)*3+3,3)=zc      
30    continue


*************** add CH4 *************************

        do 62 i=1,nch4
63        xc=RAN2(IDUM)*blx
        yc=RAN2(IDUM)*bly
        zc=RAN2(IDUM)*blz
          do 64 j=1,natom0
          dl=sqrt((xc-coor(j,1))**2+(yc-coor(j,2))**2+(zc-coor(j,3))**2)
          if(dl.lt.0.25) goto 63
64      continue

            do 65 kp=1,nco2*3
            dl=sqrt((xc-co2(kp,1))**2+(yc-co2(kp,2))**2+(zc-co2(kp,3))**2)
            if(dl.lt.0.25) goto 63
65        continue


        ch4(i,1)=xc
        ch4(i,2)=yc
        ch4(i,3)=zc      
62    continue



****************** add CH4 ************************


******************OUTPUT THE NEW GRO FILE ************************

      open(70,file='system.gro',access='append')
        write(70,'(A6)')'system'
        ktotal=natom0+3*nco2+nch4
        write(70,'(I8)')ktotal
      
        do 120 i=1,nch4
        molsn=i
        atomsn=i
        write(70,666)molsn,'MET','CME',atomsn,
     &             ch4(atomsn,1), ch4(atomsn,2),ch4(atomsn,3)
120   continue

      co2name(1)='OAA'
        co2name(2)='CAC'
        co2name(3)='OAB'
        do 100 i=1,nco2
          do 110 j=1,3
          molsn=i+nch4
          atomsn=(i-1)*3+j+nch4
          kjishu=(i-1)*3+j
          write(70,666)molsn,'DRG',co2name(j),atomsn,
     &               co2(kjishu,1),co2(kjishu,2),co2(kjishu,3)
110     continue
100   continue


        do 80 i=1,nsurf
          do 90 j=1,tatom
          molsn=nco2+i+nch4
          atomsn=nco2*3+(i-1)*tatom+j+nch4
          kjishu=(i-1)*tatom+j
          write(70,666)molsn,'MOR',atomname(kjishu),atomsn,coor(kjishu,1),
     &                   coor(kjishu,2),coor(kjishu,3)
90      continue
80    continue
******************OUTPUT THE NEW GRO FILE ************************

666   format(I5,A3,4X,A3,I5,3F8.3)
      write(70,'(3F10.5)')blx,bly,blz
        write(70,*)''
      close(70)

       


        end


      FUNCTION RAN2(IDUM)
  
      INTEGER idum,IM1,IM2,IMM1,IA1,IA2,IQ1,IQ2,IR1,IR2,NTAB,NDIV
      REAL ran2,AM,EPS,RNMX
      PARAMETER (IM1=2147483563,IM2=2147483399,AM=1./IM1,IMM1=IM1-1,
     *IA1=40014,IA2=40692,IQ1=53668,IQ2=52774,IR1=12211,IR2=3791,
     *NTAB=32,NDIV=1+IMM1/NTAB,EPS=1.2e-7,RNMX=1.-EPS)
        INTEGER idum2,j,k,iv(NTAB),iy
      SAVE iv,iy,idum2
      DATA idum2/123456789/, iv/NTAB*0/, iy/0/
      if (idum.le.0) then
        idum=max(-idum,1)
        idum2=idum
        do 11 j=NTAB+8,1,-1
          k=idum/IQ1
          idum=IA1*(idum-k*IQ1)-k*IR1
          if (idum.lt.0) idum=idum+IM1
          if (j.le.NTAB) iv(j)=idum
11    continue
        iy=iv(1)
      endif
      k=idum/IQ1
      idum=IA1*(idum-k*IQ1)-k*IR1
      if (idum.lt.0) idum=idum+IM1
      k=idum2/IQ2
      idum2=IA2*(idum2-k*IQ2)-k*IR2
      if (idum2.lt.0) idum2=idum2+IM2
      j=1+iy/NDIV
      iy=iv(j)-idum2
      iv(j)=idum
      if(iy.lt.1)iy=iy+IMM1
      ran2=min(AM*iy,RNMX)
      return
      END      

的操作文件,然后生成新文件,gro文件变成这样的:
http://pic.muchong.com/file.php?id=208
在VMD中的显示变成:

有一部分水分子选择了VDW后,仍然还是显示细线模型,不知道是为什么?其中nsurf是表面活性剂的个数,tatom是单个的表面活性剂分子的原子个数,nCO2是要插入CO2的个数,kjishu是表示对于某种原子个数的计数,molsn是分子个数,atomsn是总体原子个数计数。

[ Last edited by zyj8119 on 2010-12-14 at 12:33 ]
回复此楼

» 收录本帖的淘帖专辑推荐

MDs-Gromacs xuexijisuan

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by zyj8119 at 2010-12-14 03:09:42:
在gromacs的水盒子中插入小分子一直是一个难题,今天我介绍一种编程插入方法,大家又可以看到程序的威力。可以在表面活性剂的水盒子中插入CO2,这个是原始的没有插入CO2的水盒子的gro文件,gro文件来自于杨小震的教 ...

大家在不同的物质的盒子中都可以尝试这种办法。
好好学习,天天向上。
2楼2010-12-14 03:11:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

楼主是老杨的学生?
3楼2010-12-14 08:06:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by yalefield at 2010-12-14 08:06:57:
楼主是老杨的学生?

不是,只是拿以前的程序去做一下新的GRO文件。
好好学习,天天向上。
4楼2010-12-14 12:23:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

★ ★
ghcacj(金币+2):谢谢 2010-12-17 12:38:31
引用回帖:
Originally posted by zyj8119 at 2010-12-14 03:09:42:
在gromacs的水盒子中插入小分子一直是一个难题,今天我介绍一种编程插入方法,大家又可以看到程序的威力。可以在表面活性剂的水盒子中插入CO2,这个是原始的没有插入CO2的水盒子的gro文件,gro文件来自于杨小震的教 ...

我以前的程序是没有考虑水的,对于水分子的问题,可以不予考虑,可以在加完小分子后,直接加水。
好好学习,天天向上。
5楼2010-12-14 12:31:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by zyj8119 at 2010-12-14 03:09:42:
在gromacs的水盒子中插入小分子一直是一个难题,今天我介绍一种编程插入方法,大家又可以看到程序的威力。可以在表面活性剂的水盒子中插入CO2,这个是原始的没有插入CO2的水盒子的gro文件,gro文件来自于杨小震的教 ...

问下版主,蛋白质中也可以插入CO2,N2,CH4这样的小分子吗?研究其相互作用?
好好学习,天天向上。
6楼2010-12-14 13:50:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dujunhui

金虫 (正式写手)

这是用的什么软件啊?
7楼2010-12-16 11:24:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

★ ★
ghcacj(金币+2):谢谢 2010-12-30 09:53:54
引用回帖:
Originally posted by dujunhui at 2010-12-16 11:24:52:
这是用的什么软件啊?

gromacs的构型文件.gro啊。
好好学习,天天向上。
8楼2010-12-16 11:30:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

moueor

金虫 (小有名气)


小木虫(金币+0.5):给个红包,谢谢回帖交流
都是心血,好好支持一下!
9楼2010-12-29 16:25:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaowu759

铁杆木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖
送鲜花一朵
谢谢原创的分享!
10楼2011-07-23 09:58:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyj8119 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[有机交流] 一个有机合成实验室都需要哪些设备? 50+3 kf2781974 2026-07-31 9/450 2026-08-04 03:56 by kf2781974
[教师之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 jRl3mE6ddZGq 2026-08-03 7/350 2026-08-04 03:35 by k7OM8YghWbkC
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 jRl3mE6ddZGq 2026-08-03 6/300 2026-08-04 03:34 by k7OM8YghWbkC
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 jRl3mE6ddZGq 2026-08-03 5/250 2026-08-04 03:30 by k7OM8YghWbkC
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 cu9Nq1xK233Z 2026-08-03 7/350 2026-08-04 03:27 by k7OM8YghWbkC
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 cu9Nq1xK233Z 2026-08-03 4/200 2026-08-04 03:25 by k7OM8YghWbkC
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 cu9Nq1xK233Z 2026-08-03 8/400 2026-08-04 03:21 by k7OM8YghWbkC
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 cu9Nq1xK233Z 2026-08-03 12/600 2026-08-04 03:17 by k7OM8YghWbkC
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 cu9Nq1xK233Z 2026-08-03 7/350 2026-08-04 02:10 by Ocx3OKOzGU4q
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
[高分子] UV压敏胶开发 +3 ichall 2026-07-30 5/250 2026-08-03 14:40 by Sunrisepay
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 16/800 2026-08-03 12:23 by fuweiguochen
[基金申请] 面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇! +19 低垂的野花 2026-07-31 25/1250 2026-08-03 09:25 by gy116024
[基金申请] 2026年国自然面上资助率 +16 布布和一二 2026-07-30 22/1100 2026-08-03 09:20 by gy116024
[教师之家] 基础研究怎么拉横向,学校到款任务越来越多,难以完成 拉横向,都有哪些途径啊 +8 锦衣卫寒战 2026-07-28 12/600 2026-08-03 08:22 by syl200707
[基金申请] 微信指数没变化,科研之友没阅读 +15 wangze12014 2026-07-28 19/950 2026-08-02 20:05 by 蔡棒棒菂
[考博] 2027年申博 50+3 射雕英雄胜 2026-07-30 3/150 2026-08-02 09:36 by lfy8008
[高分子] HXDI做水性聚氨酯乳液,是不是特别容易出渣 15+3 yuyusuv 2026-07-29 3/150 2026-07-31 09:21 by huizingga
[基金申请] 系统今天又提示维护了,估计离放榜不远了 +11 winnerche 2026-07-29 15/750 2026-07-30 23:08 by jnhyjjm
[基金申请] 你们的时间戳变了吗 +3 archvillain 2026-07-30 4/200 2026-07-30 18:53 by levinzhwen
信息提示
请填处理意见