Jspice3
Main Page
Data Structures
Files
File List
Globals
distodef.h
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: 1988 Jaijeet S Roychowdhury
5
1992 Stephen R. Whiteley
6
****************************************************************************/
7
8
#ifndef DISTODEF
9
#define DISTODEF
10
11
#ifdef D_DBG_ALLTIMES
12
#define D_DBG_BLOCKTIMES
13
#define D_DBG_SMALLTIMES
14
#endif
15
16
/* structure for passing a large number of values */
17
typedef
struct
{
18
19
double
cxx
;
20
double
cyy
;
21
double
czz
;
22
double
cxy
;
23
double
cyz
;
24
double
cxz
;
25
double
cxxx
;
26
double
cyyy
;
27
double
czzz
;
28
double
cxxy
;
29
double
cxxz
;
30
double
cxyy
;
31
double
cyyz
;
32
double
cxzz
;
33
double
cyzz
;
34
double
cxyz
;
35
double
r1h1x
;
36
double
i1h1x
;
37
double
r1h1y
;
38
double
i1h1y
;
39
double
r1h1z
;
40
double
i1h1z
;
41
double
r1h2x
;
42
double
i1h2x
;
43
double
r1h2y
;
44
double
i1h2y
;
45
double
r1h2z
;
46
double
i1h2z
;
47
double
r2h11x
;
48
double
i2h11x
;
49
double
r2h11y
;
50
double
i2h11y
;
51
double
r2h11z
;
52
double
i2h11z
;
53
double
h2f1f2x
;
54
double
ih2f1f2x
;
55
double
h2f1f2y
;
56
double
ih2f1f2y
;
57
double
h2f1f2z
;
58
double
ih2f1f2z
;
59
60
}
DpassStr
;
61
62
63
/* structure to keep derivatives of upto 3rd order w.r.t 3 variables */
64
typedef
struct
{
65
66
double
value
;
67
double
d1_p
;
68
double
d1_q
;
69
double
d1_r
;
70
double
d2_p2
;
71
double
d2_q2
;
72
double
d2_r2
;
73
double
d2_pq
;
74
double
d2_qr
;
75
double
d2_pr
;
76
double
d3_p3
;
77
double
d3_q3
;
78
double
d3_r3
;
79
double
d3_p2q
;
80
double
d3_p2r
;
81
double
d3_pq2
;
82
double
d3_q2r
;
83
double
d3_pr2
;
84
double
d3_qr2
;
85
double
d3_pqr
;
86
87
}
Dderivs
;
88
89
/* structure used to describe an DISTO analysis to be performed */
90
typedef
struct
{
91
int
JOBtype
;
92
JOB
*
JOBnextJob
;
/* pointer to next thing to do */
93
char
*
JOBname
;
/* name of this job */
94
double
DstartF1
;
/* the start value of the higher frequency for
95
distortion analysis */
96
double
DstopF1
;
/* the stop value ove above */
97
double
DfreqDelta
;
/* multiplier for decade/octave stepping, */
98
/* step for linear steps. */
99
double
DsaveF1
;
/* frequency at which we left off last time*/
100
int
DstepType
;
/* values described below */
101
int
DnumSteps
;
102
int
Df2wanted
;
/* set if f2overf1 is given in the disto command */
103
int
Df2given
;
/* set if at least 1 source has an f2 input */
104
double
Df2ovrF1
;
/* ratio of f2 over f1 if 2 frequencies given
105
should be < 1 */
106
double
Domega1
;
/* current omega1 */
107
double
Domega2
;
/* current omega2 */
108
109
double
*
r1H1ptr
;
110
double
*
i1H1ptr
;
111
double
*
r2H11ptr
;
112
double
*
i2H11ptr
;
113
double
*
r3H11ptr
;
114
double
*
i3H11ptr
;
115
double
*
r1H2ptr
;
/* distortion analysis Volterra transforms */
116
double
*
i1H2ptr
;
117
double
*
r2H12ptr
;
118
double
*
i2H12ptr
;
119
double
*
r2H1m2ptr
;
120
double
*
i2H1m2ptr
;
121
double
*
r3H1m2ptr
;
122
double
*
i3H1m2ptr
;
123
124
double
**
r1H1stor
;
125
double
**
i1H1stor
;
126
double
**
r2H11stor
;
127
double
**
i2H11stor
;
128
double
**
r3H11stor
;
129
double
**
i3H11stor
;
/*these store computed values*/
130
double
**
r1H2stor
;
/* for the plots */
131
double
**
i1H2stor
;
132
double
**
r2H12stor
;
133
double
**
i2H12stor
;
134
double
**
r2H1m2stor
;
135
double
**
i2H1m2stor
;
136
double
**
r3H1m2stor
;
137
double
**
i3H1m2stor
;
138
}
DISTOAN
;
139
140
/* available step types: */
141
142
#define DECADE 1
143
#define OCTAVE 2
144
#define LINEAR 3
145
146
/* defns. used in DsetParm */
147
148
#define D_DEC 1
149
#define D_OCT 2
150
#define D_LIN 3
151
#define D_START 4
152
#define D_STOP 5
153
#define D_STEPS 6
154
#define D_F2OVRF1 7
155
156
/* defns. used by CKTdisto for calling different functions */
157
158
#define D_SETUP 1
159
#define D_F1 2
160
#define D_F2 3
161
#define D_TWOF1 4
162
#define D_THRF1 5
163
#define D_F1PF2 6
164
#define D_F1MF2 7
165
#define D_2F1MF2 8
166
#define D_RHSF1 9
167
#define D_RHSF2 10
168
169
#endif
/* DISTODEFS */
Dderivs::d2_pr
double d2_pr
Definition:
distodef.h:75
Dderivs::d3_pr2
double d3_pr2
Definition:
distodef.h:83
DpassStr::r1h1z
double r1h1z
Definition:
distodef.h:39
DpassStr::cxxy
double cxxy
Definition:
distodef.h:28
DISTOAN::i3H11stor
double ** i3H11stor
Definition:
distodef.h:129
DpassStr::r1h2z
double r1h2z
Definition:
distodef.h:45
Dderivs::d3_pq2
double d3_pq2
Definition:
distodef.h:81
DISTOAN::DfreqDelta
double DfreqDelta
Definition:
distodef.h:97
Dderivs::d3_p3
double d3_p3
Definition:
distodef.h:76
DpassStr::r1h2y
double r1h2y
Definition:
distodef.h:43
DpassStr::ih2f1f2y
double ih2f1f2y
Definition:
distodef.h:56
Dderivs::d1_q
double d1_q
Definition:
distodef.h:68
Dderivs::d2_pq
double d2_pq
Definition:
distodef.h:73
DISTOAN::i3H1m2stor
double ** i3H1m2stor
Definition:
distodef.h:137
DISTOAN::i1H2ptr
double * i1H2ptr
Definition:
distodef.h:116
DpassStr::ih2f1f2x
double ih2f1f2x
Definition:
distodef.h:54
DpassStr::cyy
double cyy
Definition:
distodef.h:20
DISTOAN::JOBtype
int JOBtype
Definition:
distodef.h:91
DpassStr::cxyy
double cxyy
Definition:
distodef.h:30
DpassStr::r1h2x
double r1h2x
Definition:
distodef.h:41
Dderivs::d3_pqr
double d3_pqr
Definition:
distodef.h:85
DISTOAN::r1H1ptr
double * r1H1ptr
Definition:
distodef.h:109
DpassStr
Definition:
distodef.h:17
DISTOAN::r2H12ptr
double * r2H12ptr
Definition:
distodef.h:117
DpassStr::cyyz
double cyyz
Definition:
distodef.h:31
Dderivs::d2_r2
double d2_r2
Definition:
distodef.h:72
DpassStr::r1h1x
double r1h1x
Definition:
distodef.h:35
DISTOAN::i2H12stor
double ** i2H12stor
Definition:
distodef.h:133
DISTOAN::r2H1m2stor
double ** r2H1m2stor
Definition:
distodef.h:134
DISTOAN::r2H1m2ptr
double * r2H1m2ptr
Definition:
distodef.h:119
sJOB
Definition:
cktdefs.h:23
DISTOAN::DnumSteps
int DnumSteps
Definition:
distodef.h:101
DISTOAN::r3H11ptr
double * r3H11ptr
Definition:
distodef.h:113
DpassStr::r2h11y
double r2h11y
Definition:
distodef.h:49
DISTOAN::r1H2ptr
double * r1H2ptr
Definition:
distodef.h:115
DISTOAN::DstartF1
double DstartF1
Definition:
distodef.h:94
DISTOAN::i3H1m2ptr
double * i3H1m2ptr
Definition:
distodef.h:122
DISTOAN::DstepType
int DstepType
Definition:
distodef.h:100
DpassStr::cyyy
double cyyy
Definition:
distodef.h:26
DpassStr::czzz
double czzz
Definition:
distodef.h:27
DISTOAN::JOBname
char * JOBname
Definition:
distodef.h:93
DpassStr::i2h11y
double i2h11y
Definition:
distodef.h:50
Dderivs::d3_p2r
double d3_p2r
Definition:
distodef.h:80
DISTOAN::i2H11stor
double ** i2H11stor
Definition:
distodef.h:127
DpassStr::h2f1f2z
double h2f1f2z
Definition:
distodef.h:57
DpassStr::i1h1z
double i1h1z
Definition:
distodef.h:40
Dderivs::d2_qr
double d2_qr
Definition:
distodef.h:74
DpassStr::cxx
double cxx
Definition:
distodef.h:19
DISTOAN::i2H1m2ptr
double * i2H1m2ptr
Definition:
distodef.h:120
Dderivs::d1_r
double d1_r
Definition:
distodef.h:69
Dderivs::d1_p
double d1_p
Definition:
distodef.h:67
Dderivs::d3_qr2
double d3_qr2
Definition:
distodef.h:84
DISTOAN::Df2given
int Df2given
Definition:
distodef.h:103
DISTOAN::Domega2
double Domega2
Definition:
distodef.h:107
DISTOAN::i2H12ptr
double * i2H12ptr
Definition:
distodef.h:118
DpassStr::cxyz
double cxyz
Definition:
distodef.h:34
DISTOAN::DstopF1
double DstopF1
Definition:
distodef.h:96
DISTOAN::r2H12stor
double ** r2H12stor
Definition:
distodef.h:132
DISTOAN::r1H2stor
double ** r1H2stor
Definition:
distodef.h:130
Dderivs::d3_q3
double d3_q3
Definition:
distodef.h:77
DpassStr::i1h1y
double i1h1y
Definition:
distodef.h:38
DpassStr::r1h1y
double r1h1y
Definition:
distodef.h:37
DpassStr::cxz
double cxz
Definition:
distodef.h:24
DpassStr::cxxx
double cxxx
Definition:
distodef.h:25
DpassStr::cyz
double cyz
Definition:
distodef.h:23
DISTOAN::r2H11ptr
double * r2H11ptr
Definition:
distodef.h:111
DISTOAN::i2H11ptr
double * i2H11ptr
Definition:
distodef.h:112
DpassStr::ih2f1f2z
double ih2f1f2z
Definition:
distodef.h:58
DpassStr::i2h11z
double i2h11z
Definition:
distodef.h:52
DpassStr::h2f1f2y
double h2f1f2y
Definition:
distodef.h:55
DISTOAN::r2H11stor
double ** r2H11stor
Definition:
distodef.h:126
DISTOAN::i1H2stor
double ** i1H2stor
Definition:
distodef.h:131
Dderivs::d3_q2r
double d3_q2r
Definition:
distodef.h:82
DpassStr::h2f1f2x
double h2f1f2x
Definition:
distodef.h:53
DISTOAN::r3H1m2stor
double ** r3H1m2stor
Definition:
distodef.h:136
DpassStr::i1h1x
double i1h1x
Definition:
distodef.h:36
DISTOAN
Definition:
distodef.h:90
DISTOAN::Df2wanted
int Df2wanted
Definition:
distodef.h:102
DpassStr::i1h2y
double i1h2y
Definition:
distodef.h:44
DISTOAN::r3H11stor
double ** r3H11stor
Definition:
distodef.h:128
DISTOAN::r3H1m2ptr
double * r3H1m2ptr
Definition:
distodef.h:121
DpassStr::i1h2x
double i1h2x
Definition:
distodef.h:42
DpassStr::cxxz
double cxxz
Definition:
distodef.h:29
DpassStr::czz
double czz
Definition:
distodef.h:21
DpassStr::cxy
double cxy
Definition:
distodef.h:22
DISTOAN::i2H1m2stor
double ** i2H1m2stor
Definition:
distodef.h:135
Dderivs::value
double value
Definition:
distodef.h:66
DISTOAN::Df2ovrF1
double Df2ovrF1
Definition:
distodef.h:104
Dderivs
Definition:
distodef.h:64
Dderivs::d3_r3
double d3_r3
Definition:
distodef.h:78
DISTOAN::DsaveF1
double DsaveF1
Definition:
distodef.h:99
DpassStr::r2h11x
double r2h11x
Definition:
distodef.h:47
DpassStr::i1h2z
double i1h2z
Definition:
distodef.h:46
DISTOAN::JOBnextJob
JOB * JOBnextJob
Definition:
distodef.h:92
Dderivs::d3_p2q
double d3_p2q
Definition:
distodef.h:79
DISTOAN::i1H1ptr
double * i1H1ptr
Definition:
distodef.h:110
Dderivs::d2_q2
double d2_q2
Definition:
distodef.h:71
DISTOAN::Domega1
double Domega1
Definition:
distodef.h:106
DpassStr::cxzz
double cxzz
Definition:
distodef.h:32
DISTOAN::i1H1stor
double ** i1H1stor
Definition:
distodef.h:125
DISTOAN::i3H11ptr
double * i3H11ptr
Definition:
distodef.h:114
DpassStr::r2h11z
double r2h11z
Definition:
distodef.h:51
DISTOAN::r1H1stor
double ** r1H1stor
Definition:
distodef.h:124
DpassStr::cyzz
double cyzz
Definition:
distodef.h:33
Dderivs::d2_p2
double d2_p2
Definition:
distodef.h:70
DpassStr::i2h11x
double i2h11x
Definition:
distodef.h:48
src
include
distodef.h
Generated by
1.8.11