hal.maths.la package

Submodules

hal.maths.la.iterations module

hal.maths.la.lists module

hal.maths.la.matrix module

class hal.maths.la.matrix.BaseMatrix(matrix)[source]

Bases: object

to_numpy()[source]
class hal.maths.la.matrix.LinearSystemMatrix(matrix)[source]

Bases: hal.maths.la.matrix.Matrix

dlu_decompose()[source]
does_gauss_seidel_converge()[source]
does_jacobi_converge()[source]
incomplete_Cholesky()[source]
class hal.maths.la.matrix.Matrix(matrix)[source]

Bases: hal.maths.la.matrix.BaseMatrix

check_on(f)[source]
condition_number()[source]
eigens()[source]
eigenvalues_hadamard(other)[source]

Computes the Hadamard product of 2 matrices. See https://www.johndcook.com/blog/2018/10/10/hadamard-product/ for details

Parameters:other – second matrix
Returns:lower and upper
get_at(row, col)[source]
get_cols()[source]
get_diagonal()[source]
get_lower()[source]
get_n_cols()[source]
get_n_rows()[source]
get_rows()[source]
get_upper()[source]
inverse()[source]
is_definite_positive()[source]
is_diagonally_dominant(strictly=False)[source]
is_square()[source]
is_symmetric()[source]
l1_norm()[source]
l2_norm()[source]
linear_norm()[source]

Works only if vector

linfinite_norm()[source]
shape()[source]
spectral_radius()[source]
transpose()[source]

hal.maths.la.numerical_base module

class hal.maths.la.numerical_base.MachineNumber(sign, mantissa, exponent)

Bases: tuple

exponent

Alias for field number 2

mantissa

Alias for field number 1

sign

Alias for field number 0

hal.maths.la.numerical_base.convert_machine_numbers(numbers, in_base)[source]
hal.maths.la.numerical_base.get_all_machine_numbers(b, l, k)[source]
hal.maths.la.numerical_base.get_all_possible_exponents(b, k)[source]
hal.maths.la.numerical_base.get_all_possible_mantissa(b, l)[source]