声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1384|回复: 3

[编程技巧] 为什么积分积出来复数,程序怎么修正??

[复制链接]
发表于 2007-6-8 20:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
%funtion f;
clear;
N=10;
for j=0:N;
    fun=inline('(1./(2.*sqrt(pi.*(s-0.1.*j)))).*exp(-1./(4.*(s-0.1.*j))).*(exp(0.9983.*s-1)-0.5.*exp(s-1).*(1+erf(-sqrt(s)+1./(2.*sqrt(s)))))','s');
    B(j+1)=quad(fun,0.1*j,1);
end
回复
分享到:

使用道具 举报

发表于 2007-6-9 08:05 | 显示全部楼层
这是由你的函数和参数决定的,不存在修正的问题.
-----不过, 将问题背景讲一下, 或许别人还能给些建议.
发表于 2007-6-9 09:22 | 显示全部楼层
我运行后,出现了警告

Warning: Divide by zero.
> In inlineeval at 13
  In inline.subsref at 25
  In quad at 62
Warning: Minimum step size reached; singularity possible.
> In quad at 88

建议选择 其他的积分函数。
发表于 2007-6-9 13:24 | 显示全部楼层
Divide by zero.--- 可以加eps消除;
关键是问题背景不清楚,所以问题很难猜测该如何进一步解决.
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-24 07:23 , Processed in 0.056201 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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