Design report

Aggregate inductor figures-of-merit at one or more frequencies.

A DesignReport collects everything you’d typically want to know about a spiral inductor before committing it to a design: DC and AC resistance, inductance, coupling-only Q, parallel-equivalent resistance, substrate cap, self-resonance frequency, and the full Pi-model parameters at each requested frequency.

Useful as a one-shot CLI / script entry point:

from reasitic import parse_tech_file, square_spiral
from reasitic.report import design_report

tech = parse_tech_file("BiCMOS.tek")
sp = square_spiral("L1", length=200, width=10, spacing=2,
                    turns=3, tech=tech, metal="m3")
rpt = design_report(sp, tech, freqs_ghz=[1.0, 2.4, 5.0])
print(rpt.format_text())
class reasitic.report.FreqPointReport[source]

Bases: object

One frequency’s worth of design data.

freq_ghz: float
L_nH: float
R_dc_ohm: float
R_ac_ohm: float
Q_metal: float
pi: PiResult
pi3: Pi3Result
__init__(freq_ghz, L_nH, R_dc_ohm, R_ac_ohm, Q_metal, pi, pi3)
Parameters:
Return type:

None

class reasitic.report.DesignReport[source]

Bases: object

Aggregate report for a single spiral over one or more frequencies.

name: str
L_dc_nH: float
R_dc_ohm: float
metal_area_um2: float
n_polygons: int
n_segments: int
self_resonance_ghz: float | None
points: list[FreqPointReport]
format_text()[source]

Render the report as a readable text block.

Return type:

str

__init__(name, L_dc_nH, R_dc_ohm, metal_area_um2, n_polygons, n_segments, self_resonance_ghz, points=<factory>)
Parameters:
Return type:

None

reasitic.report.design_report(shape, tech, freqs_ghz, *, selfres_range_ghz=(0.5, 50.0), ground_shape=None)[source]

Compile a DesignReport for shape.

Parameters:
Return type:

DesignReport