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