Hi Romain. On Wed, Jan 02, 2013 at 09:50:47AM +0100, Romain GAILLETON wrote: > 1. Which parameters can we use for reduce this computing time?
reltol, abstol, vntol....? see manual. > 2. Is there an option which would allow Gnucap to recalculate only > the nodes where the voltage have changed? gnucap asks the devices, whether they want to be re-evaluated. so basically nothing should be recalculated unless necessary (but checked nevertheless). devices that don't change their matrix stamp should not cause recalculation of the LU decomposition. > 3. Is there an option which could allow us to send to the output > only the nodes which are in a range? > Example: “print tran v(nodes) “ Which nodes are between 0 to 4000 node names are strings, the print command allows patterns. so if your circuit has the nodes X1 .. X4000 and Y1 .. Y4000, you could simply choose the first ones using print tran v(X*). maybe there are more patterns, allowing something like v(0???) v(1???) to select the 1st 2000 without changing your names (haven't tried). > 5. Could it be possible to reduce the computing time under 500ms in > your opinion? in most cases, faster is possible. how much faster is difficult to tell. if everyting is running smootly (always converging within 3 iterations... ), it will be difficult to speed up. i'd look out for bottlenecks first. for example - if switches are involved: i've had trouble with convergence due to the zero transition time in d_switch.cc. this _could_ be a reason for many unnecessary re-evaluations. look at what happens at/around the switch (during iteration), if it looks weird try implementing a nonzero transition time switch (i haven't had the time yet). - for large circuits, the node order is crucial, as it impacts the bandwith of the system matrix. depending on the node order, the LU decomposition can take between linear and cubic time. what you can do is reorder the circuit. if it changes things, you should investigate further. hth felix _______________________________________________ Help-gnucap mailing list [email protected] https://lists.gnu.org/mailman/listinfo/help-gnucap
