2016-12-30 22 views
-1

私は実際には、任意の数式の伝達関数をプロットする方法を理解していません。 Matlabのドキュメンテーションにはボード線図を得るために、私は伝達関数を作成する必要があります。それらは:tf([])を使用した例を示していますが、これは3次しか与えません。この数式の伝達関数をMatlabにプロットするにはどうすればよいですか?

特定のフォーミュラのボード線図をプロットするにはどうすればよいですか?

それがある:

Y = 1./((Z0./Zl).^2 * J SIN(B D)/ 2 + EXP(J * B * D。。。。 )。*(1 + Z0 ./Zl))

ここで、Z1、d、およびBは、各周波数の値のベクトルです。ここに私の完全なMatlabスクリプトがあります。

numElem = 200; 
w = linspace(2*pi*10^8,2*pi*10^10,numElem); 
wRes = 2*pi*10^9; 

%%Insert wRes (resonant frequency) 
for n = 1:numElem 
    if w(n) > wRes 
     w = [w(1:n - 1), wRes, w(n:numElem)]; 
     resLocation = n; 
     break 
    end 
end 

freq = w ./ (2*pi); 
lambda = 299792458 ./ freq; 

%Beta 
B = pi/2 .* w ./wRes; 
B(resLocation) = pi/2; 

%Distance 
d = lambda(resLocation) ./ 4; 

Z0 = 50; %Ohms 
C = 10^(-12); 
L = 1/(wRes^2*C); 
Zl = 1 ./ (j .* w .* C + 1 ./ (j .* w .* L)); 

y = 1./((Z0./Zl).^2 .* j.*sin(B .* d)/2 + exp(j .* B .* d).*(1 + Z0 ./ Zl)) 

答えて

0

私はこの問題に直面しています。これは本当に簡単です。 あなたの振幅は20logされる(|データ|)とあなたの位相がアークタンジェントである(実際の(データ)/ IMAG(データ))ので、あなたは以下のようにこの数式を使用することができます。

Amplitude=20*log10(abs(y)); 
phase = angle(y)*180/pi; 
subplot(211) 
semilogx(freq,Amplitude) 
subplot(212) 
semilogx(frq,phase) 

結果は次のとおりです。 enter image description here

関連する問題