The Designer's Guide Community
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Mar 20th, 2023, 9:03pm
Pages: 1
Send Topic Print
Negative Value of Capacitance allowed in SPICE? (Read 2917 times)
New Member

Posts: 4

Negative Value of Capacitance allowed in SPICE?
Jan 28th, 2017, 12:13am
I am experimenting with my SPICE simulations by assigning capacitor a negative value of 1f (C=-1fF). Although SPICE flashes warning, but it successfully simulates the stand alone cap.
However, when i connect a large resistor in series, the simulations are not at all converging. If i plot the intermediate node voltage (node between C and R) till the the time simulation is converging, i noticed that its value is of the order or 1e21!! At low values of R, simulation is converging.

Any idea why simulation with negat. cap is not converging? i am running transient simulations and the error is "internal time step too small". Any suggestion is greatly appreciated. Thanks a lot!

Back to top
View Profile   IP Logged
Community Member

Posts: 97

Re: Negative Value of Capacitance allowed in SPICE?
Reply #1 - Jan 28th, 2017, 1:06am
A RC circuit with negative capacitor has a pole in the RHP and the simulator is correct to report it by blowing up the voltage. I am not sure which simulator you are using, but spectre usually throws up a blown up voltage error message under such circumstances.

By making the resistance smaller, you are entering a realm where the time constant is likely to be smaller than the time step of transient analysis. The weakness of most transient simulators in dealing with such situations makes the circuit looks apparently stable, while it is far from truth in reality. You can tighten your time step to a smaller value, perhaps smaller than the time constant and see if the circuit becomes unstable.
A similar issue has been discussed here.  
Back to top
View Profile   IP Logged
Andrew Beckett
Senior Fellow

Life, don't talk to
me about Life...

Posts: 1742
Bracknell, UK
Re: Negative Value of Capacitance allowed in SPICE?
Reply #2 - Jan 29th, 2017, 1:13am
The other way of thinking about this is that you have a negative time constant - this means that because you have a response which is of the form V(t)=V0(1-e-t/Τ) the exponent ends up being positive rather than negative, and so explodes. If the time constant is only a small negative number (because  your resistance is small), it will blow  up slowly, and the simulator will end up having to take very small time steps to follow the exponentially increasing signal.

So it's hardly surprising behaviour! I've managed to do this by accident in the past where I unwittingly made the output impedance of a block negative in a behavioural model (by getting an equation back to front) and then the capacitance of the next stage caused it to blow up (in value, not physically!)


Back to top
View Profile WWW   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2023 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to Consider submitting a paper or model.