1

航空機の性能を分析するための matlab ファイルを作成しています。私がやりたいのは、余剰電力が最大になる場所と余剰電力が最小になる場所を確認することです。私は、matlabがClmax以上の値を考慮しないようにすることができました(を使用してNaN)。
次に、余剰電力についても同じことを行います。等高線図に PS の負の値を表示させたくありません。Cl で行ったのと同じことを試みましたが、成功しませんでした。

これまでのコードは次のとおりです。

TA= 667233.2;
W=228000;
S=360;
CDO=0,02;
b=60;
AR=10;
h=0;


v= [60:10:350]
hoogte= [0:1000:17000]

%TEST

for j=1:length(hoogte)
hoogte_temp = hoogte(j)
[rho c] = Atmos(hoogte_temp)
sigma= rho/1.225

for i= 1:length(v)
    v_temp = v(i);
    q= rho*v_temp*v_temp/2
    cl(i,j) = W*9.81/S/q

  if (cl<1.91)
   cd(i,j) = 0.02 + cl(i,j)^2/(AR*3.14*0.8)/beta(i)
    D(i,j)= cd(i,j)*q*S
    PS(i,j)=(TA*sigma-D(i,j))*v_temp/(W*9.81)


  else %als Cl groter is dan 1,91: niet weergeven, ook niet Cd, D en ook niet Ps
    cl(cl>1.91) = NaN;
    cd(i,j)= NaN;
    D(i,j)=NaN;
    PS(i,j)=NaN;
  end

    if(v_temp/c<1)
        beta(i)=sqrt(1-(v_temp/c)^2)

    else
        beta(i) = NaN
    end

    cd(i,j) = 0.02 + cl(i,j)^2/(AR*3.14*0.8)/beta(i)
    D(i,j)= cd(i,j)*q*S
    PS(i,j)=(TA*sigma-D(i,j))*v_temp/(W*9.81)

end

別のものを追加することも考えif (PS<0)ましif PS<=D PS=NaNたが、プログラムを再実行してグラフを見るとうまくいかないようです。

このatmos.mファイルは、大気とその特性 (温度、高度、密度など) が変化する場所で作成したファイルです。
今やりたいこと:
負の PS 値をキャンセルし、PS が になるシグマと v_temp の値を見つけます0。これにより、最大巡航高度に到達します。

私は matlab を初めて使用します。このコードのすべては、インターネットで調べたり、YouTube の映画を見たりすることによって行われました。どんなフィードバックでも大歓迎です! 私はこれを見つけました:

    data( indices_to_data_not_to_plot )  = NaN;
    surf(x,y,data);  %# or whatever you're using

別のトピックで、しかしそれは私が試したことだと思いますが、サーフの代わりに輪郭を使用することを除いて、うまくいきません。

4

1 に答える 1