필터 지우기
필터 지우기

MatlabFunc​tionBlock内​の計算、変数の桁数確​保

조회 수: 1 (최근 30일)
yt12030
yt12030 2017년 9월 1일
댓글: Yoko 2017년 9월 11일
MatlabFunctionブロックに以下の入力,A・B・vを入れます.
A = 0.03138 B = 4.903 v = 12.5
出力xを以下のよう記述しています. x = 1-v^2*A/B
この計算結果が0になってしまいます.Excel等で計算すると-2.54946*10^-5と微量の値を持っており,プログラムの中で桁落ちが起きていることまではわかりました.
しかし,どう処理させれば桁落ちが発生しないかがわかりません. vpa関数などはMatlabFunctionブロックでは使用できないようです.
また,これを利用していくつかの計算を行わせるため,できればMatlabFunctionブロックを使いたいです.

채택된 답변

Yoko
Yoko 2017년 9월 1일
R2017a で確認したところ、下記の画像のとおり、MATLAB Function の出力結果が、-2.549*10^-5 と表示されていました。 同じ方法で確認して、0が出る場合は、確認方法など教えてください。

추가 답변 (1개)

yt12030
yt12030 2017년 9월 11일
一度MatlabFunctionブロックを削除し,再度配置して内容を記述したところうまく行きました. 消す前のブロックに同じ内容を記述しても0となっていたため,原因はよくわかりませんが,治りました. ありがとうございました.
  댓글 수: 1
Yoko
Yoko 2017년 9월 11일
うまくいったようで、よかったです!

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!