Алгоритм компактного хранения и решения СЛАУ высокого порядка
Категория реферата: Рефераты по математике
Теги реферата: баллов, прочитать сообщение
Добавил(а) на сайт: Аюшиев.
Предыдущая страница реферата | 22 23 24 25 26 27 28 29 30 31 32 | Следующая страница реферата
}
for (i = 0; i < Right.Size(); i++) Matr[i][Matr.Size1()] = Right[i];
}
void TSMatrix::Set(DWORD Index,DWORD Position,double Value,bool Case)
{
DWORD Row = Index,
Col = Position * Links[Index].Size() * Dim + Find(Index,Index) * Dim + Position,
i;
double koff = Array[Row][Col],
val;
if (!Case)
Right[Dim * Index + Position] = Value;
else
{
Right[Index * Dim + Position] = Value * koff;
for (i = 0L; i < Size * Dim; i++)
if (i != Index * Dim + Position)
{
Set(Index * Dim + Position,i,0);
Set(i,Index * Dim + Position,0);
if (Get(i,Index * Dim + Position,val))
Right[i] -= val * Value;
}
}
}
void TSMatrix::Mul(RVector& Arr,RVector& Res)
{
DWORD i,
j,
NRow,
NPoint,
NLink,
Pos;
Res.ReSize(Arr.Size());
for (i = 0; i < Size; i++)
for (j = 0; j < Array[i].Size(); j++)
{
NRow = j / (Array[i].Size() / Dim);
NPoint = (j - NRow * (Array[i].Size() / Dim)) / Dim;
NLink = j % Dim;
Pos = Links[i][NPoint];
Res[i * Dim + NRow] += Arr[Pos * Dim + NLink] * Array[i][j];
}
}
double TSMatrix::Mul(DWORD Index,RVector& Arr)
{
DWORD j,
I = Index / Dim,
L = Index % Dim,
Start = L * (Array[I].Size() / Dim),
Рекомендуем скачать другие рефераты по теме: bestreferat ru, особенности реферата.
Предыдущая страница реферата | 22 23 24 25 26 27 28 29 30 31 32 | Следующая страница реферата