rlar
23d0f41e66
ft_find_analysis_parm(), change signature
2013-12-31 16:12:55 +01:00
rlar
4d65fb908d
use type `IFparm' to abbreviate some expressions
2013-12-31 16:12:53 +01:00
rlar
fc2dd436fe
abstraction, new function `ft_find_analysis_parm()'
2013-12-31 16:12:51 +01:00
rlar
9d0500027c
abstraction, new function `ft_find_analysis()'
2013-12-31 16:12:49 +01:00
h_vogt
88cd0f324d
bug fix, `#250 "<<NAN, error = 7>>" in op analysis'
...
http://sourceforge.net/p/ngspice/bugs/250/
2013-12-31 16:12:45 +01:00
rlar
6050e2e0ea
cleanup some extra parentheses
2013-12-31 16:12:44 +01:00
rlar
bedbdb65bb
cleanup some line wraps
2013-12-31 16:12:43 +01:00
rlar
ed6d7df0ce
inpdoopt.c, bug fix, `i' incremented twice when searching for "options"
2013-12-31 16:12:41 +01:00
rlar
852bb7a89f
minor, prepare for automatic indentation
2013-12-31 16:12:40 +01:00
rlar
7381081226
ciderlib, proper types for newCard(), setCardParm(), askCardQuest()
2013-12-31 16:12:39 +01:00
rlar
ccb600f3c1
drop `NIL' macro
2013-12-31 16:12:37 +01:00
rlar
f973e7107f
memory.h, polish macros
2013-12-31 16:12:36 +01:00
rlar
ade2f8c2c2
CKTmodCrt(), cleanup
2013-12-31 16:12:33 +01:00
rlar
86264b9879
CKTmodCrt(), cleanup, always assign to `*modfast'
...
for all invocations of CKTmodCrt() alias newModel()
the following is true
(modfast != NULL) && (*modfast == NULL)
see
(grep "git --no-pager grep -nH -e 'CKTmodCrt\\|newModel'")
2013-12-31 16:12:32 +01:00
rlar
df5c785a84
drop `INPmodUsed' which is redundant to `INPmodfast'
2013-12-31 16:12:31 +01:00
rlar
468b4b973c
nghash_delete() models and instances in CKTdltMod()
2013-12-31 16:12:30 +01:00
rlar
f0d36d956e
CKTfndMod(), cleanup
2013-12-31 16:12:27 +01:00
rlar
e7def1a0bc
CKTfndMod(), drop unused arguments `type' and `modfast'
2013-12-31 16:12:26 +01:00
rlar
7b495e0a7b
CKTfndMod(), use a hashtable
2013-12-31 16:12:24 +01:00
rlar
59309e196b
CKTfndMod(), cleanup
2013-12-31 16:12:23 +01:00
rlar
b32c15d85f
CKTfndMod(), dont pass the `type' argument by reference any more
2013-12-31 16:12:22 +01:00
rlar
494ef3f628
CKTfndMod(), cleanup
2013-12-31 16:12:20 +01:00
rlar
247ae92ae8
CKTfndMod(), unuse the `type' argument
2013-12-31 16:12:19 +01:00
rlar
f46dbc883b
CKTfndMod(), this wont happen any more and `*type' will be overwritten anyway
2013-12-31 16:12:18 +01:00
rlar
213304f745
CKTfndMod(), rewrite error expressions
2013-12-31 16:12:16 +01:00
rlar
f0882dbdfd
CKTfndMod(), return the found model instead of error code
2013-12-31 16:12:15 +01:00
rlar
b97c2ba5d1
CKTfndMod(), express error return value outside of this function
2013-12-31 16:12:14 +01:00
rlar
4cc57bdfd6
CKTfndMod(), this will never happen, when this series of rewrites is finished
2013-12-31 16:12:12 +01:00
rlar
bd7e93de6c
CKTfndMod(), assert some facts
2013-12-31 16:12:11 +01:00
rlar
e79135c556
CKTfndDev(), cleanup
2013-12-31 16:12:10 +01:00
rlar
ddc78067cc
CKTfndDev(), drop `type' and `fast' argument
2013-12-31 16:12:08 +01:00
rlar
6a9a246526
CKTfndDev(), rewrite invocations where `*fast == NULL'
2013-12-31 16:12:07 +01:00
rlar
f375ec6c10
CKTfndDev(), rewrite invocations where `type == NULL'
2013-12-31 16:12:06 +01:00
rlar
6c80cb4062
CKTfndDev(), unuse the type argument
2013-12-31 16:12:04 +01:00
rlar
390dccd44b
CKTfndDev(), rewrite error expressions
2013-12-31 16:12:03 +01:00
rlar
5daa676163
CKTfndDev(), return the found instance instead of error code
...
now if (fast != NULL)
CKTfndDev(,,fast, )
is equivalent to
*fast = CKTfndDev(,,fast, )
2013-12-31 16:12:01 +01:00
rlar
7bacfc73d1
CKTfndDev(), express error return value outside of this function
...
if (fast != NULL) then
err = CKTfndDev(,, fast, );
is equivalent to
err = CKTfndDev(,, fast, );
err = *fast ? OK : E_NODEV;
2013-12-31 16:12:00 +01:00
rlar
6e7d70e4bb
CKTfndDev(), assert some facts
2013-12-31 16:11:59 +01:00
rlar
d9fbb36ac7
CKTfndDev(), unuse `type' argument
2013-12-31 16:11:57 +01:00
rlar
7048bf7c15
CKTfndDev(), cleanup usage of `type' argument
2013-12-31 16:11:56 +01:00
rlar
8a98c784f6
CKTfndDev(), cleanup usage of impossible error codes
2013-12-31 16:11:55 +01:00
rlar
0ab6a6e463
CKTfndDev(), drop unused argument `modfast'
2013-12-31 16:11:53 +01:00
Henrik Forstén
771d1fa697
CKTfndDev(), rewrite
2013-12-31 16:11:52 +01:00
Henrik Forstén
b96be8d576
CKTfndDev(), use a hashtable to speed up this function
2013-12-31 16:11:51 +01:00
rlar
503f5d5c26
simplify #ifdef nesting #4/4
2013-12-31 16:11:48 +01:00
rlar
2c33cd49b2
simplify #ifdef nesting #3/4
2013-12-31 16:11:47 +01:00
rlar
71e953e1b9
simplify #ifdef nesting #2/4
2013-12-31 16:11:45 +01:00
rlar
b1a2eef4d0
simplify #ifdef nesting #1/4
2013-12-31 16:11:44 +01:00
h_vogt
89ae9e36a6
shared ngspice, dctran.c fcn to add breakpoints
2013-12-31 16:11:41 +01:00
h_vogt
8147b03465
shared ngspice: external voltage source
2013-12-31 16:11:40 +01:00
rlar
96e1d7eec6
cleanup OUTattributes() invocations
...
checked for object file invariance
2013-12-31 16:11:38 +01:00
rlar
29c57dd857
cleanup IFnewUid() invocations
...
checked for object file invariance
2013-12-31 16:11:37 +01:00
rlar
2f2da2bab2
cleanup OUTpBeginPlot() invocations
...
checked for object file invariance
2013-12-31 16:11:36 +01:00
rlar
40414ead49
cleanup stuttered semicolon
2013-12-31 16:11:34 +01:00
rlar
11abda7a6b
noisean.c, cleanup comment
2013-12-31 16:11:33 +01:00
rlar
31ff2ee073
polish `LITERR' macro
...
checked for object file invariance
2013-12-31 16:11:30 +01:00
rlar
1b3e77ca32
polish `GCA' macro
...
checked for object file invariance
2013-12-31 16:11:29 +01:00
rlar
d52c9e401a
polish `IFC' macro
...
checked for object file invariance,
different code for inppas3.c, seems to be ok
2013-12-31 16:11:28 +01:00
rlar
14a6bd9314
polish `MERROR' macro
...
checked for object file invariance
2013-12-31 16:11:26 +01:00
dwarning
1bb270e301
inp2y.c, TXL bug fix
...
reported by John Reuben P on the ngspice-users mailing list
need to insert instance names into the symbol table with INPinsert()
2013-12-31 16:11:24 +01:00
rlar
4ad4877e30
CKTfndDev(), drop unused argument `modname' which is always NULL
2013-12-31 16:11:23 +01:00
rlar
156c9ea086
cleanup CKTfndDev(), findInstance() invocation
2013-12-31 16:11:21 +01:00
rlar
7c15b99ebc
CKTfndDev(), #6/6, cleanup
2013-12-31 16:11:19 +01:00
rlar
a2b50f5c1e
CKTfndDev(), #5/6, cleanup
2013-12-31 16:11:17 +01:00
rlar
235283d96a
CKTfndDev(), #4/6, cleanup
2013-12-31 16:11:16 +01:00
rlar
52c0731b69
CKTfndDev(), #3/6, cleanup
2013-12-31 16:11:15 +01:00
rlar
8c91149625
CKTfndDev(), #2/6, cleanup
2013-12-31 16:11:13 +01:00
rlar
8a69f5c1c8
CKTfndDev(), #1/6, whitespace
2013-12-31 16:11:12 +01:00
rlar
025c1e751e
abstraction, new function `find_instance()'
2013-12-31 16:11:11 +01:00
Henrik Forstén
30d7647378
search just once for basic device types
2013-12-31 16:11:08 +01:00
dwarning
ae78dd06ef
devices/mos*: prevent NaN in sqrt for negative value of model parameter `PHI'
2013-12-31 16:11:04 +01:00
Henrik Forstén
97d99067a6
inpsymt.c, use "Daniel J. Bernstein" hash function
...
instead of a simple sum.
just for note,
there is a wealth of newer hash functions.
For example "The FNV Non-Cryptographic Hash Algorithm"
from http://tools.ietf.org/html/draft-eastlake-fnv-03
2013-12-31 16:11:02 +01:00
rlar
2eb5a7ac00
avoid `(IFuid) 0' cast
2013-12-31 16:11:00 +01:00
rlar
daf4fba6db
convert K&R function definitions to ansi style
2013-12-31 16:10:59 +01:00
rlar
9b9bf075d1
fix for automatic indention
...
this part of
> commit f9144f90b3
> Author: pnenzi <pnenzi>
> Date: Tue May 23 20:04:32 2000 +0000
>
> Applied Widlok patch
is hostile to automatic indention
2013-12-31 16:10:58 +01:00
dwarning
0fd9956a56
devices/res: use model parameter `r' and `res' as default for instances w/o value
...
and set minimal resistor value to 1 mOhm
2013-12-31 16:10:55 +01:00
dwarning
f120c30ae4
devices/res: whitespace cleanup
2013-12-31 16:10:54 +01:00
h_vogt
6ce0412690
cktop.c: indentation
2013-12-31 16:10:51 +01:00
rlar
14687910d9
rewrite `TSTALLOC()' macro for auto indentation
...
checked for object code invariance
2013-12-31 16:10:34 +01:00
dwarning
e0a4373553
add `rgeomod' as model parameter for bsim4
2013-12-31 16:10:26 +01:00
dwarning
2dcea6d7c1
parser/*.c: correct the `pwr' derivative
2013-12-31 16:10:24 +01:00
dwarning
91ab0a3c74
parser/*.c: implement a signed power function `pwr' for controlled sources
2013-12-31 16:10:12 +01:00
h_vogt
a469aa9387
devices/vccs: implement multiplier `m' (G source)
2013-12-31 16:09:58 +01:00
h_vogt
2ccf0a7097
devices/cccs: implement multiplier `m' (F source)
2013-12-31 16:09:57 +01:00
Francesco Lannutti
d84f3af2d3
vcvsset.c, cleanup order of TSTALLOC() invocations
2013-12-31 16:09:46 +01:00
dwarning
b9a954df60
inpptree.c, ptfuncs.c: whitespace cleanup
2013-12-31 16:09:45 +01:00
dwarning
2b6737e164
devices/bsim3, devices/bsim3v32: add `nqsmod' as model parameter
2013-12-31 16:09:18 +01:00
dwarning
0a5ac78e8a
devices/hisimhv1: correct the `qme2' rangecheck
2013-12-31 16:09:14 +01:00
dwarning
d5e3f1978a
devices/bsim3: whitespace cleanup
2013-12-31 16:09:13 +01:00
dwarning
b51f84e0ff
devices/bsim3: complete the ACM parameter set with xl and xw
2013-12-31 16:09:12 +01:00
dwarning
708fcbaed1
devices/bsim3: apply Area Calculation Method (ACM) to the bsim3v3.3 model
2013-12-31 16:09:10 +01:00
dwarning
c7c89c28a9
devices/bsim3: reposition sourceConductance block
2013-12-31 16:09:09 +01:00
dwarning
02dc233bc5
devices/bsim3: reposition DrainSatCurrent block
2013-12-31 16:09:08 +01:00
h_vogt
31405ed9cb
hsm2set, hsmhvset.c: error message
2013-12-31 16:09:06 +01:00
h_vogt
7387d59b1a
dctran.c, bug fix `#235 When Using .TRAN analysis with UIC, ...'
...
add a breakpoint for UIC
#235 When Using .TRAN analysis with UIC, unconnected pulse bug
http://sourceforge.net/p/ngspice/bugs/235/
2013-12-31 16:09:05 +01:00
Francesco Lannutti
fee628b6df
unify, use #include "vccsext.h" the same way as in all other models
2013-12-31 16:09:02 +01:00
h_vogt
07a662b271
traninit.c, cleanup indentation
2013-12-31 16:08:43 +01:00
h_vogt
bba1d2f5b9
b4v4getic.c, cleanup indentation
2013-12-31 16:08:41 +01:00
dwarning
ff6a4990bd
devices/bsim3v32: whitespace cleanup
2013-12-31 16:08:35 +01:00
dwarning
7b2bd10b64
devices/bsim3v32: apply Area Calculation Method (ACM) to the bsim3v3.2.4 model
2013-12-31 16:08:33 +01:00
dwarning
959ee9cfbb
devices/bsim3v32: reposition DrainSatCurrent block
2013-12-31 16:08:32 +01:00
dwarning
05a9a8931d
devices/bsim3v32: remove duplicate `SourceSatCurrent' block
2013-12-31 16:08:30 +01:00
dwarning
af0361d5b4
devices/bsim3v32: single out duplicate `SourceSatCurrent' block
2013-12-31 16:08:29 +01:00
dwarning
85b072f2bb
devices/bsim3v32: remove duplicate `DrainSatCurrent' block
2013-12-31 16:08:28 +01:00
dwarning
751c642db2
devices/bsim3v32: single out duplicate `DrainSatCurrent' block
2013-12-31 16:08:27 +01:00
dwarning
ecbaf5063a
devices/bsim3v32: correct `rdc' and `rsc' definition
2013-12-31 16:08:25 +01:00
dwarning
0aee9a07c4
devices/bsim3v32: whitespace cleanup
2013-12-31 16:08:21 +01:00
dwarning
6801f77cc1
devices/isrc: implement multiplier `m' for current sources
2013-12-31 16:08:20 +01:00
dwarning
08df80cebe
alternative geometry correction `del' for semiconductor capacitors
2013-12-31 16:08:14 +01:00
dwarning
661314a397
someone gives version=3.30e+00 in bsim models
2013-12-31 16:08:13 +01:00
h_vogt
f102bd985d
devices/ind: implement multiplier `m'
2013-12-31 16:08:09 +01:00
h_vogt
edce7230c2
resload.c: `m' already set in ressetup.c
2013-12-31 16:08:07 +01:00
h_vogt
025c0870d9
devices/res: whitespace cleanup
2013-12-31 16:08:06 +01:00
h_vogt
155e082641
devices/ind: whitespace cleanup
2013-12-31 16:08:05 +01:00
h_vogt
b63cae8798
devices/cap: whitespace cleanup
2013-12-31 16:08:03 +01:00
h_vogt
4a1cdf0ada
devices/ind: implement `tc1', `tc2' instance parameters
2013-12-31 16:08:02 +01:00
h_vogt
b50f9b97bb
devices/cap: implement `tc1', `tc2' instance parameters
2013-12-31 16:08:01 +01:00
h_vogt
0facd43319
move instance m-factor into ressetup
2013-12-31 16:07:59 +01:00
h_vogt
4b8f031971
resload.c, restemp.c: tc1, tc2 instance parameters override model parameters
2013-12-31 16:07:58 +01:00
dwarning
08beef9152
bsim3: fix incorrect version printout
2013-12-31 16:07:57 +01:00
dwarning
8cc75de0b5
this is the delvto/mulu0 instance extension to bsim3v3
2013-12-31 16:07:55 +01:00
dwarning
5f0a6aa0fb
devices/bsim3: whitespace cleanup
2013-12-31 16:07:54 +01:00
dwarning
ba0529cef0
devices/cap, devices/res: some parameter aliases for compatibility
2013-12-31 16:07:51 +01:00
dwarning
bef25a8b58
adapt the sense2 code to ngspice
...
workaround, make the opaque struct MatrixElement partially visible
this struct is private to the `sparse' world,
and lives in "maths/sparse/spdefs.h"
which can't be included here, because
it is incompatible to the rest of ngspice.
this is the same problem as in
ciderlib/oned/oneprint.c
ciderlib/twod/twoprint.c
2013-12-31 16:07:33 +01:00
dwarning
4ef874bdae
fix a wrong GMIN implementation
2013-12-31 16:07:30 +01:00
dwarning
f26d28b5bd
fix SENSDEBUG related code
2013-12-31 16:07:26 +01:00
h_vogt
89c4c16829
swload.c: reinstate the truncation code from swtrunc.c
...
which was removed in the following commit:
commit 0dae4607a0
Date: Wed Apr 25 18:28:20 2001 +0000
Added a patch to csw and sw from Jon Engelbert dealing with negative histeresys
2013-12-31 16:07:25 +01:00
h_vogt
8ac5f64500
txldefs.h: update some comments
2013-12-31 16:07:24 +01:00
Francesco Lannutti
581e0a6d11
fix sense2, which is unsupported code
2013-12-31 16:07:12 +01:00
Francesco Lannutti
1dd0535ecf
whitespace, align TSTALLOC calls in the setup routine of the MES model
2013-12-31 16:07:05 +01:00
Francesco Lannutti
0ea7a56e21
whitespace, align TSTALLOC calls in the setup routine of the JFET2 model
2013-12-31 16:07:04 +01:00
Francesco Lannutti
451294bcf5
whitespace, align TSTALLOC calls in the setup routine of the JFET model
2013-12-31 16:07:02 +01:00
Francesco Lannutti
42a78b0ac7
whitespaces
2013-12-31 16:07:00 +01:00
Francesco Lannutti
e63ba69888
remove a duplicate entry in the setup routine of the BSIM3SOIPD model
2013-12-31 16:06:59 +01:00
Francesco Lannutti
37f952f370
remove a duplicate entry in the setup routine of the BSIM3SOIDD model
2013-12-31 16:06:57 +01:00
h_vogt
bfb2eeebbe
dctran.c: better rounding for status report
2013-12-31 12:57:00 +01:00
h_vogt
df65fa28cf
separate progress report from having Windows GUI
2013-12-31 12:56:59 +01:00
h_vogt
5a44b3f7f8
fix `SetAnalyse()' re-declaration
2013-12-31 12:56:58 +01:00
h_vogt
d7e291c53a
HAS_WINDOWS --> HAS_WINGUI
...
allow compilation on MS Windows without GUI
2013-12-31 12:56:57 +01:00
h_vogt
c15608c903
unique modtab for each circuit, store in ckt structure
2013-12-31 12:56:38 +01:00
rlar
3ea7a23394
fix bug `#233 cktdojob: Uninitialized variable: ANALmaxnum'
...
this is WANT_SENSE2 specific
http://sourceforge.net/p/ngspice/bugs/233/
2013-12-31 12:56:36 +01:00
rlar
14ae087ec5
fix bug `#232 soi3cap.c: wrong array index alpha_args[2]'
...
though incorrect, this didn't lead to misbehavior.
http://sourceforge.net/p/ngspice/bugs/232/
2013-12-31 12:56:36 +01:00
rlar
8a154a7a9a
use SP_VOLTAGE instead of literal value `3'
...
(grep "git --no-pager grep -nH -e '->[ \t]*type.*[0-9]'")
2013-12-31 12:56:29 +01:00
rlar
b3847817a1
retire #define NODE_VOLTAGE, use SP_VOLTAGE instead
...
(grep "git --no-pager grep -nH -e '\\(SP_\\|NODE_\\)\\(VOLTAGE\\|CURRENT\\)'")
2013-12-31 12:56:22 +01:00
dwarning
d823272a1b
jfet: new noise model selector nlev=3 for correct noise in non-saturated region
2013-12-31 12:54:45 +01:00
dwarning
ef2614d014
jfet: whitespace cleanup
2013-12-31 12:54:44 +01:00
rlar
4184aa8c10
cleanup, use array operator
...
checked for object file invariance on linux with
./configure --enable-debug=no --enable-maintainer-mode --with-readline=yes --enable-cider --enable-ndev --enable-pss --enable-xspice
2013-12-31 12:54:43 +01:00
rlar
6c8f002eea
unify #ifndef include wrapper
2013-12-31 12:54:32 +01:00
rlar
8cafeed8f0
rename #ifndef include wrapper CKT_H
2013-12-31 12:54:30 +01:00
rlar
c377b7a6b3
avoid leading underscore in preprocessor macros
2013-12-31 12:54:27 +01:00
Francesco Lannutti
d448378f58
Fixed a memory leak in dcpss.c on the "err_conv" array
2013-01-12 14:10:21 +01:00
dwarning
752ab78bd8
b4soinoi.c: Correct the flicker noise model with device multiplier
2013-01-01 17:29:02 +01:00
rlar
d6354598b9
fix commit "update hisim to version 2.7.0"
...
missing #include "ngspice/config.h"
thats required for consistent interpretation of the type
struct IFdevice
from ngspice/ifsim.h
included from ngspice/devdefs.h
(invisible XSPICE definition leading
to different size and layout of this struct)
2012-12-31 11:26:20 +01:00
h_vogt
82c5d5b3be
dcpss.c: Allow XSPICE usage without excessive debug message
2012-12-30 15:34:24 +01:00
h_vogt
0ecd633334
dcpss.c : compatibility to MS Visual Studio C
...
vngspice.vcproj, config.h: add PSS to Vc project
2012-12-28 21:19:20 +01:00
Stefano Perticaroli
79bffc78a1
next version of PSS2
...
which was reviewed and rewritten on branch `PSS-2-try-to-rebase+4'
by Stefano Perticaroli and Francesco Lannutti
2012-12-28 18:15:37 +01:00
rlar
0be61b3e5a
remove PSS2
2012-12-28 18:10:05 +01:00
h_vogt
1b4c17a464
rename spicelib/parser/inp.h to inpxx.h
...
since we have another "inp.h" in src/frontend
2012-12-27 14:25:43 +01:00
Francesco Lannutti
574d39e29c
remove almost empty src/maths/ni/nipred.h
2012-12-25 02:27:04 +01:00
dwarning
5dd6351773
distclean and maintainer-clean shall remove generated Makefile.am files in adms directories
2012-12-25 16:41:57 +01:00
Francesco Lannutti
e27d43cd0c
remove empty src/maths/ni/*.h include files
2012-12-24 11:28:30 +01:00
h_vogt
2a9723e06d
inpdpar.c: remove memory leak
2012-12-22 20:20:00 +01:00
h_vogt
8a1cec25a5
vsrc, isrc TRNOISE: allow repeated calls to 'tran'
2012-12-22 17:57:31 +01:00
h_vogt
237fd538d1
cktntask.c: remove meory leak
2012-12-22 10:39:15 +01:00
h_vogt
8b86617e2d
isrcload.c: remove memory read beyond array boundary
2012-12-18 23:22:45 +01:00
rlar
e67e9da202
inperror.c, release errMsg when it has been consumed
2012-12-15 21:51:59 +01:00
h_vogt
ba6dd7b1af
main.c, inperror.c: unify errMsg
2012-12-15 20:03:57 +01:00
h_vogt
07ec7bd412
inperror.c: indentations
2012-12-15 19:51:56 +01:00
dwarning
0f2794267c
jfet model temperature extension, tcv and bex parameter
2012-12-04 20:58:01 +01:00
rlar
83e3100917
remove unused variables
2012-12-01 16:05:20 +01:00
rlar
b4b4e63611
hisimhv1, avoid warnings
2012-12-01 16:05:20 +01:00
h_vogt
b216db8ffd
cplsetup.c: indentations etc.
2012-12-01 13:32:27 +01:00
h_vogt
d747f0de50
cplsetup.c: remove memory leaks
2012-12-01 13:28:28 +01:00
rlar
b45c4ea78b
ltraacct.c, shortcutting the bug fix
...
use following fact at the artificial timestep time[-1]
voltage[-1] === voltage[0]
to shortcut the expressions
2012-12-01 11:00:14 +01:00
rlar
e4cc63417b
ltraacct.c, bug fix
...
reported by Gary Hennigan
on tracker
http://sourceforge.net/tracker/index.php?func=detail&aid=3591132&group_id=38962&atid=423915
access to uninitialized memory,
trying to acquire the "time" of a projected auxiliary timestep in the past.
now using the following auxiliary timestep t[-1]
voltage(t[-1]) === voltage(t[0])
and
t[-1] === t[0] - (t[1] - t[0])
the details are not understood,
but thats certainly better than accessing uninitialized memory.
2012-12-01 10:38:35 +01:00
dwarning
51ec28d174
hisimhv update to version 1.2.3
2012-11-26 23:17:11 +01:00
dwarning
c1705e32ae
change model name from hisimhv to hisimhv1
2012-11-25 17:59:50 +01:00
dwarning
67aaf6a26e
rename directories hisimhv --> hisimhv1
2012-11-25 17:52:46 +01:00
dwarning
79119b3372
update hisim to version 2.7.0
2012-11-21 20:36:52 +01:00
Francesco Lannutti
0d0426e05c
b3ld.c, b4ld.c, b3v32ld.c: charge computation for MODEDCTRANCURCE instead of MODEDC
...
this is a fix for commit:
b3ld.c, b4ld.c, b3v32ld.c: enable capacitance calculation during dc sweep
2012-11-21 19:30:43 +01:00
dwarning
b7080fdbb7
make the level switch compatible for HiSIM2 and HiSIMHV
2012-11-07 11:35:51 +01:00
dwarning
13e1a7a5b9
rm whitespaces
2012-11-07 11:33:07 +01:00
Francesco Lannutti
1209a5b025
Makefiles, drop some CVS remnants
2012-11-06 19:18:54 +01:00
rlar
ff2138b186
hisim2, bug fix, a numerical problem in the hisim2 and hisimhv models
...
First seen when compiled with gcc-4.6.2 -g -O1
The macro `Fn_SZ' which boils down to
1/2 * (x + sqrt(x*x + c*c))
was used in a context where a negative result
blew up the following computations.
(used to compute `Egidl', which is used to
compute exp(-1 / (Egidl + small_constant)))
For large negative values of x the computation
boils down to
1/2 ( x + almost(|x|) )
where the summands almost cancel each other,
sometimes yielding a small negative result.
small_constant was too small to avoid a big
result for -1/(Egidl + small_constant)
yielding an `inf' during the exp() computation,
which was later multiplied with a `0'
yielding a NaN,
which was carried forward
during the rest of computations.
Because the error of the cancellation scales
with the magnitude of x, no larger `small_constant'
could have avoided the problem.
Presumably the problem was amplified
by a mixture of precisions (double versus extended float)
of intermediate values.
(the program wasn't compiled for sse)
( x was -2.812500e+06,
c was 1.000000e-02,
Fn_SZ result was -1.853095e-11
thus the cancellation remainder
was of relative size
6.6e-18
which is approximately
2^-57
and thus more accurate
as a `double float' could have delivered
)
2012-11-01 23:04:51 +01:00
rlar
0c0f21faaf
hisim2, use TMALLOC, funcall, and NULL casts
2012-11-01 22:53:43 +01:00
rlar
a7a2ff0f7b
hisim2, fix NevalSrc(), Nintegrate() redeclaration
2011-05-22 10:16:08 +00:00
Francesco Lannutti
08ec219417
remove all .cvsignore files
2012-10-26 18:30:14 +02:00
Francesco Lannutti
1dc70189a7
remove compilation warnings (type casts)
2012-10-26 18:04:44 +02:00
Francesco Lannutti
d8b2ac56a3
rename "bsim3soi" device to "bsimsoi"
2012-10-26 17:56:59 +02:00
rlar
2142d39506
remove adms3 #2/2, files
2012-10-25 18:54:09 +02:00
rlar
ba131a5077
remove adms3 #1/2, code
...
due to license issues, and with the aim to approach the next
ngspice release 25
we have to move this over to a development branch
2012-10-25 18:54:09 +02:00
dwarning
e75fdab962
hisim2 update to version 2.6.1
2012-10-24 08:54:31 +02:00
Francesco Lannutti
fd4c492562
white space changes
2012-10-22 23:06:25 +02:00
Francesco Lannutti
5f34eb2729
white space changes
2012-10-22 23:06:25 +02:00
Francesco Lannutti
c23bd59c44
removed ancient PARALLEL_ARCH feature
...
removed variables
ARCHme
ARCHsize
removed functions
SMPcombine()
SMPcCombine()
CKTpartition()
removed files
spcombin.c
cktpartn.c
removed struct slots
STATcombineTime
STATtranCombTime
STATacCombTime
GENowner
<MODEL>owner
2012-10-22 23:06:25 +02:00
Francesco Lannutti
cb0ff8049a
white space changes
2012-10-22 23:06:25 +02:00
Francesco Lannutti
3342f58149
bsim3v1/ChangeLog, bsim4v4/ChangeLog: cleanup
2012-10-22 23:06:25 +02:00
rlar
a394d79c56
use utf-8 encoding
2012-10-20 21:27:15 +02:00
rlar
99b0e78c84
DCtrCurv(), fix a memory leak
2012-10-17 19:39:30 +02:00
rlar
eb931dc01a
cleanup, ngspice/config.h is already in ngspice/ngspice.h, #2/2
2012-10-06 12:12:17 +02:00
rlar
11579d9369
cleanup, ngspice/config.h is already in ngspice/ngspice.h, #1/2 (easy ones)
2012-10-06 12:12:08 +02:00
h_vogt
7d82367666
b3ld.c, b4ld.c, b3v32ld.c: enable capacitance calculation during dc sweep
2012-10-03 14:28:19 +02:00
h_vogt
705e130868
b3v32.c: make additional parameters accessible by @m1[par]
2012-10-01 23:03:41 +02:00
h_vogt
fe828c5081
bsim3, make additonal parameters accessible with @m[par]
2012-09-30 23:49:18 +02:00
dwarning
2506fe3858
changed the #include order - ngspice.h must be first
...
because icc complains about declaration visibility of mmsghdr struct
2012-09-29 20:44:12 +02:00
dwarning
ebfeaf72f1
bjttemp.c: prevent uninitialized variables
2012-09-29 17:57:35 +02:00
rlar
119be60fdc
polish a very old and unused artifact in WANT_SENSE2
2012-09-27 20:43:27 +02:00
h_vogt
e096101133
ifeval.c: reduce fudge factor for div and atanh
2012-09-26 21:00:40 +02:00
h_vogt
68c4de76b7
new option noopac, don't do op simulation before ac if circuit is linear
...
May simplify ac simulation of passive RLC networks
(No need to add series resistors in Ls, allows to C inseries)
2012-09-26 16:59:59 +02:00
rlar
71240d19be
free spice_init_devices() allocated memory in com_quit()
2012-09-21 21:19:44 +02:00
dwarning
fb23e1f024
correct the diode temperature model
2012-09-20 21:06:34 +02:00
h_vogt
9f8c73d271
cktdest.c: reset for XSPICE allocated memory (not yet complete)
2012-09-07 23:50:38 +02:00
h_vogt
9de9336581
cktload.c, indentations
2012-09-02 16:11:46 +02:00
h_vogt
417d109764
resask.c: avoid segfault if @R[i] is asked before analysis is run
2012-08-27 00:12:14 +02:00
h_vogt
9eaff645f5
vectors.c, resask.c: indentation
2012-08-26 23:32:21 +02:00
dwarning
5ca213b481
part of temperature level=3 model
2012-08-18 21:10:48 +02:00
rlar
be183407cd
cleanup (checked for code invariance)
2012-08-15 19:18:15 +02:00
rlar
0beb95757f
cancer of the semicolon
2012-08-07 21:20:36 +02:00
rlar
d50ffdd987
swallow warnings
2012-08-06 19:50:23 +02:00
dwarning
2516a118a3
indentation
2012-08-04 16:24:38 +02:00
h_vogt
b85f6bbc7d
controlled_exit() instead of exit()
2012-07-31 17:54:51 +02:00
h_vogt
d793dd6a61
variable xtrtol may override the XSPICE reduction of trtol
2012-07-29 12:53:31 +02:00
dwarning
3c3ba4c731
inpgmod.c: correct the range check to prevent overlap
2012-07-28 13:44:33 +02:00
dwarning
fd85e8fd42
indentation
2012-07-28 13:39:00 +02:00
h_vogt
20429eec4d
message "OpenMP: %d threads are requested..." removed
2012-07-25 23:04:13 +02:00
rlar
9b34d99e51
emphasize the adms3 `U' device hijack
2012-07-07 20:13:05 +02:00
rlar
cb0a48801d
introduce AM_CFLAGS = $(STATIC)
2012-07-07 14:51:39 +02:00
dwarning
c9b729032d
no double count of area for capacitances
2012-07-04 22:41:56 +02:00
dwarning
dcc22ada60
new scalable diode model including tunnel component
2012-07-04 08:14:33 +02:00
dwarning
4a75ce744d
dioload.c, diosetup.c, correct knee current parameter defaults
2012-06-25 07:43:27 +02:00
dwarning
a7ffb7d69f
dio/dioload.c, whitespace change
2012-06-25 07:31:03 +02:00
rlar
f661a1032d
bug fix, ltra and tra, (initial conditions)
...
reported in
https://sourceforge.net/tracker/?func=detail&atid=423915&aid=3535544&group_id=38962
bug was introduced in this commit:
Date: Wed Dec 31 17:02:46 2003 +0000
Cleaned up LTRA, TRA and URC code and updated DEVICES file.
2012-06-16 13:06:28 +02:00
dwarning
9648238ed7
call omp_set_num_threads once in central place instead in model routines
2012-06-15 23:14:08 +02:00
dwarning
9ea4897d06
use unified macro USE_OMP and nthreads is set in setup once - not in load as clause
2012-06-13 19:15:27 +02:00
h_vogt
7bfd4edefc
FABS() --> fabs()
2012-06-13 19:15:23 +02:00
h_vogt
ff11ccda20
In B source the argument to 'log' may be 0 upon start of simulation, allow recovery like in function 'ln'
2012-06-13 19:15:22 +02:00
h_vogt
0a087a47c8
enable B source debugging in behavioral models, exit on error if variable strict_errorhandling is set
2012-06-13 19:15:21 +02:00
dwarning
1c4f960b45
update `bsim3soi' aka `b4soi'
2012-06-13 19:15:07 +02:00
h_vogt
c78d71c363
.nodeset all = value added to set all voltage nodes at once
2012-06-12 21:26:31 +02:00
rlar
a34cbdbeab
tiny cleanup
2012-06-12 21:26:30 +02:00
rlar
f65cdd2f84
Changed line ending of several files from DOS to UNIX
2012-06-12 21:26:29 +02:00
rlar
3d34b22ebf
fix file modes
2012-06-12 21:26:29 +02:00
rlar
14f884729c
raw_write() always fopen("wb"), even on windows use "\n" line termination
2012-06-12 21:26:29 +02:00
rlar
e598598d70
Reverting "NUMDdump(): add binary mode"
...
This reverts commit 40e8f868da
2012-06-12 21:26:29 +02:00
rlar
d8105873db
remove error.h, use fteext.h for controlled_exit()
2012-06-12 21:26:29 +02:00
h_vogt
40e8f868da
NUMDdump(): add binary mode
...
fopen() with wb
write operating point (external state) for true binary output
2012-06-12 21:26:27 +02:00
h_vogt
d65259fd45
error return only if variable `error' is set
2012-06-12 21:26:27 +02:00
h_vogt
ca8e9b2d2d
prevent false outputs of @dev[param], when not defined in ac simulation
2012-06-12 21:26:27 +02:00
h_vogt
a820a7cba8
Independent variable `temper' now returns the temperature in degree C
2012-06-12 21:26:27 +02:00
rlar
58b0614467
fix memory leaks in ASRC and in INPgetTree()
...
implement a reference counter `usecnt' for the elements
of the `INPparseTree'
2012-06-12 21:26:26 +02:00
rlar
4fb75fbd51
INPgetTree(), express the live range of some globals
2012-06-12 21:26:26 +02:00
rlar
d21b3a3cd5
mkfnode(), minor rewrite
2012-06-12 21:26:26 +02:00
rlar
7641450b29
inpptree.c, fix differentiation of PTF_FLOOR PTF_CEIL and PTF_POW
2012-04-05 21:55:44 +02:00
rlar
149345068f
update bison generated files
2012-04-05 21:33:54 +02:00
rlar
3bb2bd8e05
fix memory leak in PTparse()
2012-04-05 21:30:41 +02:00
rlar
9a75774e36
inpptree.c, polish comments
2012-04-05 21:24:48 +02:00
rlar
42653f7c3d
inpptree.c, fix premature memory allocation
2012-04-05 21:24:25 +02:00
Michael Woodworth
3375e1b976
fix a memory leak in parse_line()
...
This has a HUGE affect on memory usage
2012-04-05 20:49:09 +02:00
h_vogt
8b780fa42b
bug_fix: R,L,C instantiations, tc1, tc2, numbers followed by `:'
...
Ternary function was not recognized in R, C, or L lines
if no voltage or current node was part of the expression,
because then B-Source is not used.
In these cases now inp_fix_ternary_operator_str() is called explicitly.
tc1, tc2 were sometimes recognized falsely,
if part of a token e.g. tc1end.
R, C, and L models are never commented out,
because their names may be token no. 4 or 5 in an R, C, or L line,
and will not be recognized if 5.
INPevaluate() will now correctly evaluate a number if followed by ':'
(number may be part of the ternary function).
2012-03-31 23:42:37 +02:00
dwarning
1938041e10
1. Correct the list of binable models. 2. Fix a problem with wrong MOS level entries.
2012-03-01 20:33:06 +01:00
dwarning
70e9907415
Add reciprocal temperature behaviour for B sources
2012-02-19 12:55:54 +00:00
h_vogt
dffe4ed156
command mdump
2012-02-19 10:23:56 +00:00
dwarning
862f10dce3
Add temperature coefficients for B sources
2012-02-11 19:52:04 +00:00
dwarning
d9561123f9
Add temperature coefficients for B sources
2012-02-11 19:45:25 +00:00
rlar
848b0c2158
update bison generated files
2012-02-11 08:18:57 +00:00
rlar
6ea91d2834
upgrade INPgetTree()
2012-02-11 08:17:12 +00:00
dwarning
d041b7b503
Typo in parameter name
2012-02-10 16:12:39 +00:00
rlar
f38aa32b5f
adms3, fix some types
2012-02-07 18:43:57 +00:00
rlar
f70fd8ea1b
use type `runDesc'
2012-02-07 17:43:07 +00:00
rlar
d5f6bcbedf
drop some more casts
2012-02-06 20:11:10 +00:00
rlar
d03d5dfa2d
drop some casts
2012-02-06 20:07:43 +00:00
rlar
a716572233
rewrite INPlookMod(), return INPmodel*/NULL instead of int 1/0
2012-02-06 17:49:19 +00:00
rlar
f285dd0aa8
use strchr() instead of index()
2012-02-06 17:46:33 +00:00
dwarning
d2f9fe7379
tlevc=1 correction
2012-01-30 19:57:57 +00:00
dwarning
0511b35114
tlevc=1 correction
2012-01-24 22:47:06 +00:00
rlar
49815fce99
bug fix, a numerical problem in the hisim2 an hisimhv models
2012-01-15 17:19:35 +00:00
rlar
7ad22c41f4
add missing .cvsignore file
2012-01-13 17:21:57 +00:00
rlar
f7f454c0a1
bug fix, fix the guard for device generated internal nodes (via CKTmkVolt())
2012-01-07 18:38:05 +00:00
rlar
30abcd3c32
bug fix, CKTcurJob, make sure this is either up do date or NULL
2012-01-07 10:53:10 +00:00
h_vogt
60adbdc716
bjt missing model message
2012-01-05 22:25:18 +00:00
rlar
4aa17534fb
xspice bug fix, invoke EVTsetup(ckt) only when `reset'
2012-01-02 13:04:14 +00:00
rlar
598238f46a
conditionally compile PSS analysis
2012-01-02 12:31:22 +00:00
h_vogt
7d4802c369
memory leak, struct bsim3v32SizeDependParam
2011-12-30 19:20:57 +00:00
h_vogt
7a2b51b485
memory leaks reduced
2011-12-30 18:54:44 +00:00
rlar
c7ddee5923
remove CVS `Id',`log' etc. keyword incantations
2011-12-30 15:52:45 +00:00
h_vogt
7e96dcc639
remove memory leaks
2011-12-30 08:59:03 +00:00
h_vogt
127213bff0
reduce memory leaks for run - reset
2011-12-29 19:31:14 +00:00
h_vogt
fe11eae0ce
reduce memory leaks
2011-12-28 14:11:08 +00:00
h_vogt
829fbafb85
reduce memory leaks
2011-12-28 12:43:40 +00:00
rlar
d3c3741f43
#4/6 config.h --> ngspice/config.h, AM_CPPFLAGS
2011-12-27 12:07:52 +00:00
rlar
afa1371746
#3/6 config.h --> ngspice/config.h, AM_CPPFLAGS
2011-12-27 12:05:51 +00:00
rlar
4ca58067a2
#2/6 config.h --> ngspice/config.h, #include's
2011-12-27 11:33:01 +00:00
h_vogt
75767fcc3d
floor(), ceil() added
2011-12-26 11:34:21 +00:00
rlar
af03c472af
adms3, use -ldl instead of -lltdl, fix include path
2011-12-17 13:45:39 +00:00
rlar
0e1f5a29f7
type fixes
2011-12-17 13:41:04 +00:00
rlar
f7ea50c287
new: configure --enable-adms3
2011-12-15 20:44:45 +00:00
r29173
47aea417dd
fixed pointer assignment: from SPICEadmsdev* to SPICEdev*
2011-12-15 20:24:22 +00:00
r29173
bab7e17a6a
added SPICEadmsdev - a super structure of SPICEdev used to build dynamic device libraries
2011-12-15 15:34:50 +00:00
r29173
83b3487c9c
renamed premint.xml to prengspice.xml.
2011-12-14 22:21:58 +00:00
r29173
66b6674f6b
xml file that does preformating of verilog files.
2011-12-14 22:17:58 +00:00
r29173
65458e3c80
add routine load_vadev for dynamic loading of modules.
2011-12-14 22:01:10 +00:00
r29173
d674333db9
add dynamic loading of models. shared libs should be libNAME.so.
2011-12-14 21:50:15 +00:00
r29173
102cf08670
use u instance as dynamically defined models in --adms mode
2011-12-14 21:42:02 +00:00
rlar
0b5042e7da
remove CVS `Id',`log' etc. keyword incantations
2011-12-13 19:57:45 +00:00
rlar
7d75ebcb81
unify OUTpBeginPlot() invocation
2011-12-13 19:10:34 +00:00
rlar
c09058038c
unify OUTpBeginPlot() usage of ckt->CKTcurJob
2011-12-13 19:08:15 +00:00
rlar
a7ac45c9cb
rename various analysis vars --> `job'
2011-12-13 18:04:28 +00:00
rlar
dea9c539c2
auxiliary define `job' --> local variable `job'
2011-12-13 18:02:14 +00:00
rlar
ef04192ec0
auxiliary define (ANALYSIS*) anal --> `job'
2011-12-13 18:00:23 +00:00
rlar
5333ab2a4b
switch --adms3 over to the new adms3va directories
2011-12-13 17:48:28 +00:00
rlar
206769d241
undo `2011-12-12 Laurent Lemaitre' which broke --adms in favour of --adms3
2011-12-13 17:45:57 +00:00
rlar
5449731860
copy old amds .va files to a new directory `adms3va'
2011-12-13 17:40:29 +00:00
rlar
0779816dbb
remove CVS `Id' and `log' keyword incantations
2011-12-12 21:59:21 +00:00
r29173
55a87d1b81
Make veriloga models compliant with Language Reference Manual. They will not compile with --adms flag.
2011-12-12 21:02:18 +00:00
r29173
e117c389b3
Set name of model C routines unique - make linker happy.
2011-12-12 20:46:25 +00:00
rlar
88374b8c70
#4/4 #include <ngspice/...> --> #include "ngspice/..." for adms3
2011-12-11 18:17:39 +00:00
rlar
225f5aef19
#3/4 #include <ngspice/...> --> #include "ngspice/..." for adms
2011-12-11 18:16:09 +00:00
rlar
10346e055c
#1/4 #include <ngspice/...> --> #include "ngspice/..."
2011-12-11 18:05:00 +00:00
rlar
87d9383971
use a macro to update ckt->CKTstat->STAT..
2011-12-11 14:50:18 +00:00
rlar
fd9dec37a3
auxiliary define `job' --> local variable `job'
2011-12-11 11:37:07 +00:00
rlar
f8f4e32875
auxiliary define (ANALYSIS*) ckt->CKTcurJob --> `job'
2011-12-11 11:34:38 +00:00
rlar
56d000f77b
variable rename `sen_info' `cv' `pzan' `sen_info' --> `job'
2011-12-11 11:31:37 +00:00
rlar
a463c761d8
similiarity dctran.c versus dcpss.c
2011-12-11 11:28:20 +00:00
r29173
e8a55e807f
add dynamic loading feature
2011-12-10 09:05:35 +00:00
rlar
513bf853a9
cleanup, aiming for higher similarity of dctran.c and dcpss.c
2011-12-03 10:40:23 +00:00
rlar
04c0e0c6b5
swallow warnings in hisimhv and hisim2 code
2011-10-31 10:51:33 +00:00
rlar
e6c7a506ec
Fix the source/drain typo for overlap cap's, for mos2 as well
2011-10-31 10:48:27 +00:00
dwarning
304417112b
Fix the source/drain typo for overlap cap's
2011-10-30 21:03:38 +00:00
dwarning
e3fa1bf7b4
Update to actual hisimhv model version 1.2.2
2011-10-30 20:59:47 +00:00
rlar
0589d22cf9
update bison generated files
2011-10-16 15:25:02 +00:00
rlar
c139875468
bug fix, allow special nodenames "/Node" and "Node-4" in `B' expressions
2011-10-16 15:22:56 +00:00
dwarning
cd639a007c
psp102 module name change
2011-08-28 09:11:47 +00:00
dwarning
15c4c12755
mextram name change
2011-08-24 19:27:51 +00:00
rlar
41c14d7df4
adms, fix an extra backslash
2011-08-24 16:12:03 +00:00
rlar
aaf3f9da1b
prototypes, and avoid a NULL dereference when PZDEBUG is active
2011-08-21 18:04:33 +00:00
h_vogt
4cbfbad8b5
type long --> int
2011-08-21 10:43:07 +00:00
rlar
1a9ef50edf
#7/7 use a subdirectory "ngspice" for includes to create a uniq namespace
2011-08-20 17:51:14 +00:00
rlar
884ed12334
#6/7 use a subdirectory "ngspice" for includes to create a uniq namespace
2011-08-20 17:49:37 +00:00
rlar
d26015586c
#1/7 use a subdirectory "ngspice" for includes to create a uniq namespace
2011-08-20 17:27:09 +00:00
rlar
f360d06d18
update bison generated files
2011-08-13 16:10:41 +00:00
rlar
830829ba56
bison files, swallow warnings
2011-08-13 16:08:16 +00:00
rlar
cca4047f8f
adms, fix parallel execution when using make -j
2011-08-12 19:30:56 +00:00
rlar
afb4ad7921
pull two -adms3 fixes into -adms
2011-08-12 15:18:41 +00:00
h_vogt
890d049a5b
uic to end of line in pss
2011-08-09 19:58:40 +00:00
h_vogt
f6921573ae
spaces and braces
2011-08-09 19:37:23 +00:00
pnenzi
5ba0b8b86c
Statistics patch: added netlist loading and parsing time in acct command.
...
Added devhelp command to obtain information about available devices and device parameters
Added inventory command to print the number of instances per device.
2011-08-09 18:41:36 +00:00
rlar
08b2c8d111
reduce scope of variable `temp'
2011-08-09 08:34:44 +00:00
rlar
cf2cc37fca
reduce scope of variables `fproj' and `err'
2011-08-09 08:33:43 +00:00
rlar
a92f6f369d
reduce scope of variable `tv_01', and use `MAX'
2011-08-09 08:32:40 +00:00
rlar
11e38ee19b
remove unsed variable `cont_1'
2011-08-09 08:31:39 +00:00