IGLib  1.7.2
The IGLib base library for development of numerical, technical and business applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
IG.Num.IAnalysisResults Interface Reference

Single objective optimization analysis results. Used to transfer parameters input (e.g. vector of parameters, request flags) to the analysis function and to store analysis output results (e.g. objective and constraint functions, their gradients, error codes, and flags indicating what has actually been calculated). REMARKS: Property CopyReferences specifies whether only references are copied when individial object fields are assigned and set (when the property is true), or values are actually copied (when false - deep copy). Each setter method also has the variant that always copies only the reference (function name appended by "Reference"). This makes possible to avoid duplication of allocated data and also to avoid having different data with the same references. In the beginning of analysis functions, call ResetResults(). More...

+ Inheritance diagram for IG.Num.IAnalysisResults:

Public Member Functions

IVector GetParameters ()
 Returns vector of optimization parameters. More...
 
void SetParameters (IVector value)
 Sets the vector of optimization parameters. If CopyReferences=true (false by default) then only the reference is copied. More...
 
void SetParametersReference (IVector reference)
 Sets the vector of optimization parameters. Only the reference is copied. More...
 
double GetParameter (int index)
 Returns specific optimization parameter. Throws exception if not defined or index out of bounds. More...
 
void SetParameter (int index, double value)
 Sets the specified optimization parameter. More...
 
double GetObjective ()
 Returns the value of the objective function. More...
 
void SetObjective (double value)
 Sets the value of the objective function. More...
 
IVector GetObjectiveGradient ()
 Returns the objective function gradient. More...
 
void SetObjectiveGradient (IVector value)
 Sets the objective function gradient. If CopyReferences=true (false by default) then only the reference is copied. More...
 
void SetObjectiveGradientReference (IVector reference)
 Sets the objective function gradient. Only the reference is copied. More...
 
double GetObjectiveGradient (int index)
 Returns the specified component of the objective function gradient. More...
 
void SetObjectiveGradient (int index, double value)
 Sets the specified component of the objective function gradient. More...
 
List< double > GetConstraints ()
 Returns a list of constraint function values. More...
 
void SetConstraints (List< double > values)
 Sets the list of constraint function values. If CopyReferences=true (false by default) then only the list reference is copied. More...
 
void SetConstraintsReference (List< double > reference)
 Sets the list of constraint function values. Only the list reference is copied. More...
 
double GetConstraint (int which)
 Returns the specified constraint function value. More...
 
void SetConstraint (int which, double value)
 Sets the specified constraint function value. More...
 
List< IVectorGetConstraintGradients ()
 Returns a list of constraint function gradients. More...
 
void SetConstraintGradients (List< IVector > values)
 Sets constraint function gradients. If CopyReferences=true (false by default) then only the list reference is copied. More...
 
void SetConstraintGradientsReference (List< IVector > reference)
 Sets constraint function gradients. Only the list reference is copied. More...
 
IVector GetConstraintGradient (int which)
 Returns the gradient of the specified constraint function. More...
 
double GetConstraintGradient (int which, int index)
 Returns the specific constraint function gradient component. More...
 
void SetConstraintGradient (int which, IVector value)
 Sets the specified constraint function gradient. If CopyReferences=true (false by default) then only the reference is copied. More...
 
void SetConstraintGradientReference (int which, IVector reference)
 Sets the specified constraint function gradient. Only the reference is copied. More...
 
void SetConstraintGradient (int which, int index, double value)
 Sets the specified constraint fuction gradient component. More...
 
IMatrix GetObjectiveHessian ()
 Returns the objective function's Hessian. More...
 
void SetObjectiveHessian (IMatrix value)
 Sets the objective functions' Hessian. If CopyReferences=true (false by default) then only the reference is copied. More...
 
void SetObjectiveHessianReference (IMatrix reference)
 Sets the objective functions' Hessian. Only the reference is copied. More...
 
double GetObjectiveHessian (int rowIndex, int columnIndex)
 Returns the specified component of the objective function Hessian. More...
 
void SetObjectiveHessian (int rowIndex, int columnIndex, double value)
 Sets the specified component of the objective function's Hessian. More...
 
List< IMatrixGetConstraintHessians ()
 Returns the list of constraint functions' Hessians. More...
 
void SetConstraintHessians (List< IMatrix > values)
 Sets constraint functios' Hessians. If CopyReferences=true (false by default) then only the list reference is copied. More...
 
void SetConstraintHessiansReference (List< IMatrix > reference)
 Sets constraint functios' Hessians. Only the list reference is copied. More...
 
IMatrix GetConstraintHessian (int which)
 Returns Hessian of the specified constraint function. More...
 
double GetConstraintHessian (int which, int rowIndex, int columnIndex)
 Returns the specified component of Hessian of the specified constraint function. More...
 
void SetConstraintHessian (int which, IMatrix value)
 Sets the specified constraint function's Hessian. If CopyReferences=true (false by default) then only the reference is copied. More...
 
void SetConstraintHessianReference (int which, IMatrix reference)
 Sets the specified constraint function's Hessian. Only the reference is copied. More...
 
void SetConstraintHessian (int which, int rowIndex, int columnIndex, double value)
 Sets the specified component of the specified constraint's Hessian. More...
 
void NullifyAll ()
 Sets all objects (parameter and result objects) to null. If the references are not assigned elsewhere, these objects become eligible for garbage collection. More...
 
void NullifyResults ()
 Sets all result objects to null. If the references are not assigned elsewhere, these objects become eligible for garbage collection. More...
 
void AllocateParameters ()
 Allocates space for parameters. More...
 
void AllocateRequested ()
 Allocates space for all requested result objects. More...
 
void AllocateObjectiveGradient ()
 Allocate space for objective function gradient. More...
 
void AllocateObjectiveHessian ()
 Allocates space for objective function Hessian. More...
 
void AllocateConstraintsList ()
 Allocates space for list of constraint functions. More...
 
void AllocateConstraintGradientsList ()
 Allocates space for list of constraint function gradients. More...
 
void AllocateConstrainGradients ()
 Allocates space for constraint function gradients (including for the list, if necessarty). More...
 
void AllocateConstraintGradient (int which)
 Allocates space for the specified constraint function gradient. More...
 
void AllocateConstraintHessiansList ()
 Allocates space for the list of constraint functions' Hessians. More...
 
void AllocateConstraintHessians ()
 Allocates space for constraint functions' Hessians (including space for the list, if necessary). More...
 
void AllocateConstraintHessian (int which)
 Allocates space for the specified constraint fucnction's Hessian. More...
 
void ResetResults ()
 Sets all calculated flags to false, error code to 0 (no error) and error string to null. More...
 
void SetDimensions (int numParameters, int numConstraints)
 Sets the dimension of the analysis results object according to the specified values. More...
 
void SetDimensions (int numParameters, int numObjectives, int numConstraints)
 Sets the dimension of the analysis results object according to the specified values. More...
 
void PrepareResultStorage ()
 Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false. More...
 
void PrepareResultStorage (bool resetCalculatedFlags)
 Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags. More...
 
void PrepareResultStorage (int numParameters, int numConstraints)
 Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false. More...
 
void PrepareResultStorage (int numParameters, int numObjectives, int numConstraints)
 Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false. More...
 
void PrepareResultStorage (int numParameters, int numObjectives, int numConstraints, bool resetCalculatedFlags)
 Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags. More...
 
void Copy (IAnalysisResults results)
 Copies data from another analysis results. More...
 
IAnalysisResults GetCopy ()
 Returns an exact deep copy of the current object. More...
 
bool IsViolated (int which, double equalityTolerance)
 Returns true if the specified constraint is violated according to the current analysis results, false otherwise. More...
 
bool IsViolated (int which)
 Returns true if the specified constraint is violated according to the current analysis results, false otherwise. More...
 
bool IsFeasible (double equalityTolerance)
 Returns true if the current analysis results represent a feasible point. Feasible point is one where no constraints are violated. For unconstraint problems this method always returns true. More...
 
bool IsFeasible ()
 Returns true if the current analysis results represent a feasible point. Feasible point is one where no constraints are violated. For unconstraint problems this method always returns true. More...
 
int GetNumViolatedConstraints (double equalityTolerance)
 Returns number of violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
int GetNumViolatedConstraints ()
 Returns number of violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
double GetSumResiduals (double equalityTolerance)
 Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
double GetSumResiduals ()
 Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
double GetMaximalResidual (double equalityTolerance)
 Returns the largest constraint function value corresponding to any violated constraint in the current analysis results, or 0 if there are no violated constraints. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
double GetMaximalResidual ()
 Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0. More...
 
double GetPenaltyTerm (int which, IPenaltyEvaluator evaluator)
 Returns value of the penalty term corresponding to the specified constraint, calculated by the specified penalty evaluator. More...
 
double GetSumPenaltyTerms (IPenaltyEvaluator evaluator)
 Returns sum of the penalty terms corresponding to all constraint, calculated by the specified penalty evaluator. More...
 
double GetMaxPenaltyTerm (IPenaltyEvaluator evaluator)
 Returns sum of the penalty terms corresponding to all constraint, calculated by the specified penalty evaluator. More...
 

Properties

int NumParameters [get, set]
 Number of parameters. More...
 
int NumObjectives [get, set]
 Number of objective functions (normally 1 for this type, but can be 0). More...
 
int NumConstraints [get, set]
 Number of constraints. More...
 
int NumEqualityConstraints [get, set]
 Number of equality constraints. More...
 
bool CopyReferences [get, set]
 Indicates whether just references can be copied when setting optimization parameters or results. If false then deep copy is always be performed. Default is false. More...
 
IVector Parameters [get, set]
 Optimization parameters. If CopyReferences=true (false by default) then only the reference is copied when assigning. More...
 
double Objective [get, set]
 Value of the objective function. More...
 
IVector ObjectiveGradient [get, set]
 Objective function gradient. If CopyReferences=true (false by default) then only the reference is copied in assignments. More...
 
List< double > Constraints [get, set]
 Constraint function values. If CopyReferences=true (false by default) then only the list reference is copied in assignments. More...
 
List< IVectorConstraintGradients [get, set]
 Constraint function gradients. If CopyReferences=true (false by default) then only the list reference is copied in assignments. More...
 
IMatrix ObjectiveHessian [get, set]
 Objective function Hessian (matrix of second derivatives). If CopyReferences=true (false by default) then only the reference is copied in assignments. More...
 
List< IMatrixConstraintHessians [get, set]
 Constraint functions' Hessians (matrices of second derivatives). If CopyReferences=true (false by default) then only the list reference is copied in assignments. More...
 
bool ReqObjective [get, set]
 Indicates whether calculation of objective function is/was requested. More...
 
bool ReqObjectiveGradient [get, set]
 Indicates whether calculation of objective function gradient is/was requested. More...
 
bool ReqObjectiveHessian [get, set]
 Indicates whether calculation of objective function Hessian is/was requested. More...
 
bool ReqConstraints [get, set]
 Indicates whether calculation of constraint functions is/was requested. More...
 
bool ReqConstraintGradients [get, set]
 Indicates whether calculation of constraint functions gradient is/was requested. More...
 
bool ReqConstraintHessians [get, set]
 Indicates whether calculation of constraint functions Hessian is/was requested. More...
 
int ErrorCode [get, set]
 Error code. 0 - everything is OK. negative value - something went wrong. More...
 
String ErrorString [get, set]
 Error string indicating what went wrong. More...
 
bool Calculated [get, set]
 Collectively gets or sets calculated flags. Set false: all calculated flags are set to false. Set true: all calculated flags for which the corresponding request flags are true, are set to truee, others are set to false. Get: returns true if all the flags for which the corresponding request flags are true, are also true. Otherwise returns false. More...
 
bool CalculatedObjective [get, set]
 Indicates whether calculation of objective function is/was requested. More...
 
bool CalculatedObjectiveGradient [get, set]
 Indicates whether calculation of objective function gradient is/was requested. More...
 
bool CalculatedObjectiveHessian [get, set]
 Indicates whether calculation of objective function Hessian is/was requested. More...
 
bool CalculatedConstraints [get, set]
 Indicates whether calculation of constraint functions is/was requested. More...
 
bool CalculatedConstraintGradients [get, set]
 Indicates whether calculation of constraint functions gradient is/was requested. More...
 
bool CalculatedConstraintHessians [get, set]
 Indicates whether calculation of constraint functions Hessian is/was requested. More...
 

Detailed Description

Single objective optimization analysis results. Used to transfer parameters input (e.g. vector of parameters, request flags) to the analysis function and to store analysis output results (e.g. objective and constraint functions, their gradients, error codes, and flags indicating what has actually been calculated). REMARKS: Property CopyReferences specifies whether only references are copied when individial object fields are assigned and set (when the property is true), or values are actually copied (when false - deep copy). Each setter method also has the variant that always copies only the reference (function name appended by "Reference"). This makes possible to avoid duplication of allocated data and also to avoid having different data with the same references. In the beginning of analysis functions, call ResetResults().

$A Igor Jun08;

Member Function Documentation

IVector IG.Num.IAnalysisResults.GetParameters ( )

Returns vector of optimization parameters.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetParameters ( IVector  value)

Sets the vector of optimization parameters. If CopyReferences=true (false by default) then only the reference is copied.

Parameters
valueValue to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetParametersReference ( IVector  reference)

Sets the vector of optimization parameters. Only the reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetParameter ( int  index)

Returns specific optimization parameter. Throws exception if not defined or index out of bounds.

Parameters
indexIndex of parameter to be returned (counting from 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetParameter ( int  index,
double  value 
)

Sets the specified optimization parameter.

Parameters
indexIndex of parameter to be set (counting from 0).
valueParameter value.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetObjective ( )

Returns the value of the objective function.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjective ( double  value)

Sets the value of the objective function.

Parameters
valueValue to be assigned to the objective function.

Implemented in IG.Num.AnalysisResults.

IVector IG.Num.IAnalysisResults.GetObjectiveGradient ( )

Returns the objective function gradient.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveGradient ( IVector  value)

Sets the objective function gradient. If CopyReferences=true (false by default) then only the reference is copied.

Parameters
valueValue to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveGradientReference ( IVector  reference)

Sets the objective function gradient. Only the reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetObjectiveGradient ( int  index)

Returns the specified component of the objective function gradient.

Parameters
indexIndex of the component.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveGradient ( int  index,
double  value 
)

Sets the specified component of the objective function gradient.

Parameters
indexIndex of objective gradient component to be set.
valueValue of the objective gradient component.

Implemented in IG.Num.AnalysisResults.

List<double> IG.Num.IAnalysisResults.GetConstraints ( )

Returns a list of constraint function values.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraints ( List< double >  values)

Sets the list of constraint function values. If CopyReferences=true (false by default) then only the list reference is copied.

Parameters
valuesValues of constraint functions.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintsReference ( List< double >  reference)

Sets the list of constraint function values. Only the list reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetConstraint ( int  which)

Returns the specified constraint function value.

Parameters
whichSpecifies which constraint function to return (counting from 0).

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisResults.ToStringMath().

void IG.Num.IAnalysisResults.SetConstraint ( int  which,
double  value 
)

Sets the specified constraint function value.

Parameters
whichSpecifies which constraint function is set (counting from 0).
valueAssigned value of the constraint function.

Implemented in IG.Num.AnalysisResults.

List<IVector> IG.Num.IAnalysisResults.GetConstraintGradients ( )

Returns a list of constraint function gradients.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintGradients ( List< IVector values)

Sets constraint function gradients. If CopyReferences=true (false by default) then only the list reference is copied.

Parameters
valuesValue to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintGradientsReference ( List< IVector reference)

Sets constraint function gradients. Only the list reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

IVector IG.Num.IAnalysisResults.GetConstraintGradient ( int  which)

Returns the gradient of the specified constraint function.

Parameters
whichSpecifies which constraint function to take (couonted from 0).

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisResults.ToStringMath().

double IG.Num.IAnalysisResults.GetConstraintGradient ( int  which,
int  index 
)

Returns the specific constraint function gradient component.

Parameters
whichSpecifies which constraint function to take (couonted from 0).
indexSpecifies gradient component (conted form 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintGradient ( int  which,
IVector  value 
)

Sets the specified constraint function gradient. If CopyReferences=true (false by default) then only the reference is copied.

Parameters
whichSpecifies which constraint function to take (couonted from 0).
valueValue of the gradient to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintGradientReference ( int  which,
IVector  reference 
)

Sets the specified constraint function gradient. Only the reference is copied.

Parameters
whichSpecifies which constraint function to take (couonted from 0).
referenceGradient reference to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintGradient ( int  which,
int  index,
double  value 
)

Sets the specified constraint fuction gradient component.

Parameters
whichSpecifies which constraint function to take (couonted from 0).
indexSpecified index of gradient coponent to be set.
valueValue to be assigned to the specified component.

Implemented in IG.Num.AnalysisResults.

IMatrix IG.Num.IAnalysisResults.GetObjectiveHessian ( )

Returns the objective function's Hessian.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveHessian ( IMatrix  value)

Sets the objective functions' Hessian. If CopyReferences=true (false by default) then only the reference is copied.

Parameters
valueValue to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveHessianReference ( IMatrix  reference)

Sets the objective functions' Hessian. Only the reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetObjectiveHessian ( int  rowIndex,
int  columnIndex 
)

Returns the specified component of the objective function Hessian.

Parameters
rowIndexRow index of the component (counting from 0).
columnIndexColumn index of the component (counting from 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetObjectiveHessian ( int  rowIndex,
int  columnIndex,
double  value 
)

Sets the specified component of the objective function's Hessian.

Parameters
rowIndexRow index of the component (counting from 0).
columnIndexColumn index of the component (counting from 0).
valueValue to be assigned to Hessian.

Implemented in IG.Num.AnalysisResults.

List<IMatrix> IG.Num.IAnalysisResults.GetConstraintHessians ( )

Returns the list of constraint functions' Hessians.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintHessians ( List< IMatrix values)

Sets constraint functios' Hessians. If CopyReferences=true (false by default) then only the list reference is copied.

Parameters
valuesList of Hessians to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintHessiansReference ( List< IMatrix reference)

Sets constraint functios' Hessians. Only the list reference is copied.

Parameters
referenceReference to be assigned.

Implemented in IG.Num.AnalysisResults.

IMatrix IG.Num.IAnalysisResults.GetConstraintHessian ( int  which)

Returns Hessian of the specified constraint function.

Parameters
whichSpecifies which constraint function it applies to (counting from 0).

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetConstraintHessian ( int  which,
int  rowIndex,
int  columnIndex 
)

Returns the specified component of Hessian of the specified constraint function.

Parameters
whichSpecifies which constraint function it applies to (counting from 0).
rowIndexRow index of the component (counting from 0).
columnIndexColumn index of the component (counting from 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintHessian ( int  which,
IMatrix  value 
)

Sets the specified constraint function's Hessian. If CopyReferences=true (false by default) then only the reference is copied.

Parameters
whichSpecifies which constraint function it applies to (counting from 0).
valueHessian matrix to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintHessianReference ( int  which,
IMatrix  reference 
)

Sets the specified constraint function's Hessian. Only the reference is copied.

Parameters
whichSpecifies which constraint function it applies to (counting from 0).
referenceHessian matrix reference to be assigned.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetConstraintHessian ( int  which,
int  rowIndex,
int  columnIndex,
double  value 
)

Sets the specified component of the specified constraint's Hessian.

Parameters
whichSpecifies which constraint function it applies to (counting from 0).
rowIndexRow index of the component (counting from 0).
columnIndexColumn index of the component (counting from 0).
valueValue to be set.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.NullifyAll ( )

Sets all objects (parameter and result objects) to null. If the references are not assigned elsewhere, these objects become eligible for garbage collection.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.NullifyResults ( )

Sets all result objects to null. If the references are not assigned elsewhere, these objects become eligible for garbage collection.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateParameters ( )

Allocates space for parameters.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateRequested ( )

Allocates space for all requested result objects.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateObjectiveGradient ( )

Allocate space for objective function gradient.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateObjectiveHessian ( )

Allocates space for objective function Hessian.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintsList ( )

Allocates space for list of constraint functions.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintGradientsList ( )

Allocates space for list of constraint function gradients.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstrainGradients ( )

Allocates space for constraint function gradients (including for the list, if necessarty).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintGradient ( int  which)

Allocates space for the specified constraint function gradient.

Parameters
whichSpecifies which constraint function it applies to (countinf form 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintHessiansList ( )

Allocates space for the list of constraint functions' Hessians.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintHessians ( )

Allocates space for constraint functions' Hessians (including space for the list, if necessary).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.AllocateConstraintHessian ( int  which)

Allocates space for the specified constraint fucnction's Hessian.

Parameters
whichSpecifies which constraint function it applies to (conting form 0).

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.ResetResults ( )

Sets all calculated flags to false, error code to 0 (no error) and error string to null.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetDimensions ( int  numParameters,
int  numConstraints 
)

Sets the dimension of the analysis results object according to the specified values.

Number of objective functions is set to 1.

Parameters
numParametersNumber of parameters.
numConstraintsNumber of constraints.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.SetDimensions ( int  numParameters,
int  numObjectives,
int  numConstraints 
)

Sets the dimension of the analysis results object according to the specified values.

Parameters
numParametersNumber of parameters.
numObjectivesNumber of objective functions.
numConstraintsNumber of constraints.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.PrepareResultStorage ( )

Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false.

Things whose calculation is not requested are not calculated.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.PrepareResultStorage ( bool  resetCalculatedFlags)

Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags.

Things whose calculation is not requested are not calculated.

Parameters
resetCalculatedFlagsWhether the calculation flags are reset to false or not.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.PrepareResultStorage ( int  numParameters,
int  numConstraints 
)

Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false.

This method also sets dimensions before preparing the storage (i.e. number of parameters and constraints while number of objective functions is set to 1).

Things whose calculation is not requested are not calculated.

Parameters
numParametersNumber of parameters.
numConstraintsNumber of constraints.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.PrepareResultStorage ( int  numParameters,
int  numObjectives,
int  numConstraints 
)

Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags, and resets calculation flags to false.

This method also sets dimensions before preparing the storage (i.e. number of parameters, objective functions and constraints).

Things whose calculation is not requested are not calculated.

Parameters
numParametersNumber of parameters.
numObjectivesNumber of objective functions.
numConstraintsNumber of constraints.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.PrepareResultStorage ( int  numParameters,
int  numObjectives,
int  numConstraints,
bool  resetCalculatedFlags 
)

Prepares data storage for results (allocates the appropriate vectors, matrices, lists, etc.) according to the numbers of parameters, constraint functions, and request flags.

This method also sets dimensions before preparing the storage (i.e. number of parameters, objective functions and constraints).

Things whose calculation is not requested are not calculated.

Parameters
numParametersNumber of parameters.
numObjectivesNumber of objective functions.
numConstraintsNumber of constraints.
resetCalculatedFlagsWhether the calculation flags are reset to false or not.

Implemented in IG.Num.AnalysisResults.

void IG.Num.IAnalysisResults.Copy ( IAnalysisResults  results)

Copies data from another analysis results.

Parameters
resultsAnalysis results which data is copied from.

Implemented in IG.Num.AnalysisResults.

IAnalysisResults IG.Num.IAnalysisResults.GetCopy ( )

Returns an exact deep copy of the current object.

Implemented in IG.Num.AnalysisResults.

bool IG.Num.IAnalysisResults.IsViolated ( int  which,
double  equalityTolerance 
)

Returns true if the specified constraint is violated according to the current analysis results, false otherwise.

Parameters
whichSpecifies the constraint in question.
equalityToleranceTolerance for violation of equality constraints. If constraint function corresponding to equality conatraint is less or equal than tolerance then the corresponding constraint is considered non-violated.
Returns
True if the constraint is violated, false if not. Constraint is violated when the corresponding constraint function is greater than 0.
Exceptions
IndexOutOfRangeExceptionwhen constraint index is smaller lesser than 0 or greater than the number of constraints.
InvalidOperationExceptionwhen constraints are not evaluated.

Implemented in IG.Num.AnalysisResults.

bool IG.Num.IAnalysisResults.IsViolated ( int  which)

Returns true if the specified constraint is violated according to the current analysis results, false otherwise.

Parameters
whichSpecifies the constraint in question.
Returns
True if the constraint is violated, false if not. Constraint is violated when the corresponding constraint function is greater than 0.
Exceptions
IndexOutOfRangeExceptionwhen constraint index is smaller lesser than 0 or greater than the number of constraints.
InvalidOperationExceptionwhen constraints are not evaluated.

Implemented in IG.Num.AnalysisResults.

bool IG.Num.IAnalysisResults.IsFeasible ( double  equalityTolerance)

Returns true if the current analysis results represent a feasible point. Feasible point is one where no constraints are violated. For unconstraint problems this method always returns true.

Returns
True if the current analysis results represent a feasible point, false otherwise.
Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

bool IG.Num.IAnalysisResults.IsFeasible ( )

Returns true if the current analysis results represent a feasible point. Feasible point is one where no constraints are violated. For unconstraint problems this method always returns true.

Returns
True if the current analysis results represent a feasible point, false otherwise.
Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

int IG.Num.IAnalysisResults.GetNumViolatedConstraints ( double  equalityTolerance)

Returns number of violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0.

Parameters
equalityToleranceTolerance for violation of equality constraints. If constraint function corresponding to equality conatraint is less or equal than tolerance then the corresponding constraint is considered non-violated.
Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisComparer.Compare().

int IG.Num.IAnalysisResults.GetNumViolatedConstraints ( )

Returns number of violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0.

Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetSumResiduals ( double  equalityTolerance)

Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0.

Parameters
equalityToleranceTolerance for violation of equality constraints. If constraint function corresponding to equality conatraint is less or equal than tolerance then the corresponding constraint is considered non-violated.
Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetSumResiduals ( )

Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0.

Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetMaximalResidual ( double  equalityTolerance)

Returns the largest constraint function value corresponding to any violated constraint in the current analysis results, or 0 if there are no violated constraints. Specific constraint is violated if the corresponding constraint function is greater than 0.

Parameters
equalityToleranceTolerance for violation of equality constraints. If constraint function corresponding to equality conatraint is less or equal than tolerance then the corresponding constraint is considered non-violated.
Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisComparer.Compare().

double IG.Num.IAnalysisResults.GetMaximalResidual ( )

Returns sum of constraint function values corresponding to violated constraints in the current analysis results. Specific constraint is violated if the corresponding constraint function is greater than 0.

Exceptions
InvalidOperationExceptionIf constraint optimization results do not contain evaluated constraint values.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetPenaltyTerm ( int  which,
IPenaltyEvaluator  evaluator 
)

Returns value of the penalty term corresponding to the specified constraint, calculated by the specified penalty evaluator.

Parameters
whichSpecifies the constraint in question.
evaluatorPenalty function evaluator that evaluates penalty functions.

Implemented in IG.Num.AnalysisResults.

double IG.Num.IAnalysisResults.GetSumPenaltyTerms ( IPenaltyEvaluator  evaluator)

Returns sum of the penalty terms corresponding to all constraint, calculated by the specified penalty evaluator.

Parameters
evaluatorPenalty function evaluator that evaluates penalty functions.

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisComparer.Compare().

double IG.Num.IAnalysisResults.GetMaxPenaltyTerm ( IPenaltyEvaluator  evaluator)

Returns sum of the penalty terms corresponding to all constraint, calculated by the specified penalty evaluator.

Parameters
evaluatorPenalty function evaluator that evaluates penalty functions.

Implemented in IG.Num.AnalysisResults.

Referenced by IG.Num.AnalysisComparer.Compare().

Property Documentation

int IG.Num.IAnalysisResults.NumParameters
getset

Number of parameters.

Referenced by IG.Num.AnalysisResults.Copy().

int IG.Num.IAnalysisResults.NumObjectives
getset

Number of objective functions (normally 1 for this type, but can be 0).

Referenced by IG.Num.AnalysisResults.Copy().

int IG.Num.IAnalysisResults.NumConstraints
getset

Number of constraints.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

int IG.Num.IAnalysisResults.NumEqualityConstraints
getset

Number of equality constraints.

Referenced by IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.CopyReferences
getset

Indicates whether just references can be copied when setting optimization parameters or results. If false then deep copy is always be performed. Default is false.

IVector IG.Num.IAnalysisResults.Parameters
getset

Optimization parameters. If CopyReferences=true (false by default) then only the reference is copied when assigning.

Referenced by IG.Neural.AnalysisFileServerNeural.Analyse(), IG.Num.AnalysisResults.Copy(), IG.Num.AnalysisResults.ToStringMath(), and IG.Num.AnalysisResults.ToStringRequestMath().

double IG.Num.IAnalysisResults.Objective
getset
IVector IG.Num.IAnalysisResults.ObjectiveGradient
getset

Objective function gradient. If CopyReferences=true (false by default) then only the reference is copied in assignments.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

List<double> IG.Num.IAnalysisResults.Constraints
getset

Constraint function values. If CopyReferences=true (false by default) then only the list reference is copied in assignments.

Referenced by IG.Num.AnalysisResults.Copy().

List<IVector> IG.Num.IAnalysisResults.ConstraintGradients
getset

Constraint function gradients. If CopyReferences=true (false by default) then only the list reference is copied in assignments.

Referenced by IG.Num.AnalysisResults.Copy().

IMatrix IG.Num.IAnalysisResults.ObjectiveHessian
getset

Objective function Hessian (matrix of second derivatives). If CopyReferences=true (false by default) then only the reference is copied in assignments.

Referenced by IG.Num.AnalysisResults.Copy().

List<IMatrix> IG.Num.IAnalysisResults.ConstraintHessians
getset

Constraint functions' Hessians (matrices of second derivatives). If CopyReferences=true (false by default) then only the list reference is copied in assignments.

Referenced by IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqObjective
getset

Indicates whether calculation of objective function is/was requested.

Referenced by IG.Num.AnalysisResults.AppendRequestFlagsMath(), IG.Neural.AnalysisFileServerNeural.ApproximationToAnalysisOutput(), and IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqObjectiveGradient
getset

Indicates whether calculation of objective function gradient is/was requested.

Referenced by IG.Num.AnalysisResults.AppendRequestFlagsMath(), and IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqObjectiveHessian
getset

Indicates whether calculation of objective function Hessian is/was requested.

Referenced by IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqConstraints
getset

Indicates whether calculation of constraint functions is/was requested.

Referenced by IG.Num.AnalysisResults.AppendRequestFlagsMath(), and IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqConstraintGradients
getset

Indicates whether calculation of constraint functions gradient is/was requested.

Referenced by IG.Num.AnalysisResults.AppendRequestFlagsMath(), and IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.ReqConstraintHessians
getset

Indicates whether calculation of constraint functions Hessian is/was requested.

Referenced by IG.Num.AnalysisResults.Copy().

int IG.Num.IAnalysisResults.ErrorCode
getset

Error code. 0 - everything is OK. negative value - something went wrong.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

String IG.Num.IAnalysisResults.ErrorString
getset

Error string indicating what went wrong.

Referenced by IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.Calculated
getset

Collectively gets or sets calculated flags. Set false: all calculated flags are set to false. Set true: all calculated flags for which the corresponding request flags are true, are set to truee, others are set to false. Get: returns true if all the flags for which the corresponding request flags are true, are also true. Otherwise returns false.

bool IG.Num.IAnalysisResults.CalculatedObjective
getset

Indicates whether calculation of objective function is/was requested.

Referenced by IG.Neural.AnalysisFileServerNeural.ApproximationToAnalysisOutput(), IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

bool IG.Num.IAnalysisResults.CalculatedObjectiveGradient
getset

Indicates whether calculation of objective function gradient is/was requested.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

bool IG.Num.IAnalysisResults.CalculatedObjectiveHessian
getset

Indicates whether calculation of objective function Hessian is/was requested.

Referenced by IG.Num.AnalysisResults.Copy().

bool IG.Num.IAnalysisResults.CalculatedConstraints
getset

Indicates whether calculation of constraint functions is/was requested.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

bool IG.Num.IAnalysisResults.CalculatedConstraintGradients
getset

Indicates whether calculation of constraint functions gradient is/was requested.

Referenced by IG.Num.AnalysisResults.Copy(), and IG.Num.AnalysisResults.ToStringMath().

bool IG.Num.IAnalysisResults.CalculatedConstraintHessians
getset

Indicates whether calculation of constraint functions Hessian is/was requested.

Referenced by IG.Num.AnalysisResults.Copy().


The documentation for this interface was generated from the following file: