積分変数をベクトルとして与える際の重積分を行う際の関数と积分2の扱い方

4个视图(过去30天)
吉野木胜
吉野木胜 2021年7月7日
评论: 吉野木胜2021年7月7日
のように与えた場合の,x1,x2についての積分になります.
乐趣=@(x,y)[xy]*[12;34]*[x;y]
q=积分2(乐趣,0,1,0,1)%積分範囲はa=c=0,b=d=1として記述
を行うと,以下のようなエラーになります.
エラー: *
内部行列の次元は一致しなければなりません。
エラー:liveeditorevaluation helperesectioneval>@(x1,x2)[x1,x2]*[1,2;3,4]*[x1;x2]
エラー:integral2Calc>integral2t/张量(第228行)
Z=乐趣(X,Y);NFE=NFE+1;
エラー:integral2Calc>integral2t(第55行)
[Qsub,esub]=张量(θ,θ,phiB,phiT);
エラー:integral2Calc(第9行)
[q,errbnd]=integral2t(fun,xmin,xmax,ymin,ymax,optionstruct);
エラー:2(第106行)
Q=integral2Calc(fun、xmin、xmax、yminfun、ymaxfun、opstruct);
式を展開し,
乐趣=@(x1,x2)x1.^2+4.*x2.^2+5.*x1.*x2
q=积分2(乐趣,0,1,0,1)
>>
ans=
2.916666666666940
のようにすれば問題なく積分が可能なのですが,より複雑な式の積分を行いたいので,どのように関数を定義してあげればベクトルのまま積分関数(积分など)に入力することが可能か教えていただきたいです.

公认的答案

疝气婴儿
疝气婴儿 2021年7月7日
积分2 は行列の非積分関数には適用できないみたいです。
完整的 であれば'ArrayValue'オプションを符合事实的にすることでできそうです。
ということで完整的でやってみました。
clc,清除;
乐趣=@(x,y)[xy]*[12;34]*[x;y];
q=积分(@(y)积分(@(x)fun(x,y),0,1,“ArrayValue”,对),0,1,“ArrayValue”,对);
总体安排长的
Q
q=
2.916666666666667
1评论
吉野木胜
吉野木胜 2021年7月7日
過去の質問を追いきれていませんでした.教えていただきありがとうございました.
また,解決策も提示していただき,ありがとうございました.

登录以发表评论。

更多答案(0)

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!