An Element based on a simple Transfer matrix. More...
#include <linear.h>


Public Types | |
| typedef State | state_t |
|
typedef boost::numeric::ublas::matrix < double > | value_t |
Public Member Functions | |
| LinearElementBase (const Config &c) | |
| virtual void | advance (StateBase &s) |
| Propogate the given State through this Element. | |
| virtual void | show (std::ostream &strm, int level) const |
| virtual void | assign (const ElementVoid *other) |
Public Member Functions inherited from ElementVoid | |
| ElementVoid (const Config &conf) | |
| Construct this element using the provided Config. More... | |
| virtual const char * | type_name () const =0 |
| const Config & | conf () const |
| The Config used to construct this element. | |
| Observer * | observer () const |
| The current observer, or NULL. | |
| void | set_observer (Observer *o) |
Public Attributes | |
| value_t | transfer |
| The transfer matrix. | |
Public Attributes inherited from ElementVoid | |
| const std::string | name |
| Name of this element (unique in its Machine) | |
| const size_t | index |
| Index of this element (unique in its Machine) | |
| double | length |
| Longitudual length of this element (added to StateBase::pos) | |
An Element based on a simple Transfer matrix.
| one | of VectorState or MatrixState |
|
inlinevirtual |
Used by Machine::reconfigure() to avoid re-alloc (and iterator invalidation) Assumes other has the same type. Sub-classes must call base class assign() Come c++11 this can be replaced with a move ctor.
Implements ElementVoid.
|
inlinevirtual |
Print information about the element. level is a hint as to the verbosity expected by the caller.
Reimplemented from ElementVoid.
1.8.8