1 /*
2  * 2001 Paolo Nenzi
3  */
4 
5 #ifndef ngspice_TWODDEFS_H
6 #define ngspice_TWODDEFS_H
7 
8 /* Debug statements */
9 
10 extern BOOLEAN TWOacDebug;
11 extern BOOLEAN TWOdcDebug;
12 extern BOOLEAN TWOtranDebug;
13 extern BOOLEAN TWOjacDebug;
14 
15 /* Now some defines for the two dimensional simulator
16  * library.
17  * Theese defines were gathered from all the code in
18  * oned directory.
19  */
20 
21 
22 /* Temporary hack to remove NUMOS gate special case */
23 #ifdef NORMAL_GATE
24 #define GateTypeAdmittance oxideAdmittance
25 #else
26 #define GateTypeAdmittance contactAdmittance
27 #endif				/* NORMAL_GATE */
28 
29 /* Temporary hack to remove NUMOS gate special case */
30 #ifdef NORMAL_GATE
31 #define GateTypeConductance oxideConductance
32 #define GateTypeCurrent oxideCurrent
33 #else
34 #define GateTypeConductance contactConductance
35 #define GateTypeCurrent contactCurrent
36 #endif /* NORMAL_GATE */
37 
38  /* This structure was moved up from twoadmit.c */
39 struct mosAdmittances {
40     SPcomplex yIdVdb;
41     SPcomplex yIdVsb;
42     SPcomplex yIdVgb;
43     SPcomplex yIsVdb;
44     SPcomplex yIsVsb;
45     SPcomplex yIsVgb;
46     SPcomplex yIgVdb;
47     SPcomplex yIgVsb;
48     SPcomplex yIgVgb;
49 };
50 
51 #define MAXTERMINALS 5  /* One more than max number of terminals */
52 #define ELCT_ID poiEqn
53 
54 #define MIN_DELV 1e-3
55 #define NORM_RED_MAXITERS 10
56 
57 #endif
58