lh3/miniasm

Can miniasm be used for contigs

SilasK opened this issue · 1 comments

I like to combine different metagenome-assembled genomes (contigs) into one.

I tried to use miniasmwith:

cat all_genomes/*.fasta > x.fasta

minimap2 -x asm10 -t4 x.fasta x.fasta | gzip -1 > x.paf.gz
miniasm -i 0.9 -o 200 -c 1 -f x.fasta x.paf.gz > x.gfa

The gfa file is empty and I get the following log.

[M::main] ===> Step 1: reading read mappings <===
[M::ma_hit_read::0.416*1.00] read 398828 hits; stored 575002 hits and 9518 sequences (312118248 bp)
[M::main] ===> Step 2: 1-pass (crude) read selection <===
[M::ma_hit_sub::0.497*1.00] 7429 query sequences remain after sub
[M::ma_hit_cut::0.505*1.00] 569351 hits remain after cut
[M::ma_hit_flt::0.511*1.00] 563681 hits remain after filtering; crude coverage after filtering: 56.25
[M::main] ===> Step 3: 2-pass (fine) read selection <===
[M::ma_hit_sub::0.532*1.00] 7400 query sequences remain after sub
[M::ma_hit_cut::0.542*1.00] 561656 hits remain after cut
[M::ma_hit_contained::0.551*1.00] 0 sequences and 0 hits remain after containment removal
[M::main] ===> Step 4: graph cleaning <===
[M::ma_sg_gen] read 0 arcs
[M::main] ===> Step 4.1: transitive reduction <===
[M::asg_arc_del_trans] transitively reduced 0 arcs
[M::main] ===> Step 4.2: initial tip cutting and bubble popping <===
[M::asg_cut_tip] cut 0 tips
[M::asg_arc_del_multi] removed 0 multi-arcs
[M::asg_arc_del_asymm] removed 0 asymmetric arcs
[M::asg_pop_bubble] popped 0 bubbles and trimmed 0 tips
[M::main] ===> Step 4.3: cutting short overlaps (3 rounds in total) <===
[M::asg_arc_del_short] removed 0 short overlaps
[M::asg_arc_del_short] removed 0 short overlaps
[M::asg_arc_del_short] removed 0 short overlaps
[M::main] ===> Step 4.4: removing short internal sequences and bi-loops <===
[M::asg_cut_internal] cut 0 internal sequences
[M::asg_cut_biloop] cut 0 small bi-loops
[M::asg_cut_tip] cut 0 tips
[M::asg_pop_bubble] popped 0 bubbles and trimmed 0 tips
[M::main] ===> Step 4.5: aggressively cutting short overlaps <===
[M::asg_arc_del_short] removed 0 short overlaps
[M::main] ===> Step 5: generating unitigs <===
[M::main] Version: 0.3-r179
[M::main] CMD: miniasm -i 0.9 -o 200 -c 1 -f x.fasta x.paf.gz
[M::main] Real time: 0.965 sec; CPU: 0.964 sec
lh3 commented

Miniasm is designed for reads. It filters out reads with low coverage. You can see all input sequences are dropped at step 4. You may try to add option -1 -2 (or just -2). I don't know if that helps, though.