SEQanswers

Go Back   SEQanswers > Sequencing Technologies/Companies > Illumina/Solexa



Similar Threads
Thread Thread Starter Forum Replies Last Post
Does velvet generate different assemblies from the same input data and same velvet pa rahularjun86 De novo discovery 2 11-21-2013 07:43 AM
Velvet + meta-velvet:which fastq format for paired-end infos? someperson Bioinformatics 3 07-04-2013 09:16 AM
Blast error when choosing m8 maimaiti2008 Bioinformatics 5 06-19-2013 06:06 PM
[Velvet,assembly] core dumped occured by runnning velvet matador3000 De novo discovery 0 12-17-2011 08:31 AM
Choosing an Assembler(s) charltt Bioinformatics 6 06-21-2011 03:20 AM

Reply
 
Thread Tools
Old 04-25-2016, 09:25 AM   #1
skambarev
Junior Member
 
Location: Nantes, France

Join Date: Jan 2015
Posts: 3
Default Choosing MAXKMERLENGTH in Velvet

Hi everyone,
I am a newbie in genome sequencing and assembly and I need some help.

I had to sequence several bacterial genomes (the biggest is about 5.5 Mb) with Illumina MiSeq as part of my PhD project.

The drafts were assembled by the sequencing company, but I would like to learn the whole process on my own.

Currently, I am learning to use Velvet. I've read the manual and the associated papers but I still cannot figure out how to choose the proper MAXKMERLENGTH value. My reads are 150 bp long (paired-end).

Could you give me an advice?

Thank you for your time in advance.
skambarev is offline   Reply With Quote
Old 04-25-2016, 10:25 AM   #2
mastal
Senior Member
 
Location: uk

Join Date: Mar 2009
Posts: 662
Default

The MAXKMERLENGTH is the longest kmer size you can use for your analysis,
and you have to set this when you compile velvet (the default used to be 31). Check the manual, I think setting a higher MAXKMERLENGTH means that velvet uses more memory.

This has nothing to do with what is the best kmer size to use for your assembly.
mastal is offline   Reply With Quote
Old 04-25-2016, 10:31 AM   #3
fanli
Senior Member
 
Location: California

Join Date: Jul 2014
Posts: 197
Default

You may want to look into newer assemblers as well.

See:
http://bioinformatics.oxfordjournals...9/14/1718.long

and:
http://journals.plos.org/plosone/art...l.pone.0107014
fanli is offline   Reply With Quote
Old 04-26-2016, 01:29 AM   #4
skambarev
Junior Member
 
Location: Nantes, France

Join Date: Jan 2015
Posts: 3
Default

@ mastal: Thank you for your answer. May be I should have written my question in a better way. Let me try again, please.

As far as I understood from the papers the k-mer length has a big impact on the assembly quality so it is a common practice to use Velvet Optimizer in order to identify the best hash length and cut-off values. Is that correct?

However, when I install Velvet, the default MAXKMERLENGTH value is 31. I guess it is so, because the manual was written in 2008 and the reading power of Illumina was much lower at that time.

My question is - which is the MAXKMERLENGTH value I must enter when I compile Velvet as my reads are 150 bp long and what is the principle of choosing it?

@ fanli: Thank you for the references. I am going to check them out.
skambarev is offline   Reply With Quote
Old 04-26-2016, 05:00 AM   #5
mastal
Senior Member
 
Location: uk

Join Date: Mar 2009
Posts: 662
Default

There are 2 separate concepts here, the kmer lengths you try for your assembly, and the max kmer length you compile velvet with, which has to do with how much memory velvet sets aside for the calculations.

MAXKMERLENGTH:
If you have 150 bp reads, then in principle you can use any value for kmer size up to 149 (kmer size has to be an odd number). But velvet will only let you use values up to whatever MAXKMERLENGTH you recompile velvet with (the default is 31), so if you want to try larger values you will have to recompile velvet with a larger MAXKMERLENGTH. And this has no effect on your assembly, except that you won't be able to try out any kmer values higher than the value of MAXKMERLENGTH. And it will affect the amount of memory that velvet uses.

kmer length and assembly:
As to what kmer lengths to try for your assembly, there are programs like velvetk and velvet optimiser that try to give you an idea of what values to try. Look at some of the code examples in the velvet manual and try several values, you will see which ones give you better parameters for your assembly, in terms of N50, number of contigs, etc in the log file velvet produces at the end of each run. You can calculate kmer coverage. The higher the kmer length you choose, the lower the coverage. Velvet actually doesn't do so well with very high coverage. You don't have to worry that you have to choose the best value to start off with, you will need to run velvet many times to optimise the assembly.

Hope this helps.
mastal is offline   Reply With Quote
Old 04-27-2016, 01:49 PM   #6
skambarev
Junior Member
 
Location: Nantes, France

Join Date: Jan 2015
Posts: 3
Default

That's exactly the answer I needed, thanks a lot!
skambarev is offline   Reply With Quote
Reply

Tags
maxkmerlength, velvet

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT -8. The time now is 02:29 PM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Single Sign On provided by vBSSO