AttributesFloorField

---


Field: cacheDir [java.lang.String]

specifies path in which a cache of the target floor field is saved. This path is relative to the executable. @JsonView(...) allows the cache hashing to move the cache directory without invalidating existing caches.


Field: createMethod [EikonalSolverType]

---


Field: potentialFieldResolution [double]

These attribute values should only be used if createMethod.isUsingCellGrid() == true. TODO [refactoring]: However potentialFieldResolution is also used for the @link org.vadere.simulator.models.potential.solver.timecost.ITimeCostFunction for the density computation, i.e. it is the resolution of the matrix used in the discrete convolution. This should be changed! Furthermore, theare are many unused parameters in AttributesTimeCost. Solution: (1) change AttributesTimeCost timeCostAttributes to ITimeCostFunction like the potential classes in AttributesOSM (2) split AttributesTimeCost timeCostAttributes into multiple classes (3) add a new AttributesTimeCost into the top level (i.e. attributesModel) json.


Field: cacheType [CacheType]

If true, the floor field will be initialized based on a previously cached version. The cached floor field will be search at cacheDir. The file name of the cached floor field has two parts: "[cacheDir]/[hash-of-AttributesFloorField-Topography]_[targetId].ffcache" The hash ensures that only valid version of the cache will be used. If something changed in the topography or in this attributes settings (except of cacheDir) the hash will differ an a new floor field is created and saved at initialization time. Thus the created hash file can be moved to a different location without invalidating the saved floor field.


Field: timeCostAttributes [AttributesTimeCost]

---


Field: obstacleGridPenalty [double]

---


Field: targetAttractionStrength [double]

The targetAttractionStrength weights the target potential against the agent potential and the obstacle potential. targetAttractionStrength > 1 means the target becomes more attractive (other parameters: default values). Thus, agents keep less distance to other agents and to walls. Choose targetAttractionStrength > 1, if agents get stuck (clogging) before narrow corridors (<1.28m). Clogging can occur if the gradient of the obstacle potential is larger than the gradient of the target potential. Then, the global minimum (within walking distance) is in front of the corridor. If case of clogging, we recommend to choose the targetAttractionStrengh depending on the bottleneck width c. | 25.0 for c < 0.8m (a) -> not tested targetAttractionStrengh = -| 25.0-18.8c for c < 1.28m (b) -> fulfils condition (d) | 1.0 for c >=1.28m (c) -> default value 1. (d): | max. grad (target potential) | > | max. grad (obstacle potential) | (both measured at extended corridor center line) | ========== . --X----------- |target| ========== . | Legend: . . : distance between points > corridor width c X : agent stuck on minimum in front of narrow corridor ---- : center line