ngspice-jit is a fork of ngspice (the mixed-level/mixed-signal circuit simulator) aimed at running raw foundry analog / mixed-signal top-level chips without hand-conversion. Its headline feature, and its name, is that it JIT-compiles the behavioral R/C value expressions a PDK writes (voltage/temperature- dependent poly-resistors, MIM capacitors, high-field tanh laws) into native OSDI devices at parse time, so the solver sees real charge- and current-conserving devices instead of fragile behavioral sub-circuits. It also adds Eldo-style topology reduction (dangling-passive removal), regular-expression selection in show/display/print/plot/write/save, a new 'devices' command, and assorted fixes. For post-layout decks with huge extracted RC parasitic networks it adds two optional parse-time simplifications, both off by default: .option minres= short every resistor below ohm, by merging its two nodes into one .option mincap= drop every capacitor below farad Sources and supply nets are protected, so a small resistor is never allowed to short two driven nets together. Shorting resistors removes nodes, which is what actually shrinks the matrix and the solve cost. See /usr/doc/ngspice-jit-VERSION/parasitic_reduction/. The startup banner is tagged "[ngspice-jit fork: ...]" so the binary is distinguishable from a stock ngspice at a glance. The internal simulator name and version stay "ngspice-46" so .raw files remain compatible. The OSDI codegen invokes the system compiler (gcc) at run time; gcc is part of the Slackware base system. The osdi headers it needs are installed to /usr/share/ngspice/osdi and spinit is set to find them. Documentation shipped under /usr/doc/ngspice-jit-VERSION: examples/ - the upstream example-circuit tree (from the source) reference_manual/ - our HTML/PDF command reference (ngspice_manual.html / .pdf, tested vs ngspice-46), carried by the source tarball. The documentation above is not the original ngspice manual. The files: ngspice_manual.html ngspice_manual.pdf are a compact version of the ngspice manual. The main reason for this manual was to get all the commands checked against a real example. In the header of the command you can also see whether the command works in interactive mode "ui", batch "batch" or both. Interactive commands like show, plot, device, showmod, display, print accept POSIX REGEX as argument. This was introduced because with a large circuit it is impossible to scroll up in the xterm to find the device or node across many thousand lines of output. ngspice-jit also re-introduces a mini-help on the command line which is based on the manual above. example: help wrdata wrdata - ASCII column data [ui only] Synopsis: wrdata file expr ... Writes the scale (time/frequency) and each expression as whitespace-separated columns of plain text - the easiest format to hand to gnuplot, a spreadsheet, or a script. Control mode only (no dot-card form). A double-quoted argument is a regular expression over the current plot - wrdata f.txt ".*#branch" writes every branch current as columns (same rule as print). See also: print, write (binary raw), gnuplot. Important: Installing ngspice-jit will overwrite the original ngspice executable and libraries.