2

以下のように積分を描くために、matlabのmファイルがあります。このコードを数学で書き直したいのですが、subs()に相当する関数がわかりません!! 何か体が私を助けてくれますか?

syms x y w;
fun = (-1/(4.*pi)).*log(x.^2+(y-w).^2);
integral = int(fun, w); 
res_l = subs(integral, w, -0.5);
res_u = subs(integral, w, 0.5);
res = res_u - res_l;
ezsurf(res, [-1,1]);
4

1 に答える 1

5

同等のMathematica演算はReplaceAll、次のように記述できる関数を使用して実現されます。

Integrate[Sin[x], x] /. x -> 3
(*Out:  -Cos[3] *)

複数の値を置き換えたい場合は、次のようにして実現できます。

Integrate[Sin[x], x] /. x -> # & /@ { 7, 5, 8, 11, 13}
(* Out: {-Cos[7], -Cos[5], -Cos[8], -Cos[11], -Cos[13]} *)

または、Mr.Wizardが提案したように、よりコンパクトで効率的な方法:

Integrate[Sin[x], x] /. x -> {7, 5, 8, 11, 13}
于 2012-05-15T07:22:02.300 に答える