Fortran Coder

查看: 7967|回复: 2
打印 上一主题 下一主题

[子程序] 一个关于自定义函数的问题

[复制链接]

9

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
29 点
跳转到指定楼层
楼主
发表于 2018-8-22 20:15:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我写了一个朴素的用于数值计算单变量定积分的函数,此程序其中一个应当输入的参数是被积函数,且默认应当是单变量的函数
但是我在某个程序中需要反复对一组(数量非常大,所以一个一个定义的话是不行的)形式非常相似的函数进行数值积分,于是我写了一个多变量的函数,其它的变量用于改变函数的形式,如何让我的定积分程序能够顺利运行呢?

更加清晰的表述如下:
假设为用于定积分的函数为:integrate(f,a,b), 其中f是被积单变量函数,a,b分别是积分下限和上限

我的被积函数为 g(x,k,l,n,m) ,其中x是希望用于积分的变量, k,l,n,m是用于积分时会给定的数值, 比如全设为1,那我想要积分的函数实际上是g(x,1,1,1,1),x就是自变量

我随便试了试直接引用 integrate(g( ,1,1,1,1),0,1)是不行的(当然,看起来就不太行~~)

请各位帮帮忙~感激不尽!
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

1963

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1357 元
贡献
574 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2018-8-23 08:06:21 | 只看该作者
方法1,改变 integrate 函数,使其对 f 的调用,代入 k , l , n , m  参数
方法2,改变 g 函数,使其通过其他方式获得 k , l , n , m 参数。(例如 module)

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
板凳
发表于 2018-8-26 12:35:42 | 只看该作者
自定义函数(被积函数)是可以作为另一个函数(积分函数)的参数的。http://fcode.cn/resource_ebook-32-1.html    第四期:接口和函数(子程序)
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-4-29 17:59

Powered by Tencent X3.4

© 2013-2024 Tencent

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