Jspice3
mesmpar.c File Reference
#include "spice.h"
#include <stdio.h>
#include "mesdefs.h"
#include "sperror.h"
#include "util.h"
Include dependency graph for mesmpar.c:

Go to the source code of this file.

Functions

int MESmParam (int param, IFvalue *value, GENmodel *inModel)
 

Function Documentation

int MESmParam ( int  param,
IFvalue value,
GENmodel inModel 
)

Definition at line 16 of file mesmpar.c.

21 {
22  MESmodel *model = (MESmodel*)inModel;
23 
24  switch (param) {
25 
26  case MES_MOD_VTO:
27  model->MESthresholdGiven = TRUE;
28  model->MESthreshold = value->rValue;
29  break;
30  case MES_MOD_ALPHA:
31  model->MESalphaGiven = TRUE;
32  model->MESalpha = value->rValue;
33  break;
34  case MES_MOD_BETA:
35  model->MESbetaGiven = TRUE;
36  model->MESbeta = value->rValue;
37  break;
38  case MES_MOD_LAMBDA:
39  model->MESlModulationGiven = TRUE;
40  model->MESlModulation = value->rValue;
41  break;
42  case MES_MOD_B:
43  model->MESbGiven = TRUE;
44  model->MESb = value->rValue;
45  break;
46  case MES_MOD_RD:
47  model->MESdrainResistGiven = TRUE;
48  model->MESdrainResist = value->rValue;
49  break;
50  case MES_MOD_RS:
51  model->MESsourceResistGiven = TRUE;
52  model->MESsourceResist = value->rValue;
53  break;
54  case MES_MOD_CGS:
55  model->MEScapGSGiven = TRUE;
56  model->MEScapGS = value->rValue;
57  break;
58  case MES_MOD_CGD:
59  model->MEScapGDGiven = TRUE;
60  model->MEScapGD = value->rValue;
61  break;
62  case MES_MOD_PB:
63  model->MESgatePotentialGiven = TRUE;
64  model->MESgatePotential = value->rValue;
65  break;
66  case MES_MOD_IS:
68  model->MESgateSatCurrent = value->rValue;
69  break;
70  case MES_MOD_FC:
72  model->MESdepletionCapCoeff = value->rValue;
73  break;
74  case MES_MOD_NMF:
75  if(value->iValue) {
76  model->MEStype = NMF;
77  }
78  break;
79  case MES_MOD_PMF:
80  if(value->iValue) {
81  model->MEStype = PMF;
82  }
83  break;
84  case MES_MOD_KF:
85  model->MESfNcoefGiven = TRUE;
86  model->MESfNcoef = value->rValue;
87  break;
88  case MES_MOD_AF:
89  model->MESfNexpGiven = TRUE;
90  model->MESfNexp = value->rValue;
91  break;
92  default:
93  return (E_BADPARM);
94  }
95  return (OK);
96 }
#define MES_MOD_PMF
Definition: mesdefs.h:239
int MEStype
Definition: mesdefs.h:166
#define NMF
Definition: mesdefs.h:211
unsigned MESfNexpGiven
Definition: mesdefs.h:204
#define MES_MOD_IS
Definition: mesdefs.h:236
unsigned MEScapGSGiven
Definition: mesdefs.h:198
unsigned MESfNcoefGiven
Definition: mesdefs.h:203
double MESsourceResist
Definition: mesdefs.h:174
unsigned MESsourceResistGiven
Definition: mesdefs.h:197
unsigned MEScapGDGiven
Definition: mesdefs.h:199
double MESlModulation
Definition: mesdefs.h:171
double MESfNexp
Definition: mesdefs.h:181
#define MES_MOD_AF
Definition: mesdefs.h:241
double MESdrainResist
Definition: mesdefs.h:173
#define E_BADPARM
Definition: iferrmsg.h:26
unsigned MESgateSatCurrentGiven
Definition: mesdefs.h:201
double MESdepletionCapCoeff
Definition: mesdefs.h:179
#define TRUE
Definition: util.h:27
unsigned MESlModulationGiven
Definition: mesdefs.h:194
int iValue
Definition: ifsim.h:232
double MEScapGS
Definition: mesdefs.h:175
double MESalpha
Definition: mesdefs.h:169
double rValue
Definition: ifsim.h:233
unsigned MESthresholdGiven
Definition: mesdefs.h:191
unsigned MESbetaGiven
Definition: mesdefs.h:193
#define MES_MOD_ALPHA
Definition: mesdefs.h:227
#define MES_MOD_LAMBDA
Definition: mesdefs.h:229
#define MES_MOD_RD
Definition: mesdefs.h:231
#define OK
Definition: iferrmsg.h:17
unsigned MESdepletionCapCoeffGiven
Definition: mesdefs.h:202
#define MES_MOD_BETA
Definition: mesdefs.h:228
#define MES_MOD_PB
Definition: mesdefs.h:235
unsigned MESbGiven
Definition: mesdefs.h:195
double MESgatePotential
Definition: mesdefs.h:177
#define MES_MOD_RS
Definition: mesdefs.h:232
double MESb
Definition: mesdefs.h:172
#define PMF
Definition: mesdefs.h:212
double MESthreshold
Definition: mesdefs.h:168
static char model[32]
Definition: subckt.c:76
unsigned MESgatePotentialGiven
Definition: mesdefs.h:200
#define MES_MOD_B
Definition: mesdefs.h:230
unsigned MESdrainResistGiven
Definition: mesdefs.h:196
double MEScapGD
Definition: mesdefs.h:176
#define MES_MOD_FC
Definition: mesdefs.h:237
#define MES_MOD_KF
Definition: mesdefs.h:240
#define MES_MOD_VTO
Definition: mesdefs.h:226
#define MES_MOD_CGS
Definition: mesdefs.h:233
#define MES_MOD_CGD
Definition: mesdefs.h:234
unsigned MESalphaGiven
Definition: mesdefs.h:192
double MESbeta
Definition: mesdefs.h:170
double MESfNcoef
Definition: mesdefs.h:180
#define MES_MOD_NMF
Definition: mesdefs.h:238
double MESgateSatCurrent
Definition: mesdefs.h:178