Jspice3
ltramask.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 "ltradefs.h"
11 #include "const.h"
12 #include "sperror.h"
13 
14 
15 /* ARGSUSED */
16 int
17 LTRAmAsk(ckt,inModel,which,value)
18 
19 CKTcircuit *ckt;
20 GENmodel *inModel;
21 int which;
22 IFvalue *value;
23 {
24  LTRAmodel *model = (LTRAmodel *)inModel;
25 
26  switch (which) {
27  case LTRA_MOD_R:
28  value->rValue = model->LTRAresist;
29  break;
30  case LTRA_MOD_L:
31  value->rValue = model->LTRAinduct;
32  break;
33  case LTRA_MOD_G:
34  value->rValue = model->LTRAconduct;
35  break;
36  case LTRA_MOD_C:
37  value->rValue = model->LTRAcapac;
38  break;
39  case LTRA_MOD_LEN:
40  value->rValue = model->LTRAlength;
41  break;
42  case LTRA_MOD_RELTOL:
43  value->rValue = model->LTRAreltol;
44  break;
45  case LTRA_MOD_ABSTOL:
46  value->rValue = model->LTRAabstol;
47  break;
48  case LTRA_MOD_NOCONTROL:
49  value->iValue = (model->LTRAlteConType == LTRA_MOD_NOCONTROL);
50  break;
52  value->iValue = (model->LTRAlteConType == LTRA_MOD_HALFCONTROL);
53  break;
55  value->iValue = (model->LTRAlteConType == LTRA_MOD_FULLCONTROL);
56  break;
57  case LTRA_MOD_STEPLIMIT:
58  value->iValue = (model->LTRAstepLimit == LTRA_MOD_STEPLIMIT);
59  break;
61  value->iValue = (model->LTRAstepLimit == LTRA_MOD_NOSTEPLIMIT);
62  break;
63  case LTRA_MOD_LININTERP:
64  value->iValue = (model->LTRAhowToInterp == LTRA_MOD_LININTERP);
65  break;
67  value->iValue = (model->LTRAhowToInterp == LTRA_MOD_QUADINTERP);
68  break;
70  value->iValue = (model->LTRAhowToInterp == LTRA_MOD_MIXEDINTERP);
71  break;
72  case LTRA_MOD_TRUNCNR:
73  value->iValue = model->LTRAtruncNR;
74  break;
76  value->iValue = model->LTRAtruncDontCut;
77  break;
78  case LTRA_MOD_STLINEREL:
79  value->rValue = model->LTRAstLineReltol;
80  break;
81  case LTRA_MOD_STLINEABS:
82  value->rValue = model->LTRAstLineAbstol;
83  break;
84  case LTRA_MOD_Z0:
85  value->rValue = model->LTRAimped;
86  break;
87  case LTRA_MOD_TD:
88  value->rValue = model->LTRAtd;
89  break;
90  default:
91  return (E_BADPARM);
92  }
93  return (OK);
94 }
95 
96 
#define LTRA_MOD_MIXEDINTERP
Definition: ltradefs.h:199
#define LTRA_MOD_NOSTEPLIMIT
Definition: ltradefs.h:196
#define LTRA_MOD_TRUNCNR
Definition: ltradefs.h:200
#define LTRA_MOD_RELTOL
Definition: ltradefs.h:190
#define LTRA_MOD_L
Definition: ltradefs.h:186
double LTRAimped
Definition: ltradefs.h:112
double LTRAcapac
Definition: ltradefs.h:109
#define LTRA_MOD_LININTERP
Definition: ltradefs.h:197
#define LTRA_MOD_C
Definition: ltradefs.h:188
#define LTRA_MOD_LEN
Definition: ltradefs.h:189
double LTRAinduct
Definition: ltradefs.h:108
#define LTRA_MOD_STLINEREL
Definition: ltradefs.h:202
int LTRAstepLimit
Definition: ltradefs.h:151
double LTRAlength
Definition: ltradefs.h:110
#define E_BADPARM
Definition: iferrmsg.h:26
#define LTRA_MOD_TD
Definition: ltradefs.h:207
unsigned LTRAtruncDontCut
Definition: ltradefs.h:137
int iValue
Definition: ifsim.h:232
int LTRAhowToInterp
Definition: ltradefs.h:149
double rValue
Definition: ifsim.h:233
double LTRAstLineReltol
Definition: ltradefs.h:128
double LTRAabstol
Definition: ltradefs.h:155
#define LTRA_MOD_FULLCONTROL
Definition: ltradefs.h:194
#define OK
Definition: iferrmsg.h:17
double LTRAstLineAbstol
Definition: ltradefs.h:130
double LTRAreltol
Definition: ltradefs.h:156
#define LTRA_MOD_G
Definition: ltradefs.h:187
#define LTRA_MOD_HALFCONTROL
Definition: ltradefs.h:193
int LTRAlteConType
Definition: ltradefs.h:147
#define LTRA_MOD_Z0
Definition: ltradefs.h:206
static char model[32]
Definition: subckt.c:76
int LTRAmAsk(CKTcircuit *ckt, GENmodel *inModel, int which, IFvalue *value)
Definition: ltramask.c:17
double LTRAtd
Definition: ltradefs.h:111
#define LTRA_MOD_R
Definition: ltradefs.h:185
#define LTRA_MOD_TRUNCDONTCUT
Definition: ltradefs.h:201
#define LTRA_MOD_NOCONTROL
Definition: ltradefs.h:192
double LTRAconduct
Definition: ltradefs.h:106
unsigned LTRAtruncNR
Definition: ltradefs.h:135
#define LTRA_MOD_QUADINTERP
Definition: ltradefs.h:198
#define LTRA_MOD_STLINEABS
Definition: ltradefs.h:203
#define LTRA_MOD_ABSTOL
Definition: ltradefs.h:191
double LTRAresist
Definition: ltradefs.h:107
#define LTRA_MOD_STEPLIMIT
Definition: ltradefs.h:195