diff --git a/etc/services/README.md b/etc/services/README.md
index 5815034a31..d684f8f0f4 100644
--- a/etc/services/README.md
+++ b/etc/services/README.md
@@ -2,7 +2,6 @@
* Real Data
* Warning, these must be set appropriately for the data in question:
* the CCDB variation
- * the run number for MLTD/MLTAI network
* [`data-ai.yaml`](data-ai.yaml)
* AI track finding
* [`data-cv.yaml`](data-cv.yaml)
diff --git a/etc/services/data-ai-2026.yaml b/etc/services/data-ai-classic.yaml
similarity index 91%
rename from etc/services/data-ai-2026.yaml
rename to etc/services/data-ai-classic.yaml
index 80fccf0326..38c26c7e42 100644
--- a/etc/services/data-ai-2026.yaml
+++ b/etc/services/data-ai-classic.yaml
@@ -20,18 +20,15 @@ services:
name: FTEB
- class: org.jlab.service.raster.RasterEngine
name: RASTER
-# DC denoising
- - class: org.jlab.service.ai.DCDenoiseEngine
- name: DCDN
# DC clustering: nominal algoritm, filled the cluster bank for ai and conventional tracking
- class: org.jlab.service.dc.DCHBClustering
name: DCCR
# This is where the AI plugin would go. THe AI code reads the HB clusters.
- - class: org.jlab.service.ai.DCClsComboEngine
- name: DCCC
+ - class: org.jlab.service.mltn.MLTDEngine
+ name: MLTD
# DC using clustering on AI hits: NN assisted HB tracking
- - class: org.jlab.service.dc.DCHBTrackingAI
- name: DCHTAI
+ - class: org.jlab.service.dc.DCHBPostClusterAI
+ name: DCHAI
- class: org.jlab.service.ftof.FTOFHBEngine
name: FTOFHB
- class: org.jlab.service.ec.ECEngine
@@ -82,7 +79,9 @@ configuration:
MAGFIELDS:
magfieldSolenoidMap: Symm_solenoid_r601_phi1_z1201_13June2018.dat
magfieldTorusMap: Full_torus_r251_phi181_z251_25Jan2021.dat
- DCHTAI:
+ MLTD:
+ run: "6302"
+ DCHAI:
outputBankPrefix: "HB"
mime-types:
diff --git a/etc/services/data-ai.yaml b/etc/services/data-ai.yaml
index 38c26c7e42..80fccf0326 100644
--- a/etc/services/data-ai.yaml
+++ b/etc/services/data-ai.yaml
@@ -20,15 +20,18 @@ services:
name: FTEB
- class: org.jlab.service.raster.RasterEngine
name: RASTER
+# DC denoising
+ - class: org.jlab.service.ai.DCDenoiseEngine
+ name: DCDN
# DC clustering: nominal algoritm, filled the cluster bank for ai and conventional tracking
- class: org.jlab.service.dc.DCHBClustering
name: DCCR
# This is where the AI plugin would go. THe AI code reads the HB clusters.
- - class: org.jlab.service.mltn.MLTDEngine
- name: MLTD
+ - class: org.jlab.service.ai.DCClsComboEngine
+ name: DCCC
# DC using clustering on AI hits: NN assisted HB tracking
- - class: org.jlab.service.dc.DCHBPostClusterAI
- name: DCHAI
+ - class: org.jlab.service.dc.DCHBTrackingAI
+ name: DCHTAI
- class: org.jlab.service.ftof.FTOFHBEngine
name: FTOFHB
- class: org.jlab.service.ec.ECEngine
@@ -79,9 +82,7 @@ configuration:
MAGFIELDS:
magfieldSolenoidMap: Symm_solenoid_r601_phi1_z1201_13June2018.dat
magfieldTorusMap: Full_torus_r251_phi181_z251_25Jan2021.dat
- MLTD:
- run: "6302"
- DCHAI:
+ DCHTAI:
outputBankPrefix: "HB"
mime-types:
diff --git a/etc/services/data-aicv.yaml b/etc/services/data-aicv.yaml
index 7e62bcc414..a5f362aa11 100644
--- a/etc/services/data-aicv.yaml
+++ b/etc/services/data-aicv.yaml
@@ -20,18 +20,16 @@ services:
name: FTEB
- class: org.jlab.service.raster.RasterEngine
name: RASTER
-# DC clustering: nominal algoritm, filled the cluster bank for ai and conventional tracking
+# - class: org.jlab.service.ai.DCDenoiseEngine
+# name: DCDN
- class: org.jlab.service.dc.DCHBClustering
name: DCCR
-# This is where the AI plugin would go. THe AI code reads the HB clusters.
- - class: org.jlab.service.mltn.MLTDEngine
- name: MLTD
-# DC using clustering: regular HB tracking
+ - class: org.jlab.service.ai.DCClsComboEngine
+ name: DCCC
- class: org.jlab.service.dc.DCHBPostClusterConv
name: DCHB
-# DC using clustering on AI hits: NN assisted HB tracking
- - class: org.jlab.service.dc.DCHBPostClusterAI
- name: DCHAI
+ - class: org.jlab.service.dc.DCHBTrackingAI
+ name: DCHTAI
- class: org.jlab.service.ftof.FTOFHBEngine
name: FTOFHB
- class: org.jlab.service.ec.ECEngine
@@ -91,12 +89,10 @@ configuration:
MAGFIELDS:
magfieldSolenoidMap: Symm_solenoid_r601_phi1_z1201_13June2018.dat
magfieldTorusMap: Full_torus_r251_phi181_z251_25Jan2021.dat
- DCHAI:
+ DCHTAI:
outputBankPrefix: "AI"
DCTAI:
outputBankPrefix: "AI"
- MLTD:
- run: "6302"
EBTAI:
outputBankPrefix: "RECAI"
diff --git a/etc/services/denoise.yaml b/etc/services/denoise.yaml
index 46a0cca21d..b89f15b369 100644
--- a/etc/services/denoise.yaml
+++ b/etc/services/denoise.yaml
@@ -20,21 +20,19 @@ services:
name: FTEB
- class: org.jlab.service.raster.RasterEngine
name: RASTER
-# DC clustering: nominal algoritm, filled the cluster bank for ai and conventional tracking
+ - class: org.jlab.service.ai.DCDenoiseEngine
+ name: DCDN
- class: org.jlab.service.dc.DCHBClustering
name: DCCR
- class: org.jlab.service.dc.DCHBClustering
name: DCRAI
-# This is where the AI plugin would go. THe AI code reads the HB clusters.
- - class: org.jlab.service.mltn.MLTDEngine
- name: MLTD
- - class: org.jlab.service.mltn.MLTDEngine
- name: MLTAI
-# DC using clustering: regular HB tracking
- - class: org.jlab.service.dc.DCHBPostClusterAI
+ - class: org.jlab.service.ai.DCClsComboEngine
+ name: DCCC
+ - class: org.jlab.service.ai.DCClsComboEngine
+ name: DCCAI
+ - class: org.jlab.service.dc.DCHBTrackingAI
name: DCHB
-# DC using clustering on AI hits: NN assisted HB tracking
- - class: org.jlab.service.dc.DCHBPostClusterAI
+ - class: org.jlab.service.dc.DCHBTrackingAI
name: DCHAI
- class: org.jlab.service.ftof.FTOFHBEngine
name: FTOFHB
@@ -99,10 +97,7 @@ configuration:
#rawBankGroup: "DEFAULT"
rawBankGroup: "NOISE1"
outputBankPrefix: "DN"
- MLTD:
- run: "6302"
- MLTAI:
- run: "6302"
+ DCCAI:
inputBankPrefix: "DN"
outputBankPrefix: "aidn"
DCHB:
diff --git a/etc/services/eb.yaml b/etc/services/eb.yaml
index 76109a39e6..84745172e7 100644
--- a/etc/services/eb.yaml
+++ b/etc/services/eb.yaml
@@ -6,8 +6,6 @@ io-services:
class: org.jlab.io.clara.Clas12Writer
name: Clas12Writer
services:
- - class: org.jlab.clas.reco.DecoderEngine
- name: DECO
- class: org.jlab.service.eb.EBTBEngine
name: EBTB
configuration:
diff --git a/reconstruction/uber/pom.xml b/reconstruction/uber/pom.xml
index 575c48a224..ba288629a9 100644
--- a/reconstruction/uber/pom.xml
+++ b/reconstruction/uber/pom.xml
@@ -24,6 +24,11 @@
swim-tools
14.1.3-SNAPSHOT
+
+ org.jlab.clas12.detector
+ clas12detector-ai
+ 14.1.3-SNAPSHOT
+
org.jlab.clas12.detector
clas12detector-dc
diff --git a/reconstruction/uber/src/main/java/org/jlab/service/uber/Uber.java b/reconstruction/uber/src/main/java/org/jlab/service/uber/Uber.java
index e3aac26011..7258743b09 100644
--- a/reconstruction/uber/src/main/java/org/jlab/service/uber/Uber.java
+++ b/reconstruction/uber/src/main/java/org/jlab/service/uber/Uber.java
@@ -29,7 +29,10 @@
import org.jlab.service.mltn.MLTDEngine;
import org.jlab.service.rtpc.RTPCEngine;
import org.jlab.calibration.service.CalibBanksEngine;
+import org.jlab.service.ai.DCClsComboEngine;
+import org.jlab.service.ai.DCDenoiseEngine;
import org.jlab.service.dc.DCHBPostClusterConv;
+import org.jlab.service.dc.DCHBTrackingAI;
import org.jlab.service.dc.DCTBEngineAI;
import org.jlab.service.eb.EBHBAIEngine;
import org.jlab.service.eb.EBTBAIEngine;
@@ -82,8 +85,8 @@ public HitBasedCV() {
}
}
- public static class HitBasedAI extends UberEngine {
- public HitBasedAI() {
+ public static class HitBasedAIClassic extends UberEngine {
+ public HitBasedAIClassic() {
super("HB","uber","1.0");
add(new DCHBClustering(),
new MLTDEngine(),
@@ -97,8 +100,24 @@ public HitBasedAI() {
}
}
- public static class HitBasedAICV extends UberEngine {
- public HitBasedAICV() {
+ public static class HitBasedAI extends UberEngine {
+ public HitBasedAI() {
+ super("HB","uber","1.0");
+ add(new DCDenoiseEngine(),
+ new DCHBClustering(),
+ new DCClsComboEngine(),
+ new DCHBTrackingAI("HB"),
+ new BANDEngine(),
+ new HTCCReconstructionService(),
+ new LTCCEngine(),
+ new FTOFHBEngine(),
+ new ECEngine(),
+ new EBHBEngine());
+ }
+ }
+
+ public static class HitBasedAIClassicCV extends UberEngine {
+ public HitBasedAIClassicCV() {
super("HB","uber","1.0");
add(new DCHBClustering(),
new MLTDEngine(),
@@ -114,6 +133,24 @@ public HitBasedAICV() {
}
}
+ public static class HitBasedAICV extends UberEngine {
+ public HitBasedAICV() {
+ super("HB","uber","1.0");
+ add(new DCDenoiseEngine(),
+ new DCHBClustering(),
+ new DCClsComboEngine(),
+ new DCHBPostClusterConv(),
+ new DCHBTrackingAI("AI"),
+ new BANDEngine(),
+ new HTCCReconstructionService(),
+ new LTCCEngine(),
+ new FTOFHBEngine(),
+ new ECEngine(),
+ new EBHBEngine(),
+ new EBHBAIEngine());
+ }
+ }
+
public static class TimeBasedCV extends UberEngine {
public TimeBasedCV() {
super("TB","uber","1.0");