80 for (
int i=0; i<
size(); i++) {
125 for (
int i=0; i<
size(); i++) {
139 double&
operator()(
int lcli1,
int lcli2=0,
int lcli3=0,
int lcli4=0,
int lcli5=0) {
145 int i =
f(lcli1,lcli2,lcli3,lcli4,lcli5);
165 myrefs.push_back(
new DataRef(
this, lcli1, lcli2, lcli3, lcli4, lcli5));
171 void display(std::string s =
"");
195 using flopc::MP_data::operator();
203 myrefs.push_back(
new DataRef(
this, lcli1, lcli2, lcli3, lcli4, lcli5, 1));
Representation of an index.
This is the anchor point for all constructs in a FlopC++ model.
Utility interface class for adding a string name onto a structure.
int f(int i1=0, int i2=0, int i3=0, int i4=0, int i5=0) const
MP_data(const MP_set_base &s1=MP_set::getEmpty(), const MP_set_base &s2=MP_set::getEmpty(), const MP_set_base &s3=MP_set::getEmpty(), const MP_set_base &s4=MP_set::getEmpty(), const MP_set_base &s5=MP_set::getEmpty())
Constructs the MP_data object, and allocates space for data, but does not initialize the data...
static MP_set & getEmpty()
gets the distinct 'empty' MP_set.
static const MP_index_exp & getEmpty()
Return the unique empty expression.
Reference counted class for all "boolean" types of data.
static double outOfBoundData
Utility class to flatten multidimensional information into single dimentional offset information...
void display(std::string s="")
For displaying data in a human readable format.
double & operator()(int lcli1, int lcli2=0, int lcli3=0, int lcli4=0, int lcli5=0)
Looks up the data based on the index values passed in.
const int outOfBound
Distinct return value on conditions where an index goes out of bounds.
DataRef & such_that(const MP_boolean &b)
Reference to a set of data.
DataRef(MP_data *d, const MP_index_exp &i1, const MP_index_exp &i2, const MP_index_exp &i3, const MP_index_exp &i4, const MP_index_exp &i5, int s=0)
const DataRef & operator=(const DataRef &r)
Representation of an expression involving an index.
Symantic representation of a variable.
MP_data & operator=(const MP_data &)
Reference counted class for all "constant" types of data.
Base class for all "constant" types of data.
void evaluate_lhs(double v) const
void initialize(double d)
similar to value() but copies the same value to all entries.
Internal representation of a "set".
void value(const double *d)
Used to bind and deep copy data into the MP_data data structure.
MP_data(double *value, const MP_set_base &s1=MP_set::getEmpty(), const MP_set_base &s2=MP_set::getEmpty(), const MP_set_base &s3=MP_set::getEmpty(), const MP_set_base &s4=MP_set::getEmpty(), const MP_set_base &s5=MP_set::getEmpty())
Construct the object, and uses the data in the original array (shallow copy)
std::vector< DataRef * > myrefs
MP_stochastic_data(const MP_set_base &s1=MP_set::getEmpty(), const MP_set_base &s2=MP_set::getEmpty(), const MP_set_base &s3=MP_set::getEmpty(), const MP_set_base &s4=MP_set::getEmpty(), const MP_set_base &s5=MP_set::getEmpty())