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
Matrix< T > operator+(const Matrix< T > &, const Matrix< T > &)
Matrix addition.
LinearMap & operator-=(const LinearMap &rhs)
Subtract.
LinearFun< T, N > data[N]
Matrix< T > operator/(const Matrix< T > &, const T &)
Matrix divided by scalar.
void setComponent(int, const LinearFun< T, N > &)
Set component.
A templated representation for matrices.
A templated representation for vectors.
Matrix< T > operator*(const Matrix< T > &, const Matrix< T > &)
Matrix multiply.
LinearMap substituteInto(const FMatrix< T, N, N > &lhs) const
Substitute map into matrix.
LinearMap()
Default constructor.
void identity()
Set to identity.
const LinearFun< T, N > & getComponent(int n) const
Get component.
Linear map with values of type [b]T[/b] in [b]N[/b] variables.
LinearMap operator+() const
Unary plus.
LinearMap substitute(const FMatrix< T, N, N > &rhs) const
Substitute matrix into map.
LinearMap & operator*=(const LinearFun< T, N > &rhs)
Multiply and assign.
LinearMap & operator+=(const LinearMap &rhs)
Add.
FVector< T, N > constantTerm() const
LinearMap inverse() const
Inverse.
FMatrix< T, N, N > linearTerms() const
Extract linear terms at origin.
LinearFun< T, N > & operator[](int)
Get component.
std::ostream & put(std::ostream &os) const
Put a LinearMap to stream [b]os[/b].
LinearMap & operator/=(const LinearFun< T, N > &rhs)
Divide and assign.
Linear function in N variables of type T.
Matrix< T > operator-(const Matrix< T > &, const Matrix< T > &)
Matrix subtraction.
Vector truncated power series in n variables.
std::istream & operator>>(std::istream &, LieMap< T > &x)
Extract LieMap<T> from stream.
LinearMap operator-() const
Unary minus.