計算結果不一致の理由について
조회 수: 16 (최근 30일)
이전 댓글 표시
(☆)
こちらの式を計算したいです。変数は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
채택된 답변
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 線形代数에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!