ホームページ >コンピューターのチュートリアル >コンピュータ知識 >MATLAB を使用して sinc 関数の逆関数を解く方法を学習します。
k=1:length(y)の場合
f=@(x)y(k)*x-sin(x);
ezplot(f);%グラフを描いて、関数のゼロ点が x0(k) の近くにあることを観察します
z(k)=fzero(f,x0(k));% fzero 関数を呼び出してゼロ点を見つけます
endsxf2012 (サイトのtaに問い合わせてください)%% データとして y を例に取り、y の値が y0 であると仮定すると、
%f=@(x)y0-sin(x)/x;%%コマンドを使用: %ezplot(f);
%%絵を描いて関数を観察し、ゼロ点付近の座標 x0 を見つけます
%% したがって、必要なゼロ点は
になります。%z=fzero(f,x0);% fzero 関数を呼び出してゼロ点を見つけます
%たとえば、
を使用すると、y0=0.6f=@(x)0.6-sin(x)/x;%drawingezplot(f)hold onplot(,,'r')
%ゼロ点が -2 と 2 の近くにあることを確認し、
を使用します。z1=fzero(f,-2)
%計算されたゼロ点は x=-1.66
ですz2=fzero(f,2)
%計算されたゼロ点は x=1.66
ですこれは y=sinx/x のグラフです。私の場合、y の値はわかっているので、x のすべての値を取得する必要があります。つまり、逆関数を通じて取得したいと考えています。しかし、問題は、y=1 の場合、x は 1 つの値ですが、y=0.8 は 2 つの値、y=0.1 は多数の値であることです。
これは y=sinx/x のグラフです。私の場合、y の値はわかっているので、x のすべての値を取得する必要があります。つまり、逆関数を通じて取得したいと考えています。しかし...描画した区間では、関数は単調ではないため、その逆関数が存在しないか、多値関数です。
finv
F 逆累積分布関数
###構文###XX = finv(P,V1,V2)
###説明###X = finv(P,V1,V2) は、P の対応する確率について、分子の自由度 V1 と分母の自由度 V2 を使用して F cdf の逆関数を計算します。P、V1、および V2 はベクトル、行列にすることができます。 、またはすべて同じサイズの多次元配列。スカラー入力は、他の入力と同じ次元の定数配列に拡張されます。
V1 と V2 のパラメーターはすべて正の整数である必要があり、P の値は [0 1] の範囲内にある必要があります。
F 逆関数は、F cdf に関して次のように定義されます。 ###どこ###
例分子の自由度 5、分母の自由度 10 の F 分布からサンプルの 95% を超える値を見つけます。
x = finv(0.95,5,10)
#xx =
3.3258
3.3258 を超える値が観測されるのは、確率の 5% だけです。
以上がMATLAB を使用して sinc 関数の逆関数を解く方法を学習します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。