Devices, and the amplitude they stop being linear at

A bias point is a solution, not a choice

The phrase "the diode drops 0.7 volts" is a constant standing in for the root of a transcendental equation. Solved properly, from a five-volt supply through a kilohm, it drops 0.692544 V — and from forty-eight volts through the same kilohm it drops 0.754459 V, because the drop moves about sixty millivolts for every decade of current through it.

Everything else on this site solves a linear network. It can, because every device model in the collection has already been linearised before it reaches the solver: a transconductance, a resistance, a controlled source. That is a legitimate way to work and it is what makes a Bode plot possible at all. It also quietly assumes that somebody has already decided where on the device’s curve the linearisation is taken.

That decision is what a bias point is, and it is not a decision. It is the value at which a transcendental equation and a linear network agree, and finding it needs a different kind of solve.

A diode fed from 5 V through 1.0 kΩcomputed by solving, not by drawing. The operating point is where the exponential meets the load line: 0.692544 V and 4.3075 mA, reached in 13 damped Newton steps from a cold start. The one-line Newton on Vs = v + R·i(v), which touches no matrix, gives 0.692544 V. The "drop" is not a constant: it moves about 60 mV per decade of current.02.5057.5000.2000.4000.6000.800voltage across the diode (volts)current (milliamperes)load line: (5 V − v)/1.0 kΩ123450.6925 V, 4.307 mAthe circuit5 V1.0ksolved, then checked — two Newtons, no shared arithmeticthe drop moves 60 mV per decade
Fig. 1 A diode fed from five volts through a kilohm, drawn as the two curves whose intersection it is: the device’s own exponential, and the load line the supply and resistor impose. The marked verticals are the first five iterates of the damped Newton loop, starting from zero. The slider is the supply voltage, and at every setting the answer is confirmed by a completely separate one-line Newton that touches no matrix.

What the loop actually does

The method is the one a circuit simulator uses, and it is worth stating in full because it is short.

Take a guess at every nonlinear element’s controlling voltage. At that guess, each device has a current i(v) and a slope g = di/dv. Replace the device with a conductance g and a current source of i(v) − g v, chosen so the pair reproduces the device exactly at the present guess and linearly elsewhere. What is left is a linear network, which the same solveAt that draws every other figure on this site can solve. Read the new voltages, and repeat.

That companion pair is the whole trick. It converts a nonlinear problem into a sequence of linear ones, and every one of those linear ones goes through the same assembly, the same complex solver and the same current-law check as every other network in the collection. Nothing about the nonlinear solve needed a new solver; it needed a loop around the existing one.

Two details make it work rather than merely look like it should.

The derivative is supplied, not differenced. A numerical derivative would converge nearly as well, and it would make the residual check below circular — it would be measuring the same difference quotient the iteration used. On an exponential it also loses about half its digits exactly where the iteration needs them most.

The step is limited. Newton’s method on an exponential from a cold start asks for a first iterate that overflows: a ten-volt supply against a device whose current is exp(v/25.852 mV) produces an exponent in the hundreds. Capping each step at a hundred and fifty millivolts costs a few iterations and makes the loop converge from anywhere. From zero volts to a part in 10¹¹ takes thirteen steps at five volts and ten at forty-eight.

The check that is not the loop’s own

A Newton iteration reports convergence when its step size goes to zero. That says the iteration stopped. It does not say it stopped at a solution, and an iteration that has converged to the wrong thing looks exactly like success from inside the loop — which is the failure this check exists for.

So the residual is recomputed at the end from the original equations. Each linear element contributes the current its own law gives at the solved voltages, each device contributes its exponential evaluated at its own controlling voltage, and the sums are required to vanish at every node. Nothing in that computation uses a conductance, a companion source, or anything else the iteration produced.

It closes to 2.4×10⁻¹⁵ of the largest branch current at five volts, and to between 10⁻¹⁵ and 10⁻¹⁴ across the whole slider.

The 0.7 volt constant, solved over eight decades of currentThe forward voltage moves 59.5 mV for every factor of ten in current, so over the range drawn here it runs from 0.298 V to 0.774 V. The three marked points are solutions for 1 V, 5 V and 12 V through a kilohm, found by Newton's method; they span 88 mV.0.400.600.8011.21e-61e-51e-41m10m100m110100current through the diode (milliamperes)forward voltage across it (volts)the constant everybody is taught1 V in: 0.629 V5 V in: 0.693 V12 V in: 0.717 Vsolved, then checked — Newton's method on the exponentialthe constant moves 59.5 mV per decade
Fig. 2 The device on its own, from the limits field. The exponential and the tangent to it at a bias point are the two things this essay is about: the first is what the device does, the second is what every linear figure on this site assumes, and the bias point is where the second is taken.

Two Newtons, no shared arithmetic

The netlist route is more machinery than this circuit needs, which is exactly why it is worth running here. lib/devices.js has carried a one-line Newton since the first commit: solve V_s = v + R i(v) directly, with no matrix, no assembly and no companion models. It is the right tool for a diode with a resistor and completely useless for anything larger.

The two agree at 0.692543633 V. Not to a tolerance — to every digit either of them prints.

That is the strongest form this site’s two-route habit takes anywhere, and it is worth being clear about why it is a real check rather than a tautology. The two routes share the diode’s saturation current, its ideality factor and the thermal voltage, which is to say they share the model. They share nothing else. One inverts a four-by-four complex matrix repeatedly with damped updates on a node voltage; the other iterates a scalar equation. A sign error in the companion model’s current source, an index error in the assembly, a controlled source referred to the wrong pair — none of those survives the comparison, and none of them would be visible in the picture.

A diode fed from 24 V through 1.0 kΩcomputed by solving, not by drawing. The operating point is where the exponential meets the load line: 0.736144 V and 23.2639 mA, reached in 10 damped Newton steps from a cold start. The one-line Newton on Vs = v + R·i(v), which touches no matrix, gives 0.736144 V. The "drop" is not a constant: it moves about 60 mV per decade of current.0204000.2000.4000.6000.800voltage across the diode (volts)current (milliamperes)load line: (24 V − v)/1.0 kΩ123450.7361 V, 23.264 mAthe circuit24 V1.0ksolved, then checked — two Newtons, no shared arithmeticthe drop moves 60 mV per decade
Fig. 3 The same diode from twenty-four volts. The load line is steeper and meets the exponential further up, at 0.736 V and 23.3 mA. Between five volts and twenty-four the current rose by a factor of 5.4 and the drop rose by 43.6 mV — which is 60.4 mV per decade of current, the number the next section is about.

Sixty millivolts a decade, and where it comes from

The measured drops across the slider are worth setting out, because the pattern in them is the whole reason a bias point cannot be a constant.

At 0.6 V of supply the diode carries 0.033 mA and drops 0.567 V. At 5 V it carries 4.31 mA and drops 0.693 V. At 48 V it carries 47.2 mA and drops 0.754 V. Three decades of current, and the drop moved 187 mV — about 62 mV per decade.

The number is not arbitrary. Inverting i = I_S exp(v/nV_T) gives v = nV_T ln(i/I_S), so a factor of ten in current is nV_T ln 10 in voltage, which at room temperature is 25.852 × 2.303 = 59.5 mV for an ideality factor of one. The measured 60.4 mV between the five-volt and twenty-four-volt cases is that, plus the small departure caused by the resistor’s share of the supply changing over the range.

The practical statement is the one the figure makes: the “0.7 V drop” is a value the device takes at one particular current, and it is neither a property of silicon nor a constant. Design a circuit that depends on it holding to ten millivolts and it holds over about a third of a decade of current.

The straight line is the resistor’s, and it need not be straight

The picture in the hero figure has a particular shape that is worth naming, because it is the shape of nearly every bias calculation and it is not general.

One of the two curves is the device’s. The other is the load line, and it is straight only because the thing on the other side of the device is a resistor and a constant voltage. Its equation is i = (V_s − v)/R, so its intercepts are the supply voltage on one axis and the short-circuit current on the other, and its slope is minus one over the resistance. Change the supply and it translates; change the resistance and it pivots about the voltage intercept. Both movements are visible on the slider.

The generality of the method has nothing to do with that straightness. Newton on the netlist knows nothing about load lines; it linearises whatever is nonlinear, solves whatever is linear, and repeats. Replace the resistor with a current source and the load line becomes horizontal; replace it with a second diode and it becomes a second exponential, so that the operating point is the intersection of two curves neither of which is a line. Nothing in the loop changes, and the picture stops being drawable in the form above — which is a fair summary of why simulators exist.

The load-line drawing survives as a teaching device precisely because it works for the one case where the answer could have been obtained without it. That is worth noticing rather than complaining about: the picture is genuinely explanatory, and it explains a case rather than a method.

How many iterations, and from where

The iteration counts across the slider are 10, 11, 14, 13, 11, 10, 10 — for supplies of 0.6, 1, 2, 5, 12, 24 and 48 volts, all from a cold start at zero.

The shape of that sequence is the damping. Every step is capped at 150 mV, so reaching an operating point at 0.75 V from zero takes at least five steps of pure travel before Newton’s quadratic convergence gets a chance to do anything. The four or five steps after that are the actual solve, and they take the residual from something of order one to 10⁻¹⁵. The peak of fourteen in the middle of the range is where the capped travel and the exponential’s steepness are least well matched.

Removing the cap makes the middle cases converge in six steps and the outer ones overflow, which is the trade the cap exists to make. It is worth stating in that form — an unconditionally convergent method that is slower, rather than a faster one that works most of the time — because the second is what a hand-rolled version usually turns out to be, and it fails on the circuits that are hardest to check by hand.

What the linear figures on this site are standing on

Linearising an exponential at 27 °C, and what it costsThe linear model understates the gain by 1% at 7.30 mV and by 10% at 22.8 mV. The thermal voltage at this temperature is 25.9 mV, so "small compared with V_T" is not the criterion — 28% of V_T is already 1% wrong.1.0m10m1.0e+2m110100100m110100drive amplitude (millivolts)how much the linear model understates the gain (per cent)1% understated10% understated1% at 7.3 mVV_T = 25.9 mVsolved, then checked — the Bessel ratio from its seriesthe tangent is 1% wrong above 7.3 mV
Fig. 4 The boundary the limits field measures: the amplitude at which linearising an exponential is one per cent wrong. That figure asks how far from the bias point a small signal can go. This essay is about where the bias point is, and the two are the same question asked at two scales — one about the tangent’s slope, the other about the point it is taken at.

Once the operating point is known, the small-signal resistance follows: r_d = nV_T/I, which is 5.99 Ω at 4.31 mA and 0.55 Ω at 47.2 mA. Every linear figure that includes a diode-like device is using a number of that kind, and every one of them is therefore downstream of an operating point that had to be solved first.

That dependency is usually invisible, and it is where a whole class of design error lives. A circuit whose bias current drifts by a factor of two has a small-signal resistance that drifts by a factor of two, and the linear analysis that was performed at the nominal current says nothing at all about that. It is not wrong; it is answering a question about a different circuit.

How small is small signal measures the other half of the same boundary — how far the signal may swing before the tangent stops describing the curve — and finds 7.30 mV for one per cent of gain error. The two numbers together are the full statement of what a linear device model assumes: this bias current, and excursions small compared with the thermal voltage.

What the solver refuses

Four networks the solver refusesEach has no answer, for a reason that is a fact about the circuit rather than about the arithmetic. The solver names the reason; it does not return a number.no path to grounda node whose potential nothing fixesrefused: floatingtwo sources in a loop5 V3 Vtheir currents are not determinedrefused: vloopa resistance of zero0 Ωan element with no law of its ownrefused: valuean output that is not a node?a response asked for where there is nothingrefused: nodesolved, then checked — each refusal was runa solver that never declines is untested
Fig. 5 The networks this solver declines to answer, and the reason it gives for each. A nonlinear solve inherits all of them, because every iteration of the Newton loop is one of these linear solves — a netlist with no path to ground is refused at the first iterate rather than after four hundred.

Adding a nonlinear loop on top of a linear solver inherits the linear solver’s refusals for free, and that turns out to matter more than it sounds. A netlist with a floating node has no answer, and a solver that returns one is lying. In a Newton loop that failure would otherwise appear as non-convergence — four hundred iterations, a step size that does not shrink, and a report that says “did not converge” when the truth is “this circuit does not determine its own node voltages”.

The distinction is the difference between a numerical complaint and a statement about the circuit, and the second is the one worth having.

There is a second failure mode that the loop can genuinely have and that the linear solver cannot: convergence to a solution that exists but is not the one wanted. A circuit with more than one stable operating point — a latch, a bistable, a comparator with hysteresis — has several roots, and Newton finds whichever one its starting guess falls towards. Nothing in the method chooses between them, and nothing in the residual check can, because all of them satisfy the equations. Every circuit drawn on this page has exactly one operating point, and that is a property of these circuits rather than a guarantee the method provides.

What the field is built on

The rest of this field needs the operating point and then leaves it behind. The distortion a linear model cannot have drives the device far enough that the tangent stops describing it and measures what appears instead; the frequency a device sets for itself puts the small-signal model back and asks what its own capacitances do to the answer.

Both of those start from a point on a curve, and this page is about the fact that the point is computed. It is the difference between a model that carries its own conditions and one that carries a number somebody remembered.

A network solved, and checked: a bridge, which no series-parallel reduction reachesNode potentials from modified nodal analysis. The branch currents are then recomputed from each element's own law and summed at every node; the residual is 2.7e-16 of the largest current in the circuit, which is floating-point rounding and nothing else.a bridge, which no series-parallel reduction reachesnode a7.5566 Vnode b4.7993 Vcurrent law, rebuilt from the element laws2.71e-16 of the largest branch currentpower delivered against power dissipated4.33e-16 apart · 48.07 mWsolved, then checked — 6 elementsa linear network has no edge: this one is exact
Fig. 6 One network, solved and checked twice: current law rebuilt from the element relations, and the energy counted two ways. Every iteration of the Newton loop above is one of these, so a nonlinear answer that arrives after thirteen of them has passed both checks thirteen times before the nonlinear residual is even computed.

One thing this page does not do is worth recording as a gap rather than left implicit. The diode’s saturation current is a strong function of temperature — roughly doubling every ten kelvin — and the thermal voltage is proportional to absolute temperature, so the drop at a fixed current falls by about two millivolts per kelvin. Every number on this page is at one temperature and the model carries no temperature dependence at all, so the site’s own rule is met by stating the condition rather than by measuring the boundary: these are 300 K numbers, and nothing here computes what happens at 350 K.

That is a real shortfall by the standard the rest of the collection is held to, and it is named here rather than buried. The machinery to fix it is small — one parameter through diodeExp and a second axis on the figure — and the reason it was not built is that it would have made this page about temperature rather than about the fact that an operating point is a root.

Where four of this site's models stop being trueIn order: the ideal operational amplifier at 1.42 kHz, a 10 V output at full amplitude at 7.96 kHz, Kirchhoff's laws on 10.0 cm at 3.97 MHz, the ideal 100 nF capacitor at 4.69 MHz. The fifth boundary is an amplitude rather than a frequency and cannot share this axis: a small-signal model is 1% wrong above 7.3 mV, at every frequency there is.101001k10k100k1M10M100M1G10Gfrequency (hertz)the ideal operational amplifier1.42 kHz — a gain of 100 from a 1 MHz part is 1% low herea 10 V output at full amplitude7.96 kHz — above this the output cannot move fast enoughthe ideal 100 nF capacitor4.69 MHz — 1.2 nH of lead makes it 10% wrong hereKirchhoff's laws on 10.0 cm3.97 MHz — the board is one degree long hereeach bar is where the model may be used; the rule at its end is the numbersolved, then checked — each boundary from its own modeland one that is not a frequency: 7.3 mV
Fig. 7 The boundaries the collection has measured, on one frequency axis. None of the numbers on this page is on it, because an operating point is not a frequency and the drop’s dependence on current is not a failure of a model but the model working correctly. What belongs on a map like this from the semiconductor field is an amplitude, and the next essay measures two of them.