gunz_cm.compressions.cmc_encoder#

Module contents#

CMC Encoder wrapper for GNZ v3 compression.

Examples

class gunz_cm.compressions.cmc_encoder.CmcEncoder(tile_size: int = 256, resolution: int = 50000, diag_transform: bool = True)[source]#

Bases: object

CMC encoder for contact matrix tiles.

Parameters:
  • tile_size (int, default=256) – Tile size for block processing.

  • resolution (int, default=50000) – Hi-C resolution in bp.

  • diag_transform (bool, default=True) – Apply diagonal transform before encoding.

Examples

encode_tile(mat: ndarray) bytes[source]#

Encode a single contact matrix tile.

Parameters:

mat (np.ndarray) – 2D contact matrix tile (upper triangular).

Returns:

CMC-encoded bitstream.

Return type:

bytes

Examples

encode_tiles(tiles: ndarray) list[bytes][source]#

Encode multiple tiles.

Parameters:

tiles (np.ndarray) – 4D array of shape (n_tile_rows, n_tile_cols, tile_size, tile_size).

Returns:

List of encoded bitstreams, one per tile.

Return type:

list[bytes]

Examples

get_compression_info() dict[source]#

Return compression metadata.

Returns:

Compression parameters for header.

Return type:

dict

Examples