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

Go to the source code of this file.

Functions

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

Function Documentation

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

Definition at line 16 of file swmparam.c.

21 {
22  SWmodel *model = (SWmodel *)inModel;
23 
24  switch (param) {
25 
26  case SW_MOD_SW:
27  /* just says that this is a switch */
28  break;
29  case SW_MOD_RON:
30  model->SWonResistance = value->rValue;
31  model->SWonConduct = 1.0/(value->rValue);
32  model->SWonGiven = TRUE;
33  break;
34  case SW_MOD_ROFF:
35  model->SWoffResistance = value->rValue;
36  model->SWoffConduct = 1.0/(value->rValue);
37  model->SWoffGiven = TRUE;
38  break;
39  case SW_MOD_VTH:
40  model->SWvThreshold = value->rValue;
41  model->SWvThreshGiven = TRUE;
42  break;
43  case SW_MOD_VHYS:
44  /* take absolute value of hysteresis voltage */
45  model->SWvHysteresis = FABS(value->rValue);
46  model->SWvHystGiven = TRUE;
47  break;
48  case SW_MOD_ITH:
49  model->SWiThreshold = value->rValue;
50  model->SWiThreshGiven = TRUE;
51  break;
52  case SW_MOD_IHYS:
53  /* take absolute value of hysteresis current */
54  model->SWiHysteresis = FABS(value->rValue);
55  model->SWiHystGiven = TRUE;
56  break;
57  default:
58  return(E_BADPARM);
59  }
60  return(OK);
61 }
#define SW_MOD_IHYS
Definition: swdefs.h:103
double SWiHysteresis
Definition: swdefs.h:71
unsigned SWiHystGiven
Definition: swdefs.h:81
#define SW_MOD_VTH
Definition: swdefs.h:100
#define E_BADPARM
Definition: iferrmsg.h:26
unsigned SWonGiven
Definition: swdefs.h:76
#define TRUE
Definition: util.h:27
#define SW_MOD_SW
Definition: swdefs.h:97
double rValue
Definition: ifsim.h:233
double SWonResistance
Definition: swdefs.h:66
unsigned SWiThreshGiven
Definition: swdefs.h:80
#define SW_MOD_RON
Definition: swdefs.h:98
unsigned SWoffGiven
Definition: swdefs.h:77
#define OK
Definition: iferrmsg.h:17
double SWvHysteresis
Definition: swdefs.h:69
double SWvThreshold
Definition: swdefs.h:68
double SWonConduct
Definition: swdefs.h:72
#define SW_MOD_ROFF
Definition: swdefs.h:99
static char model[32]
Definition: subckt.c:76
unsigned SWvHystGiven
Definition: swdefs.h:79
#define FABS(a)
Definition: util.h:41
#define SW_MOD_VHYS
Definition: swdefs.h:101
double SWiThreshold
Definition: swdefs.h:70
#define SW_MOD_ITH
Definition: swdefs.h:102
double SWoffConduct
Definition: swdefs.h:73
double SWoffResistance
Definition: swdefs.h:67
unsigned SWvThreshGiven
Definition: swdefs.h:78