Xyce
6.1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
N_ANP_SweepParam.h
Go to the documentation of this file.
1
//-----------------------------------------------------------------------------
2
// Copyright Notice
3
//
4
// Copyright 2002 Sandia Corporation. Under the terms
5
// of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S.
6
// Government retains certain rights in this software.
7
//
8
// Xyce(TM) Parallel Electrical Simulator
9
// Copyright (C) 2002-2014 Sandia Corporation
10
//
11
// This program is free software: you can redistribute it and/or modify
12
// it under the terms of the GNU General Public License as published by
13
// the Free Software Foundation, either version 3 of the License, or
14
// (at your option) any later version.
15
//
16
// This program is distributed in the hope that it will be useful,
17
// but WITHOUT ANY WARRANTY; without even the implied warranty of
18
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
// GNU General Public License for more details.
20
//
21
// You should have received a copy of the GNU General Public License
22
// along with this program. If not, see <http://www.gnu.org/licenses/>.
23
//-----------------------------------------------------------------------------
24
25
//-----------------------------------------------------------------------------
26
// Filename : $RCSfile: N_ANP_SweepParam.h,v $
27
//
28
// Purpose :
29
//
30
// Special Notes :
31
//
32
// Creator : Eric Keiter
33
//
34
// Creation Date : 9/4/04
35
//
36
// Revision Information:
37
// ---------------------
38
//
39
// Revision Number: $Revision: 1.8 $
40
//
41
// Revision Date : $Date: 2014/02/24 23:49:12 $
42
//
43
// Current Owner : $Author: tvrusso $
44
//-----------------------------------------------------------------------------
45
46
#ifndef Xyce_N_ANP_SweepParam_h
47
#define Xyce_N_ANP_SweepParam_h
48
49
// ---------- Standard Includes ----------
50
#include <vector>
51
52
// ---------- Xyce Includes ----------
53
#include <N_UTL_Misc.h>
54
55
// ---------- Forward Declarations ----------
56
57
namespace
Xyce {
58
namespace
Analysis {
59
60
//-----------------------------------------------------------------------------
61
// Class : SweepParam
62
//
63
// Purpose : This class contains basic parameter data for parameter
64
// sweeps, for a single parameter. If there are multiple
65
// parameters in the sweep, each one gets a class like
66
// this.
67
//
68
// Special Notes : "Step" here refers to steps in a parameter sweep loop,
69
// not time steps or DC sweep steps.
70
//
71
//
72
// Creator : Eric Keiter, SNL
73
// Creation Date : 10/31/03
74
//-----------------------------------------------------------------------------
75
class
SweepParam
76
{
77
public
:
78
// Default constructor.
79
SweepParam
() :
80
name
(
""
),
81
type
(
"LIN"
),
82
startVal
(0.0),
83
stopVal
(0.0),
84
stepVal
(0.0),
85
stepMult
(0.0),
86
currentVal
(0.0),
87
numSteps
(0),
88
count
(-1),
89
maxStep
(0),
90
interval
(1),
91
outerStepNumber
(0),
92
sweepResetFlag_
(false),
93
lastLocalStepNumber_
(-1)
94
{};
95
96
// Destructor
97
~SweepParam
() {};
98
99
bool
updateCurrentVal
(
int
stepNumber);
100
bool
getSweepResetFlag
() {
return
sweepResetFlag_
;};
101
102
std::string
name
;
103
std::string
type
;
104
105
double
startVal
;
106
double
stopVal
;
107
double
stepVal
;
108
double
stepMult
;
109
110
double
currentVal
;
111
112
int
numSteps
;
113
114
int
count
;
115
int
maxStep
;
116
int
interval
;
117
118
int
outerStepNumber
;
119
120
std::vector<double>
valList
;
121
122
private
:
123
bool
sweepResetFlag_
;
124
int
lastLocalStepNumber_
;
125
126
};
127
128
//-----------------------------------------------------------------------------
129
// Function : SweepParam::operator<<
130
// Purpose : "<<" operator
131
// Special Notes :
132
// Scope : public
133
// Creator : Eric R. Keiter, SNL, Parallel Computational Sciences
134
// Creation Date : 7/02/03
135
//-----------------------------------------------------------------------------
136
inline
std::ostream &
operator<<
(std::ostream & os,
const
SweepParam
& sp)
137
{
138
os <<
"\tname = "
<< sp.
name
139
<<
"\tcurrentVal = "
<< sp.
currentVal
140
<< std::endl;
141
return
os;
142
}
143
144
}
// namespace Analysis
145
}
// namespace Xyce
146
147
typedef
Xyce::Analysis::SweepParam
N_ANP_SweepParam
;
148
149
#endif // Xyce_N_ANP_SweepParam_h
src
AnalysisPKG
include
N_ANP_SweepParam.h
Generated on Mon Mar 24 2014 10:54:31 for Xyce by
1.8.3.1