atifrahman / SWALO

Scaffolding with assembly likelihood optimization
GNU General Public License v3.0
20 stars 3 forks source link

Minimap2 mammping #3

Open Johnsonzcode opened 1 year ago

Johnsonzcode commented 1 year ago

Hi @atifrahman Thanks for your great work, After reading your paper, SWALO is a software with good theoretical support. But I couldn't finish the pipeline with sam generated with minimap2.

Could you help me ?

/var/spool/torque/mom_priv/jobs/6045.pbsnode01.SC: line 51: 431413 Segmentation fault      (core dumped) $swaloDir/bowtie2convert $sam $contigFile $maxInsertSize
/var/spool/torque/mom_priv/jobs/6045.pbsnode01.SC: line 58: 431490 Segmentation fault      (core dumped) $swaloDir/swalo $contigFile $minContigLength
$ gdb core.431490
Core was generated by `/storage-01/poultrylab1/zhaoqiangsen/software/SWALO-0.9.8-beta/swalo W_scaf.fas'.
Program terminated with signal 11, Segmentation fault.
$ gdb core.431413
Core was generated by `/storage-01/poultrylab1/zhaoqiangsen/software/SWALO-0.9.8-beta/bowtie2convert a'.
Program terminated with signal 11, Segmentation fault.

Sincerely Johnson

atifrahman commented 1 year ago

Hi Johnson,

We haven't tested SWALO with minimap2. Are you using short reads? If so, would it be possible to have a go with Bowtie2? Sometimes there are subtle differences between sam outputs of different aligners.

-Atif

Johnsonzcode commented 1 year ago

The first time I use SWALO with minimap2 is ONT reads, becaues ONT reads is long Bowtie2 runs as segmental fault, the second time I use illumina reads(150bp, PE, insert size 350 std 35, depth~30X), it seems no scaffolding result, e.g. remain as original.

atifrahman commented 1 year ago

So, even if you run with Bowtie2 and Illumina reads, you get no scaffolding results? Did SWALO run properly or did it give error messages like your original post?

Johnsonzcode commented 1 year ago

No any other error msg, this is the last stop log, is it normal ?

In main: creating thread 0
In main: creating thread 1
In main: creating thread 2
In main: creating thread 3
In main: creating thread 4
In main: creating thread 5
In main: creating thread 6
In main: creating thread 7
In main: creating thread 8
In main: creating thread 9
In main: creating thread 10
In main: creating thread 11
In main: creating thread 12
In main: creating thread 13
In main: creating thread 14
In main: creating thread 15
In main: creating thread 16
In main: creating thread 17
In main: creating thread 18
In main: creating thread 19
In main: creating thread 20
In main: creating thread 21
In main: creating thread 22
In main: creating thread 23
In main: creating thread 24
In main: creating thread 25
In main: creating thread 26
In main: creating thread 27
In main: creating thread 28
In main: creating thread 29
In main: creating thread 30
In main: creating thread 31
Main: completed join with thread 0 having a status of 0
Main: completed join with thread 1 having a status of 0
Main: completed join with thread 2 having a status of 0
Main: completed join with thread 3 having a status of 0
Main: completed join with thread 4 having a status of 0
Main: completed join with thread 5 having a status of 0
Main: completed join with thread 6 having a status of 0
Main: completed join with thread 7 having a status of 0
Main: completed join with thread 8 having a status of 0
Main: completed join with thread 9 having a status of 0
Main: completed join with thread 10 having a status of 0
Main: completed join with thread 11 having a status of 0
Main: completed join with thread 12 having a status of 0
Main: completed join with thread 13 having a status of 0
Main: completed join with thread 14 having a status of 0
Main: completed join with thread 15 having a status of 0
Main: completed join with thread 16 having a status of 0
Main: completed join with thread 17 having a status of 0
Main: completed join with thread 18 having a status of 0
Main: completed join with thread 19 having a status of 0
Main: completed join with thread 20 having a status of 0
Main: completed join with thread 21 having a status of 0
Main: completed join with thread 22 having a status of 0
Main: completed join with thread 23 having a status of 0
Main: completed join with thread 24 having a status of 0
Main: completed join with thread 25 having a status of 0
Main: completed join with thread 26 having a status of 0
Main: completed join with thread 27 having a status of 0
Main: completed join with thread 28 having a status of 0
Main: completed join with thread 29 having a status of 0
Main: completed join with thread 30 having a status of 0
Main: completed join with thread 31 having a status of 0
14269993
-1.67556e+09
-112063
199
-4.09921e+11
262 437
262 437
350
14269993
199
14269995
3386944 0
Iteration 0
3386944 0
Iteration 1
3386944 0
Iteration 2
3386944 0
Iteration 3
3386944 0
Iteration 4
3386944 0
Iteration 5
3386944 0
Iteration 6
3386944 0
Iteration 7
3386944 0
Iteration 8
3386944 0
Iteration 9
3386944 0
---------------------------------------------
262 437
-nan -nan
atifrahman commented 1 year ago

No, actually. I'll look into it. Thanks for raising the issue. How long is the genome (approximately)?

Johnsonzcode commented 1 year ago

I use a part of genome (like 8Mbp of genome, which is sexual chromosome), It is hard to scaffold, I have used sevaral ways: Hi-C, long reads. I have tried ordered and orientated BAC clone, but it is not the same breed and the sexual chromosome variation is a great extent, so the result cant get a even coverage.

atifrahman commented 1 year ago

Okay. When you're trying scaffold a part of a genome, how did you identify which contigs belong to that sex chromosome and which are the reads that came from that chromosome?

Johnsonzcode commented 1 year ago

Several ways, such as gene belong to this chromosome, sex-difference depth and the proportion of specific repeat class. There I combined three ways to decide a contig belonging to this chromosome by at least two aspests pass my threshold. Do you have any suggestions for my scaffolding procedure? Any idea and method is appreciate.

atifrahman commented 1 year ago

I see. That sounds fine. I asked because SWALO uses number of reads that do not properly to the contigs, to decide whether to scaffold or not. If that number is inflated or underestimated, it may not function properly. I'll look into it and get back to you. Thanks for bringing this up!

Johnsonzcode commented 1 year ago

As for reads, I didnt pick out, just use the whole sample reads, but I dont have the same individual reads, but I have a small population within same population. So I choose a sample with max depth for scaffolding.

Johnsonzcode commented 1 year ago

I think no scaffolding result may come from two aspects, i). the insert size, because of the way I picking contig, the amount of contig size not equal to the truely size of this chromosome, e.g. there may be a long gap between contig, which cant be spanned by 350 bp insert size. ii). the mapping quality, my contigs have a high extent of repeat, which are much longer than the size of a single reads(150bp), so the mapping may not be faithful.

atifrahman commented 1 year ago

Fair points. It seems to me that long reads are a better bet for you

Johnsonzcode commented 1 year ago

Yes, I am tring to use the mapping information and k-mer information from long reads right now. Thank you for your opinion.