v0.2¶
v0.2.0¶
Released November 17, 2022
Breaking changes¶
Refactored FEC classes and usage. (#413, #435)
Modified
BCHcodes to support q-ary, non-primitive, and non narrow-sense codes.Modified
ReedSolomoncodes to support non-primitive codes.Enabled instantiation of a BCH or ReedSolomon code by specifying
(n, k)or(n, d).Removed
parity_only=Falsekeyword argument from FECencode()methods and replaced withoutput="codeword".Removed
bch_valid_codes()from the API. Instead, usegalois.BCH(n, d=d)to find and create a BCH code with codeword sizenand design distanced. For example, here is how to find various code sizes of primitive BCH codes overGF(5).>>> import galois >>> GF = galois.GF(5) >>> for d in range(3, 10): ... bch = galois.BCH(5**2 - 1, d=d, field=GF) ... print(repr(bch)) ... <BCH Code: [24, 20, 3] over GF(5)> <BCH Code: [24, 18, 4] over GF(5)> <BCH Code: [24, 16, 5] over GF(5)> <BCH Code: [24, 16, 6] over GF(5)> <BCH Code: [24, 15, 7] over GF(5)> <BCH Code: [24, 13, 8] over GF(5)> <BCH Code: [24, 11, 9] over GF(5)>Removed
generator_to_parity_check_matrix(),parity_check_to_generator_matrix(),poly_to_generator_matrix(), androots_to_parity_check_matrix()from the API.
Renamed properties and methods for changing the finite field element representation. (#436)
Renamed
displaykeyword argument inGF()torepr.Renamed
FieldArray.display()classmethod toFieldArray.repr().Renamed
FieldArray.display_modeproperty toFieldArray.element_repr.>>> import galois >>> GF = galois.GF(3**4, repr="poly") >>> x = GF.Random(2, seed=1); x GF([2α^3 + 2α^2 + 2α + 2, 2α^3 + 2α^2], order=3^4) >>> GF.repr("power"); x GF([α^46, α^70], order=3^4) >>> GF.element_repr 'power'
Changes¶
Added
output="codeword"keyword argument to FECencode()methods. (#435)Added
output="message"keyword argument to FECdecode()methods. (#435)Standardized NumPy scalar return types (
np.bool_andnp.int64) to Python types (boolandint). For example, inFieldArray.multiplicative_order(). (#437)Improved documentation and published docs for pre-release versions (e.g.,
v0.3.x).
Contributors¶
Matt Hostetter (@mhostetter)