diff --git a/common-tools/coat-libs/pom.xml b/common-tools/coat-libs/pom.xml index 86ae62720b..5c5cee2dab 100644 --- a/common-tools/coat-libs/pom.xml +++ b/common-tools/coat-libs/pom.xml @@ -26,16 +26,6 @@ et - - j4ml - j4ml-neuroph - - - - j4ml - j4ml-clas12 - - org.jlab.plugins trackfitter diff --git a/pom.xml b/pom.xml index 4be635ba7e..51f98cea79 100644 --- a/pom.xml +++ b/pom.xml @@ -197,24 +197,6 @@ 4.5 - - j4ml - j4ml-neuroph - 0.9-SNAPSHOT - - - - j4ml - j4ml-data - 0.9-SNAPSHOT - - - - j4ml - j4ml-clas12 - 0.9-SNAPSHOT - - org.jlab.ccdbrcdb ccdbrcdb diff --git a/reconstruction/mltn/pom.xml b/reconstruction/mltn/pom.xml deleted file mode 100644 index bc95304152..0000000000 --- a/reconstruction/mltn/pom.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - 4.0.0 - - org.jlab.clas12.detector - clas12detector-mltn - 14.2.1-SNAPSHOT - jar - - - org.jlab.clas12 - reconstruction - 14.2.1-SNAPSHOT - - - - - - org.jlab.jnp - jnp-hipo4 - - - - j4ml - j4ml-neuroph - - - - j4ml - j4ml-data - - - - j4ml - j4ml-clas12 - - - - org.jlab.clas - clas-io - 14.2.1-SNAPSHOT - - - - org.jlab.clas - clas-reco - 14.2.1-SNAPSHOT - - - - - diff --git a/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTDEngine.java b/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTDEngine.java deleted file mode 100644 index 6dce3c09cd..0000000000 --- a/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTDEngine.java +++ /dev/null @@ -1,119 +0,0 @@ -package org.jlab.service.mltn; - -import j4ml.clas12.ejml.ArchiveProvider; -import j4ml.clas12.ejml.EJMLTrackNeuralNetwork; -import j4ml.clas12.network.Clas12TrackFinder; -import j4ml.clas12.tracking.ClusterCombinations; -import java.util.HashMap; -import java.util.Map; -import java.util.Optional; -import org.jlab.clas.reco.ReconstructionEngine; -import org.jlab.io.base.DataBank; -import org.jlab.io.base.DataEvent; -import org.jlab.io.hipo.HipoDataBank; -import org.jlab.utils.CLASResources; - -/** - * - * @author gavalian - */ -public class MLTDEngine extends ReconstructionEngine { - - EJMLTrackNeuralNetwork network = null; - private String networkFlavor = "default"; - private Integer userRunNumber = -1; - private String inputBankPrefix = ""; - private String outputBankPrefix = "ai"; - private String inputBank = null; - private String outputBank = null; - - public MLTDEngine(){ - super("MLTD","gavalian","1.0"); - } - - @Override - public boolean init() { - inputBankPrefix = Optional.ofNullable(this.getEngineConfigString("inputBankPrefix")).orElse(""); - outputBankPrefix = Optional.ofNullable(this.getEngineConfigString("outputBankPrefix")).orElse("ai"); - inputBank = "HitBasedTrkg::"+inputBankPrefix+"Clusters"; - outputBank = outputBankPrefix+"::tracks"; - networkFlavor = Optional.ofNullable(this.getEngineConfigString("flavor")).orElse("default"); - userRunNumber = Integer.valueOf(Optional.ofNullable(this.getEngineConfigString("run")).orElse("-1")); - return true; - } - - public boolean load(int run) { - String path = CLASResources.getResourcePath("etc/data/nnet/ejml/ejmlclas12.network"); - if(this.getEngineConfigString("network")!=null) - path = this.getEngineConfigString("network"); - System.out.println("[neural-network] info : Loading neural network from " + path); - network = new EJMLTrackNeuralNetwork(); - Map files = new HashMap<>(); - files.put("classifier", "trackClassifier.network"); - files.put("fixer", "trackFixer.network"); - - ArchiveProvider provider = new ArchiveProvider(path.trim()); - - //----- This will find in the archive the last run number closest - //----- to provided run number that contains trained network. - //----- it works similar to CCDB, but not exatly, for provided - //----- run number it looks for run that has smaller number, - //----- however it the provided run # it lower than anything - //----- existing in the arhive, it will return the closest run - //----- number entry. - int adjustedRun = provider.findEntry(run); - - String directory = String.format("network/%d/%s", adjustedRun, networkFlavor); - network.initZip(path.trim(),directory, files); - - //trackFinder = Clas12TrackFinder.createEJML("CLAS12DIR","etc/ejml/ejmlclas12.network"); - //classifier.setEnvDirectory("CLAS12DIR"); - //classifier.setEnvPath("etc/nnet/neuroph"); - //classifier.load("trackClassifier.nnet", "trackFixer.nnet"); - System.out.println("[neural-network] info : Loading neural network files done..."); - System.out.println("[neural-network] info : Only network is initialized..."); - //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. - return true; - } - - @Override - public void detectorChanged(int runNumber) { - if (userRunNumber < 0) { - load(runNumber); - } - else if (network == null) { - load(userRunNumber); - } - } - - @Override - public boolean processDataEventUser(DataEvent de) { - if(de.hasBank(inputBank)==true){ - DataBank bank = de.getBank(inputBank); - HipoDataBank hipoBank = (HipoDataBank) bank; - Clas12TrackFinder trackFinder = new Clas12TrackFinder(); - trackFinder.setTrackingNetwork(network); - trackFinder.process(hipoBank.getBank()); - writeBank(de,trackFinder.getResults()); - } - return true; - } - - public void writeBank(DataEvent event, ClusterCombinations combi){ - DataBank bank = event.createBank(outputBank, combi.getSize()); - for(int i = 0; i < combi.getSize(); i++){ - bank.setByte("id", i, (byte) (i+1)); - bank.setByte("sector", i, (byte) 1); - bank.setByte("charge", i, (byte) combi.setRow(i).getStatus()); - bank.setFloat("prob", i, (float) combi.setRow(i).getProbability()); - int[] ids = combi.getLabels(i); - for(int c = 0; c < 6; c++){ - int order = c+1; - bank.setShort("c"+order, i, (short) ids[c]); - } - } - event.removeBank(outputBank); - event.appendBank(bank); - } - -} diff --git a/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTNEngine.java b/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTNEngine.java deleted file mode 100644 index 0d2c3ce339..0000000000 --- a/reconstruction/mltn/src/main/java/org/jlab/service/mltn/MLTNEngine.java +++ /dev/null @@ -1,96 +0,0 @@ -package org.jlab.service.mltn; - -import j4ml.clas12.Clas12TrackAnalyzer; -import j4ml.clas12.Clas12TrackClassifier; -import j4ml.clas12.track.ClusterCombinations; -import org.jlab.clas.reco.ReconstructionEngine; -import org.jlab.io.base.DataBank; -import org.jlab.io.base.DataEvent; -import org.jlab.io.hipo.HipoDataBank; - -/** - * - * @author gavalian - @Deprecated - */ -public class MLTNEngine extends ReconstructionEngine { - - Clas12TrackClassifier classifier = new Clas12TrackClassifier(); - - public MLTNEngine(){ - super("MLTN","gavalian","1.0"); - } - - @Override - public boolean init() { - classifier.setEnvDirectory("CLAS12DIR"); - classifier.setEnvPath("etc/data/nnet/neuroph"); - classifier.load("trackClassifier.nnet", "trackFixer.nnet"); - System.out.println("Loading neural network files done..."); - return true; - } - - @Override - public void detectorChanged(int runNumber) {} - - @Override - public boolean processDataEventUser(DataEvent de) { - if(de.hasBank("HitBasedTrkg::Clusters")==true){ - DataBank bank = de.getBank("HitBasedTrkg::Clusters"); - - - HipoDataBank hipoBank = (HipoDataBank) bank; - //classifier.processBank(hipoBank.getBank()); - - Clas12TrackAnalyzer analyzer = new Clas12TrackAnalyzer(); - for(int sector = 1; sector <=6; sector++){ - analyzer.readBank(hipoBank.getBank(), sector); - classifier.evaluate(analyzer.getCombinations()); - //analyzer.getCombinations().analyze(); - //System.out.println(analyzer.getCombinations()); - classifier.evaluate5(analyzer.getCombinationsPartial()); - analyzer.analyze(); - } - - writeBank(de,analyzer.getTracks()); - - } - return true; - } - - public void writeBank(DataEvent event, ClusterCombinations combi){ - //ClusterCombinations combi = cl.getTracks(); - //System.out.println(">>> writing ai bank with entries = " + combi.getSize()); - DataBank bank = event.createBank("ai::tracks", combi.getSize()); - for(int i = 0; i < combi.getSize(); i++){ - bank.setByte("id", i, (byte) (i+1)); - bank.setByte("sector", i, (byte) 1); - bank.setByte("charge", i, (byte) combi.setRow(i).getStatus()); - bank.setFloat("prob", i, (float) combi.setRow(i).getProbability()); - int[] ids = combi.getLabels(i); - for(int c = 0; c < 6; c++){ - int order = c+1; - bank.setShort("c"+order, i, (short) ids[c]); - } - } - //System.out.println("appending bank"); - event.appendBank(bank); - } - - /*public void writeBank(DataEvent event, Clas12TrackClassifier cl){ - ClusterCombinations combi = cl.getTracks(); - //System.out.println(">>> writing ai bank with entries = " + combi.getSize()); - DataBank bank = event.createBank("ai::tracks", combi.getSize()); - for(int i = 0; i < combi.getSize(); i++){ - bank.setByte("id", i, (byte) (i+1)); - bank.setByte("sector", i, (byte) 1); - int[] ids = combi.getLabels(i); - for(int c = 0; c < 6; c++){ - int order = c+1; - bank.setShort("c"+order, i, (short) ids[c]); - } - } - //System.out.println("appending bank"); - event.appendBank(bank); - }*/ -} diff --git a/reconstruction/pom.xml b/reconstruction/pom.xml index 681cac5725..c3b50541a3 100644 --- a/reconstruction/pom.xml +++ b/reconstruction/pom.xml @@ -29,7 +29,6 @@ band mc rtpc - mltn swaps raster vtx