Up \Optimization

{@abstract(TOptim1D class)
author: Nikolai Shokhirev  )
created: June 06, 2003)
last modified: January 21, 2004)
ŠNikolai V. Shokhirev, 2001-2003 }
unit uOptimization;

interface

uses
  uMatTypes, uTensors;

type

  TOptim1D = class
  public
    constructor Create;
    procedure Bracketing(f: FloatFunction1D; x, step: TFloat);
    procedure GoldenSection(f: FloatFunction1D; eps: TFloat);
    procedure BernetMin(f: FloatFunction1D; eps: TFloat);
    property Bounded: boolean read GetBounded;
    property OutOfLimits: boolean read GetOutOfLimits;
    property Xmin: TFloat read GetXmin write SetXmin;
    property Xmax: TFloat read GetXmax write SetXmax;
    property LimitLow: TFloat read GetLimitLow write SetLimitLow;
    property LimitHigh: TFloat read GetLimitHigh write SetLimitHigh;
    property IterMax: TInt read GetIterMax write SetIterMax;
    property OptimalX: TFloat read GetOptimalX;
  end;

var
  GoldenRatio,
  GoldenFactor: TFloat;

implementation

initialization
  { GoldenRatio = 1.618033988749895 }
  GoldenRatio := (sqrt(5.0)+1.0)/2.0;
  { gold  = 0.381966011250105 }
  GoldenFactor := 0.5*(3.0-sqrt(5.0));
end.

Up \Optimization