LC tuned amplifier - correct equation to match the measured AC gain

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
I constructed in Multisim a single tuned amplifier stage, and measured AC voltage gain there is around 338 .
I found this equation on many websites for tuned amplifiers: V(ac-gain-tuned) = ( beta * (Zlc || Zload) ) / Rin .
I put in equation my beta (62) and Rin = 50 ohm and measured AC voltage gain = 338 . From these, computed Zlc || Zload appears to be 272 ohm, which is strange, because LC tank at my frequency (around 2.6 Mhz) has large impedance - calculated at webpage - look down.

Can anyone point me in right direction about proper equation to get as measured, AC voltage gain, in my example 338.
For calculating LC tank impedance, I used https://www.translatorscafe.com/unit-converter/en-US/calculator/parallel-lc-impedance/
And exact frequency inside bode plotter inside Multisim differs a litle bit.

Thank you
 

Attachments

Last edited:

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
I measured inside Multisim the AC voltage of LC tank and AC current through it. For equation ( U / I = Z ) I put there 4.019 V and current I(rms) = 1.15 mA as I observe it in Multisim - see photo . And I got Z value of 349.47 OHM . Why is such a small resistance? Parallel LC tank, in resonance by signal of 2.684 Mhz should have very large impedance.
 

Attachments

Last edited:

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
Here is my Javascript code for calculation:

// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

// input resistance
var Rin = 50;

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Z = (Zlc * Zload) / (Zlc + Zload);

var ACgainTuned = beta * (Z / Rin);

console.log(ACgainTuned.toString());
// I got here 8914.6471, which differs from measured 338 in MultiSim
 

MrAl

Joined Jun 17, 2014
11,448
I constructed in Multisim a single tuned amplifier stage, and measured AC voltage gain there is around 338 .
I found this equation on many websites for tuned amplifiers: V(ac-gain-tuned) = ( beta * (Zlc || Zload) ) / Rin .
I put in equation my beta (62) and Rin = 50 ohm and measured AC voltage gain = 338 . From these, computed Zlc || Zload appears to be 272 ohm, which is strange, because LC tank at my frequency (around 2.6 Mhz) has large impedance - calculated at webpage - look down.

Can anyone point me in right direction about proper equation to get as measured, AC voltage gain, in my example 338.
For calculating LC tank impedance, I used https://www.translatorscafe.com/unit-converter/en-US/calculator/parallel-lc-impedance/
And exact frequency inside bode plotter inside Multisim differs a litle bit.

Thank you
Hello,

What does XBP1 do?
I see it takes an input, but what is the "OUTPUT" doing?

In circuits like this if you want to estimate the gain you have to choose a model for the transistor. In order to keep the math simpler, a simple model is usually used like a current controlled current source (CCCS). You set the typical Beta, then go from there. You can then later vary the Beta to see how it affects the response of the circuit.

You also need to set some parasitic values like the ESR of the inductor if you want some reasonable results, although you may be able to start without that just to get a feel for what is going on.

If this helps, a parallel impedance calculation is just like a calculation for parallel resistors except you need to use complex math.
For two resistors we have:
Rp=R1*R2/(R1+R2)

and for two general impedances made of inductors and/or capacitors and/or resistors it is:
Zp=Z1*Z2/(Z1+Z2)

The impedance for a single inductor is:
zL=s*L

and for a capacitor it is:
zC=1/(s*C)

and letting s=j*w this comes out to:
zL=j*w*L

and:
zC=1/(j*w*C)

For example, the calculation for L in parallel with C comes out to:
Zp=(s*L)/(s^2*C*L+1)

and in terms of j*w this is:
Zp=(j*w*L)/(1-w^2*L*C)

and as you can see this is purely imaginary.
If we add a resistor in parallel we get:
Zp=(j*w*L*R*(R-w^2*C*L*R))/((R-w^2*C*L*R)^2+w^2*L^2)+(w^2*L^2*R)/((R-w^2*C*L*R)^2+w^2*L^2)

and you can see this is complex with the first term being imaginary and the second real.
You may be able to simplify that last one.
When you do this numerically it comes out much simpler. For example, if L=2 and C=3 and R=4 and w=5 we get:
Zp=100/88829-(j*5960)/88829

which is approximately:
Zp=0.0011257584797757-0.067095205394635*j
 
Last edited:

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
Hello,

What does XBP1 do?
I see it takes an input, but what is the "OUTPUT" doing?

In circuits like this if you want to estimate the gain you have to choose a model for the transistor. In order to keep the math simpler, a simple model is usually used like a current controlled current source (CCCS). You set the typical Beta, then go from there. You can then later vary the Beta to see how it affects the response of the circuit.

You also need to set some parasitic values like the ESR of the inductor if you want some reasonable results, although you may be able to start without that just to get a feel for what is going on.

If this helps, a parallel impedance calculation is just like a calculation for parallel resistors except you need to use complex math.
For two resistors we have:
Rp=R1*R2/(R1+R2)

and for two general impedances made of inductors and/or capacitors and/or resistors it is:
Zp=Z1*Z2/(Z1+Z2)

The impedance for a single inductor is:
zL=s*L

and for a capacitor it is:
zC=1/(s*C)

and letting s=j*w this comes out to:
zL=j*w*L

and:
zC=1/(j*w*C)

For example, the calculation for L in parallel with C comes out to:
Zp=(s*L)/(s^2*C*L+1)

and in terms of j*w this is:
Zp=(j*w*L)/(1-w^2*L*C)

and as you can see this is purely imaginary.
If we add a resistor in parallel we get:
Zp=(j*w*L*R*(R-w^2*C*L*R))/((R-w^2*C*L*R)^2+w^2*L^2)+(w^2*L^2*R)/((R-w^2*C*L*R)^2+w^2*L^2)

and you can see this is complex with the first term being imaginary and the second real.
You may be able to simplify that last one.
When you do this numerically it comes out much simpler. For example, if L=2 and C=3 and R=4 and w=5 we get:
Zp=100/88829-(j*5960)/88829

which is approximately:
Zp=0.0011257584797757-0.067095205394635*j
I have many books on amplifier design. But most of those have very little data on tuned amplifiers (L, LC, transformer).
Even those who have, they are very short and not going into details. Can you recommend me any book or tutorial that deals with tuned amplifiers and/or doing the complex math with transistors and belonging L and C elements as parts of amplifier? With existing material that I have, complex numbers are just demonstrated on simple L, LC, RLC, R circuits, I am missing here real amplifier designs/examples with transistor.
 
Last edited:

MrAl

Joined Jun 17, 2014
11,448
I have many books on amplifier design. But most of those have very little data on tuned amplifiers (L, LC, transformer).
Even those who have, they are very short and not going into details. Can you recommend me any book or tutorial that deals with tuned amplifiers and/or doing the complex math with transistors and belonging L and C elements as parts of amplifier? With existing material that I have, complex numbers are just demonstrated on simple L, LC, RLC, R circuits, I am missing here real amplifier designs/examples with transistor.
Hi,

Yeah sometimes you have to sit down and roll up your sleeves and dig into the analysis yourself to get any real results with circuits that are not that typical.

I should be able to help you quite a bit here but I need to know what the output of that XBP1 is doing. That appears to be part of the circuit or something.
If it is not part of the circuit normally then I would need to know that too.

What we would do is a basic circuit analysis using math. Write a few equations, then solve. This gives us a good idea what is happening in the circuit and what can be changed if needed. There is no book I know of out there that covers every circuit in existence.
 

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
XBP1 is just a bode plotter, that displays AC gain on specified frequency range. It works by measuring input (IN) and output (OUT) signal and by the same time ignoring AC voltage source inside schematic.

I've got some ideas. I will try calculting AC gain by taking into account also impedance of Remitor and Cemitor so those two will be in parallel to Zlc and Zload. If that won't work I will also put in input resistance Zin instead of just 50 ohm, values
Rin || Rb1 || Rb2 || ( Rbase (base resistance inside transistor) + Zre (emitter resistor parallel wit emitter capacitor)) .

For Rbase I will get value by calculating Rbase = 0.7 V / I_base_current .
 
Last edited:

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

// input resistance
var Rin = 50;

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Z = (Zlc * Zload) / (Zlc + Zload);

// Zr_emitor in parallel with Zc_emitor
var C_emitor = 1 / 1000 / 1000; // 1 uF

// Zc_emitor is emitor capacitor impedance
var Zc_emitor = 1 / (2*3.1434*f*C_emitor);
var Zr_emitor = 1000; // this is emitor resistor
var Zemitor = (Zc_emitor * Zr_emitor) / (Zc_emitor + Zr_emitor);
var Z_final_out = (Z * Zemitor) / (Z + Zemitor);


// 17.3 uA is base current inside DC analysis
var Zbase = Zemitor + (0.7 / (17.3/1000/1000));


// 49.45 ohm is calculated by 50 ohm || 22 kohm || 5.6 kohm which is (Rsource || Rbase1 || Rbase2)
var Zin = (49.45 * Zbase) / (49.45 + Zbase);


var ACgainTuned = beta * (Z_final_out / Zin);

console.log(ACgainTuned.toString());

I got here value of 0.07438996534966413 , which is far away from measured AC gain of 338, as shown in Multisim.
 

MrAl

Joined Jun 17, 2014
11,448
// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

// input resistance
var Rin = 50;

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Z = (Zlc * Zload) / (Zlc + Zload);

// Zr_emitor in parallel with Zc_emitor
var C_emitor = 1 / 1000 / 1000; // 1 uF

// Zc_emitor is emitor capacitor impedance
var Zc_emitor = 1 / (2*3.1434*f*C_emitor);
var Zr_emitor = 1000; // this is emitor resistor
var Zemitor = (Zc_emitor * Zr_emitor) / (Zc_emitor + Zr_emitor);
var Z_final_out = (Z * Zemitor) / (Z + Zemitor);


// 17.3 uA is base current inside DC analysis
var Zbase = Zemitor + (0.7 / (17.3/1000/1000));


// 49.45 ohm is calculated by 50 ohm || 22 kohm || 5.6 kohm which is (Rsource || Rbase1 || Rbase2)
var Zin = (49.45 * Zbase) / (49.45 + Zbase);


var ACgainTuned = beta * (Z_final_out / Zin);

console.log(ACgainTuned.toString());

I got here value of 0.07438996534966413 , which is far away from measured AC gain of 338, as shown in Multisim.
Hi,

Ok I see now what that block is doing, it is just measuring the input and the output of the circuit. Very good.

Now as to the gain in the simulation, did you try to do a transient analysis too rather than an AC analysis?

I'll see if I can get some answer for you.
 

MrAl

Joined Jun 17, 2014
11,448
// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

// input resistance
var Rin = 50;

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Z = (Zlc * Zload) / (Zlc + Zload);

// Zr_emitor in parallel with Zc_emitor
var C_emitor = 1 / 1000 / 1000; // 1 uF

// Zc_emitor is emitor capacitor impedance
var Zc_emitor = 1 / (2*3.1434*f*C_emitor);
var Zr_emitor = 1000; // this is emitor resistor
var Zemitor = (Zc_emitor * Zr_emitor) / (Zc_emitor + Zr_emitor);
var Z_final_out = (Z * Zemitor) / (Z + Zemitor);


// 17.3 uA is base current inside DC analysis
var Zbase = Zemitor + (0.7 / (17.3/1000/1000));


// 49.45 ohm is calculated by 50 ohm || 22 kohm || 5.6 kohm which is (Rsource || Rbase1 || Rbase2)
var Zin = (49.45 * Zbase) / (49.45 + Zbase);


var ACgainTuned = beta * (Z_final_out / Zin);

console.log(ACgainTuned.toString());

I got here value of 0.07438996534966413 , which is far away from measured AC gain of 338, as shown in Multisim.

Hello again,

Ok taking a more detailed look, I get the results shown in the attachment using pure math with Nodal Analysis (not a simulation).
We can see that the gain near 2.6MHz is roughly in the neighborhood of 300 or so, but that is with a purely AC analysis.
This is when using a CCCS for the transistor with an assumed transistor Beta of 50. We would really have to look at the response with other values for Beta too.

Since you are doing a simulation, you might as well take a look at the response using a transient analysis and see if it matches with these AC results.

Notes:
CCCS stands for Current Controlled Current Source.
The plot spans from just above f=0Hz to f=5MHz.
 

Attachments

Last edited:

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
I am still stuck with equation ACgainTuned = beta * (Z_out / Zin), which should show number around 300.
In Multisim program, measured AC gain number is very reliable, I tested it with few single stage amplifiers, but not with LC tank, but simple resistor instead. And measured one didn't differ much from calculated (with these R as collector), I used different equation for them: V(ac_gain) = -gm * (Rc || Rl) , where gm = Ic / Vt
 

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
I used equation from attached example.
It is far from measured number of around 300.
And why is only inductor used for calculation and not capacitor also?
Capacitor value is not used in any equation except for getting resonant frequency in example.
In Multisim, I didn't add any inductor DC resistor in series, so I am not sure what Q should I take into account below.

// 0.48 mH
var L = 0.48 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// compute coil Q by given 10 ohm ... here I tried different numbers - smaller and larger
// In multisim, there is no default inductor resistor
var Q = (2*3.124*f*L) / 10;

var Rp = Q * 2*3.1434*f*L; // this is equation Rp = Q*2*PI*f*l
var beta = 62; // I use this beta inside simulator
var Zload = 10000; // 10 kOhm load
var Zoutput = (Rp * Zload) / (Rp + Zload);

// Zr_emitor in parallel with Zc_emitor
var C_emitor = 1 / 1000 / 1000; // 1 uF
var Zc_emitor = 1 / (2*3.1434*f*C_emitor); // Zc_emitor is emitor capacitor impedance
var Zr_emitor = 1000; // this is emitor resistor
var Zemitor = (Zc_emitor * Zr_emitor) / (Zc_emitor + Zr_emitor); // R and C in paralellel for emitor

// 17.3 uA is base current inside DC analysis
var Zbase = Zemitor + (0.7 / (17.3/1000/1000));
var Zin0 = (22000*5600) / (22000+5600); // 22 kOHM || 5.6 kOHM are base resistors
var Zin1 = (50 * Zin0) / (50 + Zin0); // 50 ohm is signal source internal resistor
var ZinFinal = (Zin1 * Zbase) / (Zin1 + Zbase);

var result = (-beta * Zoutput) / ZinFinal;

console.log(result.toString());
// I got here value of -12534.992187483042
 

Attachments

Last edited:

MrAl

Joined Jun 17, 2014
11,448
I am still stuck with equation ACgainTuned = beta * (Z_out / Zin), which should show number around 300.
In Multisim program, measured AC gain number is very reliable, I tested it with few single stage amplifiers, but not with LC tank, but simple resistor instead. And measured one didn't differ much from calculated (with these R as collector), I used different equation for them: V(ac_gain) = -gm * (Rc || Rl) , where gm = Ic / Vt
Hello,

I can't comment too much on these other equations that come up because they are such short cuts that I do not trust all of them and they make mistakes also. You might just make sure your math is correct though.
All I can offer is that when I do a full AC analysis of the circuit, I get a gain of around 300 near that 2.6 to 2.7MHz frequency.

If one of the equations you are using is true and you do not get the right result, then some assumption is not right. That's the problem with these short cut methods you have to know exactly where the parameters are coming from and what they represent.
 

Thread Starter

georgefrenk

Joined Dec 24, 2023
54
I made a lot of progress here:

// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Zoutput = (Zlc * Zload) / (Zlc + Zload);

// these two equations are from mentioned website at bottom
var re = 25 mV / 1.08 mA; // 1.08 mA is emitter current
var Zin_inverse = 1 / 22000 + 1 / 5600 + 1 / (beta*re);

var Zin_ok = 50 + 1 / Zin_inverse;
// this is from mentioned website:
// If you require the input impedance of the whole stage plus source impedance, then you will need to consider Rs in series with // the base bias resistors as well, (Rs + R1||R2).


// that equation is from other websites for tuned amplifier design
var ACgainTuned = beta * ( Zoutput / Zin_ok);


// Result output for 1st GAIN equation: 392.3658992939781
console.log(ACgainTuned.toString());


// Common Emitter Voltage Gain
// that equation is from here: https://www.electronics-tutorials.ws/amplifier/input-impedance-of-an-amplifier.html
var ACgain2 = Zoutput / re;

// Result output for 2nd GAIN equation: 310.5748032587481
console.log(ACgain2.toString());


As you can see, result of first gain equation is somehow not too close to 300: it is calculated as 392.365
But the second gain equation from mentioned website has very close result of 310.57.
 

MrAl

Joined Jun 17, 2014
11,448
I made a lot of progress here:

// 0.48 mH
var L = 0.48 / 1000.0;

// 5 pF
var C = 5.0 / 1000.0 / 1000.0 / 1000.0 / 1000.0;

// 2.684 MHz
var f = 2.684 * 1000000.0;

// LC parallel impedance equation: Zlc = (2*3.14*f*L) / (1.0 - (2*3.1434*f)^2*L*C)
var Zlc = (2*3.1434*f*L) / (1 - 2*3.1434*f*2*3.1434*f*L*C);

var beta = 62;
var Zload = 10000;

// Zlc and Zload in parallel
var Zoutput = (Zlc * Zload) / (Zlc + Zload);

// these two equations are from mentioned website at bottom
var re = 25 mV / 1.08 mA; // 1.08 mA is emitter current
var Zin_inverse = 1 / 22000 + 1 / 5600 + 1 / (beta*re);

var Zin_ok = 50 + 1 / Zin_inverse;
// this is from mentioned website:
// If you require the input impedance of the whole stage plus source impedance, then you will need to consider Rs in series with // the base bias resistors as well, (Rs + R1||R2).


// that equation is from other websites for tuned amplifier design
var ACgainTuned = beta * ( Zoutput / Zin_ok);


// Result output for 1st GAIN equation: 392.3658992939781
console.log(ACgainTuned.toString());


// Common Emitter Voltage Gain
// that equation is from here: https://www.electronics-tutorials.ws/amplifier/input-impedance-of-an-amplifier.html
var ACgain2 = Zoutput / re;

// Result output for 2nd GAIN equation: 310.5748032587481
console.log(ACgain2.toString());


As you can see, result of first gain equation is somehow not too close to 300: it is calculated as 392.365
But the second gain equation from mentioned website has very close result of 310.57.

Hi,

What you could do is create a pinwheel and paint some numbers on the circumference: 100, 150, 200, 250, 300, 350, 400, 450, 500
Then, spin it, and whatever number it stops at, that's the right gain. (ha ha)
Joking of course, but that's what it seems like sometimes with these short cut calculations.
The second one looks good though. Maybe that's the right equation, or maybe not :)
Try some other systems with it see if it works for them too.

You know the analysis for systems like these is written in books and I'm sure on the web too. You could look into that. When you do an analysis from the ground up, you can usually get it right even if it takes a few times to correct your own calculation errors. When you do it that way, you do not have to rely on someone else's idea of how you should calculate something like the gain.
A really, really, really, simple example is a resistive voltage divider. You calculate the gain simply by knowing the values of the two resistors and some general theory on circuit analysis like Nodal. If you rely on someone else's formula, it may not be correct and then you get the wrong answer.
It's more work to do from the ground up, but it's more reliable, and you learn more about the way circuits work.

I'm not sure if you can trust that "Rs+R1||R2" because there will be some impedance of the transistor base emitter. It will be a little higher, but it may still affect the calculation. You might look into that. If that is a general statement then it is surely wrong, but if it is specific to a particular circuit it may be ok. This is due to the fact that the sum above is an approximation.
 
Last edited:
Top