ddg.math.inner_product module

ddg.math.inner_product.get_col_complement(A, inner_product=None, ensure_pos_det=True)[source]

Returns the orthogonal complement of the columns of a given array with respect to the given inner product.

Parameters:
Anumpy.array

Array for which to return the column complement

inner_productCallable (optional, default=None)

Inner product to be used. When the argument is None, the standard inner product will be used.

ensure_pos_detbool (optional, default=True)

When set to True, the function will make sure that the resulting basis will be positively oriented.

Returns:
numpy.array

Column complement of the given array

ddg.math.inner_product.get_row_complement(A, inner_product=None, ensure_pos_det=True)[source]

Returns the orthogonal complement of the rows of a given array with respect to the given inner product.

Parameters:
Anumpy.array

Array for which to return the column complement

inner_productCallable (optional, default=None)

Inner product to be used. When the argument is None, the standard inner product will be used.

ensure_pos_detbool (optional, default=True)

When set to True, the function will make sure that the resulting basis will be positively oriented.

Returns:
numpy.array

Column complement of the given array

ddg.math.inner_product.orthonormalize(U, inner_product, tol=1e-06)[source]

Turn U into an orthonormal form with respect to the inner_product

Parameters:
  • U

  • inner_product

Returns:

ddg.math.inner_product.normalize(v, inner_product)[source]
ddg.math.inner_product.gram_matrix(inner_product, matrix_of_vectors)[source]

The vectors are supposed to be the columns of the matrix

ddg.math.inner_product.signature(inner_product, matrix)[source]
ddg.math.inner_product.reflect(normal, source, inner_product)[source]
ddg.math.inner_product.get_matrix(inner_product, n)[source]
ddg.math.inner_product.inner_product_from_matrix(matrix)[source]
ddg.math.inner_product.project_onto_complement(normal, source, inner_product)[source]
ddg.math.inner_product.polarity_matrix(inner_product, n)[source]
ddg.math.inner_product.points_on_quadric(subspace, inner_product)[source]
ddg.math.inner_product.points_on_quadric_from_onb(onb, inner_product)[source]

Compute possible points on the quadric from an orthonormal basis by suitable linear combinations of space- and time-like vectors. Light-like vectors will be appended to the list.

Parameters:
onbnumpy.array

rows of the matrix form an orthonormal basis

Returns:
numpy.array

sum and difference of the space- and time-like vectors, and the light-like vectors