My Project
SemidefiniteCone Class Reference

The in-memory representation of a cone of semidefinite matrices. More...

#include <OSInstance.h>

Inheritance diagram for SemidefiniteCone:
Cone

Public Member Functions

 SemidefiniteCone ()
 The SemidefiniteCone class constructor.
 
 ~SemidefiniteCone ()
 The SemidefiniteCone class destructor.
 
virtual std::string getConeName ()
 
virtual std::string getConeInXML ()
 Write a SemidefiniteCone object in XML format.
 
bool IsEqual (SemidefiniteCone *that)
 A function to check for the equality of two objects.
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class.
 
bool deepCopyFrom (SemidefiniteCone *that)
 A function to make a deep copy of an instance of this class.
 
- Public Member Functions inherited from Cone
 Cone ()
 The Cone class constructor.
 
virtual ~Cone ()
 The Cone class destructor.
 
bool IsEqual (Cone *that)
 A function to check for the equality of two objects.
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class.
 
bool deepCopyFrom (Cone *that)
 A function to make a deep copy of an instance of this class.
 

Public Attributes

int numberOfRows
 Every cone has (at least) two dimensions; no distinction is made between vector cones and matrix cones.
 
int numberOfColumns
 
int numberOfOtherIndexes
 Multidimensional tensors can also form cones (the Kronecker product, for instance, can be thought of as a four-dimensional tensor).
 
int * otherIndexes
 
int coneType
 The type of the cone (one of the values in ENUM_CONE_TYPE)
 
int idx
 cones are referenced by an (automatically created) index
 
std::string semidefiniteness
 we need to distinguish positive and negative semidefiniteness
 
bool isPositiveSemiDefinite
 information about semidefiniteness is also tracked in a boolean variable
 
- Public Attributes inherited from Cone
int numberOfRows
 Every cone has (at least) two dimensions; no distinction is made between vector cones and matrix cones.
 
int numberOfColumns
 
int numberOfOtherIndexes
 Cones can also be formed by Multidimensional tensors.
 
int * otherIndexes
 
ENUM_CONE_TYPE coneType
 The type of the cone.
 
std::string name
 The cone can have a name for easier identification.
 
int idx
 cones are referenced by an (automatically created) index
 

Detailed Description

The in-memory representation of a cone of semidefinite matrices.

Definition at line 1046 of file OSInstance.h.

Constructor & Destructor Documentation

◆ SemidefiniteCone()

SemidefiniteCone::SemidefiniteCone ( )

The SemidefiniteCone class constructor.

Definition at line 1156 of file OSInstance.cpp.

◆ ~SemidefiniteCone()

SemidefiniteCone::~SemidefiniteCone ( )

The SemidefiniteCone class destructor.

Definition at line 1165 of file OSInstance.cpp.

Member Function Documentation

◆ getConeName()

std::string SemidefiniteCone::getConeName ( )
virtual
Returns
the type of cone as a string

Reimplemented from Cone.

Definition at line 1172 of file OSInstance.cpp.

◆ getConeInXML()

std::string SemidefiniteCone::getConeInXML ( )
virtual

Write a SemidefiniteCone object in XML format.

This is used by OSiLWriter to write a <cone> element.

Returns
the cone and its children as an XML string.

Implements Cone.

Definition at line 7952 of file OSInstance.cpp.

◆ IsEqual()

bool SemidefiniteCone::IsEqual ( SemidefiniteCone * that)

A function to check for the equality of two objects.

Definition at line 8901 of file OSInstance.cpp.

◆ setRandom()

bool SemidefiniteCone::setRandom ( double density,
bool conformant,
int iMin,
int iMax )

A function to make a random instance of this class.

Parameters
densitycorresponds to the probability that a particular child element is created
conformantif true enforces side constraints not enforceable in the schema (e.g., agreement of "numberOfXXX" attributes and <XXX> children)
iMinlowest index value (inclusive) that a variable reference in this matrix can take
iMaxgreatest index value (inclusive) that a variable reference in this matrix can take

◆ deepCopyFrom()

bool SemidefiniteCone::deepCopyFrom ( SemidefiniteCone * that)

A function to make a deep copy of an instance of this class.

Parameters
thatthe instance from which information is to be copied
Returns
whether the copy was created successfully

Member Data Documentation

◆ numberOfRows

int SemidefiniteCone::numberOfRows

Every cone has (at least) two dimensions; no distinction is made between vector cones and matrix cones.

Definition at line 1059 of file OSInstance.h.

◆ numberOfColumns

int SemidefiniteCone::numberOfColumns

Definition at line 1060 of file OSInstance.h.

◆ numberOfOtherIndexes

int SemidefiniteCone::numberOfOtherIndexes

Multidimensional tensors can also form cones (the Kronecker product, for instance, can be thought of as a four-dimensional tensor).

We therefore allow additional dimensions.

Definition at line 1067 of file OSInstance.h.

◆ otherIndexes

int* SemidefiniteCone::otherIndexes

Definition at line 1068 of file OSInstance.h.

◆ coneType

int SemidefiniteCone::coneType

The type of the cone (one of the values in ENUM_CONE_TYPE)

Definition at line 1071 of file OSInstance.h.

◆ idx

int SemidefiniteCone::idx

cones are referenced by an (automatically created) index

Definition at line 1074 of file OSInstance.h.

◆ semidefiniteness

std::string SemidefiniteCone::semidefiniteness

we need to distinguish positive and negative semidefiniteness

Definition at line 1077 of file OSInstance.h.

◆ isPositiveSemiDefinite

bool SemidefiniteCone::isPositiveSemiDefinite

information about semidefiniteness is also tracked in a boolean variable

Definition at line 1080 of file OSInstance.h.


The documentation for this class was generated from the following files: