JPScore issueshttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues2019-03-29T15:31:40+01:00https://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/302External files2019-03-29T15:31:40+01:00Ghost UserExternal filesFor the ini-file we need external **files for**:
- [x] goals
- [x] waiting areas
- [x] sources
- [x] traffic_constraints
Then we also need an external file for the **geo-file**:
- [x] transitions For the ini-file we need external **files for**:
- [x] goals
- [x] waiting areas
- [x] sources
- [x] traffic_constraints
Then we also need an external file for the **geo-file**:
- [x] transitions v0.8.4tobias schroedtertobias schroedterhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/233Door Statstics2018-06-13T16:41:33+02:00Mohcine Chraibim.chraibi@fz-juelich.deDoor Statstics## Summary
Some pedestrians may have no `navLine` (How come?)
Therefore, when calling `UpdateFlowAtDoors()` the simulation will break at this [LINE](https://gitlab.version.fz-juelich.de/jupedsim/jpscore/blob/develop/Simulation.cpp#...## Summary
Some pedestrians may have no `navLine` (How come?)
Therefore, when calling `UpdateFlowAtDoors()` the simulation will break at this [LINE](https://gitlab.version.fz-juelich.de/jupedsim/jpscore/blob/develop/Simulation.cpp#L574) with a SegFault.
## Steps to reproduce
- add the following `<show_statistics>true</Show_statistics>` the inifile of [demo 7](https://gitlab.version.fz-juelich.de/jupedsim/jpscore/tree/develop/demos/scenario_7_floorfield)
- Run demo 7.
## Actual behavior
Segmentation Fault.
## Inifile + Geometry file to reproduce bug
[demo 7](https://gitlab.version.fz-juelich.de/jupedsim/jpscore/tree/develop/demos/scenario_7_floorfield)
## Relevant logs, files (inifile and geometry) and/or screenshots
![Screen_Shot_2017-01-25_at_12.51.17](/uploads/76ad92c724ccdd74b7047114044c4c2f/Screen_Shot_2017-01-25_at_12.51.17.png)Arne GrafArne Grafhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/229merge toxicity_branch in develop2018-06-13T16:41:32+02:00Mohcine Chraibim.chraibi@fz-juelich.demerge toxicity_branch in developMohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.de2016-12-31https://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/300Tracks for Trains2019-07-17T06:19:29+02:00Ghost UserTracks for TrainsTo simulate different trains in the same simulation we need a flexible geometry. The track edge need to be a big wall, if there is no train. When a train arrives it must contain doors to the train and be again a big wall when the train l...To simulate different trains in the same simulation we need a flexible geometry. The track edge need to be a big wall, if there is no train. When a train arrives it must contain doors to the train and be again a big wall when the train leaves. And this needs to be done for every arriving train.
Here is an example, how it might look like:
**ini-file:**
```
<train_time_tables>
<train id="1" type="RE" room_id="1" track_x-start="0" track_y-start="0" track_x-end="300" track_y-end="0" time="5" >
<train id="2" type="ICE" room_id=„1“ track_x-start="0" track_y-start="0" track_x-end="300" track_y-end="0" time="300">
<train id="3" type="RB" room_id="1" track_x-start="0" track_y-start="0" track_x-end="300" track_y-end="0" time="900">
<\train_time_tables>
```
* *RE, ICE etc.* links to the external file of the train_types (see below), which contains the door information.
* *track_x/y_start/end* defines the track edge.
* *time* means the time when the train arrives the station and opens its doors.
**train_types-file:**
The train_types need to be translated into transitions (see below -> geometry-file)
```
<train_type = "RE" agents_max="600" xa="20" xe="220">
<door_id="1" x1="3" x2="5.5" door_frequency="2">
<door_id="2" x1="13" x2="15.5" door_frequency="3">
<door_id="3" x1="23" x2="25.5" door_frequency="2">
...
<\train_type>
<train_type = "ICE" agents_max="750">
<door_id="1" x1="3" x2="5.5" door_frequency="2">
<door_id="2" x1="13" x2="15.5" door_frequency="3">
<door_id="3" x1="23" x2="25.5" door_frequency="2">
...
<\train_type>
```
* *agents_max* is the maximum capacity of the train. When this number is reached, all doors will be closed.
* *xa, xe* are the start- and endpoint of the train relatively to the start point of the track.
* *x1, x2* are the coordinates of the doors relatively to the start- and endpoints of the train.
* *door_frequency* [s] defines the time, which one agent needs to enter the train.
* *door_id* can be used to set transition_id.
**Geometry-file**
```
<transitions>
<transition id="101" caption="RE_1" type="train_door" room1_id="1" subroom1_id="1" room2_id="-1"
subroom2_id="-1" frequency"3">
<vertex px="90" py="87"/>
<vertex px="90" py="88.5"/>
</transition>
<\transitions>
```
* *caption* is a composition of "train_type" and "door_id".
* *type="train_door"* can be used to know that the agents exit the model with a train ans a frequency is needed for the doors.
* *room_id1* from train_type (see above), subroom_id automatically by checking the coordinates of the track doors an the subrooms.
* *frequency* ist the door_frequency from train_type-file (see above).0.8.5Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/284JPSfire Windows compatibility2018-10-17T08:31:27+02:00Mohcine Chraibim.chraibi@fz-juelich.deJPSfire Windows compatibilitySeveral path concatenations in JPSfire are not windows compatible.Several path concatenations in JPSfire are not windows compatible.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/281Continuous walls2018-11-08T09:11:13+01:00Ghost UserContinuous wallsIn 3D- or 2D-plans e.g. exterior walls are continuous. To define (sub)rooms more easily these walls should be subdivided automatically.In 3D- or 2D-plans e.g. exterior walls are continuous. To define (sub)rooms more easily these walls should be subdivided automatically.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/241Initialize pedestrians from file2018-06-13T16:41:29+02:00Mohcine Chraibim.chraibi@fz-juelich.deInitialize pedestrians from file## Short description of suggestion
Read file (for example of experiment) and initialize the pedestrians by using the positions from the first frame
## Why would the enhancement be useful to most users
For better comparison with experi...## Short description of suggestion
Read file (for example of experiment) and initialize the pedestrians by using the positions from the first frame
## Why would the enhancement be useful to most users
For better comparison with experimentsMohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/234Routing in Demo 42018-06-13T16:41:33+02:00Mohcine Chraibim.chraibi@fz-juelich.deRouting in Demo 4## Summary
Demo 4 does not work.
## Steps to reproduce
- Run
```
./bin/jpscore demos/scenario_4_stairs/stairs_ini.xml
```
Two runs are necessary:
- one run with `router_id="1"`
- and another with `router_id="2"`
- For the sake o...## Summary
Demo 4 does not work.
## Steps to reproduce
- Run
```
./bin/jpscore demos/scenario_4_stairs/stairs_ini.xml
```
Two runs are necessary:
- one run with `router_id="1"`
- and another with `router_id="2"`
- For the sake of testing change `number = "10"`
## Expected behavior
Pedestrians should evacuate
## Actual behavior
- With `router=2` they do not evacuate
- With `router=1` simulation breaks with error
## Inifile + Geometry file to reproduce bug
See `demos/scenario_4_stairs`
## Relevant logs, files (inifile and geometry) and/or screenshots
![router](/uploads/15d9c9789bb075adb17ec5254f2e3e1c/router.gif)
![Screen_Shot_2017-02-01_at_12.45.17](/uploads/02c703d2efd1ff93c7e278e16339cd3a/Screen_Shot_2017-02-01_at_12.45.17.png)arneArne GrafArne Grafhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/299Door frequency2019-03-24T19:10:55+01:00Ghost UserDoor frequencyWhen doors are used as exits, e.g. to simulate boarding a train, a defined frequency is needed to regulate the "outflow".
E.g. only one person per 2 seconds may board the train, because of the distance between the track and the train,...When doors are used as exits, e.g. to simulate boarding a train, a defined frequency is needed to regulate the "outflow".
E.g. only one person per 2 seconds may board the train, because of the distance between the track and the train, some steps in the train, etc.
So the door needs a frequency, which allows only one person per 2 seconds to pass the door.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/295Close doors after a certain number of agents have entered2019-01-29T13:25:32+01:00Ghost UserClose doors after a certain number of agents have enteredFor the studies in KapaKrit it will be useful to close the doors after a certain number of agents have entered the room.For the studies in KapaKrit it will be useful to close the doors after a certain number of agents have entered the room.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/309Dynamic door-statistic2019-03-22T15:14:02+01:00Ghost UserDynamic door-statisticThe door-statistics (crossings and transitions) are written at the end of a simulation. If the simulation fails at an advanced point of time you do not have any results. Hence it could be better to write and update the door statistics dy...The door-statistics (crossings and transitions) are written at the end of a simulation. If the simulation fails at an advanced point of time you do not have any results. Hence it could be better to write and update the door statistics dynamically, like we do it for the trajectories.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/308Divide trajectory files2019-03-29T15:25:13+01:00Ghost UserDivide trajectory filesBecause we have very huge trajectory files, it could be good to divide the file into smaller ones when simulating. Maybe by writing a new file every 250 MB.Because we have very huge trajectory files, it could be good to divide the file into smaller ones when simulating. Maybe by writing a new file every 250 MB.Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/307New type for doors2019-03-22T15:14:02+01:00Ghost UserNew type for doorsWe need a new door type:
>**temp_close**We need a new door type:
>**temp_close**tobias schroedtertobias schroedterhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/304Windows Problems2019-02-21T17:18:12+01:00Ghost UserWindows ProblemsWe tried to do a simulation on a Windows pc, but it crashes after some seconds. I tried it with my Mac and it works. So, it seems to be a Windows problem again.
[correct_Bahnsteige_geo.xml](/uploads/e7691e6c97ca1b57ff65a76958f83faa/corr...We tried to do a simulation on a Windows pc, but it crashes after some seconds. I tried it with my Mac and it works. So, it seems to be a Windows problem again.
[correct_Bahnsteige_geo.xml](/uploads/e7691e6c97ca1b57ff65a76958f83faa/correct_Bahnsteige_geo.xml)
[correct_Bahnsteige_ini.xml](/uploads/b479536d6c2886a6747c8fcf0898f13b/correct_Bahnsteige_ini.xml)
[log-Windows.txt.P0.dat](/uploads/7c40371a5a140bd4d3308937d676a784/log-Windows.txt.P0.dat)
[log-Mac.txt](/uploads/b5b5e485b9b76d7165ae0390bb794f99/log-Mac.txt)
Is there any quick solution for this problem?tobias schroedtertobias schroedterhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/298Sources2018-12-04T17:34:59+01:00Ghost UserSourcesWe have sources which "inject" new agents in a subroom with a frequency (agents/second) or one agent at a defined time.
What we want to have are sources which generate agents within a box or on a line and which have some more properti...We have sources which "inject" new agents in a subroom with a frequency (agents/second) or one agent at a defined time.
What we want to have are sources which generate agents within a box or on a line and which have some more properties than the existing:
time_min = first time that agents appear
time_max = last time that agents appear ("injection" will end after this time or before if agents_max is reached first)
N_create = Number of agents that should appear at one frequency time step
freq_time = frequency time step (e.g. freq_time="10": x agents will be created every ten seconds)
conti = false -> the agents will be created simultaneously for one frequency time step, true -> the agents will be created continuously (1 agent/second)
x_min, x_max, y_min, y_max = coordinates for the box/line where the agents should be "injected".
Example:
source 1 (old) = 10 agents will appear in room_0/subroom_1 with the frequency 2 agents/second.
source 2 (old) = 1 agent with id=50 will appear in room_0/subroom_1 after 10 seconds.
source 3 (new) = after 20 seconds 10 agents will appear simultaneously in a box (2m x 3m) every 15 seconds until 300 agents are created or time has reached 200 seconds.
```
<agents_distribution>
<group group_id="1" agent_parameter_id="1" room_id="0" subroom_id="1" number="10" goal_id="-1" router_id="1" />
<group group_id="3" agent_parameter_id="1" number="0" goal_id="-1" router_id="1" source_id="3"/>
</agents_distribution>
<agents_sources>
<source id="1" caption="old-source" frequency="2" agents_max="10" group_id="1" greedy="false"/>
<source id="2" caption="old-source" time="10" agent_id="50" group_id="1" greedy="true"/>
<source id="3" caption="new-source" time_min="20" time_max="200" freq_time="15" N_create="10" agents_max="300"
group_id="3" conti="false" x_min="1" x_max="3" y_min="2" y_max="5" />
</agents_sources>
```v0.8.4Mohcine Chraibim.chraibi@fz-juelich.deMohcine Chraibim.chraibi@fz-juelich.dehttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/294Events2019-04-12T13:30:30+02:00Ghost UserEventsSimulation does not work when using events (router: global_shortest)
The agents should not be rerouted. We want them to walk to the door (goal), even if it is closed and "wait" in front of it until it opens.
Maybe we should give the ff-...Simulation does not work when using events (router: global_shortest)
The agents should not be rerouted. We want them to walk to the door (goal), even if it is closed and "wait" in front of it until it opens.
Maybe we should give the ff-router an attribute to differentiate between two modes:
- `evacuation mode`: agents are rerouted if doors are closed
- `train mode`: pedestrians wait in front of *their* doors even if they are temporarily closed.
[log-c.txt.txt](/uploads/61a2fdf5bad0461a8b161b598804d2b6/log-c.txt.txt)
[events_list.xml](/uploads/c2157666f0aeb00496ac857153c940b0/events_list.xml)
[Raum_1_ini.xml](/uploads/0e3e58df2cf370810da7bcdefe151f99/Raum_1_ini.xml)
[Raum_1_traj-c.xml](/uploads/ff4861dad02f48fe08837066295c955f/Raum_1_traj-c.xml)
[Raum_1.xml](/uploads/b91f133cacb2df514e7c2f31993d57cb/Raum_1.xml)tobias schroedtertobias schroedterhttps://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/293Show statistics of crossings2018-12-04T17:55:32+01:00Ghost UserShow statistics of crossingsWhen using "show statistics" only the statistics of transitions are shown.
It will be useful to show the statistics of the crossings, too.When using "show statistics" only the statistics of transitions are shown.
It will be useful to show the statistics of the crossings, too.v0.8.4https://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/292Crossing IDs2018-11-09T15:26:46+01:00Ghost UserCrossing IDsIn different rooms, subrooms can have the same id, crossings can't.
Now:
```
room 1, subrooms 1-4, crossings 1-3
room 2, subrooms 1-4, crossings 4-6
```
Better:
```
room 1, subrooms 1-4, crossings 1-3
room 2, subrooms 1-4, crossings ...In different rooms, subrooms can have the same id, crossings can't.
Now:
```
room 1, subrooms 1-4, crossings 1-3
room 2, subrooms 1-4, crossings 4-6
```
Better:
```
room 1, subrooms 1-4, crossings 1-3
room 2, subrooms 1-4, crossings 1-3
```
So you are more flexible in writing geometry files.v0.8.4https://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/286Deleted agents due to closed doors2018-10-16T09:59:27+02:00Ghost UserDeleted agents due to closed doorsIf all the doors of a room are closed, the agents are deleted because the route can not be initialized.
The should stay in the room waiting until the door opens again.If all the doors of a room are closed, the agents are deleted because the route can not be initialized.
The should stay in the room waiting until the door opens again.https://gitlab.jsc.fz-juelich.de/jupedsim/jpscore/-/issues/285FloorField Router: Open a door after a certain time2019-03-21T11:32:47+01:00Ghost UserFloorField Router: Open a door after a certain timeIf doors are closed they can not be used for the entire time. But sometimes there is a need to open a door again after a certain time.If doors are closed they can not be used for the entire time. But sometimes there is a need to open a door again after a certain time.tobias schroedtertobias schroedter