Jspice3
Main Page
Data Structures
Files
File List
Globals
tfsetp.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 "
spice.h
"
9
#include <stdio.h>
10
#include "
cktdefs.h
"
11
#include "
tfdefs.h
"
12
#include "
jobdefs.h
"
13
#include "
iferrmsg.h
"
14
#include "
util.h
"
15
#include "
cktext.h
"
16
17
18
/* ARGSUSED */
19
int
20
TFsetParm
(cktp,anal,which,value)
21
22
GENERIC
*cktp;
23
GENERIC
*anal;
24
int
which;
25
IFvalue
*value;
26
{
27
TFAN
*job = (
TFAN
*) anal;
28
29
switch
(which) {
30
31
case
TF_OUTPOS
:
32
job->
TFoutPos
= (
CKTnode
*)value->
nValue
;
33
job->
TFoutIsV
=
TRUE
;
34
job->
TFoutIsI
=
FALSE
;
35
break
;
36
37
case
TF_OUTNEG
:
38
job->
TFoutNeg
= (
CKTnode
*)value->
nValue
;
39
job->
TFoutIsV
=
TRUE
;
40
job->
TFoutIsI
=
FALSE
;
41
break
;
42
43
case
TF_OUTNAME
:
44
job->
TFoutName
= value->
sValue
;
45
break
;
46
47
case
TF_OUTSRC
:
48
job->
TFoutSrc
= value->
uValue
;
49
job->
TFoutIsV
=
FALSE
;
50
job->
TFoutIsI
=
TRUE
;
51
break
;
52
53
case
TF_INSRC
:
54
job->
TFinSrc
= value->
uValue
;
55
break
;
56
57
default
:
58
if
(
ACsetp
(&job->
AC
,which,value) ==
OK
)
59
return
(
OK
);
60
if
(
DCTsetp
(&job->
DC
,which,value) ==
OK
)
61
return
(
OK
);
62
return
(
E_BADPARM
);
63
}
64
return
(
OK
);
65
}
66
67
68
static
IFparm
TFparms
[] = {
69
{
"outpos"
,
TF_OUTPOS
,
IFP
|
IF_NODE
,
"Positive output node"
},
70
{
"outneg"
,
TF_OUTNEG
,
IFP
|
IF_NODE
,
"Negative output node"
},
71
{
"outname"
,
TF_OUTNAME
,
IFP
|
IF_STRING
,
"Name of output variable"
},
72
{
"outsrc"
,
TF_OUTSRC
,
IFP
|
IF_INSTANCE
,
"Output source"
},
73
{
"insrc"
,
TF_INSRC
,
IFP
|
IF_INSTANCE
,
"Input source"
},
74
{
"start"
,
AC_START
,
IFP
|
IF_REAL
,
"starting frequency"
},
75
{
"stop"
,
AC_STOP
,
IFP
|
IF_REAL
,
"ending frequency"
},
76
{
"numsteps"
,
AC_STEPS
,
IFP
|
IF_INTEGER
,
"number of frequencies"
},
77
{
"dec"
,
AC_DEC
,
IFP
|
IF_FLAG
,
"step by decades"
},
78
{
"oct"
,
AC_OCT
,
IFP
|
IF_FLAG
,
"step by octaves"
},
79
{
"lin"
,
AC_LIN
,
IFP
|
IF_FLAG
,
"step linearly"
},
80
{
"name1"
,
DC_NAME1
,
IFP
|
IF_INSTANCE
,
"name of source to step"
},
81
{
"start1"
,
DC_START1
,
IFP
|
IF_REAL
,
"starting voltage/current"
},
82
{
"stop1"
,
DC_STOP1
,
IFP
|
IF_REAL
,
"ending voltage/current"
},
83
{
"step1"
,
DC_STEP1
,
IFP
|
IF_REAL
,
"voltage/current step"
},
84
{
"name2"
,
DC_NAME2
,
IFP
|
IF_INSTANCE
,
"name of source to step"
},
85
{
"start2"
,
DC_START2
,
IFP
|
IF_REAL
,
"starting voltage/current"
},
86
{
"stop2"
,
DC_STOP2
,
IFP
|
IF_REAL
,
"ending voltage/current"
},
87
{
"step2"
,
DC_STEP2
,
IFP
|
IF_REAL
,
"voltage/current step"
}
88
};
89
90
SPICEanalysis
TFinfo
= {
91
{
92
"TF"
,
93
"transfer function analysis"
,
94
95
sizeof
(
TFparms
)/
sizeof
(
IFparm
),
96
TFparms
97
},
98
sizeof
(
TFAN
),
99
NODOMAIN
,
100
TFparse
,
101
TFsetParm
,
102
TFaskQuest
,
103
TFan
104
};
TFAN::TFoutPos
CKTnode * TFoutPos
Definition:
tfdefs.h:19
cktdefs.h
AC_STOP
#define AC_STOP
Definition:
analysis.h:56
TFAN
Definition:
tfdefs.h:15
FALSE
#define FALSE
Definition:
mfb.h:23
TFAN::TFoutIsI
unsigned int TFoutIsI
Definition:
tfdefs.h:28
TFparms
static IFparm TFparms[]
Definition:
tfsetp.c:68
TF_OUTNEG
#define TF_OUTNEG
Definition:
tfdefs.h:36
AC_START
#define AC_START
Definition:
analysis.h:55
DC_STOP1
#define DC_STOP1
Definition:
analysis.h:19
NODOMAIN
#define NODOMAIN
Definition:
jobdefs.h:32
TFAN::AC
struct sACprms AC
Definition:
tfdefs.h:31
sCKTnode
Definition:
cktdefs.h:30
DC_START1
#define DC_START1
Definition:
analysis.h:18
AC_OCT
#define AC_OCT
Definition:
analysis.h:53
E_BADPARM
#define E_BADPARM
Definition:
iferrmsg.h:26
TRUE
#define TRUE
Definition:
util.h:27
IF_INSTANCE
#define IF_INSTANCE
Definition:
ifsim.h:112
jobdefs.h
TF_OUTNAME
#define TF_OUTNAME
Definition:
tfdefs.h:39
TFAN::TFoutSrc
IFuid TFoutSrc
Definition:
tfdefs.h:21
AC_LIN
#define AC_LIN
Definition:
analysis.h:54
TFAN::TFoutName
char * TFoutName
Definition:
tfdefs.h:26
DC_NAME2
#define DC_NAME2
Definition:
analysis.h:21
OK
#define OK
Definition:
iferrmsg.h:17
TF_OUTPOS
#define TF_OUTPOS
Definition:
tfdefs.h:35
AC_STEPS
#define AC_STEPS
Definition:
analysis.h:57
TF_INSRC
#define TF_INSRC
Definition:
tfdefs.h:38
TFparse
int TFparse()
IFP
#define IFP
Definition:
analysis.h:10
DC_STEP1
#define DC_STEP1
Definition:
analysis.h:20
TFAN::DC
struct sDCTprms DC
Definition:
tfdefs.h:32
uIFvalue::nValue
IFnode nValue
Definition:
ifsim.h:237
ACsetp
int ACsetp()
IF_INTEGER
#define IF_INTEGER
Definition:
ifsim.h:107
util.h
TFaskQuest
int TFaskQuest()
TFan
int TFan()
spice.h
TFAN::TFoutNeg
CKTnode * TFoutNeg
Definition:
tfdefs.h:20
iferrmsg.h
DC_NAME1
#define DC_NAME1
Definition:
analysis.h:17
sIFparm
Definition:
ifsim.h:54
IF_REAL
#define IF_REAL
Definition:
ifsim.h:108
cktext.h
IF_FLAG
#define IF_FLAG
Definition:
ifsim.h:106
AC_DEC
#define AC_DEC
Definition:
analysis.h:52
uIFvalue
Definition:
ifsim.h:231
tfdefs.h
TF_OUTSRC
#define TF_OUTSRC
Definition:
tfdefs.h:37
TFAN::TFinSrc
IFuid TFinSrc
Definition:
tfdefs.h:22
uIFvalue::sValue
char * sValue
Definition:
ifsim.h:235
TFAN::TFoutIsV
unsigned int TFoutIsV
Definition:
tfdefs.h:27
DC_START2
#define DC_START2
Definition:
analysis.h:22
TFinfo
SPICEanalysis TFinfo
Definition:
tfsetp.c:90
DC_STOP2
#define DC_STOP2
Definition:
analysis.h:23
SPICEanalysis
Definition:
jobdefs.h:11
IF_STRING
#define IF_STRING
Definition:
ifsim.h:111
DC_STEP2
#define DC_STEP2
Definition:
analysis.h:24
IF_NODE
#define IF_NODE
Definition:
ifsim.h:110
TFsetParm
int TFsetParm(GENERIC *cktp, GENERIC *anal, int which, IFvalue *value)
Definition:
tfsetp.c:20
GENERIC
char GENERIC
Definition:
ifsim.h:27
uIFvalue::uValue
IFuid uValue
Definition:
ifsim.h:236
DCTsetp
int DCTsetp()
src
lib
analysis
tfsetp.c
Generated by
1.8.11