高分悬赏!!!MATLAB高手请进。。。

这是一个关于精度的问题,以下是简短程序。很简单,就是计算一个求和,理论上是归一的,而且用fortran等其他软件算,当n=300时这个值已达到0.99××,而用MATLAB做却只有0.97××。我想请问有什么技巧可提高它的精度使其达到0.99××???
m=2.5;
nmax=300;
sum=0;
for n=1:nmax
t1=(tanh(m))^(2*n);
t2=1/(cosh(m))^2;
T=t1*t2;
sum=sum+T;
end
y=sum
非常感谢“有空飘过的”的解答!这里我只是举个小例子来说明问题,其实程序本身很大,所以最好是用MATLAB编,其他的我也不会。。。如果你方便的话,能不能帮我写一下用128精度计算的函数,不胜感激。。。

不论用matlab, java, c, c++, n=300时算出来的结果都是
0.97310803806268
这几种语言的都是采用IEEE-754的64位双精度浮点数的,精度是约15位十进制数

Fortran默认的应该也是双精度的浮点数,不过有些版本也支持128位精度的浮点数

其他语言一般不支持128位精度,如果你一定要,要下载附加的package,C/C++可以用
MIRACL http://www.shamus.ie/
GMP http://gmplib.org/

matlab还没有见过,如果只是要用你上面的程序,其实只需要用到加减乘除和exp(),自己写一个也不算难

补充:
我说的自己写一个的意思是自己写一个使用128位精度计算的加法、减法、乘法、除法、指数函数。

MIRACL, GMP就是这样用128精度计算的C/C++函数库,MATLAB没有见过这样的函数库,可能需要自己写。

既然你用Fortran可以支持128位精度计算,那最方便的就是用Fortran直接计算,或者使用Matlab对Fortran的接口,这个话题太大了,这里讲不来

补充二:
http://www.mathworks.com/matlabcentral/fileexchange/22725
这个是matlab里的高精度计算toolbox,精度可以任意调整

我使用100位十进制的精度计算,结果是
y{1} =
+.97310803806267328229195014415098271682317000718648226587062665151441784458895e0+0i
和用double精度计算没有差别,请检查你用fortran计算的程序是否有错
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-11-11
1

高分悬赏作对联…高手请进
上联:有志者事竟成破釜沉舟百二秦关终属项籍羽下 下联:生人杰死鬼雄江东父老数千汉军难耐西楚霸王 横批:大志豪杰 众人道,项羽并非千古英雄,说其妇人之仁,但羽仍是古今第一豪杰。

高分悬赏,高手请进。。。求一篇3分钟的英语演讲稿
额.. 以为是叫人翻译这句话...不会。

高分悬赏!!!电脑高手请进…
首先你需要管理员的账号和密码 怎么拿到网站上面随便搜索就有一大堆 开机时你们把网线拔了 出现打号的界面 直接点最下面的管理员账号登陆的地方 打上号码 直接进入 放心绝对不会有提示的 先玩玩单机游戏 等过一会(大约10分钟左右)就把网线插上去 再试试点那个图标怎么样是不是写着没有上机...

高分悬赏 数学高手请进 要有算是和解题思路
1.原先红球数57X,白球39X,那么第一次放完之后白球数目还是39X,那么红球就是39X*5\/3=65X,第二次放入白球后,白球数为65X*11\/13=55X 则放入白球为55X-39X=16X,红球为65X-57X=8X 16X-8X=80 得X=10 所以原先红球570个,白球390个 2.应为一共只喝了3瓶酒,而撑到最后的人和和他PK...

高分悬赏,高手请进:)
\/\/帮你修改了几处错误,可以了 include<iostream> \/\/c++标准类库必须这样写 using namespace std;struct Llist { char name[20];int sign;Llist *next; \/\/去掉struct修饰,下面几行也是如此 };Llist *creat(){ Llist *p,*p1,*p2;int flag=0;cout<<"if you have finish instruction...

猜谜36种动物,高手进,高分悬赏
1、光明--马;2、银玉--蝴蝶;3、太平--水龙;4、只得--野猫;5、神威--狮子;6、日山--鸡;7、井利--金鱼;8、元吉--鹿;9、青云--仙鹤;10、金官--乌龟;11、九官--画眉;12、有利--大象;13、音位--蜘蛛;14、万金--蛇;15、逢春--孔雀;16、坤山--虎;17、荣生--鸭18...

有高分100分~!!!业务高手请进```
另外,对你这个问题的表现不是一个好的业务,因为你在题目上标明了100分,你失去了三个优势,第一你的悬赏分是0,少分有些人就不想回想你,第二你让人家觉得你在骗人,不诚意,人家情愿回答0分的,也不想回答你这个有点空头支票式的问题。第三,如果你真的有100分的话,那么你的问题会放在高...

BIOS设置问题,高分悬赏,BIOS高手请进。
BIOS设置问题,高分悬赏,BIOS高手请进。 我电脑的BIOS中,有一项是设置系统安全的,Systemsecurity下面有有几个小项,分别是:passwordstatus后面的值是unlockedsystempassword后面的值是notenabledsetuppassword后面的值是noten... 我电脑的BIOS中,有一项是设置系统安全的, System security下面有有几个小项,分别是: password...

藏头诗高手请进,高分悬赏
名姬归汉返中原 胡马啸风恋青山 晓色渐明故国近 君王幼子泪心间

急...高手请进.电脑反映慢!高分悬赏来看诊断报告
你没有写出你的电脑配置情况,不知道是内存不够还是硬盘空间太小,或者是别的问题,你可以先整理下磁盘,设置下虚拟内存,清除垃圾和注册表,优化系统后,把不大用的后台程序关闭自启动之后重启再试下

相似回答
大家正在搜