块矩阵
(类来自 pyomo.contrib.pynumero.sparse.block_matrix)
- class pyomo.contrib.pynumero.sparse.block_matrix.BlockMatrix(nbrows, nbcols)[source]
基础类:
BaseBlockMatrix结构化矩阵接口
- _blocks
存储子矩阵的二维数组
- Type:
- _block_mask
带有布尔值的二维数组,表示块是否不为空。 空块用 None 表示
- Type:
- _brow_lengths
具有块行大小的1D数组
- Type:
- _bcol_lengths
具有块列大小的1D数组
- Type:
方法
__init__(nbrows, nbcols)返回此BlockMatrix中块的形状列表
col_block_sizes([copy])返回带有列块大小的数组
coo_data()返回矩阵的数据数组。
copy([deep])复制此BlockMatrix
复制此BlockMatrix的结构。
copyfrom(other[, deep])将其他矩阵的条目复制到此矩阵中。
copyto(other[, deep])将此BlockMatrix的条目复制到其他。
diagonal([k])dot(other)普通点积
get_block(row, col)get_block_column_index(index)从矩阵列索引返回块列索引。
get_block_mask([copy])get_block_row_index(index)从矩阵行索引返回块行索引。
get_col_size(col)get_row_size(row)getcol(j)返回列j的向量
getrow(i)返回第i列的向量
指示矩阵是否具有未定义维度的块列
指示矩阵是否具有未定义维度的块行
is_col_size_defined(col)is_empty_block(idx, jdx)指示一个块是否为None
is_row_size_defined(row)mean([axis, dtype, out])nonzero()reset_bcol(jdx)将所选块列中的所有块重置为无
reset_brow(idx)将所选块行中的所有块重置为无
row_block_sizes([copy])返回包含行块大小的数组
set_block(row, col, value)set_col_size(col, size)set_row_size(row, size)setdiag(values[, k])sum([axis, dtype, out])toarray([order, out])返回此矩阵的numpy.ndarray表示。
tobsr([blocksize, copy])tocoo([copy])将此矩阵转换为COOrdinate格式。
tocsc([copy])将此矩阵转换为压缩稀疏列格式。
tocsr([copy])将此矩阵转换为压缩稀疏行格式。
todia([copy])tolil([copy])tostring([order])transpose([axes, copy])创建BlockMatrix的转置副本。
属性
转置矩阵
返回矩阵的块形状的元组
返回矩阵的数据类型。
format返回此矩阵中非零值的总数
返回包含总行数和总列数的元组
成员文档
- block_shapes()[source]
返回此BlockMatrix中块的形状列表
注释
对于一个具有2个块行和2个块列的BlockMatrix 此方法返回[[Block_00.shape, Block_01.shape],[Block_10.shape, Block_11.shape]]
- Return type:
- col_block_sizes(copy=True)[source]
返回带有列块大小的数组
- Parameters:
复制 (bool) – 如果为False,则返回存储列块大小的内部数组而不进行复制。 将copy设置为False是有风险的,应极其谨慎地进行。
- Return type:
- copy(deep=True)[source]
复制此BlockMatrix
- Parameters:
deep (bool) – 如果 deep 为 True,则此 BlockMatrix 中的块将被复制
- Return type:
- copy_structure()[source]
复制此BlockMatrix的结构。这提供了一个轻量级的此BlockMatrix中每个块的副本。结果矩阵中的块具有与原始矩阵相同的形状,但不具有相同的非零元素数量。
- Return type:
- copyfrom(other, deep=True)[source]
将其他矩阵的条目复制到此矩阵中。此方法提供了一种从scipy.sparse矩阵填充BlockMatrix的简便方式。它还旨在促进从其他BlockMatrix复制值到此BlockMatrix。
- Parameters:
其他 (BlockMatrix 或 scipy.spmatrix)
deep (bool) – 如果 deep 为 True 且 other 是 BlockMatrix,则复制 other 中的块。如果 deep 为 False 且 other 是 BlockMatrix,则不复制 other 中的块。
- Return type:
无
- copyto(other, deep=True)[source]
将此BlockMatrix的条目复制到其他矩阵中。此方法提供了一种简单的方式将此矩阵的值复制到另一种格式中。
- Parameters:
其他 (BlockMatrix 或 scipy.spmatrix)
deep (bool) – 如果 deep 为 True 且 other 是 BlockMatrix,则此 BlockMatrix 中的块会被复制。如果 deep 为 False 且 other 是 BlockMatrix,则此 BlockMatrix 中的块不会被复制。
- Return type:
无
- getcol(j)[source]
返回列j的向量
- Parameters:
j (int) – 列索引
- Return type:
pyomo.contrib.pynumero.sparse BlockVector
- getrow(i)[source]
返回第i列的向量
- Parameters:
i (int) – 行索引
- Return type:
pyomo.contrib.pynumero.sparse BlockVector
- row_block_sizes(copy=True)[source]
返回包含行块大小的数组
- Parameters:
复制 (bool) – 如果为 False,则返回存储行块大小的内部数组而不进行复制。 将 copy 设置为 False 是有风险的,应极其谨慎地进行。
- Return type:
- toarray(order=None, out=None)[source]
返回此矩阵的numpy.ndarray表示。
- Parameters:
order ({'C', 'F'}, optional) – 是否在内存中以C(行优先)或Fortran(列优先)顺序存储多维数据。默认值为‘None’,表示NumPy默认的C顺序。不能与out参数一起指定。
out (ndarray, 2-dimensional, optional) – 如果指定,则使用此数组作为输出缓冲区,而不是分配一个新数组来返回。提供的数组必须具有与调用方法的稀疏矩阵相同的形状和数据类型。对于大多数稀疏类型,out 需要是内存连续的(无论是C顺序还是Fortran顺序)。
- Returns:
arr – 一个具有相同形状并包含由BlockMatrix表示的相同数据的数组。
- Return type:
ndarray,二维
- tocoo(copy=True)[source]
将此矩阵转换为COOrdinate格式。
- Parameters:
复制 (bool, 可选) – 这个参数在签名中仅出于与Scipy兼容的原因。它没有任何作用。数据总是被复制。
- Return type:
- tocsc(copy=True)[source]
将此矩阵转换为压缩稀疏列格式。
- Parameters:
复制 (bool, 可选) – 这个参数在签名中仅出于与Scipy兼容的原因。它没有任何作用。数据总是被复制。
- Return type:
- tocsr(copy=True)[source]
将此矩阵转换为压缩稀疏行格式。
- Parameters:
复制 (bool, 可选) – 这个参数在签名中仅出于与Scipy兼容的原因。它没有任何作用。数据总是被复制。
- Return type:
- transpose(axes=None, copy=True)[source]
创建BlockMatrix的转置副本。
- Parameters:
axes (None, optional) – 此参数仅出于NumPy兼容性原因存在于签名中。除了默认值外,不要传递任何内容。
copy (bool) – 这个参数在签名中仅出于与scipy兼容的原因。不要传入默认值以外的任何内容。
- Return type:
维度反转的BlockMatrix
- property T
转置矩阵
- property bshape
返回矩阵的块形状的元组
- property dtype
返回矩阵的数据类型。
- property nnz
返回此矩阵中非零值的总数
- property shape
返回包含总行数和总列数的元组