Modeling RC circuits with long time constants?

I'm having trouble getting reasonable results modeling circuits with long time constants. For example, 1 10M resistor and a 10uF capacitor ends up with a far shorter TC than estimated with a calculator or observed on a breadboard.

I'm by no means a PSPICE expert, but if I had to guess, it would be one of two things: (1) I'm doing something wrong so mea culpa, or (2) extended precision math results are being rounded or truncated.

Any ideas? Thanks, --jim

by audiomath
June 29, 2015

@audiomath,

As you have not shared an example of the circuit in question here is an example that demonstrates that CL can adequately simulate an RC time constant of 10MOhms*10uF:

Have a look at how the Time Domain Simulation is set up and also have a look at:

https://www.circuitlab.com/docs/the-basics/#time_domain_simulation

Please note that CL does not use SPICE.

and also see:

https://www.circuitlab.com/blog/2013/07/22/double-double-please-when-64-bit-floating-point-isnt-enough/

:)

by signality
June 30, 2015

Thanks for the reply. Here's a link to an example of the behavior I was talking about. If you increase the value of the resistor >= 1m, the simulation appears to me at least to fail.

I'll review the links you provided and see if I'm doing something obviously wrong.

by audiomath
June 30, 2015

If you have been entering resistances as 1m and not 1M then in CL you have been entering a resistance of 1e-3 and not 1e6.

CL is not SPICE: it is case sensitive and uses

M = Mega = 1e6

and

m = milli = 1e-3

See:

https://www.circuitlab.com/docs/the-basics/#human_friendy_inputs

for more.

Also, your simulation is not well conditioned at T=0.

It is not clear and not documented exactly what CL does for T<= 0.

If you look closely at your sim, you'll see that it does not start at exactly zero in the time or voltage scale.

If you want to start a voltage source at a specified time and be sure of it's behaviour prior to that it is best to use the USTEP(T-1f) trick I used in my example.

In CL, sometimes USTEP(T) or USTEP(T-0) and similar tricks works but sometimes it does not. Starting a source from zero or some defined value at T>0 is much safer in CL.

You can also use the PWS() source:

https://www.circuitlab.com/docs/expressions/

:)

by signality
June 30, 2015

Aha! As it turns out, it was my error, as I suspected. That circuit with a resistance of 1 milliohm would not have a very long time constant... ;-)

Thank you for your time. --jim

by audiomath
June 30, 2015

Post a Reply

Please sign in or create an account to comment.

Go Ad-Free. Activate your CircuitLab membership. No more ads. Save unlimited circuits. Run unlimited simulations.

About CircuitLab

CircuitLab is an in-browser schematic capture and circuit simulation software tool to help you rapidly design and analyze analog and digital electronics systems.