ConstantLinearDependence(R, F)¶
rdeefx.spad line 32 [edit on github]
R: Join(IntegralDomain, Comparable)
F: FunctionSpace R
ConstantLinearDependence(R, F) supports solving linear systems with coefficients in Expression(R) over constants. The parameter ld to each function is a list of derivations to use. By definition element f from Expression(R) is a constant if for each d in ld we have d(f) = 0. We assume that inputs are normalized in such a way that field of constants is generated by constant kernels.
- constant_subspace: (List Vector F, List(F -> F)) -> Record(transform: Matrix F, basis: List Vector F)
constant_subspace(b, ld)returns [M,nb] such thatnbis basis of subspace spanned byboverFconsistng of vectors with constant coordinates.Mis the transformation matrix, i.e.mnb=Mmbwheremb(mnbrespectively) is matrix havingb(nbrespectively) as rows.
- linearDependenceOverConstants: (Vector F, List(F -> F)) -> Union(Vector F, failed)
linearlyDependenceOverConstants([v1, ..., vn], ld)returns[c1, ..., cn]ifc1*v1 + ... + cn*vn = 0and not all theci'sare 0, “failed” if thevi'sare linearly independent over constants.
- linearlyDependentOverConstants?: (Vector F, List(F -> F)) -> Boolean
linearlyDependentOverConstants?([v1, ..., vn], ld)returnstrueif thevi'sare linearly dependent over constants,falseotherwise.
- nullSpaceOverConstants: (Matrix F, List(F -> F)) -> List Vector F
nullSpaceOverConstants(A, ld)returns basis of the homogeneous systemA*vc = 0wherevcis a vector of constants.
- particularSolutionOverConstants: (Matrix F, Vector F, List(F -> F)) -> Union(Vector F, failed)
solveLinearlyOverConstants([v1, ..., vn], u, ld)returns[c1, ..., cn]such thatc1*v1 + ... + cn*vn = u, “failed” if no such rational numbersci'sexist.
- particularSolutionOverConstants: (Vector F, F, List(F -> F)) -> Union(Vector F, failed)
particularSolutionOverConstants([v1, ..., vn], u, ld)returns[c1, ..., cn]such thatc1*v1 + ... + cn*vn = u, “failed” if no such constants numbersci'sexist.
- reducedSystem: (Matrix F, List(F -> F)) -> Matrix F
reducedSystem(A, ld)returns a matrix of constantsBsuch thatA x = 0andB x = 0have the same solutions over constants.
- reducedSystem: (Matrix F, Vector F, List(F -> F)) -> Record(mat: Matrix F, vec: Vector F)
reducedSystem(A, v, ld)returns matrix of constantsBand vector of constantswsuch thatA x = vandB x = whave the same solutions over constants.
- solveLinearOverConstants: (Matrix F, Vector F, List(F -> F)) -> Record(particular: Union(Vector F, failed), basis: List Vector F)
solveLinearOverConstants([v1, ..., vn], u, ld)returns solution of the systemc1*v1 + ... + cn*vn = uand and a basis of the associated homogeneous systemc1*v1 + ... + cn*vn = 0
- solveLinearOverConstants: (Vector F, F, List(F -> F)) -> Record(particular: Union(Vector F, failed), basis: List Vector F)
solveLinearOverConstants([v1, ..., vn], u, ld)returns solution of the systemc1*v1 + ... + cn*vn = uand and a basis of the associated homogeneous systemc1*v1 + ... + cn*vn = 0