Skip to content

WIP:Multi component extrapolation prototype

Jin Zhang requested to merge mcs_stepper into master

This MR is to introduce a Multi-stepper which will be used in the Gaussian Sum Filter.

The State for the MultiStepper contains a list of tuple<SingleState,Weight,Status>, Status has 3 cases: Free,LOCKED,DEAD. The principle of Multi-Stepper is:

  1. to use the weighted combination of the components(pos,dir) as the navigation stream to find the candidate surface, then update the stepsize and do runge-kutta step for each component.
  2. the components that reach the surface will be set "LOCKED", and wait other FREE components to reach the surface,
  3. unless all the free components reach the surface, the "currentSuface" is set and then return to the propagator ActionList flow.
  4. the component which can not reach the surface is set to "DEAD", and now Killed in the Stepper. This process should better deal with in the Fitter process.

to create a multistate obj, there is a MultiMaterialInteration actor, in that copy a list of singlecomponents, which are same right now to test if they are equal in the multi-stepper propagator , but will be a physical material interator (Bethe-Hitler) .

the stepper should contains new feature: when it comes to a Surface, there would better be a MultiTrackParameter to get the multi-bound-parameters, and then we can do e.g. component reduction, component combination ( this related to MR !588 (closed) )

Since there will be many changes in the Navigator and MaterialInteractor, this is moved into WIP again.

Edited by Jin Zhang

Merge request reports