MatlabでSim​ulinkのルックア​ップテーブルと同じ機​能が使いたい

조회 수: 2 (최근 30일)
SHromaneko
SHromaneko 2022년 8월 26일
댓글: SHromaneko 2022년 8월 29일
Simulinkにルックアップテーブルという機能がありますが、Matlabにも同じような機能ってありますか?
例えば下記のようなテーブルを変数に用意用意します。
■やりたいこと
このとき、引数にX=775,Y=5を指定すると-4を返す
ただし、間の値を指定した場合は内挿したいです。
例えばX=2350 Y=5のときは21を返す
上記の機能はSimulinkであればルックアップテーブルブロックで簡単にできることですが、Matlabにも同じような機能ってありますか?

채택된 답변

Hernia Baby
Hernia Baby 2022년 8월 27일
interp2がそれに近しいかと思います。
まずは適当なデータを揃えます
このとき、xとyはmeshgridでグリッドにする必要があります。
x = -2:.2:1.2;
y = -2:.05:1.5;
[X,Y] = meshgrid(x,y);
V = peaks(X,Y);
可視化してみましょう
figure
surf(X,Y,V)
さてここで ( x, y ) = ( 0.1, 0.3 ) の数字を線形補間で取り出してみましょう
Vp = interp2(X,Y,V,0.1,0.2)
Vp = 0.3324
可視化もしてみましょうか
figure
surf(X,Y,V,'FaceAlpha',0.4,'EdgeAlpha',0.2)
hold on
scatter3(0.1,0.2,Vp,30,'r','filled')
  댓글 수: 3
Hernia Baby
Hernia Baby 2022년 8월 27일
補足ありがとうございます!図示するためのグリッド化でしたね。なので、今回いただいた補足がやりたい事の回答になります。
SHromaneko
SHromaneko 2022년 8월 29일
お二方
大変ありがとうございました。
意図通りのことができました。

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Lookup Tables에 대해 자세히 알아보기

제품


릴리스

R2022a

Community Treasure Hunt

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

Start Hunting!