LinearCombinationUtilities(F, UP)

intpar.spad line 130 [edit on github]

This package implements frequently used operations on linear combinations.

dehomogenize: List Record(ratpart: F, coeffs: Vector F) -> Record(particular: Union(Record(ratpart: F, coeffs: Vector F), failed), basis: List Record(ratpart: F, coeffs: Vector F))

dehomogenize(ls) converts list of solutions (a, [c0, c1, …, cn]) to homogeneous equation L(a) + c0 f + c1 g1 + … + cn gn = 0 into list of solutions of inhomogeneous equation L(a) + f + c1 g1 + … + cn gn = 0. This transformation works the same for all equations, so we only need list of solutions as argument

lin_comb!: (Vector F, Vector F, List Vector F) -> Vector F

lin_comb!(v, w, [f1, ..., fn]) computes linear combination w + v(1) f1 + … v(n) fn by modifying w in place. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector F, List F) -> F

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector F, List Fraction UP) -> Fraction UP

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector F, List LaurentPolynomial(F, UP)) -> LaurentPolynomial(F, UP)

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector F, List UP) -> UP

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector F, List Vector F) -> Vector F

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal positive length.

lin_comb: (Vector Fraction Integer, List F) -> F

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.

lin_comb: (Vector Fraction Integer, List Fraction UP) -> Fraction UP

lin_comb(v, [f1, ..., fn]) computes linear combination v(1) f1 + … v(n) fn. Vector v and list [f1, …, fn] must be of equal length.