Jspice3
Main Page
Data Structures
Files
File List
Globals
pzsetp.c
Go to the documentation of this file.
1
/***************************************************************************
2
JSPICE3 adaptation of Spice3f2 - Copyright (c) Stephen R. Whiteley 1992
3
Copyright 1990 Regents of the University of California. All rights reserved.
4
Authors: 1985 Thomas L. Quarles
5
1993 Stephen R. Whiteley
6
****************************************************************************/
7
8
#include "
suffix.h
"
9
#include <stdio.h>
10
#include "
cktdefs.h
"
11
#include "
pzdefs.h
"
12
#include "
jobdefs.h
"
13
#include "
iferrmsg.h
"
14
15
16
/* ARGSUSED */
17
int
18
PZsetParm
(cktp,anal,which,value)
19
20
GENERIC
*cktp;
21
GENERIC
*anal;
22
int
which;
23
IFvalue
*value;
24
{
25
switch
(which) {
26
27
case
PZ_NODEI
:
28
((
PZAN
*)anal)->PZin_pos = ((
CKTnode
*)value->
nValue
)->number;
29
break
;
30
31
case
PZ_NODEG
:
32
((
PZAN
*)anal)->PZin_neg = ((
CKTnode
*)value->
nValue
)->number;
33
break
;
34
35
case
PZ_NODEJ
:
36
((
PZAN
*)anal)->PZout_pos = ((
CKTnode
*)value->
nValue
)->number;
37
break
;
38
39
case
PZ_NODEK
:
40
((
PZAN
*)anal)->PZout_neg = ((
CKTnode
*)value->
nValue
)->number;
41
break
;
42
43
case
PZ_V
:
44
if
(value->
iValue
) {
45
((
PZAN
*)anal)->PZinput_type =
PZ_IN_VOL
;
46
}
47
break
;
48
49
case
PZ_I
:
50
if
(value->
iValue
) {
51
((
PZAN
*)anal)->PZinput_type =
PZ_IN_CUR
;
52
}
53
break
;
54
55
case
PZ_POL
:
56
if
(value->
iValue
) {
57
((
PZAN
*)anal)->PZwhich =
PZ_DO_POLES
;
58
}
59
break
;
60
61
case
PZ_ZER
:
62
if
(value->
iValue
) {
63
((
PZAN
*)anal)->PZwhich =
PZ_DO_ZEROS
;
64
}
65
break
;
66
67
case
PZ_PZ
:
68
if
(value->
iValue
) {
69
((
PZAN
*)anal)->PZwhich =
PZ_DO_POLES
|
PZ_DO_ZEROS
;
70
}
71
break
;
72
73
default
:
74
return
(
E_BADPARM
);
75
}
76
return
(
OK
);
77
}
78
79
80
static
IFparm
PZparms
[] = {
81
{
"nodei"
,
PZ_NODEI
,
IF_SET
|
IF_ASK
|
IF_NODE
,
""
},
82
{
"nodeg"
,
PZ_NODEG
,
IF_SET
|
IF_ASK
|
IF_NODE
,
""
},
83
{
"nodej"
,
PZ_NODEJ
,
IF_SET
|
IF_ASK
|
IF_NODE
,
""
},
84
{
"nodek"
,
PZ_NODEK
,
IF_SET
|
IF_ASK
|
IF_NODE
,
""
},
85
{
"v"
,
PZ_V
,
IF_SET
|
IF_ASK
|
IF_FLAG
,
""
},
86
{
"i"
,
PZ_I
,
IF_SET
|
IF_ASK
|
IF_FLAG
,
""
},
87
{
"pol"
,
PZ_POL
,
IF_SET
|
IF_ASK
|
IF_FLAG
,
""
},
88
{
"zer"
,
PZ_ZER
,
IF_SET
|
IF_ASK
|
IF_FLAG
,
""
},
89
{
"pz"
,
PZ_PZ
,
IF_SET
|
IF_ASK
|
IF_FLAG
,
""
}
90
};
91
92
SPICEanalysis
PZinfo
= {
93
{
94
"PZ"
,
95
"pole-zero analysis"
,
96
97
sizeof
(
PZparms
)/
sizeof
(
IFparm
),
98
PZparms
99
},
100
sizeof
(
PZAN
),
101
NODOMAIN
,
102
PZparse
,
103
PZsetParm
,
104
PZaskQuest
,
105
PZan
106
};
cktdefs.h
PZ_NODEK
#define PZ_NODEK
Definition:
pzdefs.h:52
PZ_NODEG
#define PZ_NODEG
Definition:
pzdefs.h:50
NODOMAIN
#define NODOMAIN
Definition:
jobdefs.h:32
PZ_NODEJ
#define PZ_NODEJ
Definition:
pzdefs.h:51
sCKTnode
Definition:
cktdefs.h:30
IF_ASK
#define IF_ASK
Definition:
ifsim.h:136
E_BADPARM
#define E_BADPARM
Definition:
iferrmsg.h:26
uIFvalue::iValue
int iValue
Definition:
ifsim.h:232
jobdefs.h
pzdefs.h
PZsetParm
int PZsetParm(GENERIC *cktp, GENERIC *anal, int which, IFvalue *value)
Definition:
pzsetp.c:18
PZaskQuest
int PZaskQuest()
OK
#define OK
Definition:
iferrmsg.h:17
PZ_POL
#define PZ_POL
Definition:
pzdefs.h:55
IF_SET
#define IF_SET
Definition:
ifsim.h:135
PZparms
static IFparm PZparms[]
Definition:
pzsetp.c:80
uIFvalue::nValue
IFnode nValue
Definition:
ifsim.h:237
PZ_I
#define PZ_I
Definition:
pzdefs.h:54
PZ_V
#define PZ_V
Definition:
pzdefs.h:53
PZ_ZER
#define PZ_ZER
Definition:
pzdefs.h:56
PZinfo
SPICEanalysis PZinfo
Definition:
pzsetp.c:92
iferrmsg.h
PZ_DO_POLES
#define PZ_DO_POLES
Definition:
pzdefs.h:44
sIFparm
Definition:
ifsim.h:54
PZparse
int PZparse()
IF_FLAG
#define IF_FLAG
Definition:
ifsim.h:106
PZan
int PZan()
uIFvalue
Definition:
ifsim.h:231
PZ_DO_ZEROS
#define PZ_DO_ZEROS
Definition:
pzdefs.h:45
PZ_IN_VOL
#define PZ_IN_VOL
Definition:
pzdefs.h:46
SPICEanalysis
Definition:
jobdefs.h:11
suffix.h
PZ_PZ
#define PZ_PZ
Definition:
pzdefs.h:57
IF_NODE
#define IF_NODE
Definition:
ifsim.h:110
PZ_IN_CUR
#define PZ_IN_CUR
Definition:
pzdefs.h:47
PZ_NODEI
#define PZ_NODEI
Definition:
pzdefs.h:49
GENERIC
char GENERIC
Definition:
ifsim.h:27
PZAN
Definition:
pzdefs.h:23
src
lib
analysis
pzsetp.c
Generated by
1.8.11