ISmExpressionProvider.Metabase

Синтаксис

Metabase: Object;

Описание

Свойство Metabase определяет репозиторий, в котором будет искаться пользовательский модуль, используемый в выражении.

Комментарии

Данное свойство актуально у статистических методов, для которых можно задавать выражения:

Пример

Для выполнения примера в репозитории должен находится модуль с идентификатором «STAT_FUNC», содержащий пользовательскую функцию «test».

Sub UserProc;

Var

sm : SmNonLinearEquations;

functions : array[2] Of string;

initvalues : array[2] Of double;

status: integer;

provider: ISmExpressionProvider;

Begin

sm := New SmNonLinearEquations.Create;

provider := sm As ISmExpressionProvider;

provider.Metabase := MetabaseClass.Active;

functions[0] := "y+12.34-0.21*134";

functions[1] := "y2-35.17*8-1.64*y+STAT_FUNC.test";

sm.Functions := functions;

initvalues[0] := 1;

initvalues[1] := 1;

 

sm.InitApproximation := initvalues;

sm.CoefficientsOrder := "y;y2";

 

status := sm.Execute;

debug.WriteLine(status);

debug.WriteLine(sm.Errors);

If (status = 0) Then

debug.WriteLine(sm.Solution[0]);

debug.WriteLine(sm.Solution[1]);

debug.WriteLine(sm.FunctionValues[0]);

debug.WriteLine(sm.FunctionValues[1]);

End If;

End Sub UserProc;

После выполнения примера в окно консоли будут выведены результаты расчета. В выражениях для метода будет использована пользовательская функция.

См. также:

ISmExpressionProvider