Jspice3
Main Page
Data Structures
Files
File List
Globals
swmparam.c
Go to the documentation of this file.
1
/***************************************************************************
2
JSPICE3 adaptation of Spice3e2 - Copyright (c) Stephen R. Whiteley 1992
3
Copyright 1990 Regents of the University of California. All rights reserved.
4
Authors: 1985 Gordon M. Jacobs
5
1992 Stephen R. Whiteley
6
****************************************************************************/
7
8
#include "
spice.h
"
9
#include <stdio.h>
10
#include "
swdefs.h
"
11
#include "
sperror.h
"
12
#include "
util.h
"
13
14
15
int
16
SWmParam
(param,value,inModel)
17
18
int param;
19
IFvalue
*value;
20
GENmodel
*inModel;
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
}
SW_MOD_IHYS
#define SW_MOD_IHYS
Definition:
swdefs.h:103
sSWmodel::SWiHysteresis
double SWiHysteresis
Definition:
swdefs.h:71
sSWmodel::SWiHystGiven
unsigned SWiHystGiven
Definition:
swdefs.h:81
SW_MOD_VTH
#define SW_MOD_VTH
Definition:
swdefs.h:100
E_BADPARM
#define E_BADPARM
Definition:
iferrmsg.h:26
sSWmodel::SWonGiven
unsigned SWonGiven
Definition:
swdefs.h:76
TRUE
#define TRUE
Definition:
util.h:27
swdefs.h
SW_MOD_SW
#define SW_MOD_SW
Definition:
swdefs.h:97
uIFvalue::rValue
double rValue
Definition:
ifsim.h:233
sSWmodel::SWonResistance
double SWonResistance
Definition:
swdefs.h:66
sSWmodel::SWiThreshGiven
unsigned SWiThreshGiven
Definition:
swdefs.h:80
SW_MOD_RON
#define SW_MOD_RON
Definition:
swdefs.h:98
SWmParam
int SWmParam(int param, IFvalue *value, GENmodel *inModel)
Definition:
swmparam.c:16
sSWmodel::SWoffGiven
unsigned SWoffGiven
Definition:
swdefs.h:77
OK
#define OK
Definition:
iferrmsg.h:17
sSWmodel::SWvHysteresis
double SWvHysteresis
Definition:
swdefs.h:69
sSWmodel
Definition:
swdefs.h:58
sSWmodel::SWvThreshold
double SWvThreshold
Definition:
swdefs.h:68
sperror.h
sSWmodel::SWonConduct
double SWonConduct
Definition:
swdefs.h:72
util.h
spice.h
sGENmodel
Definition:
gendefs.h:39
SW_MOD_ROFF
#define SW_MOD_ROFF
Definition:
swdefs.h:99
model
static char model[32]
Definition:
subckt.c:76
sSWmodel::SWvHystGiven
unsigned SWvHystGiven
Definition:
swdefs.h:79
FABS
#define FABS(a)
Definition:
util.h:41
SW_MOD_VHYS
#define SW_MOD_VHYS
Definition:
swdefs.h:101
uIFvalue
Definition:
ifsim.h:231
sSWmodel::SWiThreshold
double SWiThreshold
Definition:
swdefs.h:70
SW_MOD_ITH
#define SW_MOD_ITH
Definition:
swdefs.h:102
sSWmodel::SWoffConduct
double SWoffConduct
Definition:
swdefs.h:73
sSWmodel::SWoffResistance
double SWoffResistance
Definition:
swdefs.h:67
sSWmodel::SWvThreshGiven
unsigned SWvThreshGiven
Definition:
swdefs.h:78
src
lib
dev
sw
swmparam.c
Generated by
1.8.11