After some initial benchmarking (#140), doing the general point-radius based calls to CircleAverageMateialProperty and CircleMaxOriginalElementSize from a GeneralUserObject can take a long time on big meshes (lots of elements). I think this is because the loop over all elements is not running in parallel.
Solution:
Have CircleAverageMaterialProperty grab from both the old event list and upcoming event list and combine them so when EventInserter needs an initial sigma value on a new old event, it is already available. EventInserter will need to be changed to just call the inserter-point interface. Then update the examples because only a single CircleAverageMaterialProperty object will be needed.
After some initial benchmarking (#140), doing the general point-radius based calls to CircleAverageMateialProperty and CircleMaxOriginalElementSize from a GeneralUserObject can take a long time on big meshes (lots of elements). I think this is because the loop over all elements is not running in parallel.
Solution: Have CircleAverageMaterialProperty grab from both the old event list and upcoming event list and combine them so when EventInserter needs an initial sigma value on a new old event, it is already available. EventInserter will need to be changed to just call the inserter-point interface. Then update the examples because only a single CircleAverageMaterialProperty object will be needed.