23.01.2015 Views

Download - Wolfram Research

Download - Wolfram Research

Download - Wolfram Research

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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.5 Setting Up and Solving Circuit Equations 245<br />

Use the symbol p to<br />

denote the complex<br />

frequency.<br />

In[21]:= CircuitEquations[rlcf,<br />

FrequencyVariable −> p] // DisplayForm<br />

Out[21]//DisplayForm=<br />

1<br />

<br />

R<br />

<br />

1<br />

R<br />

0 1 <br />

1 1<br />

<br />

R<br />

<br />

L p V$1 0 <br />

<br />

1<br />

R<br />

<br />

1<br />

L p<br />

0 V$2 0<br />

. ⩵⩵<br />

0 <br />

1 1<br />

L p<br />

<br />

L p<br />

<br />

C p 0 V$3 0<br />

<br />

I$V1 V <br />

1 0 0 0 <br />

This defines a simple<br />

control circuit with a<br />

signal source, a forward<br />

signal path, and a<br />

feedback path.<br />

In[22]:= fbloop = Netlist[<br />

{HS1, {in}, X[Frequency]},<br />

{HG1, {in, out}, Hf[Frequency]},<br />

{HG2, {out, in}, Hfb[Frequency]}<br />

]<br />

Out[22]= NetlistRaw, 3 <br />

By default, CircuitEquations prints a warning because the netlist does not contain a reference to<br />

the electrical ground node 0. To turn off the warning, you must set IgnoreMissingGround −> True.<br />

Set up modified nodal<br />

equations for the control<br />

circuit.<br />

In[23]:= CircuitEquations[fbloop, NodeVoltagePrefix −> "x$"]<br />

Netlist::gndnode: Found no connections to the ground node.<br />

Netlist::lttc: Less than two connections at node(s) {0}.<br />

Out[23]= DAEAC, 2 2 <br />

This tells Analog Insydes<br />

to ignore the missing<br />

reference to ground.<br />

In[24]:= fbleqs = CircuitEquations[fbloop,<br />

IgnoreMissingGround −> True, NodeVoltagePrefix −> "x$"];<br />

fbleqs // DisplayForm<br />

Out[25]//DisplayForm=<br />

1 Hfbs<br />

<br />

. x$in Xs<br />

⩵⩵ <br />

Hfs 1 x$out 0 <br />

This defines a circuit with<br />

two time-varying and<br />

temperature-dependent<br />

resistors.<br />

In[26]:= tempckt = Netlist[<br />

{V1, {1, 0}, V1},<br />

{R1, {1, 2}, R1[Time]*(1 + TC11*TEMP)},<br />

{R2, {2, 0}, R2[Time]*(1 + TC12*TEMP)},<br />

{C1, {2, 0}, C1}<br />

]<br />

Out[26]= NetlistRaw, 4 <br />

By default, TEMP is simply regarded as a global parameter. Equations for transient analysis are<br />

formulated with time as independent variable.<br />

Set up circuit equations<br />

for time-domain analysis.<br />

In[27]:= CircuitEquations[tempckt,<br />

AnalysisMode −> Transient] // DisplayForm<br />

Out[27]//DisplayForm=<br />

V$1t V$2t<br />

I$V1t <br />

⩵⩵ 0,<br />

1 TC11 TEMP R1t<br />

V$2t<br />

<br />

1 TC12 TEMP R2t V$1t V$2t<br />

<br />

1 TC11 TEMP R1t C1 V$2′ t ⩵⩵ 0,<br />

V$1t ⩵⩵ V1, V$1t, V$2t, I$V1t, DesignPoint

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

Saved successfully!

Ooh no, something went wrong!