Программная реализация модального управления для линейных стационарных систем
Категория реферата: Рефераты по радиоэлектронике
Теги реферата: шпаргалки по педагогике, судебная реферат
Добавил(а) на сайт: Anzhelika.
Предыдущая страница реферата | 16 17 18 19 20 21 22 23 24 25 26 | Следующая страница реферата
implementation
function SymmetricalFunction (Roots: TComplexVector; K: byte): Float; var
Z: TComplex;
function SummComplex (FirstNC, SecondNC: TComplex): TComplex; begin
Result.Re := FirstNC.Re + SecondNC.Re;
Result.Im := FirstNC.Im + SecondNC.Im; end;
function MultComplex (FirstNC, SecondNC: TComplex): TComplex; begin
Result.Re := FirstNC.Re * SecondNC.Re - FirstNC.Im * SecondNC.Im;
Result.Im := FirstNC.Re * SecondNC.Im + FirstNC.Im * SecondNC.Re; end;
function DivComplex (FirstNC, SecondNC: TComplex): TComplex; var
Z: Float; begin
Z := Sqr(SecondNC.Re) + Sqr(SecondNC.Im);
Result.Re := (FirstNC.Re * SecondNC.Re + FirstNC.Im * SecondNC.Im) / Z;
Result.Im := (FirstNC.Im * SecondNC.Re - FirstNC.Re * SecondNC.Im) / Z; end;
function CombinationSumm (LowLimit, HighLimit, K: byte): TComplex; var i: byte; begin
Result.Re := 0;
Result.Im := 0; if LowLimit = HighLimit then Result := Roots.Data[LowLimit] else for i := LowLimit to HighLimit - K + 1 do if K = 1 then Result := SummComplex(Result, Roots.Data [i]) else Result := SummComplex(Result,
MultComplex(Roots.Data [i],
CombinationSumm(i + 1,
HighLimit, K-
1)));
end; begin
Z := CombinationSumm(1, Roots.Dim, K);
Result := Z.Re; end;
procedure DiffSystemSolve (matrixA, matrixB: TMatrix;
LowerLimit, UpperLimit: Float;
InitialValues: TMatrix;
NumReturn, NumIntervals: Word;
SolutionValues: TMatrix); type
Ptr = ^Data;
Data = record
Values: TMatrix;
Next: Ptr; end; var
ValuesStack: Ptr;
Spacing, HalfSpacing: Float;
Index, Term: Word;
F1, F2, F3, F4,
CurrentValues,
TempValues: TMatrix;
NumEquations, NumTimeCol: Word;
function TargetALL (matrixA, mayrixB: TMatrix; Values: TMatrix; KRow:
Word): Float; var j: Word; begin try
Result := matrixB.Items[KRow]; for j := 1 to NumEquations do
Result := Result + matrixA[j, KRow] * Values.Items[j]; except on EO: EOverflow do EO.Message := 'Не буду считать !!!'#10 +
'С уменьшите разброс коэффициентов в матрице А'#10 +
'либо измените опции (уменьшите их pls.)'; end; end;
procedure Push (var ValuesStack: Ptr;
CurrentValues: TMatrix); var
NewNode : Ptr; begin
New(NewNode);
NewNode^.Values := TMatrix.Create(NumTimeCol, 1);
NewNode^.Values.Assign(CurrentValues);
Рекомендуем скачать другие рефераты по теме: виленкин математика 6 класс решебник, шпора на пятке лечение, дипломная работа формирование.
Предыдущая страница реферата | 16 17 18 19 20 21 22 23 24 25 26 | Следующая страница реферата