Hi Al. the dc command shipped with gnucap .36 has two drawbacks - non-convergence during sweep is not handled - when sweeping over more than one value, initial guesses are inefficient.
non-convergence could be due to faulty models or to issues with the solver, however, sometimes it's not possible to quickly improve either of them. it seems better, to try with a smaller step /automatically/ and recover -- similar to transient stepping. like for .tran, the trace option can be used to display (a)ll or also (r)ejected steps. when sweeping over two variables, the current implementation chooses the last accepted step as starting point for the next homotopy. it's much better to take the nearest known operating point. during recursive sweep, known operating points need to be stacked. for example, when sweeping through all combinations of xy=00...22, which .dc does by computing these points line by line, left to right 00 01 02 10 11 12 20 21 22 it starts off at the solution for 02 to compute 10, while 00 would be closer. note that this will change hysteresis simulation to do something more natural a well (does it?). an implementation and some unittests of/for the above is in the gnucap-uf repo and latest tarball on tool. it quite works in all cases known to me. however i cant distribute it as plugin, as it needs a change in keep_ and restore_voltages in u_sim_data. please consider some of this functionality upstream, or provide the needed interface (this way or another). have fun felix _______________________________________________ Gnucap-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/gnucap-devel
