1 #ifndef CLASSIC_LinearMap_HH
2 #define CLASSIC_LinearMap_HH
25 template <
class T,
int M,
int N>
class FMatrix;
26 template <
class T,
int N>
class LinearFun;
27 template <
class T,
int N>
class FVector;
28 template <
class T,
int N>
class FVps;
37 template <
class T,
int N>
112 std::istream &
get(std::istream &
is);
115 std::ostream &
put(std::ostream &os)
const;
154 template <
class T,
int N>
158 template <
class T,
int N>
162 template <
class T,
int N>
166 template <
class T,
int N>
170 template <
class T,
int N>
175 template <
class T,
int N>
180 template <
class T,
int N>
184 template <
class T,
int N>
188 template <
class T,
int N>
192 template <
class T,
int N>
196 template <
class T,
int N>
200 template <
class T,
int N>
204 template <
class T,
int N>
208 template <
class T,
int N>
212 template <
class T,
int N>
213 std::ostream &operator<<(std::ostream &os, const LinearMap<T, N> &vps);
219 #endif // CLASSIC_LinearMap_HH
A templated representation for vectors.
LinearMap & operator/=(const LinearFun< T, N > &rhs)
Divide and assign.
LinearMap operator-() const
Unary minus.
Linear map with values of type [b]T[/b] in [b]N[/b] variables.
LinearMap & operator-=(const LinearMap &rhs)
Subtract.
FMatrix< T, N, N > linearTerms() const
Extract linear terms at origin.
LinearMap inverse() const
Inverse.
const LinearFun< T, N > & getComponent(int n) const
Get component.
Matrix< T > operator-(const Matrix< T > &, const Matrix< T > &)
Matrix subtraction.
void identity()
Set to identity.
Linear function in N variables of type T.
LinearFun< T, N > data[N]
LinearMap substituteInto(const FMatrix< T, N, N > &lhs) const
Substitute map into matrix.
Matrix< T > operator*(const Matrix< T > &, const Matrix< T > &)
Matrix multiply.
LinearMap substitute(const FMatrix< T, N, N > &rhs) const
Substitute matrix into map.
LinearMap()
Default constructor.
LinearMap operator+() const
Unary plus.
A templated representation for matrices.
void setComponent(int, const LinearFun< T, N > &)
Set component.
Matrix< T > operator+(const Matrix< T > &, const Matrix< T > &)
Matrix addition.
LinearFun< T, N > & operator[](int)
Get component.
Vector truncated power series in n variables.
FVector< T, N > constantTerm() const
b mention the algorithm in the References section The appropriate citation is
LinearMap & operator*=(const LinearFun< T, N > &rhs)
Multiply and assign.
std::istream & operator>>(std::istream &, Tps< T > &x)
Extract from stream.
std::ostream & put(std::ostream &os) const
Put a LinearMap to stream [b]os[/b].
Matrix< T > operator/(const Matrix< T > &, const T &)
Matrix divided by scalar.
LinearMap & operator+=(const LinearMap &rhs)
Add.