This is a dynamic sparse matrix format There is full set of rows but in each row are stored only nonzeros. More...
#include <SparseConectivityMtx.h>
This is a dynamic sparse matrix format There is full set of rows but in each row are stored only nonzeros.
Definition at line 19 of file SparseConectivityMtx.h.
SparseConectivityMtxII | ( | const SparseMatrixF & | sm, | |
char | block_size | |||
) |
Definition at line 8 of file SparseConectivityMtx.cpp.
References SparseMatrixF::Adr(), SparseMatrixF::Ci(), ColumnsIndexes, long(), memset(), n, SparseMatrixF::neq, nonzeros, IntArrayList::SetIndexesTo(), and IntArrayList::SortInsert().
Referenced by GetPermutationAndPattern().
SparseConectivityMtxII | ( | const SparseMatrixF & | sm, | |
Ordering * | node_order, | |||
char | block_size | |||
) |
Definition at line 71 of file SparseConectivityMtx.cpp.
References SparseMatrixF::Adr(), SparseMatrixF::Ci(), ColumnsIndexes, IntArrayList::Count, IntArrayList::Items, long(), memset(), n, SparseMatrixF::neq, nonzeros, Ordering::order, Ordering::perm, IntArrayList::SetIndexesTo(), and IntArrayList::SortInsert().
SparseConectivityMtxII | ( | SparseConectivityMtxII & | mtx, | |
Ordering * | order | |||
) |
Definition at line 157 of file SparseConectivityMtx.cpp.
References IntArrayList::Capacity, ColumnsIndexes, IntArrayList::Count, IntArrayList::Items, memset(), N(), n, Nonzeros(), nonzeros, Ordering::order, and Ordering::perm.
SparseConectivityMtxII | ( | const SparseConectivityMtxII & | mtx | ) |
Definition at line 209 of file SparseConectivityMtx.cpp.
References ColumnsIndexes, N(), n, Nonzeros(), and nonzeros.
~SparseConectivityMtxII | ( | ) | [virtual] |
Definition at line 220 of file SparseConectivityMtx.cpp.
References ColumnsIndexes, and n.
void AddGrow | ( | long | i, | |
long | j | |||
) |
Definition at line 229 of file SparseConectivityMtx.cpp.
References IntArrayList::BinarySearch(), ColumnsIndexes, IntArrayList::Insert(), n, and nonzeros.
long ColumnLength | ( | long | i | ) |
Definition at line 246 of file SparseConectivityMtx.cpp.
References ColumnsIndexes, and IntArrayList::Count.
Referenced by CMcKee::FindFirstNode(), and GetOrder_Cuthill_McKee2().
IntArrayList * DetachIndexesAboveDiagonalInColumn | ( | long | j | ) | [virtual] |
Implements IConectMatrix.
Definition at line 524 of file SparseConectivityMtx.cpp.
References ColumnsIndexes.
Ordering * GenerateAMD | ( | IntArrayList * | fixed = NULL |
) |
Definition at line 343 of file SparseConectivityMtx.cpp.
References MD_Qqraph::GenerateMD().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * GenerateAMD_AA | ( | IntArrayList * | fixed = NULL |
) |
Definition at line 349 of file SparseConectivityMtx.cpp.
References MD_Qqraph::aggressive_absorbtion, and MD_Qqraph::GenerateMD().
void GenerateFillInPresorted | ( | Ordering * | ord | ) |
Definition at line 486 of file SparseConectivityMtx.cpp.
References MD_Qqraph::GenerateMD(), MD_Qqraph::keep_sorted_order, and Ordering::order.
Referenced by GetPermutationAndPattern().
Ordering * GenerateMD | ( | IntArrayList * | fixed = NULL |
) |
Definition at line 337 of file SparseConectivityMtx.cpp.
References MD_Qqraph::GenerateMD().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * Get_ColAMD | ( | ) |
Definition at line 448 of file SparseConectivityMtx.cpp.
References IntArrayList::Count, GetCmpRows(), IntArrayList::Items, N(), n, and TraceableMatrix::Writeln().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * Get_Cuthill_McKee | ( | ) |
Definition at line 356 of file SparseConectivityMtx.cpp.
References GetOrder_Cuthill_McKee2().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * Get_MetisDiSection | ( | ) |
Definition at line 392 of file SparseConectivityMtx.cpp.
References GetCmpRows(), IntArrayList::Items, N(), n, and TraceableMatrix::Writeln().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * Get_RecursiveBiSection | ( | ) |
Definition at line 375 of file SparseConectivityMtx.cpp.
References IntArrayList::InitIdentity(), and n.
Referenced by GetPermutationAndPattern().
Ordering * Get_Reverse_Cuthill_McKee | ( | ) |
Definition at line 361 of file SparseConectivityMtx.cpp.
References IntArrayList::Count, GetOrder_Cuthill_McKee2(), IntArrayList::Items, and Array::Reverse().
Referenced by GetOrdering(), and GetPermutationAndPattern().
Ordering * Get_Unity | ( | ) |
Definition at line 368 of file SparseConectivityMtx.cpp.
References IntArrayList::InitIdentity(), and n.
Referenced by GetOrdering(), and GetPermutationAndPattern().
void GetCmpRows | ( | long *& | adr, | |
long *& | ci | |||
) |
Definition at line 251 of file SparseConectivityMtx.cpp.
References Array::Copy(), IntArrayList::Count, GetIndexesAboveDiagonalInColumn(), IntArrayList::Items, length(), N(), and n.
Referenced by Get_ColAMD(), and Get_MetisDiSection().
IntArrayList * GetIndexesAboveDiagonalInColumn | ( | long | j | ) | [virtual] |
Implements IConectMatrix.
Definition at line 519 of file SparseConectivityMtx.cpp.
References ColumnsIndexes.
Referenced by GetCmpRows().
IntArrayList * GetOrder_Cuthill_McKee2 | ( | ) |
Definition at line 274 of file SparseConectivityMtx.cpp.
References IntArrayList::Alloc(), ColumnLength(), ColumnsIndexes, IntArrayList::Count, IntArrayList::Items, memset(), and n.
Referenced by Get_Cuthill_McKee(), and Get_Reverse_Cuthill_McKee().
Ordering * GetOrdering | ( | Ordering::Type | ord | ) |
Definition at line 493 of file SparseConectivityMtx.cpp.
References Ordering::ApproxMinimumDegree, Ordering::ColAMD, Ordering::CuthillMcKee, GenerateAMD(), GenerateMD(), Get_ColAMD(), Get_Cuthill_McKee(), Get_MetisDiSection(), Get_Reverse_Cuthill_McKee(), Get_Unity(), Ordering::MetisND, Ordering::MinimumDegree, None, and Ordering::ReverseCuthillMcKee.
Ordering * GetPermutationAndPattern | ( | Ordering::Type | ord, | |
IntArrayList * | fixed = NULL | |||
) |
Definition at line 531 of file SparseConectivityMtx.cpp.
References Ordering::ApproxMinimumDegree, Ordering::ApproxMinimumDegreeAA, Ordering::ApproxMinimumDegreeIncomplete, MathTracer::ClockStart(), Ordering::cm, Ordering::ColAMD, Ordering::CuthillMcKee, GenerateAMD(), GenerateFillInPresorted(), GenerateMD(), Get_ColAMD(), Get_Cuthill_McKee(), Get_MetisDiSection(), Get_RecursiveBiSection(), Get_Reverse_Cuthill_McKee(), Get_Unity(), MathTracer::MeasureClock(), Ordering::MetisND, Ordering::MinimumDegree, TraceableMatrix::MT, Ordering::NestedGraphBisection, None, Ordering::ReverseCuthillMcKee, SparseConectivityMtxII(), TraceableMatrix::Write(), and TraceableMatrix::Writeln().
Referenced by DSSolver::CreateNewSparseGridMtx().
long N | ( | ) | const [inline, virtual] |
Implements IMatrix.
Definition at line 29 of file SparseConectivityMtx.h.
References n.
Referenced by DSSolver::CreateNewSparseGridMtx(), Get_ColAMD(), Get_MetisDiSection(), GetCmpRows(), CMcKee::Init(), MD_Qqraph::MD_Qqraph(), and SparseConectivityMtxII().
long Nonzeros | ( | ) | const [inline, virtual] |
Implements IMatrix.
Definition at line 30 of file SparseConectivityMtx.h.
References nonzeros.
Referenced by DSSolver::CreateNewSparseGridMtx(), and SparseConectivityMtxII().
Definition at line 24 of file SparseConectivityMtx.h.
Referenced by AddGrow(), ColumnLength(), CMcKee::ComputeLevels(), DetachIndexesAboveDiagonalInColumn(), MD_Qqraph::Eliminate(), MD_Qqraph::GenerateMD(), GetIndexesAboveDiagonalInColumn(), GetOrder_Cuthill_McKee2(), SparseConectivityMtxII(), and ~SparseConectivityMtxII().
long n |
Definition at line 25 of file SparseConectivityMtx.h.
Referenced by AddGrow(), Get_ColAMD(), Get_MetisDiSection(), Get_RecursiveBiSection(), Get_Unity(), GetCmpRows(), GetOrder_Cuthill_McKee2(), N(), SparseConectivityMtxII(), and ~SparseConectivityMtxII().
long nonzeros |
Definition at line 26 of file SparseConectivityMtx.h.
Referenced by AddGrow(), Nonzeros(), and SparseConectivityMtxII().