Fortran Coder

查看: 6530|回复: 8
打印 上一主题 下一主题

[微积分] 积分方法中传递变量的问题

[复制链接]

11

帖子

4

主题

0

精华

熟手

F 币
190 元
贡献
182 点
QQ
跳转到指定楼层
楼主
发表于 2018-11-15 10:51:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在调用积分方法子程序时(例如,拉盖尔高斯积分方法),如果积分里有另一个无关的变量,并且需要传递到之后的计算中,那么这个变量在子程序中该如何处理
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
沙发
发表于 2018-11-15 13:48:27 | 只看该作者
fortran 不能做 带参数的积分,只能是数值积分。也就是积分结果是一个数,而不是一个含有变量的函数。

11

帖子

4

主题

0

精华

熟手

F 币
190 元
贡献
182 点
QQ
板凳
 楼主| 发表于 2018-11-19 14:42:41 | 只看该作者
li913 发表于 2018-11-15 13:48
fortran 不能做 带参数的积分,只能是数值积分。也就是积分结果是一个数,而不是一个含有变量的函数。 ...

子函数里有一个无关变量一个自变量,是要将那个无关变量传递到下一个子函数把它积掉

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
地板
发表于 2018-11-22 10:05:46 | 只看该作者
你直接给出积分公式吧。写清楚要求。

11

帖子

4

主题

0

精华

熟手

F 币
190 元
贡献
182 点
QQ
5#
 楼主| 发表于 2018-11-24 10:19:21 | 只看该作者
li913 发表于 2018-11-22 10:05
你直接给出积分公式吧。写清楚要求。

多个积分变量之间传递,如图所示该用什么方法?
http://bbs.fcode.cn/forum.php?mo ... 81&fromuid=3598
(出处: Fortran Coder)
就是这个

178

帖子

15

主题

0

精华

大宗师

F 币
4973 元
贡献
1152 点
6#
发表于 2018-11-25 11:08:36 | 只看该作者
li913 发表于 2018-11-15 13:48
fortran 不能做 带参数的积分,只能是数值积分。也就是积分结果是一个数,而不是一个含有变量的函数。 ...

Fortran确实不可能做参数运算,但是积分结果是一个函数确是没有问题的
无非是对于结果函数来说,每次求值时都要算一次积分而已
楼主那个问题不好搞的问题不在此,而在于积分区间无限,
这个是Fortran无法直接处理的,需要找其他办法

11

帖子

4

主题

0

精华

熟手

F 币
190 元
贡献
182 点
QQ
7#
 楼主| 发表于 2018-11-25 16:55:27 | 只看该作者
liudy02 发表于 2018-11-25 11:08
Fortran确实不可能做参数运算,但是积分结果是一个函数确是没有问题的
无非是对于结果函数来说,每次求值 ...

好的,谢谢

11

帖子

4

主题

0

精华

熟手

F 币
190 元
贡献
182 点
QQ
8#
 楼主| 发表于 2018-12-5 09:07:11 | 只看该作者
liudy02 发表于 2018-11-25 11:08
Fortran确实不可能做参数运算,但是积分结果是一个函数确是没有问题的
无非是对于结果函数来说,每次求值 ...

如果积分上下限改为有限值,这个嵌套的积分该用什么积分方法呢?

178

帖子

15

主题

0

精华

大宗师

F 币
4973 元
贡献
1152 点
9#
发表于 2018-12-7 09:38:13 | 只看该作者
hcj 发表于 2018-12-5 09:07
如果积分上下限改为有限值,这个嵌套的积分该用什么积分方法呢?

这有何难呢,比如本来你对某一个函数写个积分的子程序是integrf(ans,a,b)表示f在a,b上的积分
现在你的f不止有积分变量x了,还有参数c1,c2,c3……cn
那改写这个积分子程序,写成integrf_paras(ans,a,b,c1,c2,c3……cn)也不会有任何难处
这样的话积分结果参量ans就和输入参数c1,c2,c3……cn都有关系了,相当于一个关于这些参数的函数
只是你每次要求这个函数值都需要调用一次这个积分子程序
那么你再想继续把某个参量作为积分变量,只需要再继续下一层的积分子程序就行了
在下一层的积分子程序里,当想要求函数值的时候,就调用integrf_paras子程序进行计算呗
当然我这里只是写的最简单的形式,实际上完全可以把被积函数作为参量
不过也无所谓,反正对于特定的某个积分来说,能用也差不多,除非想做通用积分程序才需要那样
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-12-25 16:47

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表