Fortran 板


LINE

各位版上的朋友大家好 小弟第一次在这里发文,望各位多多包涵 ^ ^a 问题是关於使用IMSL库存函式IVPAG解ODE-IVP(一阶常微分方程组) ODE写於函式CODE,计算所需的起始值和欲计算的y(t)写在主程式内 以下为部分程式码:(使用Visual Fortran90撰写) -- PROGRAM MAIN USE IMSL IMPLICIT NONE INTEGER, PARAMETER :: N = 2 ! No. of eqns INTEGER, PARAMETER :: NPARAM = 50 ! no. of input entries INTEGER MODE, I INTEGER IDO, IEND, NOUT REAL TI, TF, Y10, Y20, TFI REAL PARAM(NPARAM) REAL, PARAMETER :: TOLERR = 1.0E-4 INTEGER, PARAMETER :: NUMPT = 20 DATA TI, TF, Y10, Y20 /0.0, 1.0, 1.0, 0.0/ REAL Y(N), A(1,1), T ! A is not uesd since the ODEs is explicit REAL, EXTERNAL :: CODE, CODEJ ! Required for IVPAG and IVPRK c Initialization: CALL SSET(NPARAM, 0.0, PARAM, 1) IDO = 1 T = TI TFI = 0.0002 Y(1) = Y10 Y(2) = Y20 ... (从略) SELECT CASE (MODE) CASE (1) PRINT*, 'Use Adams-Moulton-Gear method' DO I = 1, NUMPT+1 CALL IVPAG(IDO, N, CODE, CODEJ, A, T, TFI, TOLERR, PARAM, Y) TFI = TFI + (TF - TI)/REAL(NUMPT) IF (TFI .EQ. TF) THEN IDO = 3 ELSE WRITE(*,100) T, Y END IF END DO CASE (2) ... (从略) END SELECT 100 FORMAT(3E16.4) END SUBROUTINE CODE(N, T, Y, DIFFY) IMPLICIT NONE INTEGER N REAL T, Y(N), DIFFY(N) DIFFY(1) = -5.005E2*Y(1) + 4.995E2*Y(2) DIFFY(2) = 4.995E2*Y(1) - 5.005E2*Y(2) RETURN END SUBROUTINE SUBROUTINE CODEJ(N, T, Y, DIFFY) ! Not used IMPLICIT NONE INTEGER N REAL T, Y(N), DIFFY(N,*) RETURN END SUBROUTINE -- 在编译程式的时候出现了以下讯息: Warning: In the call to IVPAG, actual argument #3 does not match the type and kind of the corresponding dummy argument. CALL IVPAG(IDO, N, CODE, CODEJ, A, T, TFI, TOLERR, PARAM, Y) ---------------------------------^ Warning: In the call to IVPAG, actual argument #4 does not match the type and kind of the corresponding dummy argument. CALL IVPAG(IDO, N, CODE, CODEJ, A, T, TFI, TOLERR, PARAM, Y) 程式计算出来的结果似乎没有问题 不过实在是对这警告讯息有点介意XD 想请问版上高手们 这警告讯息是不是来自於我宣告变数或函式有错? 应该要怎样修改才不会有这问题呢? --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.112.36.25
1F:→ shaufire:找到解答了:以 EXTERNAL CODE, CODEJ 宣告两副常式即可 05/07 19:58
2F:→ shaufire:real的宣告多余了...抱歉占用版面久矣<(_ _)> 05/07 19:58







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灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP