Programming 板


LINE

大家好,小弟有一些imsl使用上的问题 在程式里,小弟的目的是想先用程式里写好的方程式算出所要的初值 再把算好的初值放到xguess里去给程式收歛 但是debug完後,程式说 Error: This symbol must be a defined parameter or an argument of an inquiry fun ction that evaluates to a compile-time constant. Error: This is not a valid initialization expression. 结果只能事先先算好,再把算好的值(数字)放到xguess里让程式收歛 这样程式才会跑出结果 也就是说程式只收歛常数(数字)而已 後来又试过以下方法 1.试过先用副程式算好,再call到主程式里 2.用READ去读档里的数字 但结果也是出现debug那两行 不知道有没有什麽方式可以在同一程式里算好 再自动代入xguess里去算 要不然要一组一组输入很没效率(因为小弟有上千组数据等着收) 下面是我的程式码,先谢过大家了 PROGRAM MAIN USE IMSL IMPLICIT NONE INTEGER, PARAMETER :: ITMAX=100 INTEGER, PARAMETER :: NROOT=1 REAL, PARAMETER :: EPS=1.E-6 REAL, PARAMETER :: ERRABS=1.E-6 REAL, PARAMETER :: ERRREL=1.E-6 REAL, PARAMETER :: ETA=1.E-6 INTEGER INFO(NROOT) REAL, EXTERNAL :: FS,FR REAL :: XS(NROOT) REAL :: XR(NROOT) real :: VR=1./10. REAL :: XGUESS1(NROOT)=(/vr/) REAL :: XGUESS2(NROOT)=(/0.09/) REAL Z,ZSIM,ZREF CALL ZREAL (FS,ERRABS,ERRREL,EPS,ETA,NROOT,ITMAX,XGUESS1,XS,INFO) CALL ZREAL (FR,ERRABS,ERRREL,EPS,ETA,NROOT,ITMAX,XGUESS2,XR,INFO) WRITE(*,"('VR(0)=',F20.18)") XS WRITE(*,"('VR(r)=',F20.18)") XR STOP END REAL FUNCTION FS(XS) IMPLICIT NONE REAL:: XS REAL ,PARAMETER :: BE1=0.65392 REAL ,PARAMETER :: GA1=0.060167 REAL GB,GC,GD,TR,PR,TEMP,T,P INTEGER, PARAMETER :: H=4 REAL :: W1(H),Y1(H),Z1(H),Z REAL, PARAMETER :: TC= 190.56 REAL, PARAMETER :: PC= 45.99 T=100. P=20. W1(1)=0.1181193 W1(2)=0.265728 W1(3)=0.15479 W1(4)=0.030323 Y1(1)=0.0236744 Y1(2)=0.0186984 Y1(3)=0.0 Y1(4)=0.042724 Z1(1)=0.0000155488 Z1(2)=0.0000623689 TR=T/TC PR=P/PC GB=W1(1)-W1(2)/TR-W1(3)/TR**2-W1(4)/TR**3 GC=Y1(1)-Y1(2)/TR+Y1(3)/TR**3 GD=Z1(1)+Z1(2)/TR FS=TR/PR*(1/XS+GB/XS**2+GC/XS**3+GD/XS**6+Y1(4)/TR**3/XS**3*(BE1+GA1/XS**2)*E XP(-GA1/XS**2))-1 RETURN END FUNCTION REAL FUNCTION FR(XR) IMPLICIT NONE REAL:: XR REAL ,PARAMETER :: BE2=1.226 REAL ,PARAMETER :: GA2=0.03754 REAL GB,GC,GD,TR,PR,TEMP,T,P INTEGER, PARAMETER :: H=4 REAL :: W2(H),Y2(H),Z2(H),Z REAL, PARAMETER :: TC= 190.56 REAL, PARAMETER :: PC= 45.99 T=100. P=20. W2(1)=0.2026579 W2(2)=0.331511 W2(3)=0.027655 W2(4)=0.203488 Y2(1)=0.0313385 Y2(2)=0.0503618 Y2(3)=0.016901 Y2(4)=0.041577 Z2(1)=0.000048736 Z2(2)=0.00000740336 TR=T/TC PR=P/PC GB=W2(1)-W2(2)/TR-W2(3)/TR**2-W2(4)/TR**3 GC=Y2(1)-Y2(2)/TR+Y2(3)/TR**3 GD=Z2(1)+Z2(2)/TR FR=TR/PR*(1/XR+GB/XR**2+GC/XR**3+GD/XR**6+Y2(4)/TR**3/XR**3*(BE2+GA2/XR**2)*E XP(-GA2/XR**2))-1 RETURN END FUNCTION --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.124.50.204 ※ 编辑: m710387 来自: 140.124.50.204 (09/19 14:32)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP