Skip to content

Commit df9d3e6

Browse files
committed
#14 - amend mmseqs parameters adjustment for nucleotide search
1 parent 3a1fabf commit df9d3e6

File tree

4 files changed

+14
-14
lines changed

4 files changed

+14
-14
lines changed

src/module/ProfileModule.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -837,11 +837,11 @@ public static void run(String[] args) {
837837
MMseqsSearchResultEntity res = MMseqsEasySearchProcess.search(
838838
PathConfig.SeqPath + "nuc" + File.separator + "ITS.fa",
839839
PathConfig.InputIsFolder ? PathConfig.InputPath + GenericConfig.FILENAME : PathConfig.InputPath,
840-
PathConfig.TempPath, 500, 500, true, GenericConfig.ThreadPoolSize);
840+
PathConfig.TempPath, 3, 500, 500, true, GenericConfig.ThreadPoolSize);
841841
res.reduce();
842842
ProfilePredictionEntity pp = MMseqsEasySearchProcess.parse(res);
843843
res.remove();
844-
if(pp.nseq() > 0) MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + "nuc" + File.separator + "ITS.fa", PathConfig.TempPath, GenericConfig.ThreadPoolSize);
844+
if(pp.nseq() > 0) MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + "nuc" + File.separator + "ITS.fa", PathConfig.TempPath, 3, GenericConfig.ThreadPoolSize);
845845
pps.add(pp);
846846

847847
if(pp.valid()) Prompt.print(ANSIHandler.wrapper("SUCCESS", 'g') + " : ITS sequence successfully extracted.");
@@ -1067,7 +1067,7 @@ public ProfilePredictionEntity call() {
10671067
updateProg(g, ANSIHandler.wrapper("V", 'R'), 1); printProg();
10681068
Prompt.talk(ANSIHandler.wrapper("[Phase 3 : Validation]", 'R'));
10691069
/* Run hmmsearch and find target gene among the predicted genes */
1070-
if(pp.nseq() > 0) MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + dir + File.separator + cg + ".fa", PathConfig.TempPath, 1);
1070+
if(pp.nseq() > 0) MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + dir + File.separator + cg + ".fa", PathConfig.TempPath, 0, 1);
10711071
/* Implementation note.
10721072
* Previously, contigs were removed right after AUGUSTUS finishes the prediction.
10731073
* However, to extract the cDNA sequence for the gene, contig should remain intact.

src/module/ProfileProModule.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,7 @@ public ProfilePredictionEntity call() {
322322
Prompt.talk(ANSIHandler.wrapper("[Phase 3 : Validation]", 'R'));
323323
ProfilePredictionEntity pp = new ProfilePredictionEntity(cg, ProfilePredictionEntity.TYPE_PRO);
324324
for(String seq : SEQS) pp.addSeq(seq);
325-
MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + "pro" + File.separator + cg + ".fa", PathConfig.TempPath, 1);
325+
MMseqsEasySearchProcess.validate(pp, PathConfig.SeqPath + "pro" + File.separator + cg + ".fa", PathConfig.TempPath, 0, 1);
326326

327327
/* Record obtained result */
328328
String result;

src/pipeline/UFCGMainPipeline.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@
3737
@SuppressWarnings("restriction")
3838
public class UFCGMainPipeline {
3939
public static final String VERSION = "1.0.5";
40-
public static final Boolean STABLE = true;
41-
public static final String RELEASE_DATE = "Aug 2023";
40+
public static final Boolean STABLE = false;
41+
public static final String RELEASE_DATE = "Sep 2023";
4242
public static final String CITATION = " Kim, D., Gilchrist, C.L.M., Chun, J. & Steinegger, M. (2023)\n"
4343
+ " UFCG: database of universal fungal core genes and pipeline for genome-wide phylogenetic analysis of fungi.\n"
4444
+ " Nucleic Acids Research, 51(D1), D777-D784, doi:10.1093/nar/gkac894.\n";

src/process/MMseqsEasySearchProcess.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,12 @@ public static String checkORF(ProfilePredictionEntity pp, String prtn, String or
6565
static String TASK = null;
6666
public static void setTask(String task) {TASK = task;}
6767

68-
public static MMseqsSearchResultEntity search(String queryPath, String targetPath, String tmpPath, int uoff, int doff, boolean abs, int threads) {
68+
public static MMseqsSearchResultEntity search(String queryPath, String targetPath, String tmpPath, int searchType, int uoff, int doff, boolean abs, int threads) {
6969
String resultPath = tmpPath + GenericConfig.SESSION_UID + "_" + targetPath.substring(targetPath.lastIndexOf(File.separator) + 1) + ".m8";
7070

7171
MMseqsWrapper mm = new MMseqsWrapper();
7272
mm.setEasySearch(queryPath, targetPath, resultPath, tmpPath);
73-
mm.setSearchType(0);
73+
mm.setSearchType(searchType);
7474
mm.setThreads(threads);
7575
mm.exec();
7676

@@ -90,12 +90,12 @@ public static MMseqsSearchResultEntity search(String queryPath, String targetPat
9090

9191
return res;
9292
}
93-
public static MMseqsSearchResultEntity search(String queryPath, String targetPath, String tmpPath, double evalue, int threads, double cov) {
93+
public static MMseqsSearchResultEntity search(String queryPath, String targetPath, String tmpPath, int searchType, double evalue, int threads, double cov) {
9494
String resultPath = tmpPath + GenericConfig.SESSION_UID + "_" + targetPath.substring(targetPath.lastIndexOf(File.separator) + 1) + ".m8";
9595

9696
MMseqsWrapper mm = new MMseqsWrapper();
9797
mm.setEasySearch(queryPath, targetPath, resultPath, tmpPath);
98-
mm.setSearchType(0);
98+
mm.setSearchType(searchType);
9999
mm.setEvalue(evalue);
100100
mm.setCoverage(cov);
101101
mm.setThreads(threads);
@@ -124,16 +124,16 @@ public static ProfilePredictionEntity parse(MMseqsSearchResultEntity res) {
124124
return pp;
125125
}
126126

127-
public static void validate(ProfilePredictionEntity pp, String seqPath, String tmpPath, int threads) {
127+
public static void validate(ProfilePredictionEntity pp, String seqPath, String tmpPath, int searchType, int threads) {
128128
String queryPath = pp.export();
129129

130130
// 3-step coverage search
131-
MMseqsSearchResultEntity res = search(queryPath, seqPath, tmpPath, GenericConfig.EvalueCutoff, threads, 0.8);
131+
MMseqsSearchResultEntity res = search(queryPath, seqPath, tmpPath, searchType, GenericConfig.EvalueCutoff, threads, 0.8);
132132
if(res.size() == 0 && GenericConfig.SENS > 1) {
133-
res = search(queryPath, seqPath, tmpPath, GenericConfig.EvalueCutoff, threads, 0.5);
133+
res = search(queryPath, seqPath, tmpPath, searchType, GenericConfig.EvalueCutoff, threads, 0.5);
134134
}
135135
if(res.size() == 0 && GenericConfig.SENS > 2) {
136-
res = search(queryPath, seqPath, tmpPath, GenericConfig.EvalueCutoff, threads, 0.0);
136+
res = search(queryPath, seqPath, tmpPath, searchType, GenericConfig.EvalueCutoff, threads, 0.0);
137137
}
138138

139139
res.assignLocs();

0 commit comments

Comments
 (0)