← Commit history

Separate chart axis and qualification caption for readable review

John Lauer ·1b2b8be22f ·19d ago ·parent ad48310
2 files changed +2−1
mechanical/package-cooling-budget.png
⋯ 1 unchanged line ⋯
tools/plot_package_cooling_budget.py+2−1
@@ -5,11 +5,12 @@ matplotlib.use('Agg') import matplotlib.pyplot as plt p=Path(__file__).resolve().parents[1] d=json.loads((p/'mechanical/package-cooling-budget.json').read_text())-plt.style.use('dark_background');fig,ax=plt.subplots(figsize=(12,6.5),layout='constrained')+plt.style.use('dark_background');fig,ax=plt.subplots(figsize=(12,6.5),layout=None) labels={'K1300 typical area-normalized':'K1300, typical area scaling','173-7 one-square-inch test scaled':'173-7, corrected area scaling','AlN + two 122 grease films, illustrative':'AlN + grease, unqualified candidate'} for key,label in labels.items():  r=[s for s in d['scenarios'] if s['interface']==key];ax.plot([v['ductedLfm'] for v in r],[v['caseC']for v in r],marker='o',linewidth=2,label=label) ax.axhline(55,color='#ff7777',linestyle='--',label='55 C trip, unchanged');ax.axhline(52,color='#bbbbbb',linestyle=':',label='Illustrative 3 C operating margin') ax.set(xlabel='Heatsink datasheet ducted velocity (LFM), NOT installed fan flow',ylabel='Calculated MOSFET case temperature (C)',title='Electronic load: package cooling sensitivity, 5 W / 40 C ambient') ax.grid(alpha=.18);ax.legend(fontsize=9);fig.text(.01,.005,'Unqualified sensitivity study. Generic contact area; assumed spreading; actual mounting, pressure and airflow unresolved.',fontsize=9)+fig.subplots_adjust(left=.08,right=.98,top=.89,bottom=.2) fig.savefig(p/'mechanical/package-cooling-budget.png',dpi=160)