framework for particle filter