Формирование и вызов метода в Delphi производится так же, как и в C++.
Ниже представлен пример,
демонстрирующий порядок формирования метода Tune алгоритма LSM.
var
kernel:TmaKernel;
A: TmaAlgorithm;
Tune: TmaMethod;
F,g,h: TmaMatrix;
щStr: TmaStream;
i,j:integer;
begin
kernel:=TmaKernel.Create('debug.log');
kernel.DebugLevel:=1; // включить отладочный вывод
kernel.LoadLibraryByName('ForecsysExample.ExampleLib');
// создание экземпляра алгоритма
A:=kernel.CreateAlgorithm('LSM');
// создание матриц данных
F:= TmaMatrix.Create (MA_DOUBLE, [168,7]);
g:= TmaMatrix.Create (MA_DOUBLE, [168,1]);
// Формирование матриц данных
for i:=0 to 167 do
for j:=0 to 6 do
F[i][j].AsDouble:=Random*10;
for i:=0 to 167 do g[i].AsDouble:=random;
// формирование аргументов и выполнение метода
Tune:=A.getMethod('Tune');
Tune.Input['St|F']:=F;
Tune.Output['Sc|{goal}']:= g;
Tune.Calc;
//считывание результата настройки
h:=Tune.Param['coeff'].AsMatrix;
approx_err:= A.Param['Result']['err'].AsDouble;
// вывод результатов в файл
oStr:= TmaStream.Create('data.txt',MA_FILE_WRITE+MA_FILE_TEXT);
oStr.Open;
ostr.Write(h);
ostr.newLine;
ostr.WriteDouble(approx_err);
oStr.Close;oStr.Free;
// Очистка памяти и завершение работы с maCom
F.Free;g.Free;h.Free;
A.Free;
kernel.UnloadLibraries;
kernel.Free;
end.