Ohmforge Thermal Calculator: Junction, Heatsink & Board Temperature Map
Junction temperature from θJC/θCS/θSA, heatsink size, fin estimate and a PCB temperature map.
Try an example: TO-220 regulator, 10 W, on a 4 K/W heatsink with a board path · SOT-23 part without a heatsink (θJA only) · 100 × 100 mm heatsink with 12 fins, 10 W · Aluminium plate 100 × 80 mm with two heat sources · Sensor-node PCB: radio 0.5 W and MCU 0.3 W · Copper strip clamped at one end (fin check)
How it works
Four thermal estimates for electronics. Junction: the junction, case and heatsink temperatures from the power and the thermal resistances θJC, θCS and θSA (or θJA), with an optional parallel path through the board, the margin to Tj,max and the heatsink θSA you need. Heatsink: θSA of a plate-fin heatsink in still air from its dimensions, with fin efficiency and the optimum fin gap. Plate and board: a 2-D steady temperature map of a plate or of an Ohmforge board model whose parts have a power, from in-plane conduction (FR-4 and copper layers) and convection on both faces, with the temperature under every part. Same engine as the Thermal tab of Ohmforge’s Circuit calculators; estimates, not certified engineering.
- Junction: series resistances add (θJC + θCS + θSA); a second path through the board (θJB + θBA) acts in parallel, 1/θ = 1/θ₁ + 1/θ₂, and the heat splits in inverse proportion. Tj = Ta + P·θ. The required θSA solves the same chain for Tj = Tj,max.
- Heatsink: vertical plate fins in still air. The channel heat transfer coefficient comes from the Bar-Cohen–Rohsenow composite correlation Nu = (576/El² + 2.873/√El)^−½ with the Elenbaas number El = Ra·s/L, air properties at the film temperature (Sutherland laws), fin efficiency tanh(mLc)/(mLc) with Lc = H + t/2, radiation from the outer envelope. The sink temperature is found by bisection, because h grows with the temperature difference.
- Plate and board: cell-centred finite volumes of k·t·∇²T − h·(T − Ta) + q = 0 on a regular grid inside the outline, insulated edges unless clamped (half-cell conductance to the clamp). Board stacks use k·t = k_FR4·t_FR4 + Σ k_Cu·t_Cu·coverage. The symmetric system is solved with Proofline’s sparse Cholesky (reverse Cuthill–McKee ordering); the heat balance (convection + clamp = sources) is reported.
- Verified against the analytic fin with insulated tip θ(x)/θ₀ = cosh(m(L − x))/cosh(mL) (error falls 4× per grid halving), the uniform-source limit T = Ta + P/(hA), linear 1-D conduction between two clamps, the exact fin efficiency formula and the laminar and fully developed limits of the channel correlation.
Estimates, not certified engineering. Datasheet θJA values hold for the JEDEC test board only; natural convection coefficients depend on orientation, enclosure and neighbours; the board map assumes a uniform temperature through the thickness and constant h. Measure critical parts.
Sources
- F. P. Incropera, D. P. DeWitt, T. L. Bergman, A. S. Lavine: Fundamentals of Heat and Mass Transfer, 7th ed. (Wiley, 2011), §3.6 fins, §4.4 finite differences, §9.7 parallel-plate channels (Wiley)
- A. Bar-Cohen, W. M. Rohsenow: Thermally optimum spacing of vertical, natural convection cooled, parallel plates, J. Heat Transfer 106 (1984) 116–123 (ASME)
- JEDEC JESD51 series: integrated circuit thermal test method environmental conditions (θJA, θJC, θJB definitions) (JEDEC)
- U.S. Standard Atmosphere 1976 (NOAA/NASA/USAF): Sutherland laws for the viscosity and thermal conductivity of air (NASA)
Part of Ohmforge
-
Ohmforge Virtual electronics workbench
Draw a circuit, switch it on, and measure it with real-feeling bench instruments.
Related tools
- PCB Trace Estimator – Estimate trace width or current capacity
- Battery Power Budget Planner – Estimate average current and battery runtime from duty cycles.
- Ohmforge PCB Enclosure Generator (STL) – Board outline, holes, parts and connectors in – a verified, printable base and lid STL out.
- PCB Via Estimator – Estimate plated via resistance and power loss
Estimate junction temperatures, heatsinks and board hot spots
Work out a part's junction temperature, the heatsink it needs, a plate-fin heatsink in still air, or a temperature map of a plate or circuit board.
What it is for
A part's junction must stay below the datasheet maximum, often 125 °C or 150 °C. This calculator answers: how hot will the junction get, what heatsink do I need, how good is a heatsink in still air, and where are the hot spots on my board?
It has four modes. Junction chains the thermal resistances θJC, θCS and θSA (or a datasheet θJA) and can add a second path through the board (θJB and θBA). Heatsink estimates a plate-fin heatsink from its dimensions with a natural-convection correlation for the fin channels plus radiation. Plate and Board solve the steady heat spreading in a thin plate or in a PCB described in Ohmforge's board format, with heat sources and cooling from both faces.
All results are steady-state estimates for orientation. Measure the parts that matter.
Worked example
A TO-220 regulator dissipates 10 W at 40 °C ambient. With θJC = 1.5, θCS = 0.5 and a 4 K/W heatsink, plus a board path of θJB = 10 and θBA = 20 K/W, the two paths in parallel give 5 K/W junction to ambient. The junction sits at 90 °C, 35 K below the 125 °C limit, and the part could dissipate 17 W before reaching it.
Will a 100 × 100 mm heatsink with twelve 30 mm fins do? In Heatsink mode with 1.5 mm aluminium fins, k = 200 W/(m·K) and emissivity 0.8, the estimate is about 2.13 K/W. The convection coefficient comes out at 4.72 W/(m²·K) and the fin efficiency is 0.99. At 10 W the heatsink settles near 46.3 °C and the junction near 59.3 °C.
For the board, take the sensor-node example: a 70 × 50 mm two-layer board with the radio at 0.5 W and the microcontroller at 0.3 W, cooled with 10 W/(m²·K) on both faces. The hottest point is 41.7 °C, 16.7 K above ambient, near the radio U1.
How to read the result
In Junction mode the margin to the limit is what matters: if it is small, your heatsink, airflow or power must change. Heatsink θSA needed is the largest heatsink resistance that keeps the junction at the limit.
In Heatsink mode a low fin efficiency means fins too thin or too tall; a low h means the fins sit too close together for still air.
The maps colour the plate or board from cold to hot, with dashed boxes for the heat sources. The table of sources gives the temperature below each one. The energy balance confirms that the heat leaving the faces equals the power you entered.
Tips and common mistakes
- θJA in datasheets is measured on a standard JEDEC test board; your board can be much better or worse.
- Do not forget θCS: thermal paste is around 0.1 to 0.5 K/W, an insulating pad often 1 K/W or more.
- In still air, h is about 5 to 15 W/(m²·K) including radiation; a fan gives 20 to 100.
- A board screwed to a metal case can use a clamped edge at the case temperature.
- Enter part powers in the Thermal tab of the calculators; with "Save the part powers" they stay with the board of your project.
FAQ
How accurate is the heatsink estimate?
Expect roughly ±25 %. Natural convection depends on orientation, nearby surfaces and the enclosure. Use the result to compare designs and to pick a heatsink size, then check the manufacturer's θSA.
Does the board map include the air inside an enclosure?
No. It uses the ambient temperature you enter. In a closed box, enter the expected inside air temperature as the ambient.
Why is the temperature uniform through the board?
The map treats the board as a thin sheet that spreads heat along its copper. Hot spots right under a part can be higher.
Is warm-up time included?
No, all modes are steady-state: the temperatures after the system has fully warmed up.
Guide last updated:
For scripts and AI agents
- JSON API:
POST https://ohmforgethermalcalculator.usefulweb.app/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://ohmforgethermalcalculator.usefulweb.app/mcp· tool nameohmforge_thermal_calculator
Example request
curl -s -X POST https://ohmforgethermalcalculator.usefulweb.app/api/v1/calculate \
-H 'content-type: application/json' \
-d '{"mode":"junction","powerW":10,"ambientC":40,"tjMaxC":125,"thetaJC":1.5,"thetaCS":0.5,"thetaSA":4,"thetaJB":10,"thetaBA":20}'