Commit Graph

799 Commits

Author SHA1 Message Date
Markus Mueller 6ff354c4a7 Squashed commit of the following:
commit 4939bc89934899c16dcd14e11839bedd3c289ee9
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Oct 25 22:04:16 2020 +0100

    added cppduals cleanly

commit 834cbc5aba9c1d5470a6f838161703a657d12810
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Oct 25 22:03:40 2020 +0100

    remove cppduals

commit 69b922cef2
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Oct 25 21:59:00 2020 +0100

    cppduals in new diretory

commit 4337cc0e33
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Oct 25 21:49:52 2020 +0100

    hicum license cleaning

commit ba439dfdf5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Oct 17 13:19:05 2020 +0200

    moved sh stamp, working

commit 29028ff34d
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Oct 17 12:56:54 2020 +0200

    forgot something

commit 5743d2b551
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Oct 17 12:54:35 2020 +0200

    rth stamp moved (no yet working)

commit 42d61da3eb
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Oct 17 11:54:10 2020 +0200

    Hicum C/C++ code now under 3-clause BSD

commit 5088e869ea
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Oct 17 11:44:57 2020 +0200

    cleaned comments

commit 18fc66e71b
Author: dwarning <dwarning>
Date:   Sat Sep 12 19:48:11 2020 +0200

    rm some less useful comments - no code change

commit 861f286fda
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Sep 8 15:45:46 2020 +0200

    clean hicum2ask

commit a52274ba7d
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Sep 8 15:43:18 2020 +0200

    fix nqs transient

commit fa7f96b4af
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Sep 7 13:17:42 2020 +0200

    fix HICUM csu readin

commit 23183f10b6
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Aug 8 15:35:32 2020 +0200

    added it to Hicum states -> noise

commit 020fc70607
Author: dwarning <dwarning>
Date:   Tue Aug 4 09:18:05 2020 +0200

    change inst to here

commit 33d06d9732
Author: dwarning <dwarning>
Date:   Tue Aug 4 09:12:37 2020 +0200

    reintroduce iavl and correct ibici shot noise

commit 7251265231
Author: dwarning <dwarning>
Date:   Tue Aug 4 08:59:26 2020 +0200

    more reasonable plot scaling

commit 67919b9bd8
Author: dwarning <dwarning>
Date:   Tue Aug 4 08:56:04 2020 +0200

    yet another try for flicker noise scaling

commit 689177a55f
Author: dwarning <dwarning>
Date:   Mon Aug 3 10:41:44 2020 +0200

    correct multiplier scaling for rsu

commit 58b89af40a
Author: dwarning <dwarning>
Date:   Sun Aug 2 18:57:14 2020 +0200

    prevent division by 0 for rbi

commit a4e7eb5b6c
Author: dwarning <dwarning>
Date:   Sun Aug 2 18:25:51 2020 +0200

    fix instance multiplier application for noise

commit 36862a7bc6
Author: dwarning <dwarning>
Date:   Fri Jul 31 21:06:13 2020 +0200

    white spaces

commit 8a0504bb13
Author: dwarning <dwarning>
Date:   Fri Jul 31 18:32:45 2020 +0200

    add a transient analysis example

commit c1f0348697
Author: dwarning <dwarning>
Date:   Fri Jul 31 18:31:10 2020 +0200

    still problems in different terminal configurations

commit 26e026e4c8
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 31 14:36:34 2020 +0200

    fix stamp for Cth

commit dd84b1fcd3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 31 14:22:16 2020 +0200

    fix bug in Cscp stamp

commit 1f13d2526f
Author: dwarning <dwarning>
Date:   Fri Jul 31 11:29:25 2020 +0200

    visualc mod - no impact to hicum

commit cff491feca
Author: dwarning <dwarning>
Date:   Fri Jul 31 10:59:52 2020 +0200

    wrong and twice assignment

commit 4a9dc52037
Author: dwarning <dwarning>
Date:   Fri Jul 31 10:00:20 2020 +0200

    twice assignment

commit c76bcc7cca
Author: dwarning <dwarning>
Date:   Thu Jul 30 12:36:30 2020 +0200

    delete base nodes from inner to outer

commit 4a472a3451
Author: dwarning <dwarning>
Date:   Mon Jul 27 15:34:15 2020 +0200

    correct the switch for Vbici limiting

commit f47bc449b3
Author: dwarning <dwarning>
Date:   Sun Jul 26 21:56:48 2020 +0200

    few parameter adaptions to version 2.40

commit 5901ec2902
Author: dwarning <dwarning>
Date:   Sun Jul 26 16:37:44 2020 +0200

    sign for CONSTCtoK must be +

commit 556171a905
Author: dwarning <dwarning>
Date:   Sun Jul 26 16:36:15 2020 +0200

    rbi is 0 if nodes are collapsed

commit 724887f32c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 26 12:45:15 2020 +0200

    add ngspice Temperature clipping in HICUM

commit d735f445e5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 26 12:13:39 2020 +0200

    removed rbi fallback, removed rth_de

commit 162b174acd
Author: dwarning <dwarning>
Date:   Sat Jul 25 12:31:05 2020 +0200

    add few small-signal parameter

commit 5afb2dc8c8
Author: dwarning <dwarning>
Date:   Fri Jul 24 16:49:11 2020 +0200

    reduce unnecassary inits

commit 0efc047f5f
Author: dwarning <dwarning>
Date:   Fri Jul 24 16:03:10 2020 +0200

    few typos and comments

commit 14a5cd873b
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 24 11:25:51 2020 +0200

    remove rbi stamps if nodes collapsed finish

commit f5461183f3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 24 11:17:33 2020 +0200

    hicumL2 load -> remove stamp for rbi, if node BP BI collapsed

commit 00f51465e3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 24 11:07:58 2020 +0200

    finish cleaning

commit 019ef4e07e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jul 24 10:50:05 2020 +0200

    moving derivatives from _Tdev to _Vrth in a clean way (start)

commit 154036c09f
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jul 23 16:50:31 2020 +0200

    consistent derivative with Vrth/Tdev=> will rework this, I do not like
    this

commit 03c3efd762
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jul 23 16:22:46 2020 +0200

    finally: avalanche at very high T fix

commit 64704fd53e
Merge: a26b3ee2b f6db74ac5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jul 23 15:56:29 2020 +0200

    Merge remote-tracking branch 'origin/markus_dev' into markus_dev

commit a26b3ee2b2
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jul 23 15:56:17 2020 +0200

    start bugfix

commit f6db74ac50
Author: dwarning <dwarning>
Date:   Tue Jul 21 18:56:32 2020 +0200

    rm obsolete files

commit 9854038f2c
Author: dwarning <dwarning>
Date:   Tue Jul 21 16:48:56 2020 +0200

    allow periphal resistors and rbi default 0

commit 34f579c08f
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jul 21 13:05:54 2020 +0200

    fix bug node collapsing BI BP

commit 6f5627f441
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jul 21 11:48:22 2020 +0200

    node collapsing BI BP HICUM

commit 187d391383
Author: dwarning <dwarning>
Date:   Tue Jul 21 09:58:59 2020 +0200

    few corrections and reordering

commit 0fc39a424e
Author: dwarning <dwarning>
Date:   Mon Jul 20 19:36:15 2020 +0200

    unify nqs flag for setup/unsetup

commit 8944ad2e32
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 18 14:23:30 2020 +0200

    iavl_Vbiei changed sign back ...

commit cc9682f9e5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 18 14:05:12 2020 +0200

    HICUM limit for avalanche

commit 284583e0cc
Author: dwarning <dwarning>
Date:   Wed Jul 15 10:11:46 2020 +0200

    cleanup initial conditions to the traditional spice usage

commit c3cadb8de1
Author: dwarning <dwarning>
Date:   Wed Jul 15 08:57:03 2020 +0200

    rm unused files

commit 8bc687ddbe
Author: dwarning <dwarning>
Date:   Mon Jul 13 10:44:56 2020 +0200

    correct check6 init

commit 9250464ac1
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 12 14:00:46 2020 +0200

    fix bug in HICUM Qjci calculation, derivatives now more rigorous with
    dual numbers

commit 0fb86510aa
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 11 15:02:04 2020 +0200

    fix gmin in HICUM

commit 735339e288
Merge: fd5b7a648 1659190b2
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 11 14:45:08 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit fd5b7a6485
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 11 14:44:01 2020 +0200

    fix HICUM gmin

commit 1659190b21
Author: dwarning <dwarning>
Date:   Sat Jul 11 09:57:29 2020 +0200

    real node collapsing with slightly better results in qa test

    convergence problems in high current avalanche breakdown still exist

commit aaa94e5c10
Author: dwarning <dwarning>
Date:   Thu Jul 9 18:10:04 2020 +0200

    add hspice to qa

commit 6fe586cf9d
Author: dwarning <dwarning>
Date:   Thu Jul 9 17:26:28 2020 +0200

    relax convergence criteria for qa test

commit 127c2ca451
Author: dwarning <dwarning>
Date:   Thu Jul 9 14:02:48 2020 +0200

    correct loop stopping criteria

commit cfae080c1a
Author: dwarning <dwarning>
Date:   Wed Jul 8 18:02:13 2020 +0200

    examples now version 2.4.0

commit 7b099242da
Author: dwarning <dwarning>
Date:   Wed Jul 8 17:18:28 2020 +0200

    rm non qa file

commit 0c2ef2f7c4
Author: dwarning <dwarning>
Date:   Wed Jul 8 17:15:58 2020 +0200

    qa test is now version 2.4.0

commit e90939126d
Author: dwarning <dwarning>
Date:   Wed Jul 8 17:13:29 2020 +0200

    qa test is now version 2.4.0

commit 114aeee5c5
Author: dwarning <dwarning>
Date:   Wed Jul 8 17:12:05 2020 +0200

    now version 2.4.0

commit 0f33776513
Author: dwarning <dwarning>
Date:   Wed Jul 8 11:40:43 2020 +0200

    reactivate convergence check

commit 6f382c76d8
Author: dwarning <dwarning>
Date:   Wed Jul 8 11:02:30 2020 +0200

    rm old comments and artefacts

commit 5950a2fb03
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jul 8 09:51:03 2020 +0200

    example print for dual number

commit abab054352
Author: dwarning <dwarning>
Date:   Tue Jul 7 08:51:51 2020 +0200

    nqs must set after defaulting model parameters

commit 4c34e54c7b
Author: dwarning <dwarning>
Date:   Mon Jul 6 21:37:04 2020 +0200

    prevent false branch because of rounding error for flcomp

commit 4bb09b35c3
Author: dwarning <dwarning>
Date:   Sun Jul 5 22:16:28 2020 +0200

    clear separation between geometry and temperature scaling

commit 90ab76d876
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 5 18:14:08 2020 +0200

    fix comments in HICUM scaling

commit d7dd26880c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 5 18:03:23 2020 +0200

    forgot some parameters that depend on "area" and T, but are needed as
    model variables in load

commit 320a66c0a4
Merge: d78032109 b09edc706
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 5 17:27:20 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit d78032109f
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jul 5 17:26:45 2020 +0200

    HICUM scaling with "area" and "m" parameters.

commit b09edc706a
Author: dwarning <dwarning>
Date:   Sun Jul 5 17:10:51 2020 +0200

    must fallthrough because icVbe is after icVce

commit dbd99a33a5
Author: dwarning <dwarning>
Date:   Sun Jul 5 09:59:09 2020 +0200

    some useful examples to show hicum2 capabilities

commit ba1c2de06e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 4 20:21:38 2020 +0200

    added comment to IC vars

commit 6fce26437e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 4 20:03:13 2020 +0200

    remove hicum inital conditions that are not spice-like

commit aa283f40ef
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jul 4 19:55:58 2020 +0200

    added HICUM pole zero analysis

commit 2165afdf27
Author: dwarning <dwarning>
Date:   Fri Jul 3 17:39:03 2020 +0200

    another cut&paste error and typo

commit 8b680b0c28
Author: dwarning <dwarning>
Date:   Fri Jul 3 17:28:40 2020 +0200

    another cut&paste error

commit f1698c7a81
Author: dwarning <dwarning>
Date:   Fri Jul 3 15:42:37 2020 +0200

    add shot noise sources for it and ibiei

commit 966891d5f7
Author: dwarning <dwarning>
Date:   Fri Jul 3 14:39:31 2020 +0200

    correct multiplier for flicker noise and base-emitter source connection

commit 80e932424f
Author: dwarning <dwarning>
Date:   Fri Jul 3 14:27:52 2020 +0200

    cut&paste error

commit 61ee68c782
Author: dwarning <dwarning>
Date:   Thu Jul 2 21:05:58 2020 +0200

    few corrections in noise model

commit ad16be59ba
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jul 1 14:44:13 2020 +0200

    reorder code

commit e81b41c653
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jul 1 14:33:12 2020 +0200

    fix bugs HICHUM acload

commit 1d5f88e93d
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 28 11:51:10 2020 +0200

    fix bugs

commit bbb729ae8f
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 28 11:03:48 2020 +0200

    intermediate state

commit a95aade55a
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 27 20:16:37 2020 +0200

    fix derivative in NQS network

commit a54c52221c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 27 20:05:58 2020 +0200

    small fixes HICUM

commit 7407302d50
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 27 17:48:23 2020 +0200

    fix bug in HICUMacload

commit bb03c8f663
Merge: 1fa789874 e7d143e04
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 24 13:17:15 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit 1fa7898747
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 24 13:16:20 2020 +0200

    remove nqs from limit function and gmin

commit e7d143e044
Author: dwarning <dwarning>
Date:   Tue Jun 23 18:22:40 2020 +0200

    tk is not an alias parameter name

commit 75e3a4da64
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 23 16:24:59 2020 +0200

    protect nqs network

commit 1c36e997ba
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 23 15:44:46 2020 +0200

    nqs in ac

commit 524abe95f3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 23 15:21:27 2020 +0200

    NQS in acload

commit 0833f955ef
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 23 14:47:35 2020 +0200

    move cross-coupled charges from state vector to here struct

commit 03b4a87477
Author: dwarning <dwarning>
Date:   Mon Jun 22 11:52:42 2020 +0200

    prevent crash if tnode is given but she parameter not

commit 9ab20e2f35
Author: dwarning <dwarning>
Date:   Mon Jun 22 11:51:47 2020 +0200

    alias for tnom

commit 3140bedc3f
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 21 21:50:39 2020 +0200

    fix nqs

commit 8dfd2e5a4d
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 20 18:41:35 2020 +0200

    fix HICUM setup

commit f6e4bba9e3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 20 18:40:04 2020 +0200

    finish NQS for DC case

commit 21862cbdb9
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 20 17:55:01 2020 +0200

    first test ok ... modify state vector now

commit 1c5773292e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 20 17:45:57 2020 +0200

    first implementation of NQS, not tested

commit 4fd24db766
Author: dwarning <dwarning>
Date:   Fri Jun 19 22:12:49 2020 +0200

    external temp node has number 5

commit 8fb3f2ce9a
Merge: b7e4c39d8 5f4085d4a
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jun 19 19:05:31 2020 +0200

    Merge remote-tracking branch 'origin/markus_dev' into markus_dev

commit b7e4c39d80
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jun 19 19:03:46 2020 +0200

    fix unset t node HICUM

commit 5f4085d4a8
Author: dwarning <dwarning>
Date:   Wed Jun 17 20:34:02 2020 +0200

    unify self-heating switch

commit c927c32541
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 17 18:41:15 2020 +0200

    qaSpec with ads run

commit d05eaa744e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 17 17:38:50 2020 +0200

    added derivatives for NQS network

commit 88cf4bb925
Author: dwarning <dwarning>
Date:   Wed Jun 17 13:24:03 2020 +0200

    allow SHE also without external temperature node

    prevent crash with rth=0

commit 7161253342
Merge: a46cb231a e2bb25b12
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 16 17:33:41 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit a46cb231a0
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 16 17:32:20 2020 +0200

    tmp node to gnd in HICUM if no SH

commit e2bb25b125
Author: dwarning <dwarning>
Date:   Mon Jun 15 08:54:50 2020 +0200

    qaSpec guess for ads

commit bbde282b51
Author: dwarning <dwarning>
Date:   Mon Jun 15 08:33:17 2020 +0200

    typo 1D

commit 4e6deec579
Merge: 5da1d7031 6fbbeb06d
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 14 19:58:33 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit 5da1d7031c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 14 19:57:56 2020 +0200

    HICUMload transient part first review, small fixes

commit 96af16e673
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 14 18:53:49 2020 +0200

    gmin fix

commit 6fbbeb06d9
Author: dwarning <dwarning>
Date:   Sun Jun 14 11:05:12 2020 +0200

    complete device node request for temp node

commit eae118787e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 13 21:52:32 2020 +0200

    fix hicumACload singular matrix bug

commit 2a1f47e1e5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 13 20:29:04 2020 +0200

    cleaned

commit 7e5fdae917
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 13 20:19:51 2020 +0200

    refactor gmin in HICUM

commit 7aadd9af4a
Merge: f55f613c2 595e46447
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 13 19:32:02 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit f55f613c24
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat Jun 13 19:31:39 2020 +0200

    added dual numbers include in ngspice/include

commit 595e464479
Author: dwarning <dwarning>
Date:   Fri Jun 12 19:13:26 2020 +0200

    introduce version parameter to prevent warnings in qa test

commit 147bf5eb4a
Author: dwarning <dwarning>
Date:   Fri Jun 12 17:16:48 2020 +0200

    use standard include path configuration for external cppduals

commit 7a41174b5e
Author: dwarning <dwarning>
Date:   Thu Jun 11 18:22:42 2020 +0200

    add ads for qa test

commit 3942fc48ce
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jun 11 17:40:13 2020 +0200

    added charges for SHE in HICUMacload

commit 12fa8a8cf7
Author: dwarning <dwarning>
Date:   Thu Jun 11 15:34:06 2020 +0200

    resolve confusing naming of instance parameter structure

commit 7578aec2a8
Author: dwarning <dwarning>
Date:   Thu Jun 11 15:29:40 2020 +0200

    introduce version parameter to prevent warnings in qa test

commit b401428cdd
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 10 18:17:44 2020 +0200

    minor cleaning

commit 5d28b97fb5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 7 16:46:21 2020 +0200

    added SHE stamps for DC currents in HICUMacload

commit 9737dc7a5b
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 7 16:36:36 2020 +0200

    HICUM acload initial review

commit 6eefe34d56
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 7 13:58:24 2020 +0200

    add real part of AC matrix

commit 55e14e62e7
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 7 13:20:12 2020 +0200

    dirty fix iavl

commit 99a21e9f61
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun Jun 7 12:15:39 2020 +0200

    some minor modificaitons, avalanche current problems

commit 99f8c9a9ed
Merge: 17898981c 6b9f5647c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jun 5 10:27:08 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit 17898981cd
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri Jun 5 10:20:21 2020 +0200

    minor cleaning, fix derivative iavl

commit 6b9f5647ca
Author: dwarning <dwarning>
Date:   Thu Jun 4 18:23:10 2020 +0200

    first version for cmc qa check

commit 3f11d38774
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jun 4 16:37:09 2020 +0200

    implemented experimental rth direct evaluation

commit 40900da8bf
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Thu Jun 4 14:45:12 2020 +0200

    small correction

commit 7f1493bddb
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 19:25:35 2020 +0200

    minor changes, cleaning

commit 55367a44a5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 19:05:39 2020 +0200

    completed all del voltages

commit d32ff77aef
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 18:23:19 2020 +0200

    renaming variables for cleaner code

commit e4b4978368
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 18:17:49 2020 +0200

    adding derivatives of branches with respect to Vrth to the state vector

commit a6b39a749c
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 17:29:37 2020 +0200

    correct Temperature update

commit 55c33ad675
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Jun 3 17:21:31 2020 +0200

    before changing Temp in load

commit 7f7b31e5c0
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 2 20:01:07 2020 +0200

    fixing small bugs

commit 7555278074
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 2 19:39:48 2020 +0200

    fixed some stamps

commit 0d59e12518
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Jun 2 19:13:50 2020 +0200

    fixed avalanche

commit ee25c6ce42
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Jun 1 20:07:25 2020 +0200

    cleaned up

commit d61b510207
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Jun 1 19:18:45 2020 +0200

    hicumL2 load routine seems to be working, next ac?

commit 29a61f21e2
Merge: c94120cbf dcf4a4487
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Jun 1 14:32:39 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit c94120cbf9
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Jun 1 14:30:40 2020 +0200

    first hicum convergence with SH

commit dcf4a44871
Merge: c37a88bec c1444a06b
Author: dwarning <dwarning>
Date:   Mon Jun 1 10:57:42 2020 +0200

    Merge branch 'markus_dev' of ssh://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit c37a88bec8
Author: dwarning <dwarning>
Date:   Mon Jun 1 10:56:53 2020 +0200

    set the cppduals include folder above ngspice dir

commit c1444a06b6
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 31 20:38:16 2020 +0200

    finish hicum SH review, next testing.

commit e3c194e050
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 31 20:26:41 2020 +0200

    fixed some stamps, improved code readability, temp stamps corrected

commit 59c50d5095
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat May 30 20:37:28 2020 +0200

    fixed rbi stamp, convergence looks pretty good DC no SH

commit f7012280e6
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sat May 30 17:12:37 2020 +0200

    fix rbi convergence

commit 326b29c4d8
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri May 29 16:54:30 2020 +0200

    started work on self heating

commit 4994feaa2b
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Fri May 29 16:08:18 2020 +0200

    corrected rbi stamp...

commit 460e7ec04b
Author: mariok <mario.krattenmacher@web.de>
Date:   Wed May 20 11:22:01 2020 +0200

    more thermal stuff implemented

commit 194331867e
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue May 19 16:24:34 2020 +0200

    added HICUMtempCollPtr HICUMtempBasePtr HICUMtempEmitPtr

commit 697af41531
Author: dwarning <dwarning>
Date:   Tue May 19 08:03:35 2020 +0200

    exchange hicum2temp file in VS project

commit 03750cd24e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 17 20:20:00 2020 +0200

    ziwschenstand, checked code for maths errors

commit 418966c6e5
Author: mariok <mario.krattenmacher@web.de>
Date:   Wed May 13 10:25:49 2020 +0200

    can not call a function inside a comparision

commit abecd18651
Author: mariok <mario.krattenmacher@web.de>
Date:   Wed May 13 10:09:11 2020 +0200

    removed all buggs from hicumL2 to debug.

commit 1fe3cc8b12
Merge: afdffacd4 58f66c1d4
Author: mariok <mario.krattenmacher@web.de>
Date:   Wed May 13 07:30:56 2020 +0200

    Merge remote-tracking branch 'origin/markus_dev' into hicum2-mario

commit afdffacd4b
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue May 12 19:59:09 2020 +0200

    ac und pz load

commit 890ccc415f
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue May 12 19:55:23 2020 +0200

    implemented hicum_diode as example

commit 63bf7113d4
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue May 12 18:33:51 2020 +0200

    all temperature scaling equations done using dual numbers

commit 96c66dd645
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue May 12 17:14:17 2020 +0200

    started dual numbers in hicum2temp and a transfer struct in hicum2defs

commit 58f66c1d46
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 12 12:28:50 2020 +0200

    fix Vbe initialization

commit 35deffa742
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 12 12:25:48 2020 +0200

    cleaned further

commit 304dd91f58
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 12 12:15:52 2020 +0200

    cleaned up, small fixes, include Tf

commit 1d7da49e27
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 12 09:37:39 2020 +0200

    fixed bugs

commit 479c2a19ea
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon May 11 15:50:01 2020 +0200

    forgot Nan catcher

commit 5bbe0f9cf7
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon May 11 15:48:03 2020 +0200

    bugfix Q_p calculation

commit 67857cf983
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon May 11 15:42:27 2020 +0200

    fixed derivatives and itf for case without newton iteration

commit d6ee2c206e
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon May 11 14:08:18 2020 +0200

    resolved some un-initialized variables

commit 76ed5cb36a
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 10 20:48:38 2020 +0200

    finished clean

commit ba6e6d5e49
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 10 18:48:24 2020 +0200

    added all remaining hicum l2 elements

commit 36244b809a
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Sun May 10 17:45:27 2020 +0200

    resolved Dietmar comments from email

commit eaa5be9716
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 5 16:38:08 2020 +0200

    added base emitter recombination current and derivatives

commit 4318b7165b
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue May 5 14:30:15 2020 +0200

    added initial conditions for all nodes, model converging again for
    simple modelcard

commit 3008c526bf
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon May 4 19:00:31 2020 +0200

    removed QpT and testing only 1 OP

commit 9cb4c1546f
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon May 4 18:37:52 2020 +0200

    icVBE and icVCE used for DC

commit 8a73697675
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon May 4 18:03:46 2020 +0200

    fixed dual number Q_0_hjei_vbe

commit 5783938b08
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon May 4 16:30:41 2020 +0200

    reintroduced dtemp as instance parameter

commit 9350f3f3be
Author: dwarning <dwarning>
Date:   Sun May 3 17:25:12 2020 +0200

    Revert some namings

commit 197f6db83b
Author: dwarning <dwarning>
Date:   Sat May 2 23:18:58 2020 +0200

    Adapt VS project to C++

commit af32f79641
Author: dwarning <dwarning>
Date:   Sat May 2 23:18:43 2020 +0200

    Skip NQS effekt and revert some namings

commit a995aa0cce
Author: dwarning <dwarning>
Date:   Sat May 2 23:18:27 2020 +0200

    Skip NQS effekt

commit d7295cbe78
Merge: 2502b57ee 6ca440e58
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Apr 29 19:04:32 2020 +0200

    Merge branch 'markus_dev' of https://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit 2502b57eee
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Wed Apr 29 19:03:26 2020 +0200

    added quests, derivative vciei changed to vbiei vbici

commit 6ca440e584
Author: dwarning <dwarning>
Date:   Wed Apr 29 09:35:12 2020 +0200

    add hicumL2.cpp instead of hicum2load.c in VS project

commit 6e98506a7f
Author: dwarning <dwarning>
Date:   Wed Apr 29 09:33:08 2020 +0200

    cmath seems not to have M_PI

commit d6332815b3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Apr 28 20:58:35 2020 +0200

    derivatives it looking good

commit aaaace7247
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Apr 28 19:39:48 2020 +0200

    adding hicum derivatives like a mad-man

commit 2d8a3e3629
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Apr 28 18:44:46 2020 +0200

    added Q_pT and derivatives...fun

commit 50a3e372cf
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Apr 28 17:17:17 2020 +0200

    starting work on transfer current

commit 8fd70e2f15
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Tue Apr 28 13:01:18 2020 +0200

    added asks, found bug with ibci

commit 2baac89ae3
Merge: 97a0aa856 c897e60c8
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 27 20:47:06 2020 +0200

    Merge remote-tracking branch 'origin/hicum2-thermal' into markus_dev

commit c897e60c8b
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 27 18:12:40 2020 +0200

    pointer in ask

commit 3b0551c544
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 27 17:36:19 2020 +0200

    two small bugfixes

commit b02c763ed1
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 27 17:13:30 2020 +0200

    HICUM2ask done according to VA-Code

commit 97a0aa856b
Merge: afbde8050 d86caadb0
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 27 16:22:32 2020 +0200

    Merge remote-tracking branch 'origin/hicum2-thermal' into markus_dev

commit afbde80500
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 27 16:21:25 2020 +0200

    zwischenstand

commit d86caadb07
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 18:23:40 2020 +0200

    added nodes for NQS

commit 1b0cf0d08c
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 16:59:55 2020 +0200

    testing with and without self heating

commit 64c0c41180
Merge: 9da946bf2 0d0c6a080
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 16:29:18 2020 +0200

    Merge branch 'markus_dev' into hicum2-thermal

commit 0d0c6a0800
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 16:26:37 2020 +0200

    assigned the temperature derivates to me

commit 1b00fad771
Merge: f5a1c35d8 dc7891f7b
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 14:16:32 2020 +0200

    Merge branch 'markus_dev' of ssh://git.code.sf.net/p/ngspice/ngspice into markus_dev

commit f5a1c35d80
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 23 14:14:40 2020 +0200

    removed dummdumm

commit dc7891f7b5
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 19:16:36 2020 +0200

    added more junction caps, checklist and overview

commit 0dbf31bc73
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 19:00:16 2020 +0200

    derivatives rbi

commit 330d009fa6
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 18:40:24 2020 +0200

    more derivatives avalanche current, ibcis

commit ce200d75e3
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 18:05:49 2020 +0200

    derivatives peripheral junction caps, diodes

commit 8ce9733f91
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 17:45:42 2020 +0200

    derivatives tunneling current

commit 806ff80138
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 17:17:14 2020 +0200

    derivatives critical current

commit 8f49490cec
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 16:59:09 2020 +0200

    derivatives T_f0

commit 3164dbe594
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 16:38:34 2020 +0200

    derivatives hole charge at low bias

commit b32bf6dd14
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 16:27:38 2020 +0200

    zwischenstand

commit 84307c4acf
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 16:19:25 2020 +0200

    zwischenstand

commit 0d94c5d56d
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 20 10:56:58 2020 +0200

    moved cppduals to system lib include

commit 9da946bf2d
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 20 09:59:49 2020 +0200

    started derivatives of hicum2 minority charge

commit a2946e98a4
Author: Markus Mueller <metroid120@googlemail.com>
Date:   Mon Apr 20 09:56:06 2020 +0200

    introduced dual numbers, ported hiucm2load to c++ hicumL2.cpp, boolean
    type protected by extern "C"

commit c7e5df27db
Author: mariok <mario.krattenmacher@web.de>
Date:   Thu Apr 16 14:44:41 2020 +0200

    DC runs with Ixf

commit 08a0e6a019
Author: mariok <mario.krattenmacher@web.de>
Date:   Wed Apr 15 18:15:26 2020 +0200

    gummel works with flsh = 1 and flnqs = 0

commit b83e05ee95
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue Apr 14 16:09:42 2020 +0200

    added test to makefile

commit 7d29a9a269
Author: mariok <mario.krattenmacher@web.de>
Date:   Tue Apr 14 10:06:27 2020 +0200

    test circuit and results

commit 14c46bc3bd
Author: mariok <mario.krattenmacher@web.de>
Date:   Mon Apr 13 18:12:06 2020 +0200

    cleaned renaming in all files

commit 67ddd98f75
Author: dwarning <dwarning>
Date:   Wed Jan 29 13:08:02 2020 +0100

    rename

commit 9551b6df92
Author: dwarning <dwarning>
Date:   Wed Jan 29 13:07:42 2020 +0100

    rename

commit 12bb866ba5
Author: dwarning <dwarning>
Date:   Wed Jan 29 13:06:45 2020 +0100

    rename

commit 414eeb4067
Author: dwarning <dwarning>
Date:   Tue Jan 28 22:18:08 2020 +0100

    clarify charge and capacitance implementation

commit c318ef15ee
Author: dwarning <dwarning>
Date:   Sat Jan 25 14:57:55 2020 +0100

    introduce first excess phase network and update to 2.4.0

commit 85c34cfb0f
Author: dwarning <dwarning>
Date:   Wed Jan 22 18:16:54 2020 +0100

    VS update

commit 86ff2778f8
Author: dwarning <dwarning>
Date:   Wed Jan 22 18:16:29 2020 +0100

    OP infos

commit 1607f4d88c
Author: dwarning <dwarning>
Date:   Wed Jan 22 18:16:19 2020 +0100

    OP infos

commit ca1e114922
Author: dwarning <dwarning>
Date:   Wed Jan 22 18:16:11 2020 +0100

    OP infos

commit 408440d33b
Author: dwarning <dwarning>
Date:   Tue Jan 21 11:25:56 2020 +0100

    some cleanings

commit 3364f6da87
Author: dwarning <dwarning>
Date:   Tue Jan 14 09:55:58 2020 +0100

    VS update

commit 6fbefe4afa
Author: dwarning <dwarning>
Date:   Tue Jan 14 09:55:48 2020 +0100

    Ongoing derivations

commit 86521dd7c0
Author: dwarning <dwarning>
Date:   Tue Jan 14 09:02:52 2020 +0100

    VS update

commit ba5b106fae
Author: dwarning <dwarning>
Date:   Tue Jan 14 09:01:30 2020 +0100

    Ongoing derivations

commit ea6254eca3
Author: dwarning <dwarning>
Date:   Sat Jan 11 17:17:21 2020 +0100

    Initial HICUM2 integration

commit 2bd0f1bdab
Author: dwarning <dwarning>
Date:   Mon Jan 6 00:11:48 2020 +0100

    Initial HICUM2 integration

commit 7d160f659e
Author: dwarning <dwarning>
Date:   Sun Jan 5 15:01:20 2020 +0100

    Initial HICUM2 integration

commit 420ca90e55
Author: dwarning <dwarning>
Date:   Sun Jan 5 15:00:06 2020 +0100

    Initial HICUM2 integration
2020-12-22 11:10:10 +01:00
Holger Vogt 5eaf7c27c1 typo 2020-12-22 11:07:50 +01:00
Holger Vogt 19a688513c add compatibility mode eg for EAGLE
clarify mode a for 'whole netlist' and ll for 'all'
2020-12-22 11:07:31 +01:00
Holger Vogt dd86bdee46 Enlarge the buffer size for command 'listing' from 512 to 4096 bytes. 2020-12-22 11:07:14 +01:00
dwarning 75228612c0 few fixes for prototypes 2020-10-15 18:25:25 +02:00
dwarning 31a054f244 prevent few gcc warnings 2020-10-10 12:22:57 +02:00
Holger Vogt 2f1d3df8c7 add a Spectre compatibility mode 2020-10-10 12:19:49 +02:00
dwarning 689d561c9e unify temperature limit routine for usage in self-heating model 2020-10-10 12:15:37 +02:00
Holger Vogt c112279555 new compatibility handling with struct compat newcompat:
simplify the compatibility handling, better readability
make it easily extendable
add new flag 'ki' for KiCad compatibility
2020-08-20 15:38:43 +02:00
Holger Vogt fe28feae4e Cut out part of each vector of the current tran plot,
from times cut-tstart to cut-tstop and copy these
into a new tran plot. A new scale vector 'time' will be
generated as well. Vectors that are shorter than the
new scale vector will not be copied.
2020-08-20 15:28:48 +02:00
Holger Vogt 6b0104849e Add statistics: load, subckt expansion, and parse times 2020-08-20 15:23:19 +02:00
Holger Vogt 18c532e74b improve comments 2020-08-20 15:22:07 +02:00
Holger Vogt 2b4394e34b add wincolornames.h 2020-05-03 23:06:17 +02:00
Holger Vogt a32da32885 set parentheses for initializing struct 2020-05-01 18:46:44 +02:00
Jim Monte 381d4ec43d #includes modified 2020-04-27 10:23:59 +02:00
Holger Vogt fdbcdb5b7d apply const qualifier appropriately 2020-04-25 10:27:28 +02:00
Holger Vogt bbb0007466 add function EVTswitch_plot() to switch the event data
according tothe (analog) plot. Called from plot_setcur()
in vetors.c, when command 'setplot xxx' is given.
2020-04-21 20:00:17 +02:00
Holger Vogt d72b4c415f get the plot name into the event job 2020-04-21 19:59:58 +02:00
Holger Vogt 93a76d8e21 add a limit exp(arg) to the exp function. If arg is larger
than 14 (arbitrarily selected), continue with linear response.
2020-04-21 19:57:19 +02:00
Holger Vogt 9edc436ef7 remove SIGINT handling which was not functional
add SIGSEGV handler which may be excluded by
set nosighandling
2020-04-04 14:19:55 +02:00
Holger Vogt ded0092ad6 If ngSpice_Command(NULL) is sent to shared ngspice,
the internal control structure memory is freed.
2020-04-04 14:15:38 +02:00
Holger Vogt ba81e21197 rcheckn: rcheck plus freeing allocated memory 2020-04-04 14:11:07 +02:00
Holger Vogt 7a7f717574 make flag 'nolegend' localfor each plot 2020-03-15 08:51:17 +01:00
Holger Vogt 1398ee7aa0 set the proper preprocessor flag __MINGW32__ 2020-03-15 08:51:17 +01:00
Holger Vogt 2f23c58585 plug a memory leak (pll-xspice.cir) 2020-03-15 08:51:16 +01:00
Holger Vogt e53632c368 When plotting arrays of curves, plot lines only in the direction
of (in absolute terms) growing x values.
Example: MOS output characteristics.
In the rare case of plotting versus varying x directions
(e.g. example memristor.sp), one has to add the flag
'retraceplot' to the plot command.
2020-03-15 08:51:14 +01:00
Holger Vogt 4ddcff55e7 add const declaration to newfopen 2020-03-15 08:51:13 +01:00
Holger Vogt 7f085144a9 remove all the remains of quote() and strip() that had been
used to modify the eigths bit of a character or string.
The functions had been switched off some time ago.
We now need all bits of a char for extended ascii or utf8
2020-03-15 08:51:12 +01:00
Vogt 728ddae41e Set the color tables and linewidths personal for each graph,
added to strucht graph
Use only these data for plotting.
If zooming a plot windows, set as an extra parameter the graph id
of the 'mother graph'. Copy its color and line data to the new graph.
This is done by an extra parameter sgraphid to the internal plot
command that is issued in fcn PlotWindowProc().
Thus zooming will keep the background, text/line and graph colors.
Function setcolor() will always look into the colorarray of the
current graph.
2020-03-15 08:51:12 +01:00
Holger Vogt fed7ef378f add variable ticchar, allow an arbitrary character as ticmark 2020-03-15 08:51:11 +01:00
Holger Vogt 6094769fda Restore original 'green', slight update on
auto color selection vs. background
2020-03-15 08:51:11 +01:00
Holger Vogt 54778527c4 list of colors used 2020-03-15 08:51:10 +01:00
Holger Vogt 8751092812 Enable separate linewidths for grids and graphs.
New variable gridwidth overrides xbrushwidth for graphs.
Fcn DevDrawLine() with boolean flag if grid is plotted.
Postscript, Gnuplot and X11 not (yet) supported.
2020-03-15 08:51:05 +01:00
h_vogt 697facdc30 #define fopen newfopen
and header for MINGW and MS VS
2020-03-15 08:51:04 +01:00
dwarning 4f75d56011 no wrapper cp_globmatch needed 2020-03-15 08:51:03 +01:00
Jim Monte a53cd3a3e9 fixed path created by ngdirname in Windows. Also added const to parameters whose arguments do not change and fixed some potential buffer overruns. 2020-03-15 08:51:02 +01:00
Jim Monte d254b6c97e Gave structure defining Mif_Complex_t a name so that it could be forward referenced. 2020-03-15 08:51:01 +01:00
Jim Monte 0c741bbde2 Rework of let command. Added support for slices as described in feature #69 and fixed several crashes and issues described in bugs #443, #444, #446, #447, and #448. 2020-03-15 08:51:01 +01:00
dwarning 7d17b8f082 vdmos have no Cgb 2020-03-15 08:50:59 +01:00
Holger Vogt e9603dcdeb enable inp_dodeck() to return an error state,
if error, inp_spsource() will return error as well
2020-03-15 08:50:57 +01:00
Holger Vogt f9307d0beb enable returning inp_spsource() with an error code 2020-03-15 08:50:57 +01:00
Holger Vogt 966b69090d use only TMALLOC and TREALLOC for memory allocation 2020-03-15 08:50:56 +01:00
Jim Monte 4b145ddf5e Added #include <stdio.h> to define FILE. 2020-03-15 08:50:55 +01:00
Jim Monte 2068c4fffb Added -D/--define option to define a variable from the command line. 2020-03-15 08:50:55 +01:00
Jim Monte de4788cfe5 Added conjugate function conj(). 2020-03-15 08:50:55 +01:00
Jim Monte 0cf53a34b2 Fixed resolution of ~ to home directory. (Bug #405) Also fixed potential buffer overruns in glob expansion 2020-03-15 08:50:54 +01:00
Jim Monte 8141a634d7 Fixed several issues related to plotting and vector lifetimes and made ownership of vectors clearer. The issues in bugs 419, 423, 425, and 426 were related and were addressed here. 2020-03-15 08:50:54 +01:00
Jim Monte 57ffe1769f Fixed "phantom vector" issue with plots and crash when plots are resized. See bugs #419 and #423 for details. Also several parameters were changed from char * to const char * in the plotting functions. 2020-03-15 08:50:54 +01:00
Jim Monte 2df00ad8c9 Cleaned up defintions of macro constants 2020-03-15 08:50:53 +01:00
Jim Monte 70600258bb Made checking for single-character words faster. The testing now also uses less memory and works for 8-bit characters, which would have previously caused buffer overruns. It is also more modular and has additional documentation. 2020-03-15 08:50:53 +01:00
Jim Monte ad970ae4e7 Made cp_enqvar() mode modular by adding a separate function to handle the case of a vector. Lists are more efficiently handled by moving common comparisons out of the loop over elements. The first argument of cp_enqvar() is changed from char * to const char * since the name of the variable being found is not altered by the function. 2020-03-15 08:50:53 +01:00
Jim Monte 72801b1ab1 Fixed buffer resizing, made string utilities more modular, and added several new utilities, some which do not require a null termination, potentially avoiding the need to copy a string. Also some substring utilities using the Rabin-Karp algorithm were added. 2020-03-15 08:50:52 +01:00
Jim Monte 81fa829b7d Fixed potential infinite loop (until memory is exhausted) and added several utility functions for processing strings. 2020-03-15 08:50:52 +01:00
Jim Monte 068df274bf Made ft_numparse() thread-safe (no internal static variables) and prepared to support ngspice variable type CP_NUM. 2020-03-15 08:50:52 +01:00
Jim Monte 873e4a8db0 Added no_histsubst option and related fixes 2020-03-15 08:50:52 +01:00
Jim Monte b7d8c61cd9 Cleaned up code to locate a vector in a plot by name. The code was made more modular, and special names like allv are handled more efficiently 2020-03-15 08:50:51 +01:00
Jim Monte 89efe5aeae Dynamic string (dstring) rework 2020-03-15 08:50:51 +01:00
Holger Vogt 7983b0d16a macOS: Do not use deprecated finite, but isfinite 2019-11-30 11:35:44 +01:00
Holger Vogt afdd0fe85e comments added
White spaces according to clang format
2019-09-14 11:24:05 +02:00
Holger Vogt 6669cbc17c add function inp_rem_unused_models().
checking for unused models now also removes models
that are out of scope.
2019-09-14 11:23:24 +02:00
rlar 96bb0dd941 inpcom.c, introduce inp_add_levels(), add scope to decks 2019-09-14 11:22:24 +02:00
Jim Monte 8ed7080227 [PATCH #70] Made parameter const and reduced excess allocation. 2019-08-13 23:32:01 +02:00
Jim Monte e208aab4cd [PATCH #69] Changed vector type from to the enum assigned to it. 2019-08-13 23:31:37 +02:00
Jim Monte 73379f4146 [PATCH #66] Removed definition of macro MAXWORDS since it is unused. 2019-08-13 23:31:28 +02:00
Jim Monte e92e2c7362 [PATCH #62] Fixed buffer overrun. Reworked to not use dstring for more
efficient parsing.
2019-08-13 23:30:31 +02:00
Jim Monte 1665b53b84 [PATCH #59] Made INP*Cat() functions more modular and efficient. Also
eliminated the possibility of a buffer overrun in INPstrCat() due to an error
 in the calling funciton.
2019-08-13 23:29:41 +02:00
Jim Monte 1c5176282b [PATCH #52] General cleanup of word list processing, such as adding
comments and const. Also added a new function wl_from_string() to convert a
 single word into a word list. This function can be useful when calling a
 function taking a single-word word list.
2019-08-13 23:28:49 +02:00
Jim Monte 10474a06a8 [PATCH #50] Ensured no buffer overrun for long namess and improved
efficiency of compare. Also made more modular.
2019-08-13 23:28:41 +02:00
Holger Vogt 9a9b7c68d0 unify the numerical constants 2019-08-13 23:28:05 +02:00
Holger Vogt b9901a2569 [PATCH 47] Refactored ft_getnames() and used the new function in
com_let().
2019-08-13 23:27:49 +02:00
Jim Monte b66412f517 [PATCH] Changed prototypes of some functions having parameters that
should not be changed to const and added assorted comments. Also two very
 minor efficiency improvements.
2019-08-13 23:20:21 +02:00
Jim Monte 0183964d6f [PATCH #41] Made constants agree across ngspice simulator. File const.h
is the source of the values with all other files referencing it.
2019-08-13 23:20:00 +02:00
Holger Vogt 61039c2736 add a new function gettok_model to consider {...} expressions
in VDMOS .model statements
2019-08-13 23:17:14 +02:00
Jim Monte 0ddd4a8456 Fixed excess buffer allocation and converted wordlist to string more efficiently
Signed-off-by: Holger Vogt <holger.vogt@uni-due.de>
2019-08-13 23:14:27 +02:00
Holger Vogt 40411197e0 add function get_plot(name) to return address of named plot 2019-03-21 20:17:21 +01:00
Holger Vogt be6eca1dbb add 'option norefvalue' to suppress printing the reference value. 2019-03-21 16:07:12 +01:00
Holger Vogt 56701e3d10 add rotation angle to text output, currently used only by postscript,
ignored by all others
2018-11-18 15:50:56 +01:00
h_vogt 87be5b9a41 Do not set Bit 8 in an ANSI char, when \ or ^ occured in a string. Thus the full ANSI set is now available in ngspice strings. The setting of Bit 8 was not exploitet anywhere, but did not allow using the characters from extended ANSI. 2018-11-18 15:49:31 +01:00
Holger Vogt 19380903cc add missing evtshared.h to the distribution 2018-10-27 16:37:33 +02:00
Holger Vogt 25cdf95262 replace deprecated sys_errlist[errno] by call to strerror(errno) 2018-10-14 12:21:02 +02:00
Holger Vogt 3930e27501 New compatibility modes (set ngbehavior=??): PS LT LTPS PSA LTA LTPSA
PS: PSPICE comp. in .include files., LT: LTSPICE comp. in .include files.
LTPS: both, PSA: PSPICE comp. in complete input deck,
LTA and LTPSA: comp. in complete input deck for LT or both.

Add functions uplim, dnlim, uplim_tanh, dnlim_tanh.

Replace
D1 A K SDMOD
.MODEL SDMOD D (Roff=1000 Ron=0.7  Rrev=0.2  Vfwd=1  Vrev=10 Revepsilon=0.2 Epsilon=0.2 Ilimit=7 Revilimit=7)
by
ad1 a k asmod
.model asmod sidiode(Roff=1000 Ron=0.7  Rrev=0.2  Vfwd=1  Vrev=10 Revepsilon=0.2 Epsilon=0.2 Ilimit=7 Revilimit=7)
2018-10-13 18:19:58 +02:00
Holger Vogt d636f7899b cp_enqvar() returns freshly malloced variables as well
as variables owned by somebody else, e.g. from ft_curckt->ci_vars.
The new function parameter tbfreed notifies the caller if the
variable is malloced here and may be freed safely.
2018-10-13 18:19:31 +02:00
Holger Vogt 800c9711f2 add a flag 'type of the union' to safely free model->param[i]->element,
if it contain a malloced string
2018-08-28 21:29:05 +02:00
Holger Vogt d3b7619754 add a flag timezero to trnoise_state
falg is true as long as time = 0. Allows
to detect the change from time == 0 to time > 0
only then the 1/f data may be created anew (e.g.
due to multiple 'run' commands
2018-08-22 22:36:35 +02:00
Holger Vogt d1a8637a29 store deck for command mc_source for each circuit in ft_curckt->ci_mcdeck
remove this storage during remcirc

keep most recent deck in recent_deck
2018-08-18 11:26:42 +02:00
Holger Vogt 7ca61b3c98 New command 'setseed' with function com_sseed
to set the random number generator
2018-07-22 15:06:19 +02:00
Holger Vogt 09c876550f prevent string overflow by adding the string length
to the cp_getvar parameters. Used only with CP_STRING
2018-07-22 14:57:49 +02:00
Holger Vogt 824ac4fbc9 make functions static or add function prototypes 2018-07-21 23:56:14 +02:00
Holger Vogt a98d01e5f8 Use only internal memory functions, replace
free->tfree, malloc->tmalloc, realloc->trealloc
2018-07-21 23:54:43 +02:00
Holger Vogt 417dbfef72 undo the previous commits dealing with snprintf,
use the C99 compliant function also with MS Visual Studio
2018-05-31 11:37:51 +02:00
Holger Vogt 7153891293 raise buffer size by 1 to retain previous resolution 2018-05-31 10:58:52 +02:00
h_vogt 1066bf0a7b Store the numparam dicoS structure for each circuit in a list.
Functions to add, remove, retrive dicoS from the list
and to update dicoS, if the circuit has been changed.
Keeping dicoS is necessary because it may be used by measure.
This patch prevents (huge) memory leaks by overwriting
dicoS if multiple calls to the 'source' command are executed.
2018-05-19 17:45:45 +02:00
h_vogt 7198056a41 patch no. 16 by Thomy add a function cm_get_circuit to allow accessing the circuit structure ckt from within an XSPICE code model. This is a change to the interface and requires recopiling all code models! 2018-05-19 17:37:42 +02:00
h_vogt 11bafd70ea update to callback functions SendEvtData, SendInitEvtData 2018-05-19 16:46:16 +02:00
h_vogt c890435383 clarify pointers to data structures for event nodes 2018-05-19 16:44:57 +02:00
h_vogt b5f31ec2b1 version conflict rersolved in sharedspice.c 2018-05-19 16:44:46 +02:00
h_vogt e36b028cdb add wantevtdata if event output should be sent to caller 2018-05-19 16:43:48 +02:00
h_vogt b621875abf sharedspice.h, .c, prepare adding callback functions: new ngSpice_Init_Evt() and function pointers 2018-05-19 16:43:19 +02:00
h_vogt fc42cef878 New functions for XSPICE event node data exported from shared ngspice: ngGet_Evt_NodeInfo(char*) and ngSpice_AllEvtNodes(void) 2018-05-19 16:42:18 +02:00
rlar 1a39d3f59d spicelib/parser, support instance parameter defaults on .model lines 2018-05-19 15:40:20 +02:00
h_vogt d4adb027d2 avoid retrace in output graph by adding label 'noretraceplot'
to the plot command, that creates a lin plot trying to avoid retracing
2018-05-18 17:08:27 +02:00
Holger Vogt c1a64d9f49 make inp_compat_mode glabal 2018-05-18 16:54:52 +02:00
h_vogt 5c3a6a3829 new command 'mc_source' to internally reload circuit
We store a copy of the whole deck in 'mc_deck'.
'mc_source' can be used to re-read this copy.
2018-05-15 22:45:29 +02:00
Holger Vogt c0c3470dff add the simple vdmos capacitance model instead of Meyer's model 2018-05-04 20:34:06 +02:00
rlar 45a70b3a53 rewrite, use enum instead of #define sequences
see branch "rewrite-defines2enum"
2018-04-30 19:23:18 +02:00
rlar a729c2860c sensitivity, drop redundant #defines SENS_LIN/OCT/DEC/DEFPERT
use SENS_LINEAR/OCTAVE/DECADE/DEFPERTUB instead
2018-04-15 15:05:02 +02:00
rlar b803b294b4 frontend/parser/lexical.c, cp_lexer(), allow # and * comment
Both, whether interactive or not.
Especially for command scripts.
2018-02-26 19:41:04 +01:00
rlar 4ec2717079 struct card, #5/6, rewrite from type "card" to "struct card" 2018-02-17 19:15:53 +01:00
rlar 10a353ebf4 struct card, #4/6, drop typedef card
For readability and to allow variables to have the name "card"
(avoid name collision with typedef "card")
2018-02-17 19:15:53 +01:00
rlar 511cdd7188 struct card, #3/6, rename members from struct line to struct card 2018-02-17 19:15:53 +01:00
rlar 981fed70ca struct card, #2/6, drop struct line
struct line is an overlay of struct card.
2018-02-17 19:15:53 +01:00
rlar 8d93511a96 struct card, #1/6, minor cleanup 2018-02-17 19:15:53 +01:00
rlar 41c0ee45a2 introduce GENinstanceFree() and GENmodelFree()
To abstract away the business of releasing the memory
  of a struct GENmodel or struct GENinstance.
2018-02-17 11:53:07 +01:00
rlar 8c7d7051ae GENmodel, GENinstance, change layout, #4/4, complete the change
currently each and every device specific instance and model structure
  duplicates the memory layout of a struct GENmodel / GENinstance

further the first structure elements behind a GENinstance header
  are reinterpreted as a sort of a generic "node" array.

This business is very error prone, and makes it difficult to
  extend struct GENmodel / struct GENinstance.

This patch makes this business much more bearable.
2018-02-17 11:53:06 +01:00
rlar 2c9bfecbad GENmodel, GENinstance, change layout, #3/4, coccinelle semantic patch 2018-02-17 11:53:05 +01:00
rlar 4748c92de9 DEVdestroy(), change API, #2/2, complete the change, inclusive CKTdestroy()
loop over DEVmodDelete() and DEVdelete() in CKTdestroy()
  instead of doing this business in the DEVdestroy() functions.

As a consequence, most DEVdestroy() functions
  collapse completely.
2018-02-17 11:52:59 +01:00
rlar 3cd81295a8 DEVmodDelete(), change API, #2/2, complete the change
Instead of searching and then deleting a given device-model,
  just delete the given model.

The search shall be done somewhere else.

Don't free the model struct itself,
  this shall be done by the invoker himself.

Don't free the device instrance list,
  this shall be done by the invoker himself.

As a consequence, most DEVmodDelete() functions
  collapse almost completely.

This change is of no consequence,
  because DEVmodDelete() is currently nowhere used.
2018-02-17 11:52:53 +01:00
rlar c3ed42f486 DEVdelete(), change API, #2/2, complete the change
Instead of searching and then deleting a given device-instance,
  just delete the given instance.

The search shall be done somewhere else.

Don't free the instance struct itself,
  this shall be done by the invoker.

As a consequence most DEVdelete() functions
  collapse almost completely.

This change is of no consequence,
  because DEVdelete() is currently nowhere used.
2018-02-17 11:52:46 +01:00
rlar e311096429 gendef.h, get rid of awkward counted GENnode macros 2018-02-03 11:46:24 +01:00
rlar 018a2d0e2f devices/*, unify, add missing instance struct member 'GENstate'
to the generic part of all instance structs, even when actually unused.
see GENstate in "gendefs.h"
2018-02-03 11:46:24 +01:00
Holger Vogt 560cb6e970 plotting/grid.c, bug fix, avoid string buffer overflow
Prevent a crash of example/FFT_test.cir.
Buffer 'buf' in function drawlingrid() has been too small.
Increase 'buf' size, and add some protection.

The example file examples/plot/test-small-plot.cir
shows the limits of plotting:
  difference in two numbers at digit 14 is plotted well.
                            at digit 15 is plotted with bugs.
                            at digit 16 is reduced to integer.

consider compiling with
  -O1 -D_FORTIFY_SOURCE=2
for gcc, and
  /GS
for visual studio.
2018-01-27 21:58:15 +01:00
rlar c900cc8824 drop ngspice internal implementation of erfc()
which these days is guaranteed to be provided by <math.h>

note,
  our own implementation was incorrect anyway.
  it evaluated to
    erfc_ngspice(x) = erfc(fabs(x))
2017-10-28 12:38:32 +02:00
dwarning a1d27b4257 dio, introduce qd as an alias for diode charge to get the right unit in plotting 2017-08-03 17:03:10 +02:00
rlar a7cc37b2e2 ifparm, fix numdev too 2017-04-19 19:18:13 +02:00
h_vogt c82ee9d949 introduce option "epsmin"
To define a minimum argument for some log() function invocations.
(most notably for the diode saturation current 'is')
2017-04-19 18:56:00 +02:00
rlar 2f329bd8b4 N_MXVLNTH, drop noise variable name limitation 2017-04-15 17:21:24 +02:00
rlar 7afb798a6f check for illegal DEVsetup() DEVunsetup() patterns.
Consider the following silent contracts:
1)
 CKTsetup() invocations must be separated by a CKTunsetup() invocation
 But CKTsetup() has an internal flag,
   which will prevent re-invocation of DEVsetup()
 But DEVsetup() will be called during sensitivity analysis,
   bypassing this precaution. It is fatal if this will
   cause another node allocation (CKTmk..()).
   This commit tries to detect such cases.
   (Note: many DEVsetup routines (all ?) have their CKTmk..() invocations
      guarded to avoid reallocation of local nodes,
      see commit f7f454c0a1
        bug fix, fix the guard for device generated internal nodes (via CKTmkVolt())
   )
   FIXME:
     DEVsetup() is seriously obfuscated by these guards.
     If would be far better, if the sensitivity analysis
       wouldn't sidestep into DEVsetup()
     consider a device local variant of the CKTisSetup flag
2)
 DEVunsetup() must delete all, each and every,
   local allocated node in DEVsetup()
 Otherwise CKTmk..() invocations in a following CKTsetup() will
   return duplicate node numbers, effectively shorting device nodes.
 This commit tries to detect incomplete CKTdltNNum() invocations.
3)
  DEVunsetup() must not delete a netlist node.
  This can easily happen in those devices which have optional ports,
    which have code in DEVsetup() which copies node numbers to
    local node variables.
  This commit tries to detect such errors.
2017-04-12 21:32:51 +02:00
rlar 58874cc65e xspice, implement "CALLBACK"
Allow to register a callback function in the cfunc.mod files,
  which will be invoked in MIFdestroy.
Usefull to "free" memory which has been allocated locally in a cfunc.mod file.
2017-04-12 20:02:35 +02:00
rlar d32a32bdc8 ifparm, #14/16, res.c, missing IF_ORQUERY|IF_REDUNDANT, introduce IOPQOR 2017-04-09 15:29:42 +02:00
rlar cefb65507f ifparm, #13/16, res.c, missing IF_SETQUERY in an alias entry, introduce IOPQR 2017-04-09 15:29:41 +02:00
rlar 8d3acddc7b ifparm, #12/16, res.c, missing IF_PRINCIPAL in an alias entry, introduce IOPPR 2017-04-09 15:29:40 +02:00
rlar 614eebe944 ifparm, #11/16, res.c, missing IF_CHKQUERY for some alias entries, introduce IOPZR 2017-04-09 15:29:40 +02:00
rlar 102a6b7c77 ifparm, #7/16, missing IF_UNINTERESTING for some aliases, introduce IOPUR 2017-04-09 15:29:36 +02:00
rlar 4fc33eb656 ifparm, #6/16, missing IF_NONSENSE for some aliases, introduce IOPXR 2017-04-09 15:29:35 +02:00
rlar b56c2a2504 ifparm, #5/16, missing IF_AC for some aliases, introduce IOPAR 2017-04-09 15:29:34 +02:00
rlar eac26d741c ifparm, #4/16, missing IF_REDUNDANT for some aliases, introduce IOPAPR 2017-04-09 15:29:33 +02:00
rlar 511389ad10 inpcom.c, introduce find_back_assignment() 2017-04-09 14:14:06 +02:00
rlar 5238f0b1cb inpcom.c, find_assignment(), const'ify and declare extern 2017-04-09 14:12:22 +02:00
rlar 2809ccaa13 shrink scope of expr_w_temper 2017-04-09 14:06:27 +02:00
rlar e35429a222 inpcom.c, introduce rem_tlist() 2017-04-09 14:03:11 +02:00
rlar c600312d01 deploy devtlist/modtlist in struct circ 2017-04-09 13:59:53 +02:00
rlar f2f2b3b09a inp_evaluate_temper(), add struct circ argument 2017-04-09 13:49:43 +02:00
rlar ab409ad62e protect vec_free() and free_pnode() macro for use in non braced blocks
if ()
  vec_free()
2017-03-25 19:54:40 +01:00
rlar c7811a76df ngspice/fteext.h, whitespace and spelling 2017-03-25 19:41:32 +01:00
rlar cc15853b4f ngspice/ftedefs.h, whitespace and spelling 2017-03-25 19:11:33 +01:00
h_vogt d84387d449 CIDER, use controlled_exit(1) instead of exit(1) 2017-03-25 18:44:00 +01:00
rlar 33788f7052 remove excessive inp_evaluate_temper() prototypes 2017-03-22 21:47:43 +01:00
rlar bd50814677 drop 'depreciated_skip..()' 2017-03-19 20:13:11 +01:00
rlar 7a42510cc0 const'ify some 'skip'ing functions 2017-03-19 20:12:25 +01:00
rlar 45ad60b738 rename gettok_nc() --> nexttok(), and functionalize it 2017-03-19 20:11:01 +01:00