Low Differential Parity Checks

A Python wrapper around the AFF3CT [1] project, transferring the LDPC [2] implementations to the Hermes forward error correction pipeline structure.

class LDPCCoding(self: hermespy.fec.aff3ct.ldpc.LDPCCoding, arg0: SupportsInt | SupportsIndex, arg1: str, arg2: str, arg3: bool, arg4: SupportsInt | SupportsIndex)[source]

Bases: pybind11_object

Parameters:
  • num_iterations (int) – Number of iterations during decoding.

  • h_source_path (str) – Location of the H matrix savefile.

  • g_save_path (str) – Location of the generated G matrix savefile.

  • enable_syndrome_checking (bool) – Enable premature decoding stop if syndroms indicate a likely success.

  • min_num_iterations (int) – Minimum number of decoding iterations when syndrome checking is enabled.

decode(self: hermespy.fec.aff3ct.ldpc.LDPCCoding, arg0: Annotated[numpy.typing.ArrayLike, numpy.int32]) numpy.typing.NDArray[numpy.int32][source]

Decode a block of code bits to data bits.

Parameters:

code (numpy.ndarray) – The code bit block to be decoded.

Returns:

The data bit block after decoding.

encode(self: hermespy.fec.aff3ct.ldpc.LDPCCoding, arg0: Annotated[numpy.typing.ArrayLike, numpy.int32]) numpy.typing.NDArray[numpy.int32][source]

Encode a block of data bits to code bits.

Parameters:

data (numpy.ndarray) – The data bit block to be encoded.

Returns:

The code bit block after encoding.

property bit_block_size[source]

Number of bits within a data block to be encoded.

property code_block_size[source]

Number of bits within a code block to be decoded.

enabled = True[source]
property num_iterations[source]

Number of iterations during decoding.

property rate[source]

Coding rate of the LDPC code.