circuitgenome/sizer/shared/ — the model-independent core that both the Level-1 (square-law) sizer and the gm/Id pipeline are built on.Two very different sizers — a card-less square-law analytical sizer and a measured gm/Id LUT pipeline — share one body of code. They can, because of a single idea: the op-amp topology relationships (gain, GBW, phase margin, CMRR) are model-independent. Only the transistor primitives differ. So the primitives hide behind one interface — DeviceModel — with two swappable implementations, and every other file in this package is written against that interface once.
↑ Up to the full sizer overview · → See also: the gm/Id pipeline walkthrough (sizer/gmid/)
DeviceModel interface, two swappable implementations (square law / LUT). Every consumer is written against the interface, so one codebase serves both sizers. Click any box to open its walkthrough.Generated by the explain-code-with-fig skill · intuition-first walkthroughs with hand-authored SVG figures · light/dark toggle top-right.