LEARN & EXPLORE

RF Calculator

Calculate, edit and compare RF lessons in this browser. Physical generation remains a separate runtime action.

Back to Learning Studio

EXECUTABLE RF METHODS · D0

From equation to circuit

Edit a real analytical network, inspect its response, and keep a reproducible design revision.

References and the calculations here work in this browser. For physical lessons, use Read runtime context or Read whole-filter runtime context below. Local development uses the configured server proxy; hosted physical workflows require a paired runtime. These controls check availability before generation. An unavailable direct tool connection does not disable the local lesson proxy.

Analytical · no physical qualification

LC ladder synthesis

Revision 1 · method 6.0.0

Changing synthesis inputs resets manual component edits. The pinned baseline remains unchanged.

Evidence classideal lumped analysis
Source / actual load50 / 50 Ω
Explicit elements5 · 1 GHz reference

Generated circuit

Click an element to inspect · shared return node 0
ACRs 50 ΩL14.91816 nHC15.15036 pFL215.9155 nHC25.15036 pFL34.91816 nHRl50 Ω0 · returnINOUT

Loaded circuit response

0 dB-20 dB-40 dB-60 dB-80 dB0.1 GHz0.316228 GHz1 GHz3.16228 GHz10 GHz
Blue: S21Amber: S11Display floor −80 dB; exact zeros retained in data
1 GHzS21 -3.0103 dBPhase 2.35619 radLoss fraction -1.11022e-16
Editable circuit values in this revision
ObjectPlacement / connectionCurrent valueControlled edit
S1: series / single
S2: shunt / single
S3: series / single
S4: shunt / single
S5: series / single

SPICE export contains this circuit and fixed ESR where requested; no SPICE solver is executed here. A physical seed is unbound until a runtime resolves real primitives and their evidence.

Calculated outputs and check scope
{
  "reference_response": {
    "s21": {
      "re": -0.49999999999999967,
      "im": 0.5000000000000002
    },
    "s11": {
      "re": -0.5000000000000003,
      "im": -0.4999999999999999
    },
    "transmissionDb": -3.0102999566398125,
    "reflectionDb": -3.01029995663981,
    "phaseRad": 2.3561944901923444,
    "acceptedFraction": 0.4999999999999998,
    "transmittedFraction": 0.4999999999999999,
    "lossFraction": -1.1102230246251565e-16
  }
}
Intermediate values · normalized SI inputs
{
  "inputs": {
    "family": "butterworth",
    "type": "lp",
    "order": 5,
    "rOhm": 50,
    "f1Hz": 1000000000,
    "f2Hz": 2000000000,
    "rippleDb": 0.5,
    "q": null
  },
  "intermediates": {
    "reference_frequency_hz": 1000000000,
    "angular_reference_frequency_rad_s": 6283185307.179586,
    "source_resistance_ohm": 50,
    "load_resistance_ohm": 50,
    "load_ratio": 1,
    "prototype": {
      "g": [
        0.6180339887498948,
        1.618033988749895,
        2,
        1.618033988749895,
        0.618033988749895
      ],
      "loadRatio": 1
    },
    "prototype_order": 5,
    "realized_reactive_order": 5,
    "angular_bandwidth_rad_s": 0
  }
}

Bind a capacitor to the local process

Generate the selected circuit target with the runtime’s admitted CMIM primitive. This creates a separate inspectable component; it does not adopt it into the transmitter.

Read runtime context to check the current design and capability. Local development uses the configured lesson proxy independently of standalone-tool pairing; hosted pages require a paired runtime. Analytical lessons remain available offline.

Generate or inspect a whole filter

The existing runtime queue generates the full L–C–L circuit with finite signal and return access. This is separate source geometry, not a qualified physical filter response.

Read whole-filter runtime context to check the authoritative design and generation capability. Local development uses the configured lesson proxy independently of standalone-tool pairing; hosted pages require a paired runtime. File inspection remains available offline.

Whole-filter generation currently requires an explicit three-element series L / shunt C / series L lesson. Change synthesis inputs explicitly; the UI does not replace your circuit.

Method, derivation and limits

  • Orders 1–9; Butterworth or Chebyshev I.
  • Series-first ladder, real positive terminations. Even Chebyshev retains its unequal load.
  • Ideal lumped elements or explicitly constant ESR; no process binding.
prototype.butterworth

gₖ = 2 sin[(2k − 1)π / (2N)]

Qucs technical manual: ladder synthesis
prototype.chebyshev

ε = √(10^(Rp/10) − 1); η = asinh(1/ε); γ = sinh(η/N); aₖ = sin[(2k−1)π/(2N)]; g₁ = 2a₁/γ; gₖ = 4aₖ₋₁aₖ / [(γ² + sin²((k−1)π/N))gₖ₋₁]. Even N: Rload/Rsource = coth²(η/2).

SciPy: Chebyshev-I analog prototype
transform.lp

ωc = 2πfc; series L = Rg/ωc; shunt C = g/(Rωc).

Qucs technical manual: ladder synthesis
transform.hp

sLP = ωc/s; series C = 1/(Rgωc); shunt L = R/(gωc).

SciPy: low-pass to high-pass
transform.bp

B = ω₂ − ω₁; ω₀ = √(ω₁ω₂). Series LC: L = Rg/B, C = B/(Rgω₀²). Shunt parallel LC: L = RB/(gω₀²), C = g/(RB).

SciPy: low-pass to band-pass
transform.bs

Series parallel LC: L = RgB/ω₀², C = 1/(RgB). Shunt series LC: L = R/(gB), C = gB/(Rω₀²).

SciPy: low-pass to band-stop
network.power-waves

Dₙ = A Rload + B + C Rsource Rload + D Rsource; S21 = 2√(Rsource Rload)/Dₙ. Series Z: [1 Z; 0 1]; shunt Y: [1 0; Y 1]. Matrices multiply in circuit order.

scikit-rf: network conventions
loss.fixed-esr

ZL = rL + jωL; ZC = rC − j/(ωC); rL = ωref L/Q; rC = 1/(ωref C Q). These resistances stay constant during the sweep.

ngspice manual: linear circuit elements

Sources identify the analytical method. They do not qualify a process device or the 60 GHz transmitter. Saved sessions retain inputs, explicit edits and circuit identity; reopening recomputes instead of trusting imported metrics.