24小时热门版块排行榜    

查看: 464  |  回复: 0
【悬赏金币】回答本帖问题,作者夏沫有约将赠送您 20 个金币

夏沫有约

新虫 (著名写手)

[求助] 程序运行出错求助

program main
           dimension in(2),x(2)
           data ntrap /20/
           integer i
       real*8 in,c,d
           in(1)=-sqrt(2.0)/2.0
           in(2)=sqrt(2.0)/2.0
           c=0.0
           d=-1.0
        do i=1,ntrap,1
           call external f()
                   c=x(1)
                   d=x(2)
           in(1)=in(1)-2.0*c/1.0*vdotn(in(1),x(1),1) !新方向的x坐标表达式
           in(2)=in(2)-2.0*d/1.0*vdotn(in(1),x(1),1) !新方向的y坐标表达式
                   write(*,*) 'x(1)=',x(1),'x(2)=',x(2)
                   write(*,*) 'in(1)=',in(1),'in(2)=',in(2)
            end do
          stop
          end
           
          subroutine external f()
          dimension x(2),y(2)
          data x/2*0.0/
          b=2.0
          n=2
          m=10
          eps=1.0e-5
          call dnmtc(x,n,b,m,eps,y)
          write(*,*)
          do 10 i=1,n
10          write(*,100) i,x(i)
          write(*,*)
100          format(5x,'x(',i2,1x,')=',e13.6)
          end subroutine
         
          function f(x,n)
          dimension x(n),in(n)
          f1=x(1)*x(1)+x(2)*x(2)-1.0
          f2=in(2)*x(1)-in(2)*c-in(1)*x(2)+in(1)*d
          f=sqrt(f1*f1+f2*f2)
          end

          subroutine dnmtc(x,n,b,m,eps,y)
          dimension x(n),y(n)
          double precision r
          real nrnd1
          a=b
          k=1
          r=1.0d0
          z=f(x,n)
10          if (a.ge.eps) then
            l=l+1
            do 20 i=1,n
20            y(i)=-a+2.0*a*nrnd1(r)+x(i)
            z1=f(y,n)
           k=k+1
            if (z1.ge.z) then
              if (k.gt.m) then
                k=1
                a=a/2.0
              end if
              goto 10
            else
              k=1
              do 30 i=1,n
30              x(i)=y(i)
              z=z1
              if (z.ge.eps) goto 10
            end if
          end if
          return
          end subroutine

          real function nrnd1(r)
          double precision s,u,v,r
          s=65536.0
          u=2053.0
          v=13849.0
          m=r/s
          r=r-m*s
          r=u*r+v
          m=r/s
          r=r-m*s
          nrnd1=r/s
          return
          end
我写了一个代码,主要是由一个初始点和初始方向确定的直线和一个圆相交,得到的下一个点继续作为初始点,又有一个新的方向作为新方向,继续和圆相交,一直循环。循环的次数为ntrap.我运行不知道为什么没有执行循环,输出in(1),in(2)也没有执行。
x(1)为x,x(2)为y,c为x初坐标,d为y初坐标,in(1)为直线斜率的x坐标,in(2)为直线斜率的y坐标。直线方程为:(x(1)-c)/in(1)=(x(2)-c)/in(2)
新人,还不太懂,代码可能写的有问题,没有报错,但结果不对,还请大神们指点!感谢感谢!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 夏沫有约 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 申请基金代表性成果 +10 lancet0903 2024-05-17 10/500 2024-05-17 21:02 by lch2012
[基金申请] 基金委也是打工的 +18 wsjing 2024-05-16 19/950 2024-05-17 19:21 by 雪径踏青
[论文投稿] 当前scientific reports还值得投稿么? +5 lizhengke06 2024-05-14 6/300 2024-05-17 18:28 by dxcharlary
[基金申请] 面上评委可能变为7个了,是好是坏呢? +20 suiyuanwgz 2024-05-15 25/1250 2024-05-17 17:05 by 能丫
[论文投稿] 投稿成功后又想撤回 +5 otani 2024-05-16 5/250 2024-05-17 16:02 by topedit
[教师之家] 南京林业大学老师首聘期考核不过,服药自杀 +30 babu2015 2024-05-12 35/1750 2024-05-17 10:55 by hunt_a_job
[有机交流] 无水硫酸钠除水 80+3 桃桃PXS 2024-05-13 5/250 2024-05-17 09:49 by FuMmm
[教师之家] 青椒的未来在哪里? +14 sxhuabin 2024-05-15 14/700 2024-05-17 08:58 by Quakerbird
[考博] 申博 +3 己醛糖 2024-05-11 4/200 2024-05-17 07:33 by 化研迅
[论文投稿] 求期刊推荐 30+3 jxhx666666 2024-05-15 4/200 2024-05-16 22:47 by nono2009
[硕博家园] 中国科学院大学李海艳老师课题组诚招硕/博研究生和博士后,诚聘客座本/硕/博学生 +4 ucaszmh 2024-05-14 5/250 2024-05-16 19:51 by 我是小班
[基金申请] 网传南京林业大学加拿大博士首聘期不合格,自杀 +26 babu2015 2024-05-12 35/1750 2024-05-16 19:28 by danisha
[论文投稿] 中文投稿 +6 liujinyu80 2024-05-13 6/300 2024-05-16 15:57 by 晓目崇
[考博] 深度学习申博 +4 酸菜鱼. 2024-05-15 4/200 2024-05-16 11:12 by 安塔瓦拉多
[考博] 双非院士组还是211普通老师 +8 timergoi 2024-05-14 9/450 2024-05-16 09:02 by bingyulin3
[教师之家] 问题已解觉,谢谢大家关注! +7 lzgj258 2024-05-15 11/550 2024-05-15 19:15 by 环境检测2024
[硕博家园] 博导推荐,申博,博士招生 +5 大林挺好 2024-05-13 6/300 2024-05-15 14:51 by zxl_1105
[基金申请] F06送审了吗? +5 昂首走 2024-05-11 9/450 2024-05-15 06:53 by yp_nupt
[论文投稿] 七个月了,还在selecting for review +3 g9522 2024-05-14 6/300 2024-05-14 19:00 by lizhengke06
[考博] 韩国成均馆大学 软物质杂化材料研究室 Koo Chong Min 教授课题组 诚招博士生 +5 NWPUGZG 2024-05-13 9/450 2024-05-13 16:40 by NWPUGZG
信息提示
请填处理意见