# Can a practical steady-state electronic oscillator be a linear circuit?

Can a practical steady-state electronic oscillator, made of an amplifier (an OA) and a feedback loop be a linear circuit?

Apparently, this is not possible as long as a linear oscillator can never satisfy in practice the Barkhausen condition which, in consequence, can not fully explain how a real oscillator work.

(The Barkhausen condition is equivalent to balancing a bearing ball on the point of a needle. This is possible only in theory.)

• Essentially yes : look at ultra low distortion sinewave oscillators (usually Wien bridge). You do need to pay very careful attention to the amplitude control loop though (which balances that ball bearing arbitrarily closely) Crude ones use lampbulbs or thermistors, where the thermal inertia more or less keeps the loop linear.
– user16324
Nov 20, 2021 at 20:26
• Essentially no: When there are non-linear parts which intentionally are brought into the feeback loop the circuit is to be considerd as non-linear. In this context, it is not important (a) if the result of this non-linearity can easily be observed or (b) if there are other (unavoidable) non-lineraities (which always exist).
– LvW
Nov 21, 2021 at 11:16
• - bulbs and thermistors are very nonlinear examples that are only linear with ratios in boundaries of a design or steady-state that regulates gain. Nov 21, 2021 at 16:32
• I feel that the debate in the answers hinges on diverging interpretations of "practical". @TonyStewartEE75 sees it as a design problem: can you take a concrete circuit, and make it mostly linear within some spec. Answer is yes. Others see it as a real-life constraint on a theoretical question: can a purely linear controller work without making unreasonable assumptions (eg ability to set gain exactly to 1). Answer is no. Maybe the OP could clarify :) Nov 21, 2021 at 18:53
• How are you defining 'linear circuit'?
– Chu
Nov 22, 2021 at 0:29

In theory it can be a linear circuit, although the amplitude of the oscillation will not be controlled.

In practice, it cannot be a perfectly linear circuit.

Therefore there is a tradeoff between 'practical' and steady-state. If you could make the loop gain precisely 1.00..., then the amplitude would remain constant, and you would have a linear system that is oscillating. In practice, you can't make the loop gain precisely 1.00, and some non-linear circuit (such as a thermistor, lamp or other amplitude-detecting device) is used modulate the gain around 1.00 to maintain steady-state oscillation. This non-linearity can be made arbitrarily small, and in practice introduce no detectable distortion (e.g. non-linearity) in the oscillator.

You cannot measure (and therefore regulate) the amplitude of the oscillation with purely linear circuits or elements. It is possible to make the non-linearity required arbitrarily small, but there is no practical reason to do so.

• There are two technical flaws in this answer. 1. The amplitude can be controlled to the tolerance you define by design. 2. It is possible to make the envelope, startup time and THD as linear as you need , all by design. -1 with tolerances and accuracy tracable to NIST stds if you need it and can afford that. Nov 20, 2021 at 22:47
• Yes, mostly true, but it is not linear -- i.e. composed of only linear elements (ideal amplifiers (not necessarily infinite gain); linear resistors and passive components etc.) To adjust the gain, you NEED a non-linear element (commonly a multiplication function) which is a non-linear element. In practice, it it quite easy to build a (sinusoidal) oscillator with distortion lower than is practically measurable or required. The need for 'linear circuits' is an arbitrary constraint -- more looking for a mathematical answer than a practical design. Nov 20, 2021 at 23:19
• You only need a limiter like a CMOS R2RO Op Amp which is perfectly linear inside the rails. and a 0.1% matched R's with a 2% gain increase by 50x R in shunt to get better than 0.05% THD . Nothing is arbitrary, unless one who designs it that way. It is done by specs , margins tolerances. by design. The log harmonic scale is 20 dB / div tinyurl.com/yjx8t8se After enough cycles, it gets pretty low. Here with a single supply. Nov 20, 2021 at 23:41
• As was said: "In practice, it cannot be a perfectly linear circuit." and "This non-linearity can be made arbitrarily small, and in practice introduce no detectable distortion (e.g. non-linearity) in the oscillator.". In practice, a non-linearity (however small) is needed to balance the ball bearing. Nov 21, 2021 at 0:29
• a damped linear control system and an amplitude-regulated oscillator are different systems. In the control system, all variables are in the same domain (all are functions of time), and are regulated with linear elements (proportional, d/dt, etc.). To regulate an oscillator's amplitude, you need a non-linear function (ideally a multiplier, but clipping works too) because you have to change the gain in the loop (a multiplication function). Regulating the gain can be done with a linear control system, but the actuator is a multiplier in the oscillator's loop. Nov 21, 2021 at 16:53

A practical "harmonic" oscillator can continuously produce an oscillation signal only when there is a certain amount of non-linearity within the loop. Barkhausens necessary oscillation condition can be met only when the loop gain is unity (mean value over several periods). This is identical to the case where the closed-loop poles are moving (swinging) left and right from the jw-axis. (This is the rsult of the finite time constant within the control loop).

With respect to the question it is, therefore, important to realize if the non-linearity of the circuit is intentionally introduced into the loop or not (because - strictly speaking - each circuit and each part is non-linear). With other words: Do we exploit this non-linearity for amplitude control purposes (like power supply rails)?

Comment to the phase shift oscillator (see Tony Stewarts answer): This double-integrator loop is a very interesting one.

In most (if not in all) contributions where this oscillator is explained, nothing is said about amplitude control. Indeed, it is a very special effect which enables the circuit to meet Barkhausens condition. It must be stated that the circuit would NOT oscillate for IDEAL opamps.

Fortunately, opamps are always real introducing at least another pole and additional negative phase shift into the loop. As a result: The oscillator will always safely start at a frequency where the loop phase is zero and the loop gain is larger than unity.

The rising amplitude will reach the supply rail - and the amplitude limiting process will cause a positive phase shift which brings the frequency to a value where both oscillation conditions (gain and phase) will be met. Therefore, a very small clipping effect can be observed only.

• I thought I made the explanation of amplitude control quite clear. That is the measure of approaching the boundary condition going from some value to zero gain and result in dB THD. Thus an ideal linear circuit remains linear if you don't approach the boundary. Logical binary decisions and controlling limits or boundaries are thus a nonlinear process by definition. This applies to all circuits. "In Theory, there are no linear circuits, while in Practice , there are" not Yogi Nov 21, 2021 at 15:51
• I have some problems to see the background of your comment. Something wrong in my answer?
– LvW
Nov 21, 2021 at 17:53
• Yes It seems biased towards not understanding which part of this is true if any ... "In most (if not in all) contributions where this oscillator is explained, nothing is said about amplitude control. " Nov 22, 2021 at 0:05
• also common in linear circuits are ILL's I have made Injection locked loops be stable in frequency and phase by injecting external narrow pulses using superposition that are integrated in a linear LC tank circuit to provide linear phase corrections every few thousand pulses and since tuned within that tolerance sustain linear constant amplitude oscillations and stable frequency synch'd to the external source. Would you call this a "Linear Circuit Oscillator" ? Same to @TimWescott et al. It had no IMD so it passes the 2nd test. Nov 22, 2021 at 0:13

Can a practical ...oscillator, ... be a linear circuit?

Certainly! As long as you define the spec for linearity it has to meet.

Sine Linearity is sometimes defined by THD in -dB or a result of a very high Q BPF from a square wave with another THD result.

• The ideal infinite and real gain Op Amps alike all go to zero gain when saturated.
• At that edge, the gain changes from 0 to that closed-loop gain value
• utilizing these facts allows you to choose, a slightly higher than unity gain that grows from some initial condition to the saturation point. This gain error from "Unity Loop Gain" also controls the THD and the rate of change of the envelope growing to saturation.
• or you can use a 1% gain increase and then have a soft limiter to reduce THD even greater.
• There are many improvements to make a linear oscillator even using LED or Zeners back to back, with a shared resistor, to provide "soft" limiting.
• The higher the Q or smaller the gain error from 1 , the longer the number of cycles it takes to reach saturation.
• the improvement for this is to set an initial condition for Vmax rather than gnd. This step voltage allows it to start oscillating at this peak voltage and settle very fast to steady-state even if the Q is 100k as in SC cut crystals used in OCXO's. (The only latency there is the oven settling time.)

## AMPLITUDE CONTROL

This is controlled by the abrupt change near limiting, but never clips. (added again for clarity)

Thus the ability to regulate the tolerance on a gain error from 1 and the preset voltage pullup for a cap, enables a simple RC 3stage phase shift oscillator to be as stable as and low THD as the total tolerance stackup you choose. Even if using a resistor hybrid with matched values to 100 ppm.

example of the R-value for the needle balancing act vs Aol for 2 OA's. Here you can reset and see how stable the output is. I chose a gain balancing R tuned to a few ppm to get unity loop gain overall, which is balanced enough to change very slowly in mV from the 10V reset initial condition on +/-15V that it will take millions of cycles to reach Vsat and then stop increasing without noticeable clipping. so THD could be -60dB better or worse depending on the amount of nonlinearity added.

You can change the cap's V+ to 15V and see the result and not have to wait.

There are dozens of other ways to make very low THD sine oscillators and that depends on specs for THD, f, power etc. • The definition of linearity is here: en.wikipedia.org/wiki/Linear_circuit . Nov 20, 2021 at 22:44
• @TonyStewartEE75 all of the circuits that you describe after you say "yes this can be done with a linear circuit" depend on nonlinearities to regulate the amplitude of the sine wave. So so how, if your examples are all nonlinear circuits, can it be done in a practical matter with linear circuits? Nov 20, 2021 at 23:38
• I disagree with the notion that nonlinear = linear. Nonlinear means nonlinear. If there's a nonlinearity, then even if it's usually linear, it's still not always linear. And if your circuit depends on a nonlinearity, then your circuit is nonlinear. Nov 21, 2021 at 1:17
• I think, the question is not "Is an oscillator a linear circuit ?" but "Can an oscillator circuit be linear" ? And the answer is NO. The real meaning of the question is "Must an oscillator be non-linear"? And the answer is YES . And - in this context it is not important if there are some other unwanted non-linearities in the circuit.
– LvW
Nov 21, 2021 at 11:34
• No - how did you derive this from my answer? And what do you mean with "academically-linear"? We have a clear definition for lineartity of a function.
– LvW
Nov 21, 2021 at 15:49