24小时热门版块排行榜    

查看: 1254  |  回复: 13
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

totoymy

铜虫 (小有名气)

[求助] 想以时间为步长,dt=100ns,怎么操作啊??

程序如下:
MODULE PARA
IMPLICIT NONE

INTEGER*4, PARAMETER:: Ndim=12   

REAL,DIMENSION(Ndim,5):: pp

INTEGER*4::NOUT

END MODULE PARA

PROGRAM CM
USE PARA
IMPLICIT NONE

INTEGER:: i,j,k
INTEGER::t
real::x,y,z
REAL*8::r
REAL::s,m

OPEN (11, file='input.txt')

READ(11,*) ((pp(i,j),j=1,4),i=1,Ndim)
close(11)
   call random_seed()

t=1
DO
   call random_number(r)
   
   k=1
   s = 0.0
   do while(k<=Ndim)
      s=s+pp(k,4)
      m=s-pp(k,4)

      
      if (m           x=x+pp(k,1)
          y=y+pp(k,2)
          z=z+pp(k,3)
          open(12,file="result.txt",access='append')
          write(12,*) x,y,z,t,k
          close(12)  
          t = t + 1
      end if
      k=k+1
   enddo
   
   if (t>100) exit
enddo

end program cm

就是从0到10μs,每步100ns循环100次,怎么修改?
目前只是用数字1-100计步的。。。如何做?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

ben_ladeng: 专家考核存档 2011-11-03 17:49:43
引用回帖:
3楼: Originally posted by huruiusst at 2011-11-03 09:54:42:
你这个大循环能循环起来吗?没见过这样的循环格式的

很显然可以循环,这种循环没有次数限制,用 exit 退出,读文件,我一般都用这种循环……
4楼2011-11-03 12:09:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

ben_ladeng: 专家考核存档 2011-11-03 17:49:56
totoymy(金币+10): 2011-11-05 20:56:14
你所谓的时间,是指计算机运行的时间,还是别的?
5楼2011-11-03 12:10:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
8楼: Originally posted by totoymy at 2011-11-03 14:32:42:
纳秒,就是每一步是10的-7次方秒,一共走到10的-5次方秒,一共100下.关键是不会设置啊~

为什么要这么做?这样做的好处是啥?
10楼2011-11-03 14:40:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


jjdg(金币+1): 感谢参与 2011-11-04 23:40:46
引用回帖:
11楼: Originally posted by totoymy at 2011-11-04 09:47:46:
为了模拟实际情况吧,大侠帮帮忙吧·~~

这个忙我是没有办法帮的,呵呵……

实时系统似乎不是 Fortran 可以做的吧,反正我不知道如何做,呵呵……
12楼2011-11-04 18:00:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 totoymy 的主题更新
信息提示
请填处理意见