私はMATLABの学習を始めたばかりで、bump
によって与えられた関数を正規化しようとしています
function b = bump(x)
region1 = abs(x) < 1
b(region1) = (exp(-1./(1 - x(region1).^2)))
region2 = abs(x) >= 1
b(region2) = 0
end
これを行うには、-1 から 1 までの定積分で割る必要があります。
syms x;
int(bump(x), -1, 1)
という長いエラー メッセージが表示されます。
symengine の使用エラー (58 行目)
'abs(x) < 1' を文字どおりに証明できません。ステートメントを数学的にテストするには、isAlways を使用します。sym/subsindex のエラー (1554 行目)
X = find(mupadmex('symobj::logical',As,9)) - 1;sym>privformat のエラー (2357 行目)
x = subsindex(x)+1;sym/subsref のエラー (1578 行目)
[inds{k},refs{k}] = privformat(inds{k});バンプのエラー (3 行目)
b(region1) = (exp(-1./(1 - x(region1).^2)))
abs(x)<1
提案されていると思われるものに置き換えてみましisAlways(abs(x)<1)
たが、それはエラーを取り除きますが、間違った答えが得られます(積分はゼロであると言われています)。
エラーメッセージの意味がわかりません。