Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Originally posted by Mchicken View Post
    So can anyone tell me where i am wrong?
    Trimmomatic uses a slightly more complex strategy, so in some cases (if the quality around the trim point looks like a "U"), trimmomatic doesn't do what you expect.

    Consider a typical monotonic dropping quality - first you might want to decide where the window drops below the threshold, then remove the later, weaker bases within the window, but keep the earlier, stronger ones. To achieve this, you need to first find the window, then decide how much to keep.

    Once the window is found (very likely in the position you expect), the individual bases are checked against the required quality from the end of the window backwards. In your example, the last base is somewhat stronger than the threshold, so removal stops there.

    An obvious alternative would be to start at the beginning of the window, and cut at the first weak base. When i compared the two approaches, the 'from the back' approach seemed to work better, so trimmomatic uses this.

    Hope this helps,

    Tony.

    Comment


    • Thanks for your reply Tony, now I can incorporate Trimmomatic without compunction into my pipeline

      Comment


      • why not automatic mode?

        Tony, Slightly off-topic perhaps, but shouldn't it be possible to automatically detect things like adapters and have a fully automatic trim process? It seems like this would save quite a bit of hassle in obtaining adapter sequences, studying FastQC output, playing with the many parameters, things like that.

        Comment


        • For what it's worth I hit this exception running with a file that turned out to have a corrupted line...perhaps a more informative error is possible:

          java -Xmx4096m -jar /data/agcol/databases/mouse/paper_rerun/ext/Trimmomatic-0.32/trimmomatic-0.32.jar PE -threads 1 -trimlog trim1.log test1.fq test2.fq Out1.fastq Sing1.fastq Out2.fastq Sing2.fastq CROP:95 HEADCROP:5
          TrimmomaticPE: Started with arguments: -threads 1 -trimlog trim1.log test1.fq test2.fq Out1.fastq Sing1.fastq Out2.fastq Sing2.fastq CROP:95 HEADCROP:5
          Quality encoding detected as phred33
          Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
          at java.util.Arrays.copyOf(Arrays.java:2882)
          at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
          at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:515)
          at java.lang.StringBuffer.append(StringBuffer.java:306)
          at java.io.BufferedReader.readLine(BufferedReader.java:345)
          at java.io.BufferedReader.readLine(BufferedReader.java:362)
          at org.usadellab.trimmomatic.fastq.FastqParser.parseOne(FastqParser.java:72)
          at org.usadellab.trimmomatic.fastq.FastqParser.next(FastqParser.java:171)
          at org.usadellab.trimmomatic.TrimmomaticPE.processSingleThreaded(TrimmomaticPE.java:57)
          at org.usadellab.trimmomatic.TrimmomaticPE.process(TrimmomaticPE.java:293)
          at org.usadellab.trimmomatic.TrimmomaticPE.run(TrimmomaticPE.java:498)
          at org.usadellab.trimmomatic.Trimmomatic.main(Trimmomatic.java:35)

          Comment


          • Hi everyone,

            I am a newbie in NGS. I have a data sequenced with Illumina Truseq Kit from Hiseq System. I am trying to trim the adapters in my data with Trimmomatic but not sure on which adapters fasta files to choose (TruSeq3-PE.fasta or TruSeq3-PE-2.fasta ?).

            Could anyone please explain to me what's the difference between these two files ?

            TruSeq3-PE.fasta
            TruSeq3-PE-2.fasta

            Thanks a lot ^^

            Comment


            • Originally posted by tsangkl View Post
              Hi, I found trimmomatic very useful.
              And it works well with my Hiseq data using Nextera PE adaptor in single end mode.
              But I found the output is quite strange in paired end mode:

              My output after trimming:
              Input Read Pairs: 12484647 Both Surviving: 4943420 (39.60%) Forward Only Surviving: 7297375 (58.45%) Reverse Only Surviving: 16245 (0.13%) Dropped: 227607 (1.82%)

              It seems that the forward and reverse reads after trimming is very unbalanced.
              What would cause this?
              Thanks.
              Most likely (especially since you are using a nextera prep), you have a lot of short fragments which have adapter read-through (the read length > the insert length). Since the trimmed read pairs are therefore merely reverse-complements of each other (both contain the full fragment), the reverse read adds little information, and thus the default behaviour of trimmomatic is to drop the reverse read. You can choose to keep the reverse read by adding an extra 'true' parameter to the ILLUMINACLIP step.

              Comment


              • Originally posted by jcyh View Post
                Hi everyone,

                I am a newbie in NGS. I have a data sequenced with Illumina Truseq Kit from Hiseq System. I am trying to trim the adapters in my data with Trimmomatic but not sure on which adapters fasta files to choose (TruSeq3-PE.fasta or TruSeq3-PE-2.fasta ?).

                Could anyone please explain to me what's the difference between these two files ?

                TruSeq3-PE.fasta
                TruSeq3-PE-2.fasta

                Thanks a lot ^^
                With good quality library preps, TruSeq3-PE should be enough and will run much faster (since it checks only for the most common contamination scenario).

                For 'strange' situations, e.g. libraries with double-ligated adapters, partly degraded adapters or other issues, 'TruSeq3-PE-2' does a better job. For high quality libraries though, the extra processing time needed is probably not worth it.

                Comment


                • Originally posted by Will Nelson View Post
                  Tony, Slightly off-topic perhaps, but shouldn't it be possible to automatically detect things like adapters and have a fully automatic trim process? It seems like this would save quite a bit of hassle in obtaining adapter sequences, studying FastQC output, playing with the many parameters, things like that.
                  Good idea - it would take a bit of work, but in principle it can be done.

                  Comment


                  • Originally posted by Will Nelson View Post
                    For what it's worth I hit this exception running with a file that turned out to have a corrupted line...perhaps a more informative error is possible.
                    Interesting - seems that file has very long lines (or is missing newlines entirely). I agree the error message should be more informative.

                    Comment


                    • Trimmomatic bad parallelize

                      I'm sorry, I have created a new thread.

                      Comment


                      • I am just starting to use Trimomatic on a SE read set from a HiSeq lane-

                        Here is the command I ran

                        nohup nice -n 10 java -jar ~/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLOG 11145X1_141017_D00294_0137_AC5N9DANXX_3.txt 11145X1AdapterTRIMout.txt ILLUMINACLIP:/home/user/Trimmomatic-0.32/adapters/TruSeq3-SE.fa:2:30:7 LEADING:3 TRAILING:3 > X1Trim_logfile &

                        My question is related to this. I was watching the system status after I started this program and noted that I had a couple processes running at maybe 90 and 150% cpu... three cores.

                        Then I looked further down the process log and see about 40 like this... (see below)
                        And note that the cache was basically down to zero on the system (there was free memory but the cache was filled).... This is a single lane 50 bp data set from Illumina.... so its not something odd. The job finished in about 4 hours, and seems to have worked perfectly. Just curious what the story behind that monster list of sleeping processes is... if you could provide a bit of detail so that I can understand the consequences of this on other running jobs or ability to start other high load jobs I would feel better.
                        This server is 64 core >TB memory- thus my need to figure out for myself (I am no sysadmin) whats going on here.

                        I assume its reflecting in some way the way its multithreaded and these are some kinda feeder process train.... but maybe thats wrong too.... just curious if this is supposed to happen and what it is.

                        51839 user 30 10 35.2G 10208M 10908 S 3.0 2.0 0:42.10 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51838 user 30 10 35.2G 10208M 10908 S 3.0 2.0 0:42.14 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51837 user 30 10 35.2G 10208M 10908 S 3.0 2.0 0:44.30 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51834 user 30 10 35.2G 10208M 10908 S 2.0 2.0 0:33.67 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51835 user 30 10 35.2G 10208M 10908 S 3.0 2.0 0:46.21 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51787 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.72 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51788 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.03 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51796user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.93 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51807 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.00 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51822 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.47 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51799 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.25 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51782 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.20 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51810 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.00 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51820 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.22 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51812 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.20 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51808 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.28 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51790 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.63 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51817 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.04 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51818 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:04.77 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51793 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.55 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIMLO
                        51791 user 30 10 35.2G 10208M 10908 S 0.0 2.0 0:03.51 java -jar /home/user/Trimmomatic-0.32/trimmomatic-0.32.jar SE -threads 3 -trimlog trimmomaticX1TRIM
                        Last edited by rufessor; 10-30-2014, 07:54 PM.

                        Comment


                        • I've used Trimmomatic successfully in the past, but I'm now getting an error I don't understand (and haven't been able to find through searches of this forum and google searches).

                          My command:
                          java -jar ~/hostshare/trimmomatic-0.32.jar PE -phred33 -trimlog ~/hostshare/trimtest.log ~/hostshare/C2_l.fastq.gz ~/hostshare/C2_r.fastq.gz ~/hostshare/C2_l_pairtrim.fastq.gz ~/hostshare/C2_l_uptrim.fastq.gz ~/hostshare/C2_r_pairtrim.fastq.gz ~/hostshare/C2_r_uptrim.fastq.gz ILLUMINACLIP:NRC_trim_C2.fa:2:40:15 LEADING:20 TRAILING:20 MINLEN:50

                          I've also tried the "classpath" route and various other permutations.

                          The output:

                          [First it reports the adaptors, e.g., Using Long Clipping Sequence: 'GAT....GCTTG'
                          There are 7 sequences reported, the ones that are present in my fasta file. The remaining output follows]

                          ILLUMINACLIP: Using 0 prefix pairs, 6 forward/reverse sequences, 1 forward only sequences, 0 reverse only sequences
                          Exception in thread "main" java.lang.RuntimeException: Unknown trimmer:
                          at org.usadellab.trimmomatic.trim.TrimmerFactory.makeTrimmer(TrimmerFactory.java:60)
                          at org.usadellab.trimmomatic.TrimmomaticPE.run(TrimmomaticPE.java:495)
                          at org.usadellab.trimmomatic.Trimmomatic.main(Trimmomatic.java:35)

                          Any help really appreciated. I've reached the end of my abilities here.
                          Also I really tried to figure out this answer, so if someone could point out a resource I should have checked, I will certainly learn from the mistake.

                          Comment


                          • new to this program as well... but when I see this error- at least the text

                            Exception in thread "main" java.lang.RuntimeException: Unknown trimmer:
                            it has been because I misspelled the actual command (e.g. ILUMINACLIP... not ILLUMINACLIP). You did not, but it makes me wonder if you have an extra space or extra file in there prior to the ILLUMINACLIP statement- that might cause trimmomatic to parse a file name as a command, which would yield this error- I surmise.

                            Just a guess... but may stimulate you to look again and see something your missing.

                            Comment


                            • Thank you so much for your help rufessor. You definitely pointed me in the right direction. Using vi I was able to see (and remove) a hidden windows "^M". Rookie mistake, but hopefully someone else can learn from it...

                              Comment


                              • Glad it helped- and happy to hear your crusin along.

                                I may be answering in part my question- or at least clarifying my question.
                                I am no longer certain that the sleeping process list actually really effectively did anything to the cache- its almost always used to capacity by linux so I guess my question is-

                                what the heck are those 40 + sleeping processes doing- and are they effectively actually consuming any resource whatsoever. Do they really hold ram or is it just cached...

                                Would be curious.
                                Last edited by rufessor; 10-31-2014, 08:33 PM.

                                Comment

                                Latest Articles

                                Collapse

                                • seqadmin
                                  Strategies for Sequencing Challenging Samples
                                  by seqadmin


                                  Despite advancements in sequencing platforms and related sample preparation technologies, certain sample types continue to present significant challenges that can compromise sequencing results. Pedro Echave, Senior Manager of the Global Business Segment at Revvity, explained that the success of a sequencing experiment ultimately depends on the amount and integrity of the nucleic acid template (RNA or DNA) obtained from a sample. “The better the quality of the nucleic acid isolated...
                                  03-22-2024, 06:39 AM
                                • seqadmin
                                  Techniques and Challenges in Conservation Genomics
                                  by seqadmin



                                  The field of conservation genomics centers on applying genomics technologies in support of conservation efforts and the preservation of biodiversity. This article features interviews with two researchers who showcase their innovative work and highlight the current state and future of conservation genomics.

                                  Avian Conservation
                                  Matthew DeSaix, a recent doctoral graduate from Kristen Ruegg’s lab at The University of Colorado, shared that most of his research...
                                  03-08-2024, 10:41 AM

                                ad_right_rmr

                                Collapse

                                News

                                Collapse

                                Topics Statistics Last Post
                                Started by seqadmin, Yesterday, 06:37 PM
                                0 responses
                                8 views
                                0 likes
                                Last Post seqadmin  
                                Started by seqadmin, Yesterday, 06:07 PM
                                0 responses
                                8 views
                                0 likes
                                Last Post seqadmin  
                                Started by seqadmin, 03-22-2024, 10:03 AM
                                0 responses
                                49 views
                                0 likes
                                Last Post seqadmin  
                                Started by seqadmin, 03-21-2024, 07:32 AM
                                0 responses
                                67 views
                                0 likes
                                Last Post seqadmin  
                                Working...
                                X