使用 MATLAB 对矩阵值函数进行积分

计算科学 matlab 正交
2021-12-01 05:11:06

我需要计算积分R3f(x)dx, 在哪里f是一个矩阵值函数f:R3R3×3. 我如何使用 MATLAB 做到这一点?功能f在单独的文件中实现。它将三个向量作为输入,给出x-,y-, 和z- 必须评估的点的坐标。作为输出,它给出了一个 5D 数组。

integral3(@f,-1,1,-1,1,-1,1)例如,如果我只写,我会收到错误Integrand output size does not match the input size.

2个回答

我会将其写为对@Mohammad Bazrafshan 答案的评论,但由于我没有足够的声誉,我会将其写为答案。

他的建议有效,官方文档可以在这里找到:

http://www.mathworks.com/help/matlab/ref/integral.html#inputs

您可以看到积分函数具有集成数组值函数的潜力,例如向量和矩阵。

它所做的是数组元素的组件式集成,因此它与使用循环遍历数组的所有元素并执行许多标量值函数的集成相同。

使用命令“integral”,然后设置以下输入参数:'ArrayValued',true