OpenSEMBA/fdtd

SPICE simulations time increase

Closed this issue · 1 comments

With increasing number of time steps, spice simulations take more time per time step. It is under investigation. The most likely cause at this point is the stop/resume dynamic needed to pair the mtln steps with the spice steps. It makes simulations with many time steps inviable

A new stop condition has been added to ngSpice, as a modulo operator. If we need the simulation to stop at every dt, instead of setting a condition

stop when time = <time>

where corresponds to each of the time steps, a single statement

stop when time mod <dt>

can be used. The effect is the same, ngspice stops whenever its simulation time is a multiple of dt, but the condition checking is much faster.

The issue will be closed when the corresponding PR is approved