Audited 31 Jul 2026·Last updated 28 Oct 2026·4 citations·Tier 3·0 uses

Shockley Diode Equation Calculator — Current, Voltage and Thermal Voltage

Solve the ideal diode equation for current from voltage or voltage from current, with thermal voltage kT/q and the small-signal resistance at that bias.

Shockley Diode Equation Calculator

Solve for
Used when solving for current. Positive is forward bias, negative is reverse. Above roughly 0.9 V the ideal equation returns currents no diode survives, and the calculator says so rather than printing them.
V
Used when solving for voltage. A negative value must stay above −I_S: the equation approaches that reverse limit asymptotically and never reaches it.
mA
The scale factor of the whole curve, extracted by fitting measurements — it is not a table value. Small-signal silicon junctions land in the picoamp to nanoamp range; the Rice University source cited below measured 2.89 nA on a real device.
pA
Also called the emission or quality factor. The source cited below gives 1 for germanium and 2 for silicon; measured silicon signal diodes usually fall between. n = 1 makes this equation identical to the form printed in the second source, which is why it is the default.
Sets the thermal voltage V_T = kT/q only. It does not model the temperature dependence of I_S, which is much stronger — a real diode conducts more when hot, not less.
°C
Diode current
13.8707
Current through the junction in milliamps, positive in forward bias and approaching −I_S in reverse.
Diode voltage
0.6 V
Thermal voltage V_T
25.6926 mV
Small-signal resistance r_d
1.8523 Ω
Bias in thermal voltages
23.353
Reading the result
Forward bias: 0.6 V across the junction gives 13.87073 mA, which is 23.353 thermal voltages of drive at n·V_T = 25.6926 mV. Past 5 thermal voltages the −1 in the equation contributes under 0.7 %, so the familiar I ≈ I_S·e^(V/nV_T) shortcut is safe here. (Five thermal voltages is this page's own cut-off, not a published standard.) The small-signal resistance at this operating point is n·V_T/(I + I_S) = 1.8523 Ω, which is what the diode looks like to a small ripple riding on this bias. Scope: an ideal junction at a fixed 25 °C. No bulk series resistance, no high-level injection, no reverse breakdown, and no temperature dependence of I_S itself — a real silicon I_S roughly doubles every 5 K, which this page does not model. I_S and n come from measuring a device, not from a table.

Background.

Every electronics course teaches that a silicon diode drops about 0.7 V, yet the equation that describes the junction contains no 0.7 anywhere. Shockley's ideal diode law, I = I_S(e^(V/nV_T) − 1), is a smooth exponential with no threshold at all. Take a junction with a saturation current of 1 pA at 25 °C: 0.6 V across it drives 13.8707 mA, and 0.7 V drives 679.9065 mA. The familiar forward voltage is just the region where the exponential reaches currents people notice, and a part with a smaller I_S reaches them higher up.

The law can be solved either way here, current from voltage or voltage from current, and each answer comes with the thermal voltage, the small-signal resistance and the bias counted in thermal voltages.

The junction is ideal. With no bulk series resistance, the equation predicts impossible currents above roughly 0.9 V, and those are refused rather than printed. There is no reverse breakdown, so nothing here describes a Zener, and temperature enters through the thermal voltage alone; the much stronger rise of I_S with heat is not modelled.

What is shockley diode equation calculator?

The Shockley equation gives the current through a p-n junction as a function of the voltage across it. I_S, the reverse saturation current, sets the scale of the whole curve and is the small leakage left under reverse bias. V_T = kT/q, the thermal voltage, is about 25.7 mV at room temperature. The ideality factor n, usually between 1 and 2, stretches the curve to fit a real device: in forward bias, each extra n·V_T of voltage multiplies the current by e.

How to use this calculator.

  1. Choose whether to solve for current or for voltage, then enter the known side: volts across the diode (negative for reverse bias) or milliamps through it.
  2. Enter I_S in picoamps and the ideality factor n. Both come from fitting measured or datasheet forward curves; n = 1 gives the textbook form.
  3. Set the junction temperature in degrees Celsius. It changes the thermal voltage and nothing else.
  4. Check the bias in thermal voltages: above about 5, the shortcut I ≈ I_S·e^(V/nV_T) is accurate to better than 0.7%.

The formula.

I = I_S · ( e^(V ⁄ n·V_T) − 1 ) V = n·V_T · ln( I⁄I_S + 1 ) V_T = kT ⁄ q r_d = n·V_T ⁄ (I + I_S)

The thermal voltage comes from the Boltzmann constant k = 1.380649 × 10⁻²³ J/K and the elementary charge q = 1.602176634 × 10⁻¹⁹ C, both exact since the 2019 SI redefinition, with T in kelvin (°C + 273.15). At 25 °C that gives V_T = 25.6926 mV. One cited source offers the shortcut V_T = T/11,586, which gives 25.7336 mV at the same temperature, about 0.16% high; the constants are used instead.

Current follows I = I_S(e^(V/nV_T) − 1). The −1 is what makes the current exactly zero at zero volts and lets it settle at −I_S under reverse bias. In forward bias its share shrinks fast: at five thermal voltages it changes the result by about 0.7%, and at twenty it is negligible.

Solving for voltage uses V = n·V_T·ln(I/I_S + 1), the exact inverse, so a round trip returns the starting value. The small-signal resistance is the slope of the curve, r_d = n·V_T/(I + I_S), found by differentiating the current equation.

A worked example.

Example

A junction with I_S = 1 pA and n = 1 sits at 25 °C with 0.6 V across it. The thermal voltage is 25.6926 mV, so the bias is 0.6 ÷ 0.0256926 = 23.353 thermal voltages. Raising e to that power gives about 1.387 × 10¹⁰, and multiplying by 1 pA gives 0.01387 A: a current of 13.8707 mA, with the −1 far too small to register. The small-signal resistance is 25.6926 mV ÷ 13.8707 mA = 1.8523 Ω. That is what a small AC signal riding on this bias sees, and it is far below the DC ratio 0.6 V ÷ 13.8707 mA = 43.2566 Ω.

saturation Current1
temperature C25
diode Voltage0.6
ideality Factor1
diode Current10
solve Forcurrent

Frequently asked questions.

If the equation has no threshold, where does 0.7 V come from?
From typical silicon parts at typical currents. With n = 1 at 25 °C, every 59.16 mV of extra bias multiplies the current by ten, so the curve looks like a sharp knee on a linear plot. Make I_S a hundred times smaller and the same currents need 118.3 mV more voltage.
What should I enter for I_S and the ideality factor?
Values fitted to a real device. Plot the log of forward current against voltage: the straight part's slope gives n and its extrapolation to zero volts gives I_S. One cited Rice University treatment extracted 2.89 nA from a real diode. Paired, for illustration, with n = 2, that I_S of 2,890 pA needs 0.7737 V to pass 10 mA.
Why does the current drop when I raise the temperature?
Because only the thermal voltage moves. A larger V_T means fewer thermal voltages of drive, so 0.6 V at 100 °C gives just 0.1269 mA. A real diode does the opposite: I_S climbs so steeply with heat that its forward voltage at constant current falls by about 2 mV per degree.
Why is 0.9 V refused with the default settings?
With I_S = 1 pA the ideal equation gives 1,634 A at 0.9 V, which no discrete diode survives. A real junction has bulk resistance that turns the exponential into a near-straight line at high current; this model has none, so any current beyond 1,000 A is rejected instead of displayed.
What happens under reverse bias?
The exponential collapses and the current settles at −I_S, so −1 V with I_S = 1 pA gives −1 × 10⁻⁹ mA. The small-signal resistance then becomes enormous and is shown at a 10¹² Ω ceiling. Solving for voltage, no current at or below −I_S can be reached, and breakdown is not modelled.

References& sources.

  1. [1]Engineering LibreTexts, 'Solar Basics' supplemental module, D. P-N Junction Diodes, §3 'Ideal Diode Equation'. Primary source for the form implemented, including the ideality factor: 'i(v) = I_S [exp(v/ηV_T) − 1]', with I_S the reverse saturation current, v the applied voltage where 'negative values indicate reverse bias', V_T the thermal voltage, and 'η is the emission coefficient, which is 1 for germanium devices and 2 for silicon devices'. The module also names the relation the 'Shockley ideal diode equation'. Its shortcut V_T = T/11,586 is NOT used here — see the note on the CODATA constants below, and the 0.16 % gap recorded on the page. Retrieved 2026-07-29.
  2. [2]Don H. Johnson (Rice University), 'Electrical Engineering', Engineering LibreTexts §3.20 'The Diode'. Independent second authority for the same relation without an ideality factor: 'i(t) = I₀(e^(qv(t)/kT) − 1)', where q is 'the charge of a single electron', k is Boltzmann's constant, T is 'the diode's temperature in Kelvin' and I₀ is the leakage current. Also states 'kT/q = 25mV' at room temperature, against the 25.693 mV this page computes from the exact constants — agreement to the precision the source gives. Setting n = 1 makes this page's equation identical to Johnson's, which is why n = 1 is the default. Retrieved 2026-07-29.
  3. [3]Bill Wilson (Rice University), 'Introduction to Physical Electronics', Engineering LibreTexts §1.9 'The Diode Equation'. Third treatment, used for the saturation-current guidance quoted in the field hint and the FAQ: the ideal equation I = I_sat(e^(qV_a/kT) − 1); the statement that q/kT ≈ 40 V⁻¹ at room temperature, i.e. kT/q ≈ 25 mV; that for real silicon diodes 'I_sat is such a small value (on the order of 10⁻¹⁰ amps)'; and a measured extraction giving 'I_sat = e^−19.68 = 2.89 × 10⁻⁹ amps'. Retrieved 2026-07-29.
  4. [4]NIST Reference on Constants, Units and Uncertainty — CODATA 2022 recommended values. Boltzmann constant k = 1.380649×10⁻²³ J K⁻¹, listed as exact; elementary charge e = 1.602176634×10⁻¹⁹ C, listed as exact. Both are exact by definition following the 2019 revision of the SI, so the thermal voltage kT/q carries no uncertainty beyond that of the temperature itself. Source of every digit of the 25.6925791211 mV figure quoted on this page. Retrieved 2026-07-29.

How this page was produced

Published by
Quanta Calculator
Primary sources
4 cited below
Method
I = I_S · ( e^(V ⁄ n·V_T) − 1 ) V = n·V_T · ln( I⁄I_S + 1 ) V_T = kT ⁄ q r_d = n·V_T ⁄ (I + I_S)
Published
Last verified

Built with AI assistance and verified by automated tests against the cited sources — every worked example on this page is computed by the same code that runs the calculator. How we build and check calculators.

In this category

Embed

Quanta Pro

Paid features are coming later.

  • All 1560 calculators remain free
  • No billing is enabled
Coming soon