計算結果不一致の理由について
17 views (last 30 days)
Show older comments
(☆)
こちらの式を計算したいです。変数はxでa,b,c,kについては定数です。
Symbolic Math toolboxで代入計算を行う方法と、Symblic Math toolboxで解析解を求めておいて後から代入計算する2つの方法を考えました。
この2つの計算方法は同じになると思ったのですが結果があわず、考えても分からないため質問させていただきます。
この理由について、分かればご教授していただけないでしょうか。
よろしくお願いいたします。
% 目的は(☆)を解くことです。
%% Symbolic Math toolboxを使って解く場合
syms x
a = 3.5e-3;
b = 2.3e3;
c = 46e-3;
k = 0.0444;
f1 = a* sinc(b*(x-c)/pi);
f2 = f1*x;
ans= subs(int( int(f2,k,x)), k); %(☆)
double(ans) % 計算結果 5.7814e-09
%% Symbolic Math toolboxで解析解を求め、それに定数値を代入する
syms x a b c k
f1 = a* sinc(b*(x-c)/pi); %sinc関数
f2 = f1*x;
sol = subs(int( int(f2,k,x)), k)
%解析解は↓のように求まる
% ((a*sin(b*(c - k)))/b + a*c*cos(b*(c - k)))/b^2 - ((c - k)*(a*cos(b*c - b*k) - a*b*c*sinint(b*(c - k)) + a*b*c*sinint(b*c - b*k)))/b^2;
% 解析解に代入
a = 3.5e-3;
b = 2.3e3;
c = 46e-3;
k = 0.0444;
((a*sin(b*(c - k)))/b + a*c*cos(b*(c - k)))/b^2 - ((c - k)*(a*cos(b*c - b*k) - a*b*c*sinint(b*(c - k)) + a*b*c*sinint(b*c - b*k)))/b^2
% 計算結果 -2.5368e-11
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
Find more on 線形代数 in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!