Matlab函数积分误差

6视图(30天)
利昂·埃利斯
利昂·埃利斯 2021年8月4日
回答: 父亲Garau Burguera 2021年8月4日
你好,我似乎无法得到积分功能正常工作。
信谊x
z = 1 / (3 - 1)
z = 0.5000
f = @ (x) (x。* exp () (x ^ 2) 1) / sin (x)
f =function_handle与价值:
@ (x) (x。* exp () (x ^ 2) 1) / sin (x)
fi =积分(f, 1, 3)
错误使用integralCalc / finalInputChecks(第526行)
函数的输出必须相同大小作为输入。如果快乐是一个数组值被积函数,设置“ArrayValued”选项为true。

错误integralCalc / iterateScalarValued(第315行)
finalInputChecks (x, fx);

错误integralCalc / vadapt(第132行)
[q, errbnd] = iterateScalarValued (u tinterval pathlen);

错误integralCalc(第75行)
[q, errbnd] = vadapt (@AtoBInvTransform间隔);

误差积分(第87行)
Q = integralCalc(有趣,a, b, opstruct);
这是我的代码,但是积分功能可以给用户错误和我无法解决这个问题。有人能帮忙吗?提前谢谢!

接受的答案

里克
里克 2021年8月4日
错误的告诉你,你需要确保 f 输入输出相同的大小。
f = @ (x) (x。* exp () (x ^ 2) 1) / sin (x);
% ^
%你忘了这个
fi =积分(f, 1, 3)
fi = 5.9621 e + 03

更多的答案(2)

沃尔特·罗伯森
沃尔特·罗伯森 2021年8月4日
f = @ (x) (x。* exp () (x ^ 2) 1) / sin (x)。

父亲Garau Burguera
父亲Garau Burguera 2021年8月4日
中给出的解决方案是错误消息,您应该使用
fi =积分(f, 1, 3,“ArrayValued”,真正的);
欢呼,
父亲

类别

找到更多的在编程帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!