diff --git a/benchmarks/clustering/full_cal_clusters.sh b/benchmarks/clustering/full_cal_clusters.sh
index 91673818026624ebc6ba4a44368ed517d96f2e30..9d7f8864a36a309ae7379e72e49299013ca873f0 100644
--- a/benchmarks/clustering/full_cal_clusters.sh
+++ b/benchmarks/clustering/full_cal_clusters.sh
@@ -100,9 +100,10 @@ fi
 ls -lh ${JUGGLER_GEN_FILE}
 
 # Run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
       -v WARNING \
       --part.minimalKineticEnergy "1*TeV" \
+      --filter.tracker edep0 \
       --numberOfEvents ${JUGGLER_N_EVENTS} \
       --compactFile ${compact_path} \
       --inputFiles ${JUGGLER_GEN_FILE} \
diff --git a/benchmarks/ecal/run_emcal_benchmarks.py b/benchmarks/ecal/run_emcal_benchmarks.py
index fb85a8f05d1636d3be18f091f305b8b225b278cf..e44c455d9627f23bef0e52e3b87760e1023295b5 100755
--- a/benchmarks/ecal/run_emcal_benchmarks.py
+++ b/benchmarks/ecal/run_emcal_benchmarks.py
@@ -74,9 +74,10 @@ if 'sim' in procs:
             '--particles', args.particles]
     subprocess.run(gen_cmd)
     # simulation
-    sim_cmd = ['npsim',
+    sim_cmd = ['ddsim',
             '--part.minimalKineticEnergy', '1*TeV',
             '--numberOfEvents', '{}'.format(args.nev),
+            '--filter.tracker', 'edep0',
             '--runType', 'batch',
             '--inputFiles', gen_file,
             '--outputFile', sim_file,
diff --git a/benchmarks/far_forward/far_forward_protons.sh b/benchmarks/far_forward/far_forward_protons.sh
index 55c2afe6e63183581b826061ce11e7f23ffd7fe3..8b6bf299f720646736c2fc1514a1251964b2922b 100644
--- a/benchmarks/far_forward/far_forward_protons.sh
+++ b/benchmarks/far_forward/far_forward_protons.sh
@@ -78,8 +78,9 @@ then
 
   echo "Running geant4 simulation"
   ## run geant4 simulations
-  npsim --runType batch \
+  ddsim --runType batch \
     --part.minimalKineticEnergy 1000*GeV  \
+    --filter.tracker edep0 \
     -v WARNING \
     --numberOfEvents ${JUGGLER_N_EVENTS} \
     --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/far_forward/run_zdc_neutrons.sh b/benchmarks/far_forward/run_zdc_neutrons.sh
index b321cda16bb6932acea9f43f12a7355ea3716e48..9c54b656ae42d5bf6570071781338721f54086e8 100644
--- a/benchmarks/far_forward/run_zdc_neutrons.sh
+++ b/benchmarks/far_forward/run_zdc_neutrons.sh
@@ -88,8 +88,9 @@ then
   fi
 
   echo "Running Geant4 simulation"
-  npsim --runType batch \
+  ddsim --runType batch \
     --part.minimalKineticEnergy 0.5*MeV  \
+    --filter.tracker edep0 \
     -v WARNING \
     --numberOfEvents ${JUGGLER_N_EVENTS} \
     --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/far_forward/run_zdc_photons.sh b/benchmarks/far_forward/run_zdc_photons.sh
index 6362b1c562dc828635d2abc15f6ff5f0ea645225..ef22e2ab5d1324de7aee4450c8506a23753e1cc1 100644
--- a/benchmarks/far_forward/run_zdc_photons.sh
+++ b/benchmarks/far_forward/run_zdc_photons.sh
@@ -88,8 +88,9 @@ then
   fi
 
   echo "Running Geant4 simulation"
-  npsim --runType batch \
+  ddsim --runType batch \
     --part.minimalKineticEnergy 0.5*MeV  \
+    --filter.tracker edep0 \
     -v WARNING \
     --numberOfEvents ${JUGGLER_N_EVENTS} \
     --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/imaging_ecal/run_emcal_barrel.sh b/benchmarks/imaging_ecal/run_emcal_barrel.sh
index 69e31f1d3480fa801bb00524d235b83ef77e841f..d81539546702af961a46f6410081aa7e433a8d2f 100644
--- a/benchmarks/imaging_ecal/run_emcal_barrel.sh
+++ b/benchmarks/imaging_ecal/run_emcal_barrel.sh
@@ -85,9 +85,10 @@ fi
 ls -lh ${CB_EMCAL_GEN_FILE}
 
 # Run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
       -v WARNING \
       --part.minimalKineticEnergy "0.5*MeV" \
+      --filter.tracker edep0 \
       --numberOfEvents ${CB_EMCAL_NUMEV} \
       --compactFile ${CB_EMCAL_COMPACT_PATH} \
       --inputFiles ${CB_EMCAL_GEN_FILE} \
diff --git a/benchmarks/imaging_ecal/run_emcal_barrel_pion_rej.sh b/benchmarks/imaging_ecal/run_emcal_barrel_pion_rej.sh
index 68d735669a361ea02fec1f1612a72254a60ef0b4..a3e21fb7ed54d932718d893002e1734cc163ab64 100755
--- a/benchmarks/imaging_ecal/run_emcal_barrel_pion_rej.sh
+++ b/benchmarks/imaging_ecal/run_emcal_barrel_pion_rej.sh
@@ -85,9 +85,10 @@ fi
 ls -lh ${CB_EMCAL_GEN_FILE}
 
 # Run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
       -v WARNING \
       --part.minimalKineticEnergy "0.5*MeV" \
+      --filter.tracker edep0 \
       --numberOfEvents ${CB_EMCAL_NUMEV} \
       --compactFile ${CB_EMCAL_COMPACT_PATH} \
       --inputFiles ${CB_EMCAL_GEN_FILE} \
diff --git a/benchmarks/imaging_ecal/run_imcal_pion0.sh b/benchmarks/imaging_ecal/run_imcal_pion0.sh
index e270d33a3305441f9d18ada655c459628fa4cd34..2866daea64d7f9b19b3ccab52cdcda4ff48f229a 100644
--- a/benchmarks/imaging_ecal/run_imcal_pion0.sh
+++ b/benchmarks/imaging_ecal/run_imcal_pion0.sh
@@ -81,9 +81,10 @@ fi
 ls -lh ${CB_EMCAL_GEN_FILE}
 
 # Run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
       -v WARNING \
       --part.minimalKineticEnergy "0.5*MeV" \
+      --filter.tracker edep0 \
       --numberOfEvents ${CB_EMCAL_NUMEV} \
       --compactFile ${CB_EMCAL_COMPACT_PATH} \
       --inputFiles ${CB_EMCAL_GEN_FILE} \
diff --git a/benchmarks/imaging_shower_ML/sim_rec_tag.py b/benchmarks/imaging_shower_ML/sim_rec_tag.py
index 8bc6bc057a5865f9265eecee7b485adcfb81336d..e7425a61f8fd10ac7f7b4f3b9dd7602eed878b45 100755
--- a/benchmarks/imaging_shower_ML/sim_rec_tag.py
+++ b/benchmarks/imaging_shower_ML/sim_rec_tag.py
@@ -52,8 +52,9 @@ if 'sim' in procs:
             '--particles', args.particles]
     subprocess.run(gen_cmd)
     # simulation
-    sim_cmd = ['npsim',
+    sim_cmd = ['ddsim',
             '--part.minimalKineticEnergy', '1*TeV',
+            '--filter.tracker', 'edep0',
             '--numberOfEvents', '{}'.format(args.nev),
             '--runType', 'batch',
             # '--physics.list', args.physics_list,
diff --git a/benchmarks/rich/forward_hadrons.sh b/benchmarks/rich/forward_hadrons.sh
index 087e56ed32438e4ed2524c72ae9814f203df1f6a..08de28e9b2fede48ade6196228c21c5f3a4d6338 100644
--- a/benchmarks/rich/forward_hadrons.sh
+++ b/benchmarks/rich/forward_hadrons.sh
@@ -58,8 +58,9 @@ fi
 exit 0 
 
 
-npsim --runType batch \
+ddsim --runType batch \
       --part.minimalKineticEnergy 1000*GeV  \
+      --filter.tracker edep0 \
       -v WARNING \
       --numberOfEvents ${JUGGLER_N_EVENTS} \
       --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/track_finding/multiple_tracks.sh b/benchmarks/track_finding/multiple_tracks.sh
index e18230a4674a0a4ed97770f6f920fad54d9f3042..67ef180e12ec6cf1528dd246fff5a3280db90e6b 100644
--- a/benchmarks/track_finding/multiple_tracks.sh
+++ b/benchmarks/track_finding/multiple_tracks.sh
@@ -63,8 +63,9 @@ fi
 
 echo "Running geant4 simulation"
 ## run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
   --part.minimalKineticEnergy 1000*GeV  \
+  --filter.tracker edep0 \
   -v WARNING \
   --numberOfEvents ${JUGGLER_N_EVENTS} \
   --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/track_fitting/single_tracks.sh b/benchmarks/track_fitting/single_tracks.sh
index 7c4ba79abf87cf942a1bbdc5fbae7649d99dcbca..e5f3313ab9851022035a2d198dc042428229bb2a 100644
--- a/benchmarks/track_fitting/single_tracks.sh
+++ b/benchmarks/track_fitting/single_tracks.sh
@@ -66,8 +66,9 @@ fi
 
 echo "Running geant4 simulation"
 ## run geant4 simulations
-npsim --runType batch \
+ddsim --runType batch \
   --part.minimalKineticEnergy 1000*GeV  \
+  --filter.tracker edep0 \
   -v WARNING \
   --numberOfEvents ${JUGGLER_N_EVENTS} \
   --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/tracking/central_pions.sh b/benchmarks/tracking/central_pions.sh
index 365ea43974baf67ebf55b175e1703076212c8b3c..2db8a7b9132bfae97df71c8afa7a589ce5ac4215 100644
--- a/benchmarks/tracking/central_pions.sh
+++ b/benchmarks/tracking/central_pions.sh
@@ -78,8 +78,9 @@ then
 
   echo "Running geant4 simulation"
   ## run geant4 simulations
-  npsim --runType batch \
+  ddsim --runType batch \
     --part.minimalKineticEnergy 1000*GeV  \
+    --filter.tracker edep0 \
     -v WARNING \
     --numberOfEvents ${JUGGLER_N_EVENTS} \
     --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/tracking/multiple_tracks.sh b/benchmarks/tracking/multiple_tracks.sh
index a782b768ff25487d589caffe924cfd735981f49e..a4b432abe70dd28d4662096d6e8fb4a255f10885 100644
--- a/benchmarks/tracking/multiple_tracks.sh
+++ b/benchmarks/tracking/multiple_tracks.sh
@@ -79,8 +79,9 @@ then
 
   echo "Running geant4 simulation"
   ## run geant4 simulations
-  npsim --runType batch \
+  ddsim --runType batch \
     --part.minimalKineticEnergy 1000*GeV  \
+    --filter.tracker edep0 \
     -v WARNING \
     --numberOfEvents ${JUGGLER_N_EVENTS} \
     --compactFile ${DETECTOR_PATH}/${JUGGLER_DETECTOR}.xml \
diff --git a/benchmarks/tracking/run_tracking_benchmarks.py b/benchmarks/tracking/run_tracking_benchmarks.py
index 93c005771198c69e2f80c355dc1e2f1f37c6fd36..d4660c5e205650280133b3a9818042e81e184e49 100755
--- a/benchmarks/tracking/run_tracking_benchmarks.py
+++ b/benchmarks/tracking/run_tracking_benchmarks.py
@@ -56,8 +56,9 @@ if 'sim' in procs:
             '--particles', args.particles]
     subprocess.run(gen_cmd)
     # simulation
-    sim_cmd = ['npsim',
+    sim_cmd = ['ddsim',
             '--part.minimalKineticEnergy', '1*TeV',
+            '--filter.tracker', 'edep0',
             '--numberOfEvents', '{}'.format(args.nev),
             '--runType', 'batch',
             '--inputFiles', gen_file,