3Dマップの内挿について

12 Ansichten (letzte 30 Tage)
友大
友大 am 19 Apr. 2025
Kommentiert: Hiro Yoshino am 2 Mai 2025
Matlabを用いて、圧力およびガス温度に依存する着火遅れ時間のマップを補完したいです。
圧力P:0.1 MPa~8.0MPa, 0.1MPa刻み(80データ数)
未燃ガス温度Tu:500~1200K, 10K刻み(71データ数)
の条件により、下図のように合計5680個の着火遅れ時間の値を取得できています。
これらのデータを補間(内挿)し、さらに細かな値をとることで、計測された圧力及びガス温度によってより適切な着火遅れ時間を算出できるようにしたいのですが、どのようなコードが適切でしょうか?

Antworten (1)

Atsushi Ueno
Atsushi Ueno am 20 Apr. 2025
内挿 を参考に、着火遅れ時間のマップを内挿補完する事ができます。
P = 0.1:0.1:8.0; % [MPa](80データ数)
T = 500:10:1200; % [K] (71データ数)
[P1,T1] = ndgrid(P,T);
surf(P1,T1,-P1.^2+T1.^2) % 合計5680個の着火遅れ時間(値は適当)
% ------------------------------
%これらのデータを補間(内挿)し、さらに細かな値をとる
F = griddedInterpolant(P1,T1,-P1.^2+T1.^2);
% -----------------------------
P = 0.01:0.01:8.0; % [MPa](800データ数、約10倍の細かさに設定)
T = 501:1:1200; % [K] (700データ数、約10倍の細かさに設定)
[P2,T2] = ndgrid(P,T);
surf(P2,T2,F(P2,T2)) % 合計560000個の着火遅れ時間(値は適当,グリッドが細かすぎて真っ黒になっちゃった)
  1 Kommentar
Hiro Yoshino
Hiro Yoshino am 2 Mai 2025
見た目の調整の補足です:
P = 0.1:0.1:8.0; % [MPa](80データ数)
T = 500:10:1200; % [K] (71データ数)
[P1,T1] = meshgrid(P,T); % x-y のメッシュを作成
surf(P1,T1,-P1.^2+T1.^2,EdgeColor="flat",FaceColor="none") % メッシュの色だけつける
colormap(turbo(6)); % 好みのカラーマップ
view([32 18]); % 角度を指定
xlabel("P(MPa)"); ylabel("Tu(K)"); zlabel("ignition-delay time(s)");
axis([0,8,400,1200]); % レンジ設定
ztickformat("%.1e"); % ztick のフォーマット指定
zticks([0e5 5e5 10e5 15e5 20e5]); % ztick の位置指定

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Engines & Motors finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!