1 /*********************************************************************** 2 3 HiSIM (Hiroshima University STARC IGFET Model) 4 Copyright (C) 2014 Hiroshima University & STARC 5 6 MODEL NAME : HiSIM 7 ( VERSION : 2 SUBVERSION : 8 REVISION : 0 ) 8 9 FILE : hsm2evalenv.h 10 11 Date : 2014.6.5 12 13 released by 14 Hiroshima University & 15 Semiconductor Technology Academic Research Center (STARC) 16 ***********************************************************************/ 17 18 #ifndef HSM2_EVAL_ENV_H 19 #define HSM2_EVAL_ENV_H 20 21 /* macros and constants used in hsm2eval2yz.c */ 22 23 /*---------------------------------------------------* 24 * Numerical constants. (macro) 25 *-----------------*/ 26 27 /* machine epsilon */ 28 #if defined(_FLOAT_H) && defined(DBL_EPSILON) 29 #define C_EPS_M (DBL_EPSILON) 30 #else 31 #define C_EPS_M (2.2204460492503131e-16) 32 #endif 33 34 #define MAX_EXP 5.834617425e14 35 #define MIN_EXP 1.713908431e-15 36 #define EXP_THR 34.0 37 38 /* sqrt(2) */ 39 #define C_SQRT_2 (1.414213562373095e+00) 40 41 /* 1/3 */ 42 #define C_1o3 (3.333333333333333e-01) 43 /* 2/3 */ 44 #define C_2o3 (6.666666666666667e-01) 45 /* 2^(1/3) */ 46 #define C_2p_1o3 (1.259921049894873e+00) 47 48 /* Pi */ 49 #define C_Pi (3.141592653589793) 50 #define C_Pio2 (1.570796326794897) 51 52 /* Unit change */ 53 #define C_m2cm (1.0e2) 54 #define C_m2cm_p2 (1.0e4) 55 #define C_m2cm_p1o2 (1.0e1) 56 #define C_m2um (1.0e6) 57 #define C_cm2m_p3 (1.0e-6) 58 #define C_vmax (1.0e5) 59 #define C_E0_p2 (1.0e9) 60 61 /*---------------------------------------------------* 62 * Physical constants/properties. (macro) 63 *-----------------*/ 64 /* Elemental charge */ 65 #define C_QE (1.6021918e-19) 66 67 /* Boltzmann constant */ 68 #define C_KB (1.3806226e-23) 69 70 /* Permitivity of Si, SiO2 and vacuum */ 71 #define C_ESI (1.034943e-10) 72 #define C_EOX (3.453133e-11) 73 #define C_VAC (8.8541878e-12) 74 75 /* Room temperature constants */ 76 #define C_T300 (300e+00) 77 #define C_b300 (3.868283e+01) 78 /* #define C_Eg0 (1.1785e0) */ /*changed to parameter sIN.eg0*/ 79 80 /* Build-in potential */ 81 /*#define C_Vbi (1.0e0)*/ /* changed to parameter sIN.vbi */ 82 83 84 /* Intrinsic carrier density at 300K */ 85 #define C_Nin0 (1.04e+16) 86 87 88 /*---------------------------------------------------* 89 * Functions. (macro) Take care of the arguments. 90 *-----------------*/ 91 #define Fn_Sqr(x) ( (x)*(x) ) /* x^2 */ 92 #define Fn_Max(x,y) ( (x) >= (y) ? (x) : (y) ) /* max[x,y] */ 93 #define Fn_Min(x,y) ( (x) <= (y) ? (x) : (y) ) /* min[x,y] */ 94 #define Fn_Sgn(x) ( (x) >= 0 ? (1) : (-1) ) /* sign[x] */ 95 96 #endif /* HSM2_EVAL_ENV_H */ 97