property VariableParameters: TVec;
Set/read the variables in minimized function.
Result: stored in self (calling object), returns self for chaining
Remarks:
Access the VariableParameters vector to set/read the variables in minimized function. To define number of variables and their initial values, set the VariableParameters vector Length and Values properties. Read the VariableParameters Values property to get the function minimum position.
Examples
Uses Math387, MtxVecTools, Optimization, MtxVecEdit;
function Banana(const Pars: TVec; const Consts: TVec; const PConsts: Array of TObject): double;
begin
Banana := 100*Sqr(Pars[1]-Sqr(Pars[0]))+Sqr(1-Pars[0]);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
// function with two variables
// initial values for variables => Pars[0] := 2, Pars[1] := -1;
MtxOptim.VariableParameters.SetIt(false,[2,-1]);
MtxOptim.RealFunction := Banana;
MtxOptim.OptimizationMethod := optMarquardt;
// numeric approximation
MtxOptim.GradProcedure := nil;
MtxOptim.GradHessProcedure := nil;
MtxOptim.Recalculate;
// now VariableParameters holds minimum position
ViewValues(MtxOptim.VariableParameters,'Minimum position');
end;