Commit Graph

3681 Commits

Author SHA1 Message Date
rlar db9eb23b7d inpcom.c, bug fix, avoid segfault when `.ends' is missing 2015-08-15 17:05:00 +02:00
rlar 61724121aa res/restemp.c, bug fix, need to update `RESresist' in `REStemp()'
instead of `RESsetup()'
  to be effective when altering a resistor model parameter or when
  sweeping a resistor model parameter in a dc analysis.

see tests/regression/temper/temper-3.cir
2015-08-10 17:52:57 +02:00
rlar 5940bf9294 analysis/dctrcurv.c, bug fix, sweeping `temper' in a dc analysis
incorrect update of model parameters,
  need to `invoke CKTtemp()' *after* `inp_evaluate_temper()'

see tests/regression/temper/temper-2.cir
2015-08-10 17:52:54 +02:00
rlar fc6455ca99 inp.c, bug fix, `temper' in a model parameter, missing INPretrieve() invocation
The model name needs to be transformed into a `IFuid'
  before it can be searched for with `findModel()'

see tests/regression/temper/temper-1.cir
2015-08-10 17:52:21 +02:00
rlar 0c0bc4079f configure.ac, allow cross-compilation, especially for MinGW-w64
notably on debian gnu/linux with package `mingw-w64'
cross-compile a mingw 32bit windows executable with this incantation:

(compile "
  ./autogen.sh
  rm -rf tmp-build tmp-output
  mkdir -p tmp-build tmp-output
  ( cd tmp-build && ../configure \
      --build=$(../config.guess) \
      --host=i686-w64-mingw32 \
      --prefix='c:/spice' \
      --exec-prefix='c:/spice'\
      --with-windows --enable-xspice --enable-cider --disable-debug )
  LC_ALL=C make -C tmp-build -k -j6
  LC_ALL=C make -C tmp-build -k -j6 DESTDIR=$(pwd)/tmp-output/ install
  (cd 'tmp-output/c:/' && zip -r - .) > tmp-output.zip
")

compilation to Win64 works the same way, with
      --host=x86_64-w64-mingw32

The tmp-output.zip directory structure resembles the
  structure of our original sourceforge ngspice-26_140112.zip windows package
ready to be unzip'ed in c:/

Though the testfiles, examples and documentation is missing.
2015-07-06 21:08:05 +02:00
rlar 794df1066a update bison generated files 2015-07-05 20:26:59 +02:00
rlar 1c6efd9481 polish bison/flex makefile rules 2015-07-05 20:25:23 +02:00
rlar 74aaa72c39 src/xspice/icm/GNUmakefile.in, extend `make distclean' 2015-07-05 19:15:42 +02:00
rlar 9be4f753e6 remove redundant src/xspice/cmpp/ylwrap 2015-07-04 10:48:22 +02:00
rlar 39fdeb0c9a src/frontend/plotting/gnuplot.c, enforce "noenhanced text" mode
Contrary to older versions gnuplot 5 uses "enhanced text mode" per default.
The strings which we pass to gnuplot don't have "latex" semantics,
  thus consistently enforce "noenhanced text mode".

Add a function quote_gnuplot_string() to escape and quote strings
  in such a way that they will arrive in gnuplot unmodified.
2015-05-17 17:34:29 +02:00
Marcel Hendrix 02fe549be7 src/frontend/plotting/plotit.c, allow "plot xlog ylog" (equiv to "plot loglog") 2015-05-14 15:56:45 +02:00
rlar 5d19c99e94 src/frontend/outitf.c, bug fix, "resume" causing segment violation
introduced in commit
  "noisean, deliver results in V/sqrt(Hz) and A/sqrt(Hz)"

analysisPtr is NULL when beginPlot() is invoked to "resume"
2015-05-09 18:56:01 +02:00
rlar f4472f788e spicelib/parser/inpptree.c, bug fix, "#287 Shared library crashes on using non existing functions "
"remcirc" has the potential to invoke INPfreeTree() with a NULL IFparseTree

Thanks to Craggan, who reported this in:
  http://sourceforge.net/p/ngspice/bugs/287/
2015-05-04 20:17:28 +02:00
rlar 6ff1560487 frontend/cpitf.c, free a temporary vector which was left in `cp_istrue()'
reported by Marcel Hendrix.

Using conditional expressions within a .control sequence
  left some garbage vectors in the current plot.

For example

> let ix = 0
>
> while ix < 2
>   let ix = ix + 1
> end
>
> display

"display" reported a variable named "ix < 2"
which was an internal temporary value in said function `cp_istrue()'
2015-05-02 12:33:45 +02:00
rlar e609c7411d src/frontend/vectors.c, abstraction, introduce `vec_iszero()' 2015-05-02 12:27:35 +02:00
rlar 44425b1d0a fix commit "inpcom.c, comment_out_unused_subckt_models() #4/8, introduce `nlist_find()'"
which broke the search for binned models
2015-05-02 12:20:58 +02:00
rlar cab63eedd4 frontend/com_let.c, bug fix, "#302 Integer in Let Statement"
let 2foo = someexpression

was silently accepted, even though 2foo is an illegal identifier.
  (first letter is a digit)

This was especially irritating, since
  print 2foo
has a legal meaning, 2 femto oO, which is 2e-15
  (whatever Unit an oO might be)

Reported by Justin Fisher in
  http://sourceforge.net/p/ngspice/bugs/302/
2015-05-02 11:18:30 +02:00
rlar 7bc6374138 cleanup, use '\0' instead of 0 in char context 2015-05-02 10:24:54 +02:00
rlar 19e427e3a5 cleanup, use NULL instead of 0 in pointer context 2015-05-02 10:24:49 +02:00
rlar 6513aa5173 spicelib/devices, cleanup, 0 versus NULL in SPICEdev initialization 2015-05-02 10:24:45 +02:00
rlar 6bea757457 frontend/numparam, drop `sfix()' 2015-05-02 10:24:40 +02:00
rlar c3f851750c fix commit "devices/asrc, introduce `ASRCvars' with the indices of the controlling nodes/branches" 2015-04-24 21:45:54 +02:00
rlar 83a5c31e6f fix commit "devices/asrc, allocate `ASRCacValues' in ASRCsetup()" 2015-04-24 21:45:29 +02:00
rlar ab5cd17044 inpcom.c, workaround for "#307 define problems with the Modelname "mname" with Subcircuits"
a diode model named "1smb4148" could not be found
  because it was dropped in `comment_out_unused_subckt_models()'

as a work around the function
  is_a_modelname()
is extended to accept an additional pattern which does match "1smb4148"

Thanks to Martin who submitted the bug report here:
  http://sourceforge.net/p/ngspice/bugs/307/
2015-04-19 17:36:05 +02:00
rlar e4ba6eb602 inpcom.c, comment_out_unused_subckt_models() #8/8, drop `no_of_lines' 2015-04-19 17:07:42 +02:00
rlar 8379de8ddb inpcom.c, comment_out_unused_subckt_models() #7/8, allocation 2015-04-19 17:07:40 +02:00
rlar 341ee45314 inpcom.c, comment_out_unused_subckt_models() #6/8, cleanup 2015-04-19 17:07:10 +02:00
rlar e598da4706 inpcom.c, comment_out_unused_subckt_models() #5/8, introduce `nlist_adjoin()' 2015-04-19 16:58:30 +02:00
rlar 2e7b469cfe inpcom.c, comment_out_unused_subckt_models() #4/8, introduce `nlist_find()' 2015-04-19 16:58:11 +02:00
rlar d8807c00c4 inpcom.c, comment_out_unused_subckt_models() #3/8, drop ´tmp_cnt', `new_names[]' 2015-04-19 16:57:30 +02:00
rlar 5ec24f4ed0 inpcom.c, comment_out_unused_subckt_models() #2/8, cleanup 2015-04-19 16:56:18 +02:00
rlar d2e138c592 inpcom.c, comment_out_unused_subckt_models() #1/8, use a struct to collect data 2015-04-19 16:54:51 +02:00
rlar 84a945ca45 inpcom.c, comment_out_unused_subckt_models(), reduce scope of local variables 2015-04-18 22:03:19 +02:00
rlar a8d90775ca inpcom.c, get_subckts_for_subckt(), reduce scope of local variables 2015-04-18 21:56:07 +02:00
rlar e2dabb2e75 inpcom.c, introduce `is_a_modelname()' to encapsulate highly dubious code 2015-04-18 12:50:19 +02:00
Marcel Hendrix f9432cb3da frontend/com_measure2.c, bug fix for "meas AVG"
meas "AVG" did merely the average of the given values,
  without consideration of their spacing on the "scale" axis.

now use trapezoidal summing to calculate the AVG

note, there is "meas INTEG"
  which goes beyond trapezoidal summing
2015-04-16 21:20:20 +02:00
rlar 8be0829b9b frontend/breakp.c, bug fix, "#306 Deleting breakpoint causes Internal Error in status"
The "delete" command destroyed the whole list of stored breakpoints
  instead of just the specified one.

Thanks to "jpcgt", who reported this in
  "#306 Deleting breakpoint causes Internal Error in status"
  http://sourceforge.net/p/ngspice/bugs/306/
2015-04-16 19:58:58 +02:00
rlar 0b4bcf31f4 devices/res, bug fix, extend ac-resistance to the pz analysis 2015-04-15 19:52:36 +02:00
rlar b6b76ad035 devices/asrc, introduce `ASRCvars' with the indices of the controlling nodes/branches 2015-04-12 21:36:22 +02:00
rlar b4f1c1dda3 devices/asrc, allocate `ASRCacValues' in ASRCsetup() 2015-04-12 21:34:16 +02:00
rlar 232debc6ec drop `NEWN', use `TMALLOC' 2015-04-12 20:10:07 +02:00
rlar ad869c6d2d devices/asrc, rewrite #10/10, emphasise matrix for the two cases VSRC vs ISRC 2015-04-12 18:23:22 +02:00
rlar 66a0da8ab9 devices/asrc, rewrite #9/10, combine common code 2015-04-12 18:22:06 +02:00
rlar 704e50b62a devices/asrc, rewrite #8/10, cleanup and reorder 2015-04-12 18:18:20 +02:00
rlar 3a1c094682 devices/asrc, rewrite #7/10, allocate in one go 2015-04-12 18:18:14 +02:00
rlar b3860ac599 devices/asrc, rewrite #6/10, check for errors right at the beginning 2015-04-12 18:17:52 +02:00
rlar 1c53a425f0 devices/asrc, rewrite #5/10, combine common code 2015-04-12 18:17:46 +02:00
rlar 6ea1e1932d devices/asrc, rewrite #4/10, drop `ASRCcont_br' 2015-04-12 18:11:41 +02:00
rlar ce49a4977d devices/asrc, rewrite #3/10, combine TSTALLOC and MY_TSTALLOC 2015-04-12 18:11:38 +02:00
rlar e902ebd34d devices/asrc, rewrite #2/10, simplify incremental memory allocation 2015-04-12 18:11:33 +02:00
rlar e13e1690d2 devices/asrc, rewrite #1/10, add a return (E_BADPARM) 2015-04-12 18:11:29 +02:00
rlar 7afb450e66 devices/asrc, cleanup #9/9, polish local variables 2015-04-11 21:31:02 +02:00
rlar 21ff522441 devices/asrc, cleanup #8/9, cleanup parentheses and braces 2015-04-11 21:31:02 +02:00
rlar 39a25ba114 devices/asrc, cleanup #7/9, use '[]' to access array elements 2015-04-11 21:31:02 +02:00
rlar 036a45f348 devices/asrc, cleanup #6/9, cleanup 2015-04-11 21:31:02 +02:00
rlar bd5ac3e4fc devices/asrc, cleanup #5/9, drop explicit NULL comparsion 2015-04-11 21:31:02 +02:00
rlar b91386222e devices/asrc, cleanup #4/9, unify model cast 2015-04-11 21:31:01 +02:00
rlar 03ef81785a devices/asrc, cleanup #3/9, polish comments 2015-04-11 21:31:01 +02:00
rlar 2cb727476f devices/asrc, cleanup #2/9, whitespace 2015-04-11 21:31:01 +02:00
rlar df147cd8b8 devices/asrc, cleanup #1/9, invert `if' 2015-04-11 21:31:01 +02:00
rlar bfe9df8511 devices/ind.c, bug fix, use 'm' in pz analysis 2015-04-07 20:43:43 +02:00
rlar 685d684c88 devices/ind: bug fix, multiplier `m'
multiplier `m' was applied twice,
  because it was already implemented in indtemp.c before this commit :

> Date:   Thu May 9 10:28:38 2013 +0200
>
>     devices/ind: implement multiplier `m'
2015-04-06 21:19:44 +02:00
dwarning 7c5f3173e2 hisimhv2: fix naming problems by MS linker 2015-03-29 11:43:30 +02:00
rlar 5ac7858a79 rewrite, use tprintf 2015-03-28 20:10:29 +01:00
rlar 6b5bbb71d0 rawfile.c, bug fix, missing memory allocation and a memory leak 2015-03-28 19:51:50 +01:00
rlar be283109dc numconst.h, fix pi 2015-03-28 12:57:03 +01:00
rlar 4b7092633c hisimhv1, remove unused variables 2015-03-28 12:15:18 +01:00
rlar 5042ffc5cc hisimhv1, remove excess casts 2015-03-28 12:15:17 +01:00
rlar 7464d4423a hisimhv1, drop of non __STDC__ code 2015-03-28 12:15:16 +01:00
rlar 90d0bb3d2d hisimhv1, append `;' when using `BINNING' to be auto indentation friendly 2015-03-28 12:15:15 +01:00
rlar c5a3788f6b hisimhv2, TMFx, globals need to be static or need an own namespace
Fixme, actually these should have block local scope.
  (local in the blocks of the macros where these variables are actually used)
Thats safer, much easier to understand, at least as fast,
  and won't defeat parallelisation.
2015-03-28 12:15:11 +01:00
rlar 6ac641e906 hisimhv2, remove excess casts 2015-03-28 11:26:12 +01:00
rlar 970299bdc2 hisimhv2, drop of non __STDC__ code 2015-03-28 11:26:11 +01:00
rlar 0ef07aad20 hisimhv2, append `;' when using `BINNING' and `TSTALLOC' to be auto indentation friendly 2015-03-28 11:26:11 +01:00
rlar 6ad8b96dbb hisimhv2, apply "mark end of struct GENmodel overlay" 2015-03-28 11:26:11 +01:00
rlar 1f5b0f852b hisimhv2, apply commit "use TMALLOC, funcall, and NULL casts" 2015-03-28 11:26:11 +01:00
rlar 53555ac8c6 hisimhv2, extend rename from hisimhv --> hsimhv2 2015-03-28 11:26:11 +01:00
rlar 87a9c67a8f hisim2, remove excess casts 2015-03-27 17:53:36 +01:00
rlar efd8a0dce8 hisim2, append `;' when using `BINNING' to be auto indentation friendly 2015-03-27 17:52:05 +01:00
rlar 495988608a hisim2, apply commit "use TMALLOC, funcall, and NULL casts" 2015-03-27 16:45:48 +01:00
dwarning 26937f8dfb hisimhv1: less verbosity, remove useless printout 2015-03-26 10:30:57 +01:00
dwarning eb99465713 hisimhv1: prevent a nonsens range check for model parameter qme2 2015-03-26 10:21:37 +01:00
dwarning 6dbe8e618d correct node assignment for hisimhv 2015-03-26 10:08:09 +01:00
rlar 00ed1122b7 hisim2, reintroduce "rewrite, useing IFerrorf()" 2015-03-25 18:49:44 +01:00
rlar a87bf334b8 hisim2, reintroduce "rewrite `TSTALLOC()' macro for auto indentation" 2015-03-25 18:49:43 +01:00
rlar 9141e86926 hisim2, reintroduce "mark end of struct GENmodel overlay" 2015-03-25 18:49:43 +01:00
rlar 48ff3df6eb hisim2, reintroduce "hsm2eval.c, avoid static variables to allow multithreading" 2015-03-25 18:49:43 +01:00
dwarning 2b71713498 get the hisimhv v2 device info 2015-03-25 15:34:34 +01:00
dwarning 9ed2da9ad9 new hisimhv model version 2.2.0 in a separate directory 2015-03-25 15:17:16 +01:00
dwarning adcec9fa5f Revert "update hisimhv model to version 2.2.0"
This reverts commit c2ef7aeff3.
2015-03-25 14:13:07 +01:00
dwarning db52073f5d cpitf.c: bugfix #304 reported by Dave Clarc, correct base of natural logarithm 2015-03-25 07:01:26 +01:00
dwarning c2ef7aeff3 update hisimhv model to version 2.2.0 2015-03-25 06:47:32 +01:00
dwarning 339e7fe819 update hisim model to version 2.8.0 2015-03-23 21:47:00 +01:00
rlar 7d92eae124 noisean, introduce a .control variable "sqrnoise" to deliver noise data in squared representation
use "set srqrnoise" (and "unset sqrnoise") to control this.
2015-03-23 19:32:33 +01:00
rlar 8d6726f0f4 noisean, deliver results in V/sqrt(Hz) and A/sqrt(Hz) 2015-03-22 21:44:50 +01:00
rlar e755b45281 fix commit "noise analysis, bug fix, override ac magnitude of all vsrc/isrc devices" 2015-03-22 20:22:01 +01:00
rlar 64da5a99bf src/frontend/com_measure2.c, cleanup, rewrite `correct_vec()' 2015-03-22 19:16:36 +01:00
rlar 27aae75ade src/frontend/com_measure2.c, bug fix, typo when setting `m_vectype2'
this doesn't change anything, because m_vectype2 is nowhere used.
2015-03-22 19:15:44 +01:00
rlar c16701b66c swallow compiler warning caused by "noise analysis, bug fix, override ac magnitude of all vsrc/isrc devices" 2015-03-22 18:25:17 +01:00
rlar 76a48c161d src/frontend/outif.c, introduce guess_type() for common code in plotInit() and fileInit_pass2() 2015-03-22 12:30:45 +01:00