IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.
|
Interface for Inverse Interpreter. More...
Public Member Functions | |
InterfaceInverse () | |
InterfaceInverse (string commandFileName) | |
InterfaceInverse (string workingDirctory, string commandFileName) | |
Constructor. | |
InterfaceInverse (string commandDirectory, string startDirectory, string commandFileName) | |
Constructor. | |
override void | AppendValue (bool value) |
Appends a boolean value to the interpreter command file contents. | |
override void | AppendValue (string value) |
Appends a string value to the interpreter command file contents. | |
override void | AppendValue (IVector value) |
Appends a vector value to the interpreter command file contents. | |
override void | AppendValue (IMatrix value) |
Appends a matrix value to the interpreter command file contents. | |
virtual void | StartAnalysisBlock () |
Appends beginning of analysis block to the interpreter file contents. | |
virtual void | EndAnalysisBlock () |
Appends end of analysis block to the interpreter file contents. | |
virtual void | Interactive (string message) |
Starts interactive interpreter. | |
virtual void | Interpret (string filePath) |
Interprets a file. | |
virtual void | SetVariable (string variableName, int value) |
Command - sets an integer interpreter variable. | |
virtual void | SetVariable (string variableName, double value) |
Command - sets a double interpreter variable. | |
virtual void | SetVariable (string variableName, bool value) |
Command - sets a boolean interpreter variable. | |
virtual void | SetVariable (string variableName, string value) |
Command - sets a string interpreter variable. | |
virtual void | SetVariable (string variableName, IVector value) |
Command - sets a vector interpreter variable. | |
virtual void | SetVariable (string variableName, IMatrix value) |
Command - sets a matrix interpreter variable. | |
virtual void | SetParamMom (IVector parameters) |
Sets the current parameters. | |
virtual void | SetCalculateObjective (bool flagValue) |
Sets the flag for calculation of objective function. | |
virtual void | SetCalculateConstraints (bool flagValue) |
Sets the flag for calculation of constraint functions. | |
virtual void | SetCalculateGradObjective (bool flagValue) |
Sets the flag for calculation of objective function gradient. | |
virtual void | SetCalculateGradConstraints (bool flagValue) |
Sets the flag for calculation of constraint function gradients. | |
virtual void | FileAnalysis (string analysisCommand, string analysisInputPath, string analysisOutputPath) |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. | |
virtual void | FileAnalysis (string analysisCommand, string workingDirectoryPath, string analysisInputFileName, string analysisOutputFileName) |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. | |
virtual void | FileAnalysisStandard (string analysisExecutable, string analysisCommandName, string workingDirectory, string analysisInputFileName, string analysisOutputFileName) |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. IMPORTANT: It is assumed that analysis program is called as a shell with built-in command-line interpreter, such that command is invoked by executable name followed by interpreter command followed by working directory path. It is alsoassumed that analysis input and output files are exchanged in the working directory. | |
virtual void | FileAnalysisStandard (string analysisExecutable, string analysisCommandName, string workingDirectory) |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. IMPORTANT: It is assumed that analysis program is called as a shell with built-in command-line interpreter, such that command is invoked by executable name followed by interpreter command followed by working directory path. It is assumed that analysis input and output files are exchanged in the working directory, and their names are standard names used by file analysis servers. | |
virtual void | Analyse (IVector param) |
Command - runs a direct analysis at the specified parameters. | |
virtual void | Analyse (IVector param, bool calcobj, bool calcconstr, bool calcgradobj, bool calcgradconstr) |
Command - runs a direct analysis at the specified parameters, with specified calculation flags. | |
virtual void | TabAn1d (IVector pont0, IVector point1, int numPoints, bool centered, double factor, double scaling) |
Runs an 1D table of analyses. | |
virtual void | TabAn1d (IVector pont0, IVector point1, int numPoints, bool centered, double factor, double scaling, bool printTab, bool printParam, bool printList, bool printObj, bool printConstr, bool printGradobj, bool printGradconstr) |
Runs an 1D table of analyses. | |
virtual void | TabAn2d (IVector pont0, IVector point1, IVector point2, int numPoints1, bool centered1, double factor1, double scaling1, int numPoints2, bool centered2, double factor2, double scaling2) |
virtual void | TabAn2d (IVector pont0, IVector point1, IVector point2, int numPoints1, bool centered1, double factor1, double scaling1, int numPoints2, bool centered2, double factor2, double scaling2, bool printTab, bool printParam, bool printList, bool printObj, bool printConstr, bool printGradobj, bool printGradconstr) |
virtual void | MinSimplex (IVector initialGuess, IVector stepSizes, int maxIt, IVector tolX, double tolF, int printLevel) |
Runs the unconstaint nonlinear (modified Nelder-Mead) simplex minimization algorithm. | |
virtual void | NlpSimplex (int numConstraints, IVector initialGuess, IVector stepSizes, int maxIt, IVector tolX, double tolF, double tolConstr, int printLevel) |
Runs the constraint nonlinear (modified Nelder-Mead) simplex minimization algorithm. | |
virtual void | NlpSimplexBoundConstr (int numConstraints, IVector initialGuess, IVector stepSizes, int maxIt, IVector tolX, double tolF, double tolConstr, IVector lowerBounds, IVector upperBounds, double bigNumber, int printLevel) |
Runs the constraint nonlinear (modified Nelder-Mead) simplex minimization algorithm. | |
Properties | |
virtual string | AnalysisBlockName [get] |
String that introduces the analysis block. | |
virtual string | CmdNameInterpret [get] |
Command name - interpret. | |
virtual string | CmdNameInteractive [get] |
Command name - analyse. | |
virtual string | CmdNameWrite [get] |
Command name - analyse. | |
virtual string | CmdNameDWrite [get] |
Command name - analyse. | |
virtual string | CmdNameSetVarInt [get] |
Command name - setting an integer variable. | |
virtual string | CmdNameSetVarDouble [get] |
Command name - setting a double variable. | |
virtual string | CmdNameSetVarBoolean [get] |
Command name - setting a boolean variable. | |
virtual string | CmdNameSetVarString [get] |
Command name - setting a string variable. | |
virtual string | CmdNameSetVarVector [get] |
Command name - setting a vector variable. | |
virtual string | CmdNameSetVarMatrix [get] |
Command name - setting a matrix variable. | |
virtual string | VarNameParamMom [get] |
virtual string | VarNameCalcObjective [get] |
virtual string | VarNameCalcConstraints [get] |
virtual string | VarNameCalcGradObjective [get] |
virtual string | VarNameCalcGradConstraints [get] |
virtual string | VarNameObjectiveMom [get] |
virtual string | VarNameConstraintsMom [get] |
virtual string | VarNameGradObjectiveMom [get] |
virtual string | VarNameGradConstraintMom [get] |
virtual string | CmdNameFileAnalysis [get] |
Command name - analyse. | |
virtual string | AnalysisInputFileNameStandard [get] |
Standard analysis input file name. | |
virtual string | AnalysisOutputFileNameStandard [get] |
Standard analysis output file name. | |
virtual string | CmdNameAnalyse [get] |
Command name - analyse. | |
virtual string | CmdNameTab1d [get] |
Command name - taban1d. | |
virtual string | CmdNameTab2d [get] |
Command name - taban2d. | |
virtual string | CmdNameMinSimp [get] |
Command name - taban2d. | |
virtual string | CmdNameNlpSimp [get] |
Command name - taban2d. | |
virtual string | CmdNameNlpSimpBoundConstr [get] |
Command name - taban2d. |
Interface for Inverse Interpreter.
This interface is used for testing, training and demonstration purposes. $A Igor Jul09;
IG::Lib::InterfaceInverse::InterfaceInverse | ( | ) | [inline] |
IG::Lib::InterfaceInverse::InterfaceInverse | ( | string | commandFileName | ) | [inline] |
IG::Lib::InterfaceInverse::InterfaceInverse | ( | string | workingDirctory, |
string | commandFileName | ||
) | [inline] |
Constructor.
workingDirctory | Directory whre command file is written to and working directory for interpreter's application. Relative or absolute path. |
commandFileName | Name of the command file to which commands are written and which is interpreted by the interpreter. |
IG::Lib::InterfaceInverse::InterfaceInverse | ( | string | commandDirectory, |
string | startDirectory, | ||
string | commandFileName | ||
) | [inline] |
Constructor.
commandDirectory | Directory whre command file is written to. Relative or absolute path. |
startDirectory | Directory in which interpreter application is started. Relative or absolute path. |
commandFileName | Name of the command file to which commands are written and which is interpreted by the interpreter. |
override void IG::Lib::InterfaceInverse::AppendValue | ( | bool | value | ) | [inline, virtual] |
Appends a boolean value to the interpreter command file contents.
value | Value to be appended. |
Reimplemented from IG::Lib::InterfaceInterpreterBase.
override void IG::Lib::InterfaceInverse::AppendValue | ( | string | value | ) | [inline, virtual] |
Appends a string value to the interpreter command file contents.
value | Value to be appended. |
Reimplemented from IG::Lib::InterfaceInterpreterBase.
override void IG::Lib::InterfaceInverse::AppendValue | ( | IVector | value | ) | [inline, virtual] |
Appends a vector value to the interpreter command file contents.
value | Value to be appended. |
Reimplemented from IG::Lib::InterfaceInterpreterBase.
override void IG::Lib::InterfaceInverse::AppendValue | ( | IMatrix | value | ) | [inline, virtual] |
Appends a matrix value to the interpreter command file contents.
value | Value to be appended. |
Reimplemented from IG::Lib::InterfaceInterpreterBase.
virtual void IG::Lib::InterfaceInverse::StartAnalysisBlock | ( | ) | [inline, virtual] |
Appends beginning of analysis block to the interpreter file contents.
virtual void IG::Lib::InterfaceInverse::EndAnalysisBlock | ( | ) | [inline, virtual] |
Appends end of analysis block to the interpreter file contents.
virtual void IG::Lib::InterfaceInverse::Interactive | ( | string | message | ) | [inline, virtual] |
Starts interactive interpreter.
message | Message to the user that is written before starting an interactive interpreter. |
virtual void IG::Lib::InterfaceInverse::Interpret | ( | string | filePath | ) | [inline, virtual] |
Interprets a file.
message | Path to the file that will be interpreted. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
int | value | ||
) | [inline, virtual] |
Command - sets an integer interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
double | value | ||
) | [inline, virtual] |
Command - sets a double interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
bool | value | ||
) | [inline, virtual] |
Command - sets a boolean interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
string | value | ||
) | [inline, virtual] |
Command - sets a string interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
IVector | value | ||
) | [inline, virtual] |
Command - sets a vector interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetVariable | ( | string | variableName, |
IMatrix | value | ||
) | [inline, virtual] |
Command - sets a matrix interpreter variable.
variableName | Name of the variable. |
value | Value of the variable. |
virtual void IG::Lib::InterfaceInverse::SetParamMom | ( | IVector | parameters | ) | [inline, virtual] |
Sets the current parameters.
parameters | Vector containing parameter values. |
virtual void IG::Lib::InterfaceInverse::SetCalculateObjective | ( | bool | flagValue | ) | [inline, virtual] |
Sets the flag for calculation of objective function.
flagValue | Value of the flag that is assigned. |
virtual void IG::Lib::InterfaceInverse::SetCalculateConstraints | ( | bool | flagValue | ) | [inline, virtual] |
Sets the flag for calculation of constraint functions.
flagValue | Value of the flag that is assigned. |
virtual void IG::Lib::InterfaceInverse::SetCalculateGradObjective | ( | bool | flagValue | ) | [inline, virtual] |
Sets the flag for calculation of objective function gradient.
flagValue | Value of the flag that is assigned. |
virtual void IG::Lib::InterfaceInverse::SetCalculateGradConstraints | ( | bool | flagValue | ) | [inline, virtual] |
Sets the flag for calculation of constraint function gradients.
flagValue | Value of the flag that is assigned. |
virtual void IG::Lib::InterfaceInverse::FileAnalysis | ( | string | analysisCommand, |
string | analysisInputPath, | ||
string | analysisOutputPath | ||
) | [inline, virtual] |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block.
analysisCommand | Command that needs to be executed to run external direct analysis (together with command-line arguments). |
analysisInputPath | Path to the analysis input file (relative paths are NOT converted!). |
analysisOutputPath | Path to the analysis output file (relative paths are NOT converted!). |
virtual void IG::Lib::InterfaceInverse::FileAnalysis | ( | string | analysisCommand, |
string | workingDirectoryPath, | ||
string | analysisInputFileName, | ||
string | analysisOutputFileName | ||
) | [inline, virtual] |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block.
analysisCommand | Command that needs to be executed to run external direct analysis. |
workingDirectoryPath | Working directory where files are exchanged. Relative paths are NOT converted to absolute paths before use. |
analysisInputFileName | Name of the analysis input file. |
analysisOutputFileName | Name the analysis output file. |
virtual void IG::Lib::InterfaceInverse::FileAnalysisStandard | ( | string | analysisExecutable, |
string | analysisCommandName, | ||
string | workingDirectory, | ||
string | analysisInputFileName, | ||
string | analysisOutputFileName | ||
) | [inline, virtual] |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. IMPORTANT: It is assumed that analysis program is called as a shell with built-in command-line interpreter, such that command is invoked by executable name followed by interpreter command followed by working directory path. It is alsoassumed that analysis input and output files are exchanged in the working directory.
analysisExecutable | Name of the executable. |
analysisCommandName | Name of the interpreter command that invokes direct analysis that exchanges data through files. |
workingDirectory | Working directory path (relative paths are NOT converted!). |
analysisInputFileName | Name of the analysis input file. |
analysisOutputFileName | Name of the analysis output file. |
virtual void IG::Lib::InterfaceInverse::FileAnalysisStandard | ( | string | analysisExecutable, |
string | analysisCommandName, | ||
string | workingDirectory | ||
) | [inline, virtual] |
Command - runs an external analysis program that exchanges intoermation through files. Before running the program, it writes analysis input file, and afterwards it reads analysis output. This command is usually put into anaysis block. IMPORTANT: It is assumed that analysis program is called as a shell with built-in command-line interpreter, such that command is invoked by executable name followed by interpreter command followed by working directory path. It is assumed that analysis input and output files are exchanged in the working directory, and their names are standard names used by file analysis servers.
analysisExecutable | Name of the executable. |
analysisCommandName | Name of the interpreter command that invokes direct analysis that exchanges data through files. |
workingDirectory | Working directory path (relative paths are NOT converted!). |
virtual void IG::Lib::InterfaceInverse::Analyse | ( | IVector | param | ) | [inline, virtual] |
Command - runs a direct analysis at the specified parameters.
param | Vector of parameters. |
virtual void IG::Lib::InterfaceInverse::Analyse | ( | IVector | param, |
bool | calcobj, | ||
bool | calcconstr, | ||
bool | calcgradobj, | ||
bool | calcgradconstr | ||
) | [inline, virtual] |
Command - runs a direct analysis at the specified parameters, with specified calculation flags.
param | Vector of parameters. |
virtual void IG::Lib::InterfaceInverse::TabAn1d | ( | IVector | pont0, |
IVector | point1, | ||
int | numPoints, | ||
bool | centered, | ||
double | factor, | ||
double | scaling | ||
) | [inline, virtual] |
Runs an 1D table of analyses.
pont0 | Starting point of the table in the parameter space. |
point1 | End point of the table in the parameter space. |
numPoints | Number of analysis points. |
centered | Flag for a centered table. If true then the table is centered around the starting point point0. If table is centered with geometrically growing intervals then the interval lengths first fall from point1 reflected over point0 until point0, and then grow from point0 to point1. |
factor | Factor of interval length growth. If 0 or 1 then intervals between table points are uniform. If it is greater than 1 then intervals grow in such a way that each successive interval length is the previous length multiplied by factor. If it is smaller than 1 then factors fall in the same way. |
scaling | Additional scaling factor by which intervals are multiplied. The factor can be used e.g. if we want the table extend a bit over some special point of interest which we set as endpoint. Regardless of its size, the table remains to be centered (if centered is non-zero) or starting in point0. |
virtual void IG::Lib::InterfaceInverse::TabAn1d | ( | IVector | pont0, |
IVector | point1, | ||
int | numPoints, | ||
bool | centered, | ||
double | factor, | ||
double | scaling, | ||
bool | printTab, | ||
bool | printParam, | ||
bool | printList, | ||
bool | printObj, | ||
bool | printConstr, | ||
bool | printGradobj, | ||
bool | printGradconstr | ||
) | [inline, virtual] |
Runs an 1D table of analyses.
pont0 | Starting point of the table in the parameter space. |
point1 | End point of the table in the parameter space. |
numPoints | Number of analysis points. |
centered | Flag for a centered table. If true then the table is centered around the starting point point0. If table is centered with geometrically growing intervals then the interval lengths first fall from point1 reflected over point0 until point0, and then grow from point0 to point1. |
factor | Factor of interval length growth. If 0 or 1 then intervals between table points are uniform. If it is greater than 1 then intervals grow in such a way that each successive interval length is the previous length multiplied by factor. If it is smaller than 1 then factors fall in the same way. |
scaling | Additional scaling factor by which intervals are multiplied. The factor can be used e.g. if we want the table extend a bit over some special point of interest which we set as endpoint. Regardless of its size, the table remains to be centered (if centered is non-zero) or starting in point0. |
printTab | Whether data is also printed in table form. |
printParam | Whether a table of parameters in sampled points is printed together with the corresponding table indices and factors defining relative position with respect to point0 and point1. |
printList | If true then data is also printed in list form. |
printObj | Whether objective function value is printed. |
printConstr | Whethe constraint function value is printed. |
printGradobj | Whether gradient of the objective function is printed. |
printGradconstr | Ehether Gradients of constraint functions are printed. |
virtual void IG::Lib::InterfaceInverse::TabAn2d | ( | IVector | pont0, |
IVector | point1, | ||
IVector | point2, | ||
int | numPoints1, | ||
bool | centered1, | ||
double | factor1, | ||
double | scaling1, | ||
int | numPoints2, | ||
bool | centered2, | ||
double | factor2, | ||
double | scaling2 | ||
) | [inline, virtual] |
pont0 | Starting point of the table in the parameter space. |
point1 | The first end point of the table, defines the first table direction together with point0. |
point2 | The second end point of the table, defines the second table direction together with point0. |
numPoints1 | Number of analysis points (divisions) in the first direction. |
centered1 | Flag for a centered table in the first direction. If true then the table is centered around the starting point point0. If table is centered with geometrically growing intervals then the interval lengths first fall from point1 reflected over point0 until point0, and then grow from point0 to point1. |
factor1 | Factor of interval length growth in the first direction. If 0 or 1 then intervals between table points are uniform. If it is greater than 1 then intervals grow in such a way that each successive interval length is the previous length multiplied by factor. If it is smaller than 1 then factors fall in the same way. |
scaling1 | Additional scaling factor by which intervals are multiplied in the first direction. The factor can be used e.g. if we want the table extend a bit over some special point of interest which we set as endpoint. Regardless of its size, the table remains to be centered (if centered is non-zero) or starting in point0. |
numPoints2 | Number of analysis points (divisions) in the second direction. |
centered2 | Flag for a centered table in the second direction. |
factor2 | Factor of interval length growth in the second direction. |
scaling2 | Additional scaling factor by which intervals are multiplied in the second direction. |
virtual void IG::Lib::InterfaceInverse::TabAn2d | ( | IVector | pont0, |
IVector | point1, | ||
IVector | point2, | ||
int | numPoints1, | ||
bool | centered1, | ||
double | factor1, | ||
double | scaling1, | ||
int | numPoints2, | ||
bool | centered2, | ||
double | factor2, | ||
double | scaling2, | ||
bool | printTab, | ||
bool | printParam, | ||
bool | printList, | ||
bool | printObj, | ||
bool | printConstr, | ||
bool | printGradobj, | ||
bool | printGradconstr | ||
) | [inline, virtual] |
pont0 | Starting point of the table in the parameter space. |
point1 | The first end point of the table, defines the first table direction together with point0. |
point2 | The second end point of the table, defines the second table direction together with point0. |
numPoints1 | Number of analysis points (divisions) in the first direction. |
centered1 | Flag for a centered table in the first direction. If true then the table is centered around the starting point point0. If table is centered with geometrically growing intervals then the interval lengths first fall from point1 reflected over point0 until point0, and then grow from point0 to point1. |
factor1 | Factor of interval length growth in the first direction. If 0 or 1 then intervals between table points are uniform. If it is greater than 1 then intervals grow in such a way that each successive interval length is the previous length multiplied by factor. If it is smaller than 1 then factors fall in the same way. |
scaling1 | Additional scaling factor by which intervals are multiplied in the first direction. The factor can be used e.g. if we want the table extend a bit over some special point of interest which we set as endpoint. Regardless of its size, the table remains to be centered (if centered is non-zero) or starting in point0. |
numPoints2 | Number of analysis points (divisions) in the second direction. |
centered2 | Flag for a centered table in the second direction. |
factor2 | Factor of interval length growth in the second direction. |
scaling2 | Additional scaling factor by which intervals are multiplied in the second direction. |
printTab | Whether data is also printed in table form. |
printParam | Whether a table of parameters in sampled points is printed together with the corresponding table indices and factors defining relative position with respect to point0 and point1. |
printList | If true then data is also printed in list form. |
printObj | Whether objective function value is printed. |
printConstr | Whethe constraint function value is printed. |
printGradobj | Whether gradient of the objective function is printed. |
printGradconstr | Ehether Gradients of constraint functions are printed. |
virtual void IG::Lib::InterfaceInverse::MinSimplex | ( | IVector | initialGuess, |
IVector | stepSizes, | ||
int | maxIt, | ||
IVector | tolX, | ||
double | tolF, | ||
int | printLevel | ||
) | [inline, virtual] |
Runs the unconstaint nonlinear (modified Nelder-Mead) simplex minimization algorithm.
initialGuess | Initial guess. |
stepSizes | Vector step to construct the initial simplex. |
maxIt | Maximal number of iterations. |
tolX | Tolerance on parameter values. |
tolF | Tolerance on function values. |
printLevel | Level of output produced: 1 - data about arguments and optimization results are printed. 2 – basic information about iterations and more detailed information about results are also printed. 3 – simplex (co-ordinates of apices and values of the objective function) is also printed during iterations. 4 – Complete results are printed, included values of the constraint functions. 5 – at the end, all results of all analyses are also printed. Sets of results in all simplices over al iterations are also printed in the list form readable by Mathematica. |
virtual void IG::Lib::InterfaceInverse::NlpSimplex | ( | int | numConstraints, |
IVector | initialGuess, | ||
IVector | stepSizes, | ||
int | maxIt, | ||
IVector | tolX, | ||
double | tolF, | ||
double | tolConstr, | ||
int | printLevel | ||
) | [inline, virtual] |
Runs the constraint nonlinear (modified Nelder-Mead) simplex minimization algorithm.
numConstraints | Number of constraint functions. |
initialGuess | Initial guess. |
stepSizes | Vector step to construct the initial simplex. |
maxIt | Maximal number of iterations. |
tolX | Tolerance on parameter values. |
tolF | Tolerance on function values. |
tolConstr | Tolerance for constraint residuum (scalar argument; if it is 0 then none of the constraints may be violated in the solution). |
printLevel | Level of output produced: 1 - data about arguments and optimization results are printed. 2 – basic information about iterations and more detailed information about results are also printed. 3 – simplex (co-ordinates of apices and values of the objective function) is also printed during iterations. 4 – Complete results are printed, included values of the constraint functions. 5 – at the end, all results of all analyses are also printed. Sets of results in all simplices over al iterations are also printed in the list form readable by Mathematica. |
virtual void IG::Lib::InterfaceInverse::NlpSimplexBoundConstr | ( | int | numConstraints, |
IVector | initialGuess, | ||
IVector | stepSizes, | ||
int | maxIt, | ||
IVector | tolX, | ||
double | tolF, | ||
double | tolConstr, | ||
IVector | lowerBounds, | ||
IVector | upperBounds, | ||
double | bigNumber, | ||
int | printLevel | ||
) | [inline, virtual] |
Runs the constraint nonlinear (modified Nelder-Mead) simplex minimization algorithm.
numConstraints | Number of constraint functions. |
initialGuess | Initial guess. |
stepSizes | Vector step to construct the initial simplex. |
maxIt | Maximal number of iterations. |
tolX | Tolerance on parameter values. |
tolF | Tolerance on function values. |
tolConstr | Tolerance for constraint residuum (scalar argument; if it is 0 then none of the constraints may be violated in the solution). |
lowerBounds | Vector of lower bounds on prameters. |
upperBounds | Vector of upper bounds on parameters. |
bigNumber | Large positive value which is used for deciding whether components of lower and upper Bounds. |
printLevel | Level of output produced: 1 - data about arguments and optimization results are printed. 2 – basic information about iterations and more detailed information about results are also printed. 3 – simplex (co-ordinates of apices and values of the objective function) is also printed during iterations. 4 – Complete results are printed, included values of the constraint functions. 5 – at the end, all results of all analyses are also printed. Sets of results in all simplices over al iterations are also printed in the list form readable by Mathematica. |
Bound constraints are specified by vector arguments lowbounds and upbounds, whose components specify lower and upper bounds, respectively, for individual components of the parameter vector. If for some index the specified lower bound is larger than the corresponding upper bound then it is understood that no bounds are defined for this component of the parameter vector. If absolute value of some component of either lower or upper bound is greater than bignum, then it is also assumed that the corresponding bound is not defined (which allows to define for a given component of the parameter vector only lower or only upper bound). If there are components of the parameter vector for which only lower or only upper bound is defined, then the large positive number bignum must be specified such that components of lower or upper bound vectors whose absolute vlue is larger than bignum are not taken into account. bignum can be set to 0. In this case, the default value is taken, but this value can not fit the actual problem that is solved. If lowbounds and upbounds are not specified then the normal nonlinear constraint simplex algorithm is performed.
virtual string IG::Lib::InterfaceInverse::AnalysisBlockName [get] |
String that introduces the analysis block.
virtual string IG::Lib::InterfaceInverse::CmdNameInterpret [get] |
Command name - interpret.
virtual string IG::Lib::InterfaceInverse::CmdNameInteractive [get] |
Command name - analyse.
virtual string IG::Lib::InterfaceInverse::CmdNameWrite [get] |
Command name - analyse.
virtual string IG::Lib::InterfaceInverse::CmdNameDWrite [get] |
Command name - analyse.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarInt [get] |
Command name - setting an integer variable.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarDouble [get] |
Command name - setting a double variable.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarBoolean [get] |
Command name - setting a boolean variable.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarString [get] |
Command name - setting a string variable.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarVector [get] |
Command name - setting a vector variable.
virtual string IG::Lib::InterfaceInverse::CmdNameSetVarMatrix [get] |
Command name - setting a matrix variable.
virtual string IG::Lib::InterfaceInverse::VarNameParamMom [get] |
virtual string IG::Lib::InterfaceInverse::VarNameCalcObjective [get] |
virtual string IG::Lib::InterfaceInverse::VarNameCalcConstraints [get] |
virtual string IG::Lib::InterfaceInverse::VarNameCalcGradObjective [get] |
virtual string IG::Lib::InterfaceInverse::VarNameCalcGradConstraints [get] |
virtual string IG::Lib::InterfaceInverse::VarNameObjectiveMom [get] |
virtual string IG::Lib::InterfaceInverse::VarNameConstraintsMom [get] |
virtual string IG::Lib::InterfaceInverse::VarNameGradObjectiveMom [get] |
virtual string IG::Lib::InterfaceInverse::VarNameGradConstraintMom [get] |
virtual string IG::Lib::InterfaceInverse::CmdNameFileAnalysis [get] |
Command name - analyse.
virtual string IG::Lib::InterfaceInverse::AnalysisInputFileNameStandard [get] |
Standard analysis input file name.
virtual string IG::Lib::InterfaceInverse::AnalysisOutputFileNameStandard [get] |
Standard analysis output file name.
virtual string IG::Lib::InterfaceInverse::CmdNameAnalyse [get] |
Command name - analyse.
virtual string IG::Lib::InterfaceInverse::CmdNameTab1d [get] |
Command name - taban1d.
virtual string IG::Lib::InterfaceInverse::CmdNameTab2d [get] |
Command name - taban2d.
virtual string IG::Lib::InterfaceInverse::CmdNameMinSimp [get] |
Command name - taban2d.
virtual string IG::Lib::InterfaceInverse::CmdNameNlpSimp [get] |
Command name - taban2d.
virtual string IG::Lib::InterfaceInverse::CmdNameNlpSimpBoundConstr [get] |
Command name - taban2d.