24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1926  |  回复: 12

霹雳旋风

荣誉版主 (著名写手)

[求助] 求高人帮忙看一下我这个Fortran程序的错误出在哪里?

程序代码如下:


    program ganeiliwucha
                implicit none
        External FS
        Integer I,L,N
        Dimension X(2),Y(2),C(2)
        Double Precision X, Y, EPS,C
        open (2000, file='test.dat', status='old' )
        Data X/0.00,0.01/
           EPS=1.0E-06
        CALL DSNSE(2,EPS, X, Y, FS, L)
        IF(L.GT.0)then
       C(1)=cos(X(2))/sin(X(1)+X(2))*tan(20.0/180*3.14)-1.0   ! AC杆的内力误差
    C(2)=cos(X(1))/sin(X(1)+X(2))*sin(20.0/180*3.14)-1.0   ! BC杆的内力误差
        do I=1,2
    write(2000,*) X(I)
        end do
    end IF
        close(2000)
        end

        SUBROUTINE DSNSE(N,EPS,X,Y,FS,L)
        DIMENSION X(N),Y(N)
        DOUBLE PRECISION X,Y,F,D,S
        L=500
5        CALL FS(X,N,F,Y)
        IF (F.GE.EPS) THEN
          L=L-1
          IF (L.EQ.0) RETURN
          D=0.0
          DO 20 J=1,N
20          D=D+Y(J)*Y(J)
          IF (D+1.0.EQ.1.0) THEN
            L=-1
            RETURN
          END IF
          S=F/D
          DO 30 I=1,N
30          X(I)=X(I)-S*Y(I)
          GOTO 5
        END IF
        RETURN
        END

    SUBROUTINE FS(X, N, F, Y)
        DIMENSION X(N), Y(N)
        Double precision X,Y,F,F1,F2,DF1,DF2,A,B
          A=20.0/180*3.14                           
          K=0.5
          F1=X(1)+X(2)-cos(A)
          F2=sin(X(1))*cos(A)*(1+K*cotan(A))+SIN(X(2))*(1.0-K/sin(A))-cos(A)
          F=F1*F1+F2*F2
          DF1=1.0
          DF2=cos(X(1))*cos(A)*(1+K*cotan(A))
          Y(1)=2.0*(F1*DF1+F2*DF2)
          DF1=1.0
          DF2=COS(X(2))*(1.0-K/sin(A))
          Y(2)=2.0*(F1*DF1+F2*DF2)
    RETURN
        END

  程序编译通过,但是出现计算数据无法输出的问题,请高手帮忙看一下。不胜感激。
回复此楼

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖置顶 ( 共有2个 )

霹雳旋风

荣誉版主 (著名写手)

引用回帖:
: Originally posted by ygl820 at 2012-02-21 10:31:22:
运行后,test.dat生成了没有。

运行后,生成了test.dat
8楼2012-02-22 13:05:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

霹雳旋风

荣誉版主 (著名写手)

引用回帖:
: Originally posted by snoopyzhao at 2012-02-23 13:54:41:
这个程序用 gfortran 没有办法编译,显示 cotan 未定义……

你这个 test.dat 是空的很正常啊,说明 L .LE. 0 啊,呵呵……

谢谢楼上,
程序中的cotan() 的含义是求角度的余切值呀。请高人指点哦。
10楼2012-02-23 19:37:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

夕阳西下

金虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
jjdg(金币+1): 感谢应助 2012-02-20 01:39:45
open (2000, file='test.dat', status='old' )
write(2000,*) X(I)
write 2000这样写是不是有问题呢?
2楼2012-02-19 09:17:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

haizhfly

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
jjdg(金币+1): 感谢应助 2012-02-20 01:39:55
open (2000, file='test.dat', status='old' )
write(2000,*) X(I)

status='old'  要求输出文本 test.dat是已经存在的文件,删去这一文件状态控制语句试一下看,个人觉得最大问题在这里
3楼2012-02-19 11:21:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

霹雳旋风

荣誉版主 (著名写手)

引用回帖:
: Originally posted by haizhfly at 2012-02-19 11:21:31:
open (2000, file='test.dat', status='old' )
write(2000,*) X(I)

status='old'  要求输出文本 test.dat是已经存在的文件,删去这一文件状态控制语句试一下看,个人觉得最大问题在这里

这个我已经调试过。文件能编译完,也能运行,就是没有输出结果。
4楼2012-02-19 19:48:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ygl820

至尊木虫 (知名作家)

【答案】应助回帖

感谢参与,应助指数 +1
霹雳旋风(金币+10): 谢谢 2012-02-21 10:29:01
按你的意思,将文件test.dat作为输出了,运行完成后后,打开它。fortran文件操作性不强,看看test.dat是否只读。
5楼2012-02-21 10:24:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

霹雳旋风

荣誉版主 (著名写手)

引用回帖:
: Originally posted by ygl820 at 2012-02-21 10:24:17:
按你的意思,将文件test.dat作为输出了,运行完成后后,打开它。fortran文件操作性不强,看看test.dat是否只读。

也不是只读。运行可以就是没有输出数据。急死我了。
6楼2012-02-21 10:28:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ygl820

至尊木虫 (知名作家)

运行后,test.dat生成了没有。
7楼2012-02-21 10:31:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

余泽成(金币+1): 谢谢参与应助! 2012-02-25 04:29:52
这个程序用 gfortran 没有办法编译,显示 cotan 未定义……

你这个 test.dat 是空的很正常啊,说明 L .LE. 0 啊,呵呵……
9楼2012-02-23 13:54:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 霹雳旋风 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 353求调剂 +8 晴空万里air 2026-04-07 8/400 2026-04-09 00:18 by GouQ
[考研] 277求调剂 +16 倪建设 2026-04-06 16/800 2026-04-08 21:28 by zhouxiaoyu
[考研] 264求调剂 +11 麦小叮当 2026-04-07 11/550 2026-04-08 16:05 by 一只好果子?
[考研] 297求调剂 +16 GENJIOW 2026-04-07 17/850 2026-04-08 11:05 by 逆水乘风
[考研] 0703总分331求调剂 +17 ZY-05 2026-04-04 21/1050 2026-04-08 10:16 by screening
[考研] 283分求调剂 +14 试试看呗 2026-04-04 14/700 2026-04-08 07:03 by lijunpoly
[考研] 326分,一志愿沪9,求生物学调剂 +4 刘墨墨 2026-04-05 4/200 2026-04-08 06:22 by lijunpoly
[考研] 材料工程专业日语生求调剂 +9 111623 2026-04-07 9/450 2026-04-07 23:31 by 一只好果子?
[考研] 315求调剂 +17 小羊小羊_ 2026-04-02 18/900 2026-04-07 22:01 by lijunpoly
[考研] 085404 293求调剂 +8 勇远库爱314 2026-04-06 9/450 2026-04-07 13:05 by flydream1314
[考研] 材料工程302分求调剂 +13 zyx上岸! 2026-04-04 13/650 2026-04-07 11:14 by 诗与自由
[考研] 292求调剂 +4 lilllllxccc 2026-04-05 5/250 2026-04-07 09:29 by 纺大杨老师
[考研] 生物学调剂 可调剂到生物与医药 +3 李政莹 2026-04-06 3/150 2026-04-06 19:02 by macy2011
[考研] 材料与化工371求调剂 +14 陪琳看海 2026-04-04 15/750 2026-04-06 06:59 by houyaoxu
[考研] 308求调剂 +4 maverick^_^ 2026-04-03 4/200 2026-04-05 19:08 by 蓝云思雨
[考研] 271分求调剂学校 +12 zph158488! 2026-04-02 13/650 2026-04-05 10:13 by lqwchd
[考研] 材料化工306分找合适调剂 +14 沧海轻舟e 2026-04-04 14/700 2026-04-05 09:53 by 朱云虎202
[考研] 321求调剂 +6 认真求上学 2026-04-03 6/300 2026-04-04 19:51 by dongzh2009
[考研] 283分材料与化工求调剂 +29 罗KAKA 2026-04-02 29/1450 2026-04-03 23:56 by userper
[考研] 322求调剂 +6 FZAC123 2026-04-03 6/300 2026-04-03 22:23 by 科研小专家
信息提示
请填处理意见