|
OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
|
Vector truncated power series in n variables. More...
#include <FVps.h>
Public Member Functions | |
| FVps (int minOrder, int maxOrder, int trcOrder) | |
| Constructor. More... | |
| FVps (const FMatrix< T, N, N > &M) | |
| Convert from matrix. More... | |
| FVps (const FVector< T, N > &V) | |
| Convert from vector. More... | |
| FVps (const LinearMap< T, N > &rhs) | |
| Convert from linear map. More... | |
| FVps (const TransportMap< T, N > &rhs) | |
| Convert from second-order map. More... | |
| FVps () | |
| FVps (const FVps &) | |
| ~FVps () | |
| const FVps & | operator= (const FVps &) |
| void | identity () |
| Set to identity. More... | |
| void | zero () |
| Set to zero. More... | |
| const FTps< T, N > & | getComponent (int n) const |
| Get component. More... | |
| void | setComponent (int, const FTps< T, N > &) |
| Set component. More... | |
| const FTps< T, N > & | operator[] (int) const |
| Get Component. More... | |
| FTps< T, N > & | operator[] (int) |
| Get (Set) component. More... | |
| int | getDimension () const |
| Get dimension. More... | |
| int | getVariables () const |
| Get number of variables. More... | |
| int | getMinOrder () const |
| Get lowest order contained in any component. More... | |
| void | setMinOrder (int order) |
| Set minimum order. More... | |
| int | getMaxOrder () const |
| Get highest order contained in any component. More... | |
| void | setMaxOrder (int order) |
| Set maximum order. More... | |
| int | getTopOrder () const |
| Get highest order contained in any component. More... | |
| int | getTruncOrder () const |
| Get lowest truncation order in any component. More... | |
| void | setTruncOrder (int order) |
| Set truncation order for all components. More... | |
| FVps | filter (int minOrder, int maxOrder, int trcOrder=(FTps< T, N >::EXACT)) const |
| Extract given range of orders, with truncation. More... | |
| FVps | truncate (int trunc) |
| Truncate. More... | |
| FVps | operator+ () const |
| Unary plus. More... | |
| FVps | operator- () const |
| Unary minus. More... | |
| FVps & | operator+= (const FVps &rhs) |
| Add and assign. More... | |
| FVps & | operator-= (const FVps &rhs) |
| Subtract and assign. More... | |
| FVps & | operator+= (const FVector< T, N > &) |
| Add and assign. More... | |
| FVps & | operator-= (const FVector< T, N > &) |
| Subtract and assign. More... | |
| FVps & | operator*= (const FTps< T, N > &rhs) |
| Multiply and assign. More... | |
| FVps | operator* (const FVps< T, N > &rhs) const |
| Multiply. More... | |
| FVps & | operator/= (const FTps< T, N > &rhs) |
| Divide and assign. More... | |
| FVps & | operator*= (const T &rhs) |
| Multiply and assign. More... | |
| FVps & | operator/= (const T &rhs) |
| Divide and assign. More... | |
| FVps | inverse (int trunc=(FTps< T, N >::EXACT)) const |
| Inverse. More... | |
| FVps | myInverse (int trunc=(FTps< T, N >::EXACT)) const |
| Inverse. More... | |
| FVps | derivative (int var) const |
| Partial derivative. More... | |
| FVps | integral (int var) const |
| Partial integral. More... | |
| FVector< T, N > | constantTerm () const |
| Extract the constant part of the map. More... | |
| FVector< T, N > | constantTerm (const FVector< T, N > &P) const |
| Extract the constant part of the map expanded about point [b]P[/b]. More... | |
| FMatrix< T, N, N > | linearTerms () const |
| Extract the linear part of the map. More... | |
| FMatrix< T, N, N > | linearTerms (const FVector< T, N > &P) const |
| Extract the linear part of the map expanded about point [b]P[/b]. More... | |
| Array1D< int > | getSubstOrders (const FVps< T, N > &rhs, int trunc=(FTps< T, N >::EXACT)) const |
| Return orders {min, max, trc} of f(rhs(z)). More... | |
| FVps | substitute (const FMatrix< T, N, N > &M, int n) const |
| Substitute. More... | |
| FVps | substitute (const FMatrix< T, N, N > &M, int nl, int nh) const |
| Substitute. More... | |
| FVps | substitute (const FMatrix< T, N, N > &M) const |
| Substitute. More... | |
| FVps | substitute (const FVps< T, N > &m, int trunc=(FTps< T, N >::EXACT)) const |
| Substitute. More... | |
| FVps | substituteInto (const FMatrix< T, N, N > &lhs) const |
| Substitute map into matrix. More... | |
| FTps< T, N > | getFTps (const FArray1D< int, N > &power) const |
| Get a FTps that is a combination of the polynomials of FVps. More... | |
| std::istream & | get (std::istream &is) |
| Get a FVps from stream [b]is[/b]. More... | |
| std::ostream & | put (std::ostream &os) const |
| Put a FVps to stream [b]os[/b]. More... | |
Protected Attributes | |
| FTps< T, N > | data [N] |
Vector truncated power series in n variables.
Convert from linear map.
Definition at line 58 of file FVps.hpp.
References Attrib::Legacy::Distribution::T.
|
explicit |
Convert from second-order map.
Definition at line 68 of file FVps.hpp.
References FTpsData< N >::getSize(), and SIZE.

Definition at line 52 of file FVps.hpp.
References FVps< T, N >::data.
Extract the constant part of the map.
Definition at line 540 of file FVps.hpp.
References Attrib::Legacy::Distribution::T.
Partial derivative.
Definition at line 524 of file FVps.hpp.
Referenced by FTps< T, N >::gradient().
| FVps< T, N > FVps< T, N >::filter | ( | int | minOrder, |
| int | maxOrder, | ||
| int | trcOrder = (FTps<T, N>::EXACT) |
||
| ) | const |
Extract given range of orders, with truncation.
Definition at line 223 of file FVps.hpp.
Referenced by FTps< T, N >::truncate().
| std::istream & FVps< T, N >::get | ( | std::istream & | is | ) |
Get a FVps from stream [b]is[/b].
Definition at line 1057 of file FVps.hpp.
Referenced by operator>>().
Get component.
Definition at line 123 of file FVps.hpp.
Referenced by operator*(), and FVps< T, N >::operator*().
|
inline |
| int FVps< T, N >::getMaxOrder |
Get highest order contained in any component.
Definition at line 181 of file FVps.hpp.
References FTps< T, N >::getMaxOrder(), and max().
Referenced by FTps< T, N >::derivative(), FTps< T, N >::divide(), FTps< T, N >::evaluate(), FVps< T, N >::getSubstOrders(), FTps< T, N >::getSubstOrders(), FTps< T, N >::integral(), FTps< T, N >::multiplyVariable(), FTps< T, N >::operator*=(), FTps< T, N >::operator-(), FTps< T, N >::operator==(), FTps< T, N >::put(), FTps< T, N >::scaleMonomials(), and FTps< T, N >::substitute().

| int FVps< T, N >::getMinOrder |
Get lowest order contained in any component.
Definition at line 165 of file FVps.hpp.
References FTps< T, N >::getMinOrder(), and min().
Referenced by FTps< T, N >::derivative(), FTps< T, N >::divide(), FTps< T, N >::evaluate(), FVps< T, N >::getSubstOrders(), FTps< T, N >::getSubstOrders(), FTps< T, N >::integral(), FTps< T, N >::multiplyVariable(), FTps< T, N >::operator*=(), FTps< T, N >::operator-(), FTps< T, N >::operator==(), FTps< T, N >::put(), FTps< T, N >::scaleMonomials(), and FTps< T, N >::substitute().

| Array1D< int > FVps< T, N >::getSubstOrders | ( | const FVps< T, N > & | rhs, |
| int | trunc = (FTps<T, N>::EXACT) |
||
| ) | const |
Return orders {min, max, trc} of f(rhs(z)).
Definition at line 594 of file FVps.hpp.
References FVps< T, N >::getMaxOrder(), FVps< T, N >::getMinOrder(), FTps< T, N >::getSubstOrders(), and FVps< T, N >::getTruncOrder().
Referenced by FTps< T, N >::getSubstOrders(), and FTps< T, N >::substitute().

| int FVps< T, N >::getTopOrder |
Get highest order contained in any component.
Definition at line 197 of file FVps.hpp.
References FTps< T, N >::getMaxOrder(), and max().

| int FVps< T, N >::getTruncOrder |
Get lowest truncation order in any component.
Definition at line 207 of file FVps.hpp.
References FTps< T, N >::getTruncOrder(), and min().
Referenced by FTps< T, N >::derivative(), FTps< T, N >::divide(), ExpMap(), FVps< T, N >::getSubstOrders(), FTps< T, N >::getSubstOrders(), FTps< T, N >::integral(), FTps< T, N >::multiplyVariable(), FTps< T, N >::operator-(), FTps< T, N >::operator==(), FTps< T, N >::scaleMonomials(), and FTps< T, N >::substitute().

|
inline |
| void FVps< T, N >::identity |
| FVps< T, N > FVps< T, N >::inverse | ( | int | trunc = (FTps<T, N>::EXACT) | ) | const |
Inverse.
Definition at line 360 of file FVps.hpp.
References endl(), FLUMatrix< T, N >::inverse(), min(), FVps< T, N >::setTruncOrder(), and FVps< T, N >::substitute().

Extract the linear part of the map.
Definition at line 561 of file FVps.hpp.
Referenced by ThickTracker::track_m().
| FMatrix< T, N, N > FVps< T, N >::linearTerms | ( | const FVector< T, N > & | P | ) | const |
Extract the linear part of the map expanded about point [b]P[/b].
Definition at line 570 of file FVps.hpp.
References Array1D< T >::begin(), FTps< T, N >::begin(), FTps< T, N >::derivative(), FTps< T, N >::evalMonoms(), FTps< T, N >::getMaxOrder(), FTps< T, N >::getMinOrder(), FTps< T, N >::orderEnd(), FTps< T, N >::orderStart(), and Attrib::Legacy::Distribution::T.

| FVps< T, N > FVps< T, N >::myInverse | ( | int | trunc = (FTps<T, N>::EXACT) | ) | const |
Inverse.
Definition at line 441 of file FVps.hpp.
References endl(), FLUMatrix< T, N >::inverse(), min(), FVps< T, N >::setTruncOrder(), and FVps< T, N >::substitute().

Multiply.
Definition at line 288 of file FVps.hpp.
References FTps< T, N >::extractExponents(), FTps< T, N >::getCoefficient(), FVps< T, N >::getComponent(), FTps< T, N >::getListOfNonzeroCoefficients(), FTps< T, N >::getMinOrder(), FTps< T, N >::makePower(), min(), FTps< T, N >::multiply(), FVps< T, N >::setComponent(), and FTps< T, N >::setMinOrder().

Divide and assign.
Definition at line 338 of file FVps.hpp.
References FTps< T, N >::inverse().

Definition at line 104 of file FVps.hpp.
References FVps< T, N >::data.
| std::ostream & FVps< T, N >::put | ( | std::ostream & | os | ) | const |
Put a FVps to stream [b]os[/b].
Definition at line 1078 of file FVps.hpp.
References endl().
Referenced by operator<<().

| void FVps< T, N >::setMaxOrder | ( | int | order | ) |
Set maximum order.
Definition at line 191 of file FVps.hpp.
Referenced by FVps< T, N >::substitute().
| void FVps< T, N >::setMinOrder | ( | int | order | ) |
Set minimum order.
Definition at line 175 of file FVps.hpp.
Referenced by FTps< T, N >::operator+=(), FTps< T, N >::operator-=(), and FVps< T, N >::substitute().
| void FVps< T, N >::setTruncOrder | ( | int | order | ) |
Set truncation order for all components.
Definition at line 217 of file FVps.hpp.
Referenced by FVps< T, N >::inverse(), FVps< T, N >::myInverse(), and FVps< T, N >::substitute().
| FVps< T, N > FVps< T, N >::substitute | ( | const FMatrix< T, N, N > & | M, |
| int | n | ||
| ) | const |
Substitute.
Definition at line 608 of file FVps.hpp.
References begin(), end(), endl(), FTps< T, N >::getSize(), Hypervolume::n, FVps< T, N >::setMaxOrder(), FVps< T, N >::setMinOrder(), FVps< T, N >::setTruncOrder(), and Attrib::Legacy::Distribution::T.
Referenced by FVps< T, N >::inverse(), FVps< T, N >::myInverse(), and FTps< T, N >::substitute().

| FVps< T, N > FVps< T, N >::substitute | ( | const FMatrix< T, N, N > & | M, |
| int | nl, | ||
| int | nh | ||
| ) | const |
Substitute.
Definition at line 728 of file FVps.hpp.
References begin(), end(), endl(), FTps< T, N >::getSize(), max(), min(), FVps< T, N >::setMaxOrder(), FVps< T, N >::setMinOrder(), FVps< T, N >::setTruncOrder(), and Attrib::Legacy::Distribution::T.

| FVps< T, N > FVps< T, N >::substitute | ( | const FVps< T, N > & | m, |
| int | trunc = (FTps<T, N>::EXACT) |
||
| ) | const |
Substitute.
Definition at line 895 of file FVps.hpp.
References begin(), FTpsData< N >::getVariableList(), max(), FTps< T, N >::orderEnd(), FTps< T, N >::orderStart(), FVps< T, N >::setMaxOrder(), FVps< T, N >::setMinOrder(), FVps< T, N >::setTruncOrder(), and Attrib::Legacy::Distribution::T.

| FVps< T, N > FVps< T, N >::substituteInto | ( | const FMatrix< T, N, N > & | lhs | ) | const |
Substitute map into matrix.
Definition at line 1021 of file FVps.hpp.
References sum().
Referenced by operator*().

Truncate.
Definition at line 234 of file FVps.hpp.
Referenced by ThickTracker::concatenateMaps_m(), and ThickTracker::track_m().
| void FVps< T, N >::zero |
Definition at line 247 of file FVps.h.
Referenced by FTpsRep< T, N >::clear(), FVps< T, N >::FVps(), FVps< T, N >::operator=(), and FTpsRep< T, N >::~FTpsRep().