diff options
| author | Denis Chevalier <perso@denischevalier.fr> | 2026-08-11 11:29:02 +0200 |
|---|---|---|
| committer | Denis Chevalier <perso@denischevalier.fr> | 2026-08-11 11:29:02 +0200 |
| commit | adeb7112677abbccedb7a3baf2a11a6b3fdf89e7 (patch) | |
| tree | c3c483ba6bfff7fb321e66ff738b33886957782d /charts/ratio-stability-principle.typ | |
| parent | 7ca213bd4b23c976f7fd83c99f40b6def2ab4ea6 (diff) | |
| download | same-adeb7112677abbccedb7a3baf2a11a6b3fdf89e7.tar.gz same-adeb7112677abbccedb7a3baf2a11a6b3fdf89e7.tar.bz2 same-adeb7112677abbccedb7a3baf2a11a6b3fdf89e7.zip | |
add missing file
Diffstat (limited to 'charts/ratio-stability-principle.typ')
| -rw-r--r-- | charts/ratio-stability-principle.typ | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/charts/ratio-stability-principle.typ b/charts/ratio-stability-principle.typ new file mode 100644 index 0000000..28e334c --- /dev/null +++ b/charts/ratio-stability-principle.typ @@ -0,0 +1,78 @@ +// SAME Analog Modular Ecosystem +// +// / SPDX-FileCopyrightText: 2026 Denis Chevalier <perso@denischevalier.fr> +// / SPDX-License-Identifier: CC-BY-SA-4.0 +// / SPDX-License-Identifier: CERN-OHL-S-2.0+ +// / SPDX-License-Identifier: GPL-3.0-or-later +// +// The prose, explanatory text, rendered figures, tables, and mathematical +// content of this specification are licensed under CC BY-SA 4.0. If a later +// version of CC BY-SA is published, the author grants permission to distribute +// this work under that later version as well. +// +// Hardware designs contained herein (schematics, PCB layouts, mechanical +// drawings, and CAD models) are licensed under CERN-OHL-S-2.0+. +// +// All executable code, helper libraries (`lib/*`), metrology assertions, and +// embedded verification scripts throughout the source documents are licensed +// under the GNU General Public License v3.0 or later (GPL-3.0-or-later). + +#import "../lib/unify.typ": qty, unit +#import "@preview/cetz:0.5.2" +#import "@preview/cetz-plot:0.1.4": plot + +#figure( + cetz.canvas({ + import cetz.draw: * + + plot.plot( + size: (12, 6), + x-label: [Temperature variation $Delta T$ ($unit("celsius")$)], + y-label: [Ratio / gain drift $Delta G / G_0$ ($unit("ppm")$)], + x-min: 0, + x-max: 10, + y-min: 0, + y-max: 100, + x-grid: "minor", + y-grid: "minor", + { + // 10 ppm Metrologic Error Budget Limit + plot.add( + ((0, 10), (10, 10)), + style: ( + stroke: (paint: luma(120), thickness: 0.8pt, dash: "dash-dotted"), + ), + label: [Metrologic budget limit], + ) + + // Unmatched Discrete Resistors (Delta alpha = 50 ppm/°C) + plot.add( + domain: (0, 10), + samples: 1000, + style: (stroke: (paint: black, thickness: 1.5pt, dash: "solid")), + label: [Unmatched discrete], + t => 50 * t, + ) + + // Matched Discrete Pair (Delta alpha = 1 ppm/°C) + plot.add( + domain: (0, 10), + samples: 1000, + style: (stroke: (paint: black, thickness: 1.5pt, dash: "dashed")), + label: [Matched discrete pair], + t => 1 * t, + ) + + // Monolithic Thin-Film Network (Delta alpha = 0.1 ppm/°C) + plot.add( + domain: (0, 10), + samples: 1000, + style: (stroke: (paint: black, thickness: 1.5pt, dash: "dotted")), + label: [Monolithic thin-film], + t => 0.1 * t, + ) + }, + ) + }), + caption: [Gain drift $Delta G / G_0$ as a function of ambient temperature variation $Delta T$, comparing unmatched discrete resistors, matched discrete pairs, and monolithic thin-film networks against the $qty(10, "ppm")$ Metrologic systematic error budget], +) <figure-resistor-ratio-tracking-drift> |
