WIP: Generalize source to allow flexible inflow
Later on the inflow can be from data (e.g. inflow measured from an experiment), a function or anything else.
For this the source had to be generalised and a new interface
SpawnDistributions was introduced. The
ConstantDistribution which so far was the only distribution used for sources is adapted to this new interface.
On a side, I also changed the handling for spawning. If a single pedestrian could not be placed in a source, then the loop interrupts. For this I increased the number of tries. This should have improve one of the bottlenecks we have, when the source is too small.
Problems and Todos:
- How to set up a general SpawnDistribution? This needs some flexibility in the JSON settings (each SpawnDistribution has specific parameter).
ConstantSpawnDistributionto indicate better that it is used for spawning pedestrians
TotalNumberSpawnDistributionwhich spawns total number of agents in as fast as possible.