clean up the OperatorMatrix. Basically, update it, add required functions etc., so that it feels easy and natural to use in practice.
join Propagators and MultiPropagators. Basically, everything should be a MultiPropagator. However, the setup should be reasonably simple, if necessary also optimized, for problems where you would normally use a Propagator.
Update the PropagationManager/Observer(s) to work with MultiPropagators.
Discussion
Anonymous
-
2014-10-11
Milestone: 0.1 --> Backlog
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2014-11-18
Milestone: Backlog --> 0.1.1
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2014-11-19
status: open --> assigned
assigned_to: osource12345
Owner2: Ulf Lorenz
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2014-11-19
Chat summary:
OperatorMatrix gets a new constructor that takes a single operator
and sets up a 1x1 matrix with this operator (to handle the trivial
case)
invalid_argument exception if the operator is null
OperatorMatrix gets a new constructor that takes a vector of vectors
of operators (rows in the matrix), and sets up the operator
invalid_argument exception if all operators null
invalid_argument exception if matrix not quadratic
invalid_argument exception if wrong number of operators in a row
add a new static variable that represents a null operator (null
pointer); supplying this operator in the second constructor signals
that this cell of the matrix is the zero operator.
add a function getSize() to return the size of the OperatorMatrix
add a function getOperator(uint row, uint column) that returns the
appropriate operator in this cell of the matrix
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2015-02-15
Chat summary:
Add time test in OperatorMatrixTest
set up a simple functor (t -> t) and use TimeFunction as a test operator
set up a testing matrix and check that the operator is applied correctly
MultiPropagator gets a convenience function that passes a single state
throws exception if the OperatorMatrix is not a 1x1 matrix
otherwise, processes this as a size-1 vector
PropagationManager takes a MultiPropagator instead of a Propagator
retain convenience function that takes a single state
add function that takes a vector of states
PropagationObserver takes vector of states
update the LoggingOutput to do something sane; whatever that is
update demos
replace Propagator everywhere by MultiPropagator
remove Propagators, rename MultiPropagators to Propagators
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2015-03-31
status: assigned --> done
assigned_to: osource12345 --> nobody
Owner2: Ulf Lorenz --> nobody
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Chat summary:
and sets up a 1x1 matrix with this operator (to handle the trivial
case)
of operators (rows in the matrix), and sets up the operator
pointer); supplying this operator in the second constructor signals
that this cell of the matrix is the zero operator.
appropriate operator in this cell of the matrix
Chat summary: