24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1525  |  回复: 19

老虎大王

木虫 (著名写手)


hym5701(金币+3):谢谢参与
这还不容易,先把A求出来,再把B求出来,两个相除。
11楼2010-06-16 19:01:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hym5701

木虫 (小有名气)

nono2009:建议通过“引用回复该帖”,以便别人收到你的message. 别人回复过之后,一般很少会再回来看同一帖子的。 2010-06-17 08:07:57
谢谢,再问下,就先算A再算B,假如A和B趋近于无穷大,那设置成多大才算无穷大呢我用的是双精度的
12楼2010-06-16 22:13:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)

★ ★
余泽成(金币+2):辛苦! 2010-06-17 10:54:27
你这个问题问得很不清楚。

A和B,是经过有限步相加,加到了无穷大,还是无限步相加?或者你的自变量范围是多大?你说的无穷大,是级数无穷大,还是函数无穷大?不同的情况,都有具体的判别方法的。

不管怎么样,首先你要用数学知识判断A和B的发散性,或者函数是否有界,而不是说规定它的值到了多少算是无穷大。

如果A和B都是发散的,或者都是无穷小,那么你可能要根据具体情况,用到一些相关数学知识,比如罗必达法则之类的,对它们做一些处理,比如该求导要求导。

总之,你要先用数学知识来判断,这些判断是否发散的数学知识也可以包含进程序,让程序判断,也可以由你人工导出来然后直接写到程序里,反正你不能一昧地硬算。

[ Last edited by 老虎大王 on 2010-6-17 at 09:01 ]
13楼2010-06-17 08:58:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

★ ★
resonant(金币+2):感谢参与:-) 2010-06-17 22:00:22
引用回帖:
Originally posted by hym5701 at 2010-06-16 22:13:55:
谢谢,再问下,就先算A再算B,假如A和B趋近于无穷大,那设置成多大才算无穷大呢我用的是双精度的

首先,我想问一下,你的这个解既然有解析解,那你还要算什么?

其次,这个无穷大是由你说了算的,若果你的计算机配置比较好,你可以多算一些,如果你的计算机配置不太好,那你肯定不能让他算得太久,这样的话你就需要设定步长,并规定当运算达到什么量级就认为可以是无穷大了,即到什么时候收敛的特别慢了,这个时候就可以停止了
好好学习,天天向上!
14楼2010-06-17 13:22:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hym5701

木虫 (小有名气)

余泽成:问题解决了就好,欢迎常来程序软件版! 2010-06-18 00:10:17
引用回帖:
Originally posted by zhangzhiguang at 2010-06-17 13:22:15:

首先,我想问一下,你的这个解既然有解析解,那你还要算什么?

其次,这个无穷大是由你说了算的,若果你的计算机配置比较好,你可以多算一些,如果你的计算机配置不太好,那你肯定不能让他算得太久,这样的话 ...

首先谢谢你的关注,不过对你说的“既然有解析解,那你还要算什么?”不敢苟同,谁说有解析解就不需要算了,不知道你学那一门的,我是学物理的,我就说一个简单的例子,比如说,要求圆柱体内的温度场分布,这个问题解起来当然比较复杂,是要解一个多阶偏微分方程,其解就是与bessel想关的,是有解析解的,但是我们必须了解体内的某点的分布值,那就得具体将解析解数值化。难道这样也没意义吗。
我的问题就跟这个类似的,我的解析解也是与bessel想关的,还与球谐函数相关,分子分母都是这样的。总有3个参数,n,l,x,n,l是整数,从0到无穷大,x是实数,范围也是从0到无穷大,首先要对n和l求和,然后x取0到无穷大的某一个数值。而且对于x,如果x趋于无穷大,bessel就趋近于无穷大,x趋近于0,bessel也趋近于0,对于某一个x,光对n和l求和就有可能是结果无穷大。
我就是不知道对于分子分母都趋近于无穷大或0时fortran程序该如何处理?看了大家的建议我差不多知道该如何处理了。
15楼2010-06-17 23:20:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

spoctor

铁虫 (小有名气)


hym5701(金币+3):谢谢参与
算法用对了就行,个人感觉语言就是一个工具。
学习……
16楼2010-06-17 23:33:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
resonant(金币+1):感谢参与:-) 2010-06-20 11:45:05
引用回帖:
Originally posted by hym5701 at 2010-06-17 23:20:26:

首先谢谢你的关注,不过对你说的“既然有解析解,那你还要算什么?”不敢苟同,谁说有解析解就不需要算了,不知道你学那一门的,我是学物理的,我就说一个简单的例子,比如说,要求圆柱体内的温度场分布,这个问 ...

明白了,我还以为你是要求其解,其实你这个解决过程,就是要首先对你的方程进行一下变形,将其变为离散化的方程(有点像求解微分方程),然后再向我说的,以步长来控制。
另外,我也是学物理的,我解的问题很多是没有解析解的,采取数值算法其实是一种无奈之举,呵呵
好好学习,天天向上!
17楼2010-06-20 11:04:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):谢谢参与应助! 2010-06-30 22:52:07
还有就是,fortran也好c也好,他们只是你的工具,是实现你想法的工具,编程之前,你首先有一个大致的方向,有了方向之后再编程,也就是说fortran也不会处理分母是0的情况,你要避免出现0,那你就要考虑一下怎么办,通常是设定一个极小的实数来代替0
好好学习,天天向上!
18楼2010-06-20 11:14:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

coolrainbow

木虫 (著名写手)

未来国家冻凉

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
resonant(金币+1):信息费:-) 2010-06-21 16:49:26
不知道你看没看过NUMERICAL RECIPES,里面5.2 的EvaluationofContinuedFractions
介绍过,出现零时,可以
     
    If Dj = 0, set Dj = tiny.

tiny可以为1e-30
技术博客:http://hi.baidu.com/coolrainbow/blog
19楼2010-06-21 07:52:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hym5701

木虫 (小有名气)

引用回帖:
Originally posted by coolrainbow at 2010-06-21 07:52:13:
不知道你看没看过NUMERICAL RECIPES,里面5.2 的EvaluationofContinuedFractions
介绍过,出现零时,可以
     
    If Dj = 0, set Dj = tiny.

tiny可以为1e-30

呵呵,感谢提示
20楼2010-06-21 10:30:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 hym5701 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见