[sci.electronics] Variable Capacitor in SPICE

shankar@face.UVic.CA (P.S.Shankar.) (02/22/91)

   I am trying to simulate what is essentially a RC circuit using SPICE.  I am using
   Spice 3.0 C, although I can use IG-SPICE if i need to.  I need to put in a few
   capacitors, whose values depend on the voltages on them, all of which are 
   typically time-varying. More precisely, i need to simulate capacitors which vary
   as

                                  k1
                   C =        ------------
                               k2 - k3.C.V

   where k1, k2 and k3 are constants and the C and V are the capacitor and 
   the voltage values associated with the capacitor itself.  Alternatively,
   this can be written as 
                                       
                             c1    c2   __________
                       C =  --- + ---- \/(c3 - V )
                             V     V


    I have tried to go through the available built-in utilities and functions but
    cant seem to find one, close enough to help me on this one! 
    If any of you spice wizards out there have a clue regarding this, 
    please email me ( or post it on the net...).  


    Thanks Much.

     
-- 
Shankar S Pennathur,			SCUD: Signature Currently
Department of Electrical Engg.,		      under development!!
UVic, Victoria, BC,Canada V8W 3P6               (604)-477-0381

jabarby@vlsi.waterloo.edu (J.A. Barby) (02/23/91)

In article <1991Feb21.223126.15937@sol.UVic.CA>, shankar@face.UVic.CA (P.S.Shankar.) writes:
> 
>    I am trying to simulate what is essentially a RC circuit using SPICE.
>    I am using Spice 3.0 C, although I can use IG-SPICE if i need to.  I
>    need to put in a few capacitors, whose values depend on the voltages on
>    them, all of which are typically time-varying. More precisely, i need
>    to simulate capacitors which vary as
> 
>                                   k1
>                    C =        ------------
>                                k2 - k3.C.V
> 
>    where k1, k2 and k3 are constants and the C and V are the capacitor and 
>    the voltage values associated with the capacitor itself.  Alternatively,
>    this can be written as 
>                                        
>                              c1    c2   __________
>                        C =  --- + ---- \/(c3 - V )
>                              V     V
> 
>     I have tried to go through the available built-in utilities and functions
>     but cant seem to find one, close enough to help me on this one! 
>     If any of you spice wizards out there have a clue regarding this, 
>     please email me ( or post it on the net...).  

I would suggest that you switch to using SABER from Analogy (Beaverton,
Oregon).  Saber makes these sort of thing easy.  An educational license
is only around 1,500.
-- 
	Jim Barby  (U of Waterloo VLSI Group, Waterloo Ont.)
	jabarby@vlsi.waterloo.{cdn,edu,bitnet}
	jabarby@vlsi.UWaterloo.ca

whit@milton.u.washington.edu (John Whitmore) (02/25/91)

In article <1991Feb21.223126.15937@sol.UVic.CA> shankar@face.UVic.CA (P.S.Shankar.) writes:

>   I am trying to simulate what is essentially a RC circuit using SPICE. 
>   ... I need to put in
>   capacitors, whose values depend on the voltages on them, all of which are 
>   typically time-varying.

	This is where the controlled sources come in handy.  First,
replace the capacitor by a current meter (zero V voltage source), and
a voltage-controlled voltage source in series.  Then make a
current-controlled current source onto a dummy capacitor, whose
output current is identically the current measured by the current
meter.
	So you now have a dummy capacitor whose state of charge
is identical to that of your real capacitor.  Its voltage, of
course, is proportional to the capacitor charge.  SO, now use
a voltage-controlled voltage source (controlled by the voltage on
the dummy capacitor) to emulate the REAL capacitor (of course, the
controlled source is exactly the one you replaced your capacitor with.

	The rest of the solution will involve translating the
behavior of your (voltage-variable capacitor diode?) into a 
suitable form (Vcapacitor= polynomial in Qcapacitor).

	John Whitmore