Documente Academic
Documente Profesional
Documente Cultură
5.8
Zin_TL_lossy=Z0*(ZL+Z0*tanh(gamma*L))/(Z0+ZL*tanh(gamma*L)) beta*L=2*pi*D
pozar_05_exercise_08.m
tanh(x+y)=(tanh(x)+tanh(y))/(1+tanh(x)*tanh(y))
when y Im(y)=0, tanh(1j*y)=1j*tan(y)
then these 2 expressions should be equivalent for an Open Circuit (OC) lossy stub input impedance:
Zin_oc_stub=Z0*(tanh(alpha*L)+1j*tan(beta*L))/(1+1j*tanh(alpha*L)*tan(beta*L))
Zin_oc_stub=Z0/tanh(alpha*D*lambda+1j*2*pi*D)
alpha_range=[0.0001:0.0001:1];
Z0=50;
dD=.01;d_range=[0:dD:1];
[Alpha,D]=meshgrid(alpha_range,d_range);
f0=2e9;c0=2.998e8;lambda=c0/f0
Zin_oc_stub=Z0*(tanh(Alpha.*D*lambda)+1j.*tan(2*pi*D))./…
(1+1j*tanh(Alpha.*D*lambda).*tan(2*pi*D));
hf1=figure(1);hs1=surf(Alpha,D,imag(Zin_oc_stub));
hs1.EdgeColor='none'
xlabel('\alpha');ylabel('D');title('im(Zin)')
campos(1e3*[-0.006295 -0.003067 6.419534])
the reactance peaks are the horizontal yellow trace, for any alpha if D a bit below 1/4
or decreasing with alpha increasing when D a bit below 3/4.
max(max(imag(Zin_oc_stub)))
min(min(imag(Zin_oc_stub)))
When it's said 'small alpha', it means alpha*L <<1 same as D<<lambda/alpha,
alpha_range=[.0001:.00001:.001];
[Alpha,D]=meshgrid(alpha_range,d_range);
imZin_oc_stub=imag(Z0*(tanh(Alpha.*D*lambda)+1j.*tan(2*pi*D))./…
(1+1j*tanh(Alpha.*D*lambda).*tan(2*pi*D)));
hf2=figure(2);hs2=surf(Alpha,D,imZin_oc_stub);
hs2.EdgeColor='none'
xlabel('\alpha');ylabel('D');title('im(Zin) \alphaL<<1')
max(max(imZin_oc_stub))
= 7.947269813043918e+02
min(min(imZin_oc_stub))
= -7.947269360112038e+02
alpha=.001
Zin_oc_stub=…
Z0*(tanh(alpha.*d_range*lambda)+1j.*tan(2*pi*d_range))./…
(1+1j*tanh(alpha.*d_range*lambda).*tan(2*pi*d_range));
im_Zin_oc_stub=imag(Zin_oc_stub);
n1=find(im_Zin_oc_stub==max(im_Zin_oc_stub)) = 25
the first reactance peak takes place at
= 0.240000000000000
D(n1)
For SC lossy stub, Zin is the inverse expression, with increasing D, the
negative reactance shows up 1st, just before /4 and just after /4 the
reactive peak takes place.
Achieving the objective of the 1st part of the exercise (OC stub) implies D value just below .25 or just below .75.
Both OC stub lengths (just below /4 and 3/4) show similar high reactance values.
While for the 2nd part of the exercise (SC stub) really negative reactance values are achieved when D just above .25 and .75 multiples.
OC lossy stub maximises reactance (X=Xmax) when D=1/4+n/2-dD , dD<<.25, dD>0, n=1, 2, 3 ..
OC lossy stub minimises reactance (X=-|Xmax|) when D=1/4+n/2+dD
th(x+1j*y)=(th(x)+th(y))/(1+th(x)*th(y))
th(1j*x)=1j*tan(x)
Taylor th(x)~x
The solutions manual, after solving a 2nd degree equation reaches ±alpha*L as the optimal offset from L = /2+n*/2 ± that
maximises/minimises OC/SC reactance, respectively.
_________________________________________________________________________________________________________________________
John Bofarull Guix jgb2012@sky.com 2/ 5
MICROWAVE ENGINEERING – POZAR – IMPEDANCE MATCHING CHAPTER 05 EXERCISE 08 18/09/2018 00:36:45.
Is there a high reactance, probably not a peak, but large enough for the purpose of the design that has at the same time really small re(Zin)?
alpha=.001
D=[0:.0001:1];
% gamma=exp(-2*(alpha*D*c0/f0)).*exp(-1j*(4*pi*D+pi));
gamma=exp((-2*alpha*c0/f0-1j*4*pi)*D);
% yin=Yin*Z0
yin=(1-gamma)./(1+gamma);
re_yin=real(yin);
im_yin=imag(yin);
figure(101);
yyaxis left;plot(D,re_yin);grid on; ylabel('re(Yin/Y0)')
yyaxis right;plot(D,im_yin);grid on; ylabel('im(Yin/Y0)')
D=[0.249:.000001:.2599];
gamma=exp(-2*(alpha*D*c0/f0)).*exp(-1j*(4*pi*D));
yin=(1-gamma)./(1+gamma);
re_yin=real(yin);
im_yin=imag(yin);
figure(102);
yyaxis left
plot(D,re_yin);grid on; ylabel('re(Yin/Y0)')
yyaxis right
plot(D,im_yin);grid on; ylabel('im(Yin/Y0)')
the initially chosen reactance around 800 ohm would have real
component of 15 ohm, while a 200ohm reactance as suggested by
the solutions manual, with delta_offset ~ alpha*L would only have
0.25 ohm
The sought |reactance| peaks in this exercise do not only happen near L ~ /2 (/4) multiples, as the solutions manual but near multiples of /4,
those are of inductive nature, but also with opposite sign, to those peaks near 3/4 multiples, these ones of capacitive behaviour.
_________________________________________________________________________________________________________________________
John Bofarull Guix jgb2012@sky.com 3/ 5
MICROWAVE ENGINEERING – POZAR – IMPEDANCE MATCHING CHAPTER 05 EXERCISE 08 18/09/2018 00:36:45.
On Smith Chart
hf7=figure(7);sm1=smithchart;
ax7=hf7.CurrentAxes
hold(ax7,'on')
alpha=.1
dD=.0001;
D=[dD:dD:2.5]; % Now D linear, not a mesh
c0=2.998e8
f0=5e8
Z0=50
Zin_oc_stub_lossy=Z0./tanh(alpha*D*c0/f0+1j*2*pi*D);
gamma_in=(Zin_oc_stub_lossy-Z0)./(Zin_oc_stub_lossy+Z0);
plot(ax7,real(gamma_in),imag(gamma_in),'Color','red','LineWidth',1.5);
hold all
For SC lossy stub it's same Smith chart plot turned upside down, also spinning CW
but starting on [-1 0] also Z Smith Chart.
reactance highest (inductive peak) and lowest (capacitive peak) values happen
when real(gamma) 0
absregamma_in=abs(regamma_in);
[row_n1,col_n1,v1]=find(absregamma_in<.01)
plot(ax7,real(gamma_in(col_n1)),imag(gamma_in(col_n1)),'bo', …
'MarkerSize',15);
At what stub lengths do Open Circuits and Short Circuits take place?
hf7=figure(7);sm1=smithchart;
ax7=hf7.CurrentAxes
hold(ax7,'on')
% ZL=Inf
alpha=.1
dD=.0001;
D=[dD:dD:2.5]; % Now D linear, not a mesh
f0=5e8
Zin_oc_stub_lossy=Z0./tanh(alpha*D*c0/f0+1j*2*pi*D);
gamma_in=(Zin_oc_stub_lossy-Z0)./(Zin_oc_stub_lossy+Z0);
plot(ax7,real(gamma_in),imag(gamma_in),'Color','red','LineWidth',1.5)
hold all
plot(ax7,[-1 1],[0 0],'Color','blue')
imgamma_in=imag(gamma_in)
regamma_in=imag(gamma_in)
absimgamma_in=abs(imgamma_in);
[row_n1,col_n1,v1]=find(absimgamma_in<.01)
plot(ax7,real(gamma_in(col_n1)),imag(gamma_in(col_n1)),'bo', …
'MarkerSize',15);
From the Smith Chart, we can tell that for lossy stubs there's no way to null re(Zin) while obtaining high reactance on lossy OC stub.
_________________________________________________________________________________________________________________________
John Bofarull Guix jgb2012@sky.com 4/ 5
MICROWAVE ENGINEERING – POZAR – IMPEDANCE MATCHING CHAPTER 05 EXERCISE 08 18/09/2018 00:36:45.
So it's a trade-off: Select high enough reactance (Inductance sought) or low enough for capacitance, while keeping the resistive part low enough.
For instance, the ~800 reactance mentioned above may have a fairly low real component,depending upon application. Narrowing D range.
Longer stubs show slightly increasing /4 and 3/4 offset with increasing stub length
This slightly increasing offset shows up when 1st calculating the reflection
coefficient and then retrieving the impedance.
N_laps=10
D=[dD:dD:N_laps];
Zin_oc_stub_lossy=Z0./tanh(alpha*D*c0/f0+1j*2*pi*D);
log10_imag_Zin_oc_stub_lossy=10*log10(abs(imag(Zin_oc_stub_lossy)))
figure(200);plot(D,log10_imag_Zin_oc_stub_lossy)
axis([0 N_laps 0 30]);grid on
[pks,lks1]=findpeaks(log10_imag_Zin_oc_stub_lossy)
hold all
plot(D(lks1),log10_imag_Zin_oc_stub_lossy(lks1),'ro')
inv_log10_imag_Zin_oc_stub_lossy=1./log10_imag_Zin_oc_stub_lossy;
[valls,lks2]=findpeaks(log10_imag_Zin_oc_stub_lossy)
plot(D(lks2),inv_log10_imag_Zin_oc_stub_lossy(lks2),'go')
Such slightly increasing offset also shows up when directly using the
impedance expression
D=[0:.0001:N_laps];
Zin_oc_stub_lossy=Z0./tanh(alpha*D*c0/f0+1j*2*pi*D);
taking log, just to locate the position of the reactance peaks, not the values
log10_imag_Zin_oc_stub_lossy=10*log10(abs(imag(Zin_oc_stub_lossy)))
plot(D,log10_imag_Zin_oc_stub_lossy)
axis([0 2.N_laps 0 30]);grid on
[pks,lks]=findpeaks(log10_imag_Zin_oc_stub_lossy)
hold all
plot(D(lks),log10_imag_Zin_oc_stub_lossy(lks),'ro')
so such abs(Reactance) paired peaks (OC stub) around /4 3/4 multiples as function of D, D being fraction of wavelength lambda are:
D_pks=D(lks) =
Columns 1 through 3
These are the peaks and valleys, close to lambda/4 multiples, 0.495200000000000 0.504800000000000 0.990500000000000
interleaved. Columns 4 through 6
1.009500000000000 1.485800000000000 1.514200000000000
Columns 7 through 9
1.981100000000000 2.018900000000000 2.476500000000000D
Just the positions of the peaks are:
D_pks_max_X =
D_pks_max_X=sort([D_pks([1:4:end]) D_pks([2:4:end])]) Columns 1 through 3
0.495200000000000 0.504800000000000 1.485800000000000
Columns 4 through 5
1.514200000000000 2.476500000000000
Note that the solutions manual uses, without mentioning it, or even
being told in the question an attenuation/lambda, not the standard
attenuation per metre.
_________________________________________________________________________________________________________________________
John Bofarull Guix jgb2012@sky.com 5/ 5