![]() |
![]() ![]() ![]() ![]() |
![]() |
Sparse MatrixBoost , ,
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Parameter | Description | Default |
|---|---|---|
T |
Тип объекта, хранящегося в картированной матрице. | |
F |
Функтор описывает организацию хранения. [1] | row_major |
A |
Тип адаптированного массива. [2] | map_std |
Нет, кроме тех, которые установлены требованиями Matrix.
matrix_container
| Member | Description |
|---|---|
mapped_matrix () |
Allocates a mapped_matrix, которая удерживает в большинстве нулевых рядов нулевых элементов. |
mapped_matrix (size_type1, size_type2, size_type non_zeros = 0) |
Allocates a mapped_matrix, который содержит по крайней мере size1 строки size2 элементов. |
mapped_matrix (const mapped_matrix &m) |
Копировальный конструктор. |
template |
Расширенный конструктор копий. |
void resize (size_type1, size_type2, bool preserve = true) |
Перераспределяет mapped_matrix, чтобы удерживать максимум size1 ряды size2 элементов. Существующие элементы mapped_matrix предопределены при указании. |
size_type1 () const |
Возвращает количество рядов. |
size_type2 () const |
Возвращает число столбцов. |
const_reference operation () (size_type i, size_type j) const |
Возвращает значение элемента j в строке i. |
ссылочный оператор () (size_type i, size_type j) |
Description. |
mapped_matrix &operator = (const mapped_matrix &m) |
Оператор назначения. |
mapped_matrix &assign_temporary (mapped_matrix &m) |
Назначает временный. Может изменить отображенную матрицу m. |
template |
Оператор расширенного назначения. |
template |
Назначает матричное выражение на отображенную матрицу. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Добавляет выражение матрицы к картированной матрице. |
template |
Добавляет матричное выражение в отображенную матрицу. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Вычитывает матрицу из картированной матрицы. |
template |
Вычитывает матричное выражение из картированной матрицы. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Умножает картированную матрицу с скаляром. |
template |
Расчетный оператор назначения. Разделяет на карту матрицу через скаляр. |
| (mapped_matrix &m) | Перекрывает содержимое картированных матриц. |
true_refrence entry_element (size_type i, size_type j, const_reference t) |
Вставляет значение t на j-й элемент i-й ряд. Элементы дубликатов не допускаются. |
void delete_element (size_type i, size_type j) |
Рассказывает значение в элементе j-я в строке i. |
прозрачный () |
Очищает карту. |
const_iterator1 start1 () const |
Description. |
const_iterator1 end1 () const |
Description. |
iterator1 start1 () |
Description. |
iterator1 end1 () |
Description. |
const_iterator2 start2 () const |
Description. |
const_iterator2 end2 () const |
Description. |
iterator2 start2 () |
Description. |
iterator2 end2 () |
Description. |
const_reverse_iterator1 rbegin1 () const |
Description. |
const_reverse_iterator1 rend1 () const |
Description. |
reverse_iterator1 rbegin1 () |
Description. |
reverse_iterator1 rend1 () |
Description. |
const_reverse_iterator2 rbegin2 () const |
Description. |
const_reverse_iterator2 rend2 () const |
Description. |
reverse_iterator2 rbegin2 () |
Description. |
reverse_iterator2 rend2 () |
Description. |
[1] Поддерживаемые параметры для организации хранения являются row_major и column_major.
[2] Поддерживаемые параметры адаптированного массива: map_array и map_std. Последняя эквивалентна std::map.
Шаблонный класс compressed_matrix является базовым контейнерным адаптером для сжатых матриц. > >>>>>>>>>>> >>>>>>>> >>>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>1>>>> >>>>>> >>>>>> >>>> >>>>> >>>>>> >>>>>>>>>>> >>>> >>>>>>>>>>>>>>>>>>>>>>>>> >> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> i13> или >>>>1>>>3>>2>>>2>>>>>2>>>>><310>>>>2>>>3>>>>>>>>>>>>>>>>>.
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include <boost/numeric/ublas/io.hpp>
int main () {
using namespace boost::numeric::ublas;
compressed_matrix<double> m (3, 3, 3 * 3);
for (unsigned i = 0; i < m.size1 (); ++ i)
for (unsigned j = 0; j < m.size2 (); ++ j)
m (i, j) = 3 * i + j;
std::cout << m << std::endl;
}
Определен в заголовке матрица_sparse.hpp.
| Parameter | Description | Default |
|---|---|---|
T |
Тип объекта, хранящегося в сжатой матрице. | |
F |
Функтор описывает организацию хранения. [1] | row_major |
IB |
Индексная база сжатого вектора. [2] | 0 |
IA |
Тип адаптированного массива для индексов. [3] | unbounded_array |
TA |
Тип адаптированного массива для значений. [3] | unbounded_array |
Нет, кроме тех, которые установлены требованиями Matrix.
matrix_container
| Member | Description |
|---|---|
compressed_matrix () |
Allocates a compressed_matrix, которая удерживает в большинстве нулевых рядов нулевых элементов. |
compressed_matrix (size_type1, size_type2, size_type non_zeros = 0) |
Аллоцирует compressed_matrix, который удерживает максимум size1 ряды size2 элементов. |
compressed_matrix (constpress_matrix &m) |
Копировальный конструктор. |
template |
Расширенный конструктор копий. |
void resize (size_type1, size_type2, bool preserve = true) |
Перераспределяет compressed_matrix, чтобы удерживать максимум size1 ряды size2 элементов. Существующие элементы compressed_matrix предопределены при указании. |
size_type1 () const |
Возвращает количество рядов. |
size_type2 () const |
Возвращает число столбцов. |
const_reference operation () (size_type i, size_type j) const |
Возвращает значение элемента j в строке i. |
ссылочный оператор () (size_type i, size_type j) |
Description. |
compressed_matrix &operator = (constpress_matrix &m) |
Оператор назначения. |
compressed_matrix &assign_temporary (compressed_matrix &m) |
Назначает временный. Может изменить сжатую матрицу m. |
template |
Оператор расширенного назначения. |
template |
Назначает матричное выражение на сжатую матрицу. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор уступки. Добавляет выражение матрицы в сжатую матрицу. |
template |
Добавляет матричное выражение в сжатую матрицу. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Вычитывает выражение матрицы из сжатой матрицы. |
template |
Вычитывает матричное выражение из сжатой матрицы. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Умножает сжатую матрицу с помощью скаляра. |
template |
Расчетный оператор назначения. Разделяет сжатую матрицу через скаляр. |
| (compressed_matrix &m) | Перекрывает содержимое сжатых матриц. |
правда_ссылка_элемент (size_type i, size_type j, const_reference t) |
Вставляет значение t на j-й элемент i-й ряд. Элементы дубликатов не допускаются. |
void delete_element (size_type i, size_type j) |
Рассказывает значение в элементе j-я в строке i. |
прозрачный () |
Очищает сжатую матрицу. |
const_iterator1 start1 () const |
Description. |
const_iterator1 end1 () const |
Description. |
iterator1 start1 () |
Description. |
iterator1 end1 () |
Description. |
const_iterator2 start2 () const |
Description. |
const_iterator2 end2 () const |
Description. |
iterator2 start2 () |
Description. |
iterator2 end2 () |
Description. |
const_reverse_iterator1 rbegin1 () const |
Description. |
const_reverse_iterator1 rend1 () const |
Description. |
reverse_iterator1 rbegin1 () |
Description. |
reverse_iterator1 rend1 () |
Description. |
const_reverse_iterator2 rbegin2 () const |
Description. |
const_reverse_iterator2 rend2 () const |
Description. |
reverse_iterator2 rbegin2 () |
Description. |
reverse_iterator2 rend2 () |
Description. |
[1] Поддерживаемые параметры для организации хранения являются row_major и column_major.
[2] Поддерживаемые параметры для индексной базы являются 0 и 1 по крайней мере.
[3] Поддерживаемые параметры для адаптированного массива: unbounded_array<>, bounded_array<> и std::vector<>.
Шаблонный класс coordinate_matrix является базовым контейнерным адаптером для сжатых матриц. > >>>>>> >>>>>>> >>>>>>>> >>>>>>>>> >>>>>> >>>>>>> >>>>> >>>> >>>>>> >>>>>>>> >>>> >>>>> >>> >>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>> >>> >>>>>>>>>>>>>>>>>>>>>>> i13> или >>>1>>3>>2>>>3>>>2>>>>2>>>>>><310>>>2>2>>>>>>>>>>>>>>>>>>>>.
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include <boost/numeric/ublas/io.hpp>
int main () {
using namespace boost::numeric::ublas;
coordinate_matrix<double> m (3, 3, 3 * 3);
for (unsigned i = 0; i < m.size1 (); ++ i)
for (unsigned j = 0; j < m.size2 (); ++ j)
m (i, j) = 3 * i + j;
std::cout << m << std::endl;
}
Определен в заголовке матрица_sparse.hpp.
| Parameter | Description | Default |
|---|---|---|
T |
Тип объекта, хранящегося в матрице координат. | |
F |
Функтор описывает организацию хранения. [1] | row_major |
IB |
Индексная база вектора координат. [2] | 0 |
IA |
Тип адаптированного массива для индексов. [3] | unbounded_array |
TA |
Тип адаптированного массива для значений. [3] | unbounded_array |
Нет, кроме тех, которые установлены требованиями Matrix.
matrix_container
| Member | Description |
|---|---|
координаты_матрицы () |
Allocates a coordinate_matrix, которая удерживает в большинстве нулевых рядов элементов. |
coordinate_matrix (size_type1, size_type2, size_type non_zeros = 0) |
Аллоцирует coordinate_matrix, которая удерживает максимум size1 ряды size2 элементов. |
coordinate_matrix (const coordinate_matrix &m) |
Копировальный конструктор. |
template |
Расширенный конструктор копий. |
void resize (size_type1, size_type2, bool preserve = true) |
Перераспределяет coordinate_matrix, чтобы удерживать максимум size1 ряды size2 элементов. Существующие элементы coordinate_matrix предопределены при указании. |
size_type1 () const |
Возвращает количество рядов. |
size_type2 () const |
Возвращает число столбцов. |
const_reference operation () (size_type i, size_type j) const |
Возвращает значение элемента j в строке i. |
ссылочный оператор () (size_type i, size_type j) |
Description. |
coordinate_matrix &operator = (const coordinate_matrix &m) |
Оператор назначения. |
coordinate_matrix &assign_temporary (coordinate_matrix &m) |
Назначает временный. Может изменить матрицу координат m. |
template |
Оператор расширенного назначения. |
template |
Назначает матрицу матрицы координат. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор уступки. Добавляет выражение матрицы в матрицу координат. |
template |
Добавляет выражение матрицы в матрицу координат. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Вычитывает выражение матрицы из матрицы координат. |
template |
Вычитывает матричное выражение из матрицы координат. Левая и правая сторона уступки должна быть независимой. |
template |
Расчетный оператор назначения. Умножает матрицу координат с помощью скаляра. |
template |
Расчетный оператор назначения. Разделяет матрицу координат через скаляр. |
замен (coordinate_matrix &m) |
Перекрывает содержимое матриц координат. |
правда_ссылка_элемент (size_type i, size_type j, const_reference t) |
Вставляет значение t на j-й элемент i-й ряд. Элементы дубликатов не допускаются. |
void append_element (size_type i, size_type j, const_reference t) |
Добавляет значение t на j-й элемент i-й ряд. Дублирующие элементы могут быть добавлены к coordinate_matrix. Они сливаются в один арифметически суммированный элемент функцией sort. |
void delete_element (size_type i, size_type j) |
Рассказывает значение в элементе j-я в строке i. |
прозрачный () |
Вычисляет матрицу координат. |
const_iterator1 start1 () const |
Description. |
const_iterator1 end1 () const |
Description. |
iterator1 start1 () |
Description. |
iterator1 end1 () |
Description. |
const_iterator2 start2 () const |
Description. |
const_iterator2 end2 () const |
Description. |
iterator2 start2 () |
Description. |
iterator2 end2 () |
Description. |
const_reverse_iterator1 rbegin1 () const |
Description. |
const_reverse_iterator1 rend1 () const |
Description. |
reverse_iterator1 rbegin1 () |
Description. |
reverse_iterator1 rend1 () |
Description. |
const_reverse_iterator2 rbegin2 () const |
Description. |
const_reverse_iterator2 rend2 () const |
Description. |
reverse_iterator2 rbegin2 () |
Description. |
reverse_iterator2 rend2 () |
Description. |
[1] Поддерживаемые параметры для организации хранения являются row_major и column_major.
[2] Поддерживаемые параметры для индексной базы являются 0 и 1 по крайней мере.
[3] Поддерживаемые параметры для адаптированного массива: unbounded_array<>, bounded_array<> и std::vector<>.
Copyright (©) 2000-2002 Joerg Walter, Mathias Koch
Использование, модификация и распространение подлежат лицензии Boost Software, Version 1.0. (См. сопроводительный файл LICENSE_1_0.txt или копия на http://www.boost.org/LICENSE_1_0.txt ).
Статья Sparse Matrix раздела может быть полезна для разработчиков на c++ и boost.
:: Главная :: ::
реклама |