MATSIM
/mnt/WD_3TB/jenkins/jobs/Doxygen_MATSim/workspace/matsim/src/main/java/Filter.java
Go to the documentation of this file.
1 import org.matsim.api.core.v01.Id;
7 
8 import java.util.List;
9 
10 public class Filter {
11  public static void main(String[] args) {
12  Population population = PopulationUtils.readPopulation("/Users/paulh/Nextcloud/Shared/RustQSim-Data/scenarios/rvr/input/rvr-matsim-10pct/rvr-v1.4-10pct.plans.xml.gz");
13 
14  List<? extends Id> list = population.getPersons().values().stream()
15  .filter(p -> {
16  var mode = TransportMode.ride;
17  return !p.getSelectedPlan().getPlanElements().stream()
18  .filter(e -> e instanceof Leg)
19  .map(e -> (Leg) e)
20  .anyMatch(l -> l.getRoutingMode().contains(mode) || l.getMode().contains(mode));
21  }).map(p -> p.getId()).toList();
22 
23  for (Id id : list) {
24  population.removePerson(id);
25  }
26 
27  System.out.println("Pop size: " + population.getPersons().size());
28 
29  PopulationUtils.writePopulation(population, "/Users/paulh/Nextcloud/rust-qsim/rvr-1.4/input/rvr-v1.4-10pct.filtered-plans.xml.gz");
30 
31  }
32 }
Map< Id< Person >,? extends Person > getPersons()
static void readPopulation(Population population, String filename)
Person removePerson(final Id< Person > personId)
static void main(String[] args)
Definition: Filter.java:11
static void writePopulation(Population population, String filename)