24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 947  |  回复: 21
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

tpp001

金虫 (著名写手)

[交流] 【求助】新手请教一段程序的疑问....【已完结】

我的疑问是,在do i=1,natom, read (1,*) molname,atomname,index,x(i),y(i),z(i),这里do 做 一个循环,我后面的输出要求是输出,x(i-1),y(i-1),z(i-1), x(i),y(i),z(i),x(i+1),y(i+1),z(i+1)这3个坐标,这样输出可以吗??

open(1,file='benz-22.gro',status='unknown') !打开benz-co2.gro文件,并读取
        do istep=1, nstep
                read(1,*) sysname
                read(1,*) natom
                                do i=1, natom
                                        read(1,*) molname,atomname,index,x(i),y(i),z(i)
                                                if (atomname .eq.'Cb') then
                                                        r2=(x(i)-2.623)**2+(y(i)-2.554)**2
                                                if (r2 .LT. 0.01932) then
                                                        h2=(z(i)-2.608)**2
                                                if (h2 .LT. 0.5776 .AND. z(i) .NE. 2.608) then
                                                        open(20,file='aromaticco2.txt')
                                                        write(20,*)'Oa',x(i-1),y(i-1),z(i-1) !输出这个Cb原子的坐标和Cb编号的前面和后面的一个原子的坐标。
                                                        write(20,*)'Cb',x(i),y(i),z(i)
                                                        write(20,*)'Oc',x(i+1),y(i+1),z(i+1)

[ Last edited by 波不动 on 2009-11-25 at 23:52 ]
回复此楼

» 猜你喜欢

迷茫在知识的海洋里,需要你的指导。thankyou
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tpp001

金虫 (著名写手)

引用回帖:
Originally posted by maomao1210 at 2009-11-24 17:04:
open(1,file='benz-22.gro',status='unknown') !打开benz-co2.gro文件,并读取
        do istep=1, nstep
                read(1,*) sysname
                read(1,*) natom
          I_emuch=1
           do ...

首先,要谢谢你的回复,可是我是新手,真是么有看懂你写的,能不能给说说的你的思路好吗?很着急!!!
open(1,file='benz-22.gro',status='unknown') !打开benz-co2.gro文件,并读取
        do istep=1, nstep
                read(1,*) sysname
                read(1,*) natom
          I_emuch=1
           do i=1, natom
          read(1,*) molname,atomname,index,x(i),y(i),z(i)
           if (atomname .eq.'Cb') then
             r2=(x(i)-2.623)**2+(y(i)-2.554)**2
            if (r2 .LT. 0.01932) then
             h2=(z(i)-2.608)**2
        if (h2 .LT. 0.5776 .AND. z(i) .NE. 2.608) then

             Index_emuch(I_emuch)=i  !这里是什么意思??index_emuch是一个数组吗?
               endif
               endif
               endif
            I_emuch=I_emuch+1
          Enddo

         Do J_emuch=1,I_emuch
        open(20,file='aromaticco2.txt')
       if(ii.gt.1)write(20,*)'Oa',x(ii-1),y(ii-1),z(ii-1) !输出这个Cb原子的坐标和Cb编号的前面和后面的一个原子的坐标。
        write(20,*)'Cb',x(ii),y(ii),z(ii)
        write(20,*)'Oc',x(ii+1),y(ii+1),z(ii+1)  !这里的ii 是怎么得到的???     
           Enddo
          Enddo
迷茫在知识的海洋里,需要你的指导。thankyou
6楼2009-11-24 21:03:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 22 个回答

jjdg

版主 (知名作家)

优秀版主


小木虫(金币+0.5):给个红包,谢谢回帖交流
努力学习!以正当途径!获得需要的知识!
2楼2009-11-24 12:43:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by tpp001 at 2009-11-24 09:25:
我的疑问是,在do i=1,natom, read (1,*) molname,atomname,index,x(i),y(i),z(i),这里do 做 一个循环,我后面的输出要求是输出,x(i-1),y(i-1),z(i-1), x(i),y(i),z(i),x(i+1),y(i+1),z(i+1)这3个坐标,这样输出可以 ...

很显然不行,i=1的时候,你仅仅读入了对应第一个原子的信息,何来i=2?。
3楼2009-11-24 16:49:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
open(1,file='benz-22.gro',status='unknown') !打开benz-co2.gro文件,并读取
        do istep=1, nstep
                read(1,*) sysname
                read(1,*) natom
          I_emuch=1
           do i=1, natom
          read(1,*) molname,atomname,index,x(i),y(i),z(i)
           if (atomname .eq.'Cb') then
             r2=(x(i)-2.623)**2+(y(i)-2.554)**2
            if (r2 .LT. 0.01932) then
             h2=(z(i)-2.608)**2
        if (h2 .LT. 0.5776 .AND. z(i) .NE. 2.608) then

             Index_emuch(I_emuch)=i
               endif
               endif
               endif
            I_emuch=I_emuch+1
          Enddo

         Do J_emuch=1,I_emuch
        open(20,file='aromaticco2.txt')
       if(ii.gt.1)write(20,*)'Oa',x(ii-1),y(ii-1),z(ii-1) !输出这个Cb原子的坐标和Cb编号的前面和后面的一个原子的坐标。
        write(20,*)'Cb',x(ii),y(ii),z(ii)
        write(20,*)'Oc',x(ii+1),y(ii+1),z(ii+1)        
           Enddo
          Enddo
4楼2009-11-24 17:04:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 求化学调剂 +4 wulanna 2026-03-28 4/200 2026-03-28 13:37 by 唐沐儿
[材料工程] 一志愿C9材料与化工专业总分300求调剂 +8 曼111 2026-03-24 9/450 2026-03-28 07:58 by YYYYX1234
[考研] 0703化学/290求调剂/本科经历丰富/工科也可 +9 丹青奶盖 2026-03-26 10/500 2026-03-28 07:45 by barnett0632
[考研] 315分求调剂 +7 26考研上岸版26 2026-03-26 7/350 2026-03-28 04:05 by fmesaito
[考研] 材料292调剂 +12 橘颂思美人 2026-03-23 12/600 2026-03-27 15:44 by caszguilin
[考研] 283求调剂(080500) +4 A child 2026-03-27 4/200 2026-03-27 15:34 by XPU李庆
[考研] 308求调剂 +7 墨墨漠 2026-03-25 7/350 2026-03-27 14:47 by 狂炫麦当当
[考研] 305求调剂 +5 哇卢卡库 2026-03-26 5/250 2026-03-27 14:01 by laoshidan
[考研] 材料学硕,求调剂 6+5 糖葫芦888ll 2026-03-22 10/500 2026-03-27 08:18 by hypershenger
[考研] 304材料求调剂 +4 钟llll 2026-03-26 4/200 2026-03-27 03:42 by wxiongid
[考研] 321求调剂 +6 wasdssaa 2026-03-26 6/300 2026-03-26 20:57 by sanrepian
[考研] 085602 289分求调剂 +8 WWW西西弗斯 2026-03-24 8/400 2026-03-26 16:33 by 不吃魚的貓
[考研] 一志愿 南京邮电大学 288分 材料考研 求调剂 +3 jl0720 2026-03-26 3/150 2026-03-26 13:39 by zzll406
[考研] 材料与化工328分调剂 +6 。,。,。,。i 2026-03-23 6/300 2026-03-25 22:30 by 418490947
[考研] 【2026考研调剂】制药工程 284分 求相关专业调剂名额 +4 袁奂奂 2026-03-25 8/400 2026-03-25 14:32 by lbsjt
[考研] 一志愿南航材料专317分求调剂 +5 炸呀炸呀炸薯条 2026-03-23 5/250 2026-03-24 16:52 by 星空星月
[考研] 求调剂一志愿武汉理工大学材料工程(085601) +5 WW.' 2026-03-23 7/350 2026-03-24 14:50 by sprinining
[考博] 26申博自荐 +3 whh869393 2026-03-24 3/150 2026-03-24 09:55 by 21018060
[考研] 275求调剂 +6 shansx 2026-03-22 8/400 2026-03-22 15:27 by barlinike
[考研] 求调剂 +5 Zhangbod 2026-03-21 7/350 2026-03-22 13:13 by Zhangbod
信息提示
请填处理意见