fileName = 'frequencyCompensation';
checkCircuit(fileName);
%%
htmlPage('Circuit data');
img2html([fileName, '.svg'], 700);
netlist2html(fileName);
defPar('C_A', CA);
Cf = PR.R7.value*CA/PR.R5.value/(PR.R6.value + PR.R7.value);
defPar('C_f', Cf);
defPar('R_o', PR.R6.value);
defPar('R_ell', PR.R7.value);
defPar('R_B', 2*RBmin);
params2html();
elementData2html();
%%
htmlPage('Asymptotic-gain model');
simType('numeric');
dataType('laplace');
source('V1');
detector('V_ell');
lgRef('E_O1');
%%
gainType('asymptotic');
A = execute();
gainType('loopgain');
L = execute();
gainType('servo');
S = execute();
gainType('direct');
D = execute();
gainType('gain');
G = execute();
magPlot = plotdBmag('asymptotic-gain model', [A, L, S, D, G], 1e2, 1e9, 200);
fig2html(magPlot, 'asGainModelMag.svg', 800);
phasePlot = plotPhase('asymptotic-gain model', [A, L, S, D, G], 1e2, 1e9, 200);
fig2html(phasePlot, 'asGainModelPhase.svg', 800);
dataType('PZ');
pz2html(execute);
head2html('Discussion');
text2html(['The antenna amplifier has a bandwidth of approximately 120MHz ' ...
'and does not require frequency compensation.']);
gainType('loopgain');
PZL = execute();
gainType('servo');
dataType('poles');
stepVar('A_0');
stepStart(0);
stepStop(1500);
stepNum(50);
stepMethod('lin');
stepOn();
RL = execute();
figRL = plotPZ('Root locus', [PZL, RL], [-2e8, 0], [-1e8, 1e8]);
fig2html(figRL, 'RLuncomp.svg', 800);
%%
%{
%Bandwidth limitation with phantom zero%
head2html('Limitation of the bandwidth with a phantom zero');
stepOff();
Rphz = double(1/(2*pi*CA*P.R4.value));
defPar('R_phz', Rphz);
gainType('gain');
dataType('PZ');
pz2html(execute());
dataType('laplace');
magLim = plotdBmag(['Gain R_{phz}=', num2str(Rphz)], execute(), 1e2, 1e9, 200);
fig2html(magLim, 'magLim.svg', 800);
gainType('loopgain');
dataType('PZ');
PZLcomp = execute();
gainType('servo');
dataType('poles');
stepVar('A_0');
stepStart(0);
stepStop(1500);
stepNum(50);
stepMethod('lin');
stepOn();
RLcomp = execute();
figRLcomp = plotPZ('Root locus', [PZLcomp, RLcomp], [-1e8, 0], [-0.5e8, 0.5e8]);
fig2html(figRLcomp, 'RLcomp.svg', 800);
text2html(['The value of $R_{\\mathrm{phz}}$ should be adjusted. ' ...
'Compromise between bandwidth limitation and noise.']);
%}
%%
script2html('frequencyCompensation');
stophtml();
Go to main index
SLiCAP: Symbolic Linear Circuit Analysis Program, Version 0.6 © 2009-2020 Anton Montagne
For documentation, examples, support, updates and courses please visit: analog-electronics.eu