23.01.2015 Views

Download - Wolfram Research

Download - Wolfram Research

Download - Wolfram Research

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

228 3. Reference Manual<br />

List the Model and<br />

Selector specifications.<br />

In[9]:= Cases[buffer, _Model | _Selector, Infinity] // InputForm<br />

Out[9]//InputForm= {Model["BJT", "Q2N2222", "Q$T1"],<br />

Selector["BJT", "Q2N2222", "Q$T1"],<br />

Model["BJT", "Q2N2907A", "Q$T3"],<br />

Selector["BJT", "Q2N2907A", "Q$T3"],<br />

Model["BJT", "Q2N2907A", "Q$T4"],<br />

Selector["BJT", "Q2N2907A", "Q$T4"],<br />

Model["BJT", "Q2N2907A", "Q$T5"],<br />

Selector["BJT", "Q2N2907A", "Q$T5"],<br />

Model["BJT", "Q2N2222", "Q$T2"],<br />

Selector["BJT", "Q2N2222", "Q$T2"]}<br />

You can use HoldModels to prevent expansion of a particular device type or model instance.<br />

Do not expand references<br />

to "Q2N2222" devices.<br />

In[10]:= ExpandSubcircuits[buffer,<br />

DefaultSelector −> AC, Protocol −> Notebook,<br />

HoldModels −> Model[_, "Q2N2222", _]]<br />

Searching model libraries for model "BJT/AC".<br />

Loading model "BJT/AC" from library FullModels‘.<br />

Instantiating model "BJT/AC" for reference Q$T3.<br />

Instantiating model "BJT/AC" for reference Q$T4.<br />

Instantiating model "BJT/AC" for reference Q$T5.<br />

Out[10]= NetlistChecked, 37 <br />

If you want to flatten a netlist completely after partial expansion, you must specify<br />

KeepLocalModels −> True to prevent local model definitions and parameter sets from being discarded<br />

by ExpandSubcircuits.<br />

Keep the transistor<br />

instance "Q$T3" and<br />

references to "Q2N2222"<br />

devices; do not discard<br />

local model card data for<br />

these devices.<br />

In[11]:= xbuffer = ExpandSubcircuits[buffer,<br />

DefaultSelector −> AC, Protocol −> Notebook,<br />

HoldModels −> {{Model[_, "Q2N2222", _], _},<br />

{Model[__, "Q$T3"], _}},<br />

KeepLocalModels −> True]<br />

Searching model libraries for model "BJT/AC".<br />

Loading model "BJT/AC" from library FullModels‘.<br />

Instantiating model "BJT/AC" for reference Q$T4.<br />

Instantiating model "BJT/AC" for reference Q$T5.<br />

Out[11]= Circuit <br />

Expand the held model<br />

references.<br />

In[12]:= ExpandSubcircuits[xbuffer,<br />

DefaultSelector −> AC, Protocol −> Notebook]<br />

Instantiating model "BJT/AC" for reference Q$T1.<br />

Instantiating model "BJT/AC" for reference Q$T3.<br />

Instantiating model "BJT/AC" for reference Q$T2.<br />

Out[12]= NetlistFlat, 55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!