Jspice3
optaskq.c
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: 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 "optdefs.h"
12 #include "const.h"
13 #include "iferrmsg.h"
14 
15 
16 /* ARGSUSED */
17 int
18 OPTaskQuest(cktp,anal,which,value)
19 
20 GENERIC *cktp;
21 GENERIC *anal;
22 int which;
23 IFvalue *value;
24 {
25  CKTcircuit *ckt = (CKTcircuit*)cktp;
26  STATistics *stat = (STATistics*)ckt->CKTstat;
27 
28  switch (which) {
29 
30  case OPT_EQNS:
31  value->iValue = ckt->CKTmaxEqNum;
32  break;
33  case OPT_ITERS:
34  value->iValue = stat->STATnumIter;
35  break;
36  case OPT_TRANIT:
37  value->iValue = stat->STATtranIter;
38  break;
39  case OPT_TRANCURITER:
40  value->iValue = stat->STATnumIter - stat->STAToldIter;
41  break;
42  case OPT_TRANPTS:
43  value->iValue = stat->STATtimePts;
44  break;
45  case OPT_TRANACCPT:
46  value->iValue = stat->STATaccepted;
47  break;
48  case OPT_TRANRJCT:
49  value->iValue = stat->STATrejected;
50  break;
51  case OPT_TOTANALTIME:
52  value->rValue = stat->STATtotAnalTime;
53  break;
54  case OPT_TRANTIME:
55  value->rValue = stat->STATtranTime;
56  break;
57  case OPT_LOADTIME:
58  value->rValue = stat->STATloadTime;
59  break;
60  case OPT_REORDTIME:
61  value->rValue = stat->STATreorderTime;
62  break;
63  case OPT_DECOMP:
64  value->rValue = stat->STATdecompTime;
65  break;
66  case OPT_SOLVE:
67  value->rValue = stat->STATsolveTime;
68  break;
69  case OPT_TRANDECOMP:
70  value->rValue = stat->STATtranDecompTime;
71  break;
72  case OPT_TRANSOLVE:
73  value->rValue = stat->STATtranSolveTime;
74  break;
75  case OPT_TEMP:
76  value->rValue = ckt->CKTtemp - CONSTCtoK;
77  break;
78  case OPT_TNOM:
79  value->rValue = ckt->CKTnomTemp - CONSTCtoK;
80  break;
81  case OPT_MATSIZ:
82  value->iValue = stat->STATmatSize;
83  break;
84  case OPT_NONZ:
85  value->iValue = stat->STATnonZero;
86  break;
87  case OPT_FILLIN:
88  value->iValue = stat->STATfillIn;
89  break;
90  default:
91  return (E_BADPARM);
92  }
93  return (OK);
94 }
#define OPT_LOADTIME
Definition: optdefs.h:67
int STATmatSize
Definition: optdefs.h:23
#define OPT_DECOMP
Definition: optdefs.h:68
#define OPT_TRANPTS
Definition: optdefs.h:62
int STATnonZero
Definition: optdefs.h:24
double CKTtemp
Definition: cktdefs.h:80
double CKTnomTemp
Definition: cktdefs.h:81
#define OPT_TRANIT
Definition: optdefs.h:61
#define CONSTCtoK
Definition: const.h:11
#define OPT_SOLVE
Definition: optdefs.h:69
#define OPT_TEMP
Definition: optdefs.h:73
#define E_BADPARM
Definition: iferrmsg.h:26
double STATtranTime
Definition: optdefs.h:28
#define OPT_TRANTIME
Definition: optdefs.h:66
GENERIC * CKTstat
Definition: cktdefs.h:67
int iValue
Definition: ifsim.h:232
double rValue
Definition: ifsim.h:233
int STATaccepted
Definition: optdefs.h:21
int STATrejected
Definition: optdefs.h:22
#define OK
Definition: iferrmsg.h:17
#define OPT_TNOM
Definition: optdefs.h:46
#define OPT_TRANSOLVE
Definition: optdefs.h:72
double STATloadTime
Definition: optdefs.h:29
double STATtranDecompTime
Definition: optdefs.h:33
double STATtotAnalTime
Definition: optdefs.h:27
#define OPT_TRANACCPT
Definition: optdefs.h:63
#define OPT_MATSIZ
Definition: optdefs.h:85
double STATsolveTime
Definition: optdefs.h:31
#define OPT_EQNS
Definition: optdefs.h:80
#define OPT_NONZ
Definition: optdefs.h:86
#define OPT_REORDTIME
Definition: optdefs.h:82
double STATreorderTime
Definition: optdefs.h:32
#define OPT_ITERS
Definition: optdefs.h:60
int CKTmaxEqNum
Definition: cktdefs.h:129
int STATfillIn
Definition: optdefs.h:25
int STATnumIter
Definition: optdefs.h:15
#define OPT_FILLIN
Definition: optdefs.h:87
double STATdecompTime
Definition: optdefs.h:30
#define OPT_TRANRJCT
Definition: optdefs.h:64
#define OPT_TRANCURITER
Definition: optdefs.h:75
#define OPT_TRANDECOMP
Definition: optdefs.h:71
int OPTaskQuest(GENERIC *cktp, GENERIC *anal, int which, IFvalue *value)
Definition: optaskq.c:18
int STAToldIter
Definition: optdefs.h:17
int STATtimePts
Definition: optdefs.h:20
double STATtranSolveTime
Definition: optdefs.h:34
char GENERIC
Definition: ifsim.h:27
int STATtranIter
Definition: optdefs.h:16
#define OPT_TOTANALTIME
Definition: optdefs.h:65