Jspice3
Main Page
Data Structures
Files
File List
Globals
pzaskq.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 "
iferrmsg.h
"
13
#include "
cktext.h
"
14
15
16
/* ARGSUSED */
17
int
18
PZaskQuest
(cktp,anal,which,value)
19
20
GENERIC
*cktp;
21
GENERIC
*anal;
22
int
which;
23
IFvalue
*value;
24
{
25
CKTcircuit
*ckt = (
CKTcircuit
*)cktp;
26
27
switch
(which) {
28
29
case
PZ_NODEI
:
30
value->
nValue
= (
IFnode
)
CKTnum2nod
(ckt,((
PZAN
*)anal)->PZin_pos);
31
break
;
32
33
case
PZ_NODEG
:
34
value->
nValue
= (
IFnode
)
CKTnum2nod
(ckt,((
PZAN
*)anal)->PZin_neg);
35
break
;
36
37
case
PZ_NODEJ
:
38
value->
nValue
= (
IFnode
)
CKTnum2nod
(ckt,((
PZAN
*)anal)->PZout_pos);
39
break
;
40
41
case
PZ_NODEK
:
42
value->
nValue
= (
IFnode
)
CKTnum2nod
(ckt,((
PZAN
*)anal)->PZout_neg);
43
break
;
44
45
case
PZ_V
:
46
if
( ((
PZAN
*)anal)->PZinput_type ==
PZ_IN_VOL
) {
47
value->
iValue
=1;
48
}
49
else
{
50
value->
iValue
=0;
51
}
52
break
;
53
54
case
PZ_I
:
55
if
( ((
PZAN
*)anal)->PZinput_type ==
PZ_IN_CUR
) {
56
value->
iValue
=1;
57
}
58
else
{
59
value->
iValue
=0;
60
}
61
break
;
62
63
case
PZ_POL
:
64
if
( ((
PZAN
*)anal)->PZwhich ==
PZ_DO_POLES
) {
65
value->
iValue
=1;
66
}
67
else
{
68
value->
iValue
=0;
69
}
70
break
;
71
72
case
PZ_ZER
:
73
if
( ((
PZAN
*)anal)->PZwhich ==
PZ_DO_ZEROS
) {
74
value->
iValue
=1;
75
}
76
else
{
77
value->
iValue
=0;
78
}
79
break
;
80
81
case
PZ_PZ
:
82
if
( ((
PZAN
*)anal)->PZwhich ==
PZ_DO_POLES
|
PZ_DO_ZEROS
) {
83
value->
iValue
=1;
84
}
85
else
{
86
value->
iValue
=0;
87
}
88
break
;
89
90
default
:
91
return
(
E_BADPARM
);
92
}
93
return
(
OK
);
94
}
cktdefs.h
PZ_NODEK
#define PZ_NODEK
Definition:
pzdefs.h:52
PZ_NODEG
#define PZ_NODEG
Definition:
pzdefs.h:50
CKTcircuit
Definition:
cktdefs.h:62
PZ_NODEJ
#define PZ_NODEJ
Definition:
pzdefs.h:51
E_BADPARM
#define E_BADPARM
Definition:
iferrmsg.h:26
CKTnum2nod
CKTnode * CKTnum2nod()
uIFvalue::iValue
int iValue
Definition:
ifsim.h:232
pzdefs.h
OK
#define OK
Definition:
iferrmsg.h:17
PZ_POL
#define PZ_POL
Definition:
pzdefs.h:55
IFnode
GENERIC * IFnode
Definition:
ifsim.h:220
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
iferrmsg.h
PZ_DO_POLES
#define PZ_DO_POLES
Definition:
pzdefs.h:44
cktext.h
PZaskQuest
int PZaskQuest(GENERIC *cktp, GENERIC *anal, int which, IFvalue *value)
Definition:
pzaskq.c:18
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
suffix.h
PZ_PZ
#define PZ_PZ
Definition:
pzdefs.h:57
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
pzaskq.c
Generated by
1.8.11