mahulchak / quickmerge

A simple and fast metassembler and assembly gap filler designed for long molecule based assemblies.
GNU General Public License v3.0
200 stars 31 forks source link

About option: -c #48

Closed MikaUhr closed 5 years ago

MikaUhr commented 5 years ago

Hi, Could you go into more detail on option "-c"?

-hco: controls the overlap cutoff used in selection of anchor contigs. Default is 5.0. -c: controls the overlap cutoff for contigs used for extension of the anchor contig. Default is 1.5.

According to the thesis, -hco=overlapping region/non-overlapping region

What is the difference between "-c" and "-hco"?

mahulchak commented 5 years ago

hco represents high confidence overlaps and used for seeding of the merging process. 'c' is used to filter out overall alignments. any alignment under 'c' will never be considered for merging. so 'hco' is a subset of 'c'.

MikaUhr commented 5 years ago

Sorry, I don't understand about 'c' yet. Is the formula of c the same as that of 'hco' (overlapping region/non-overlapping region)? if so, why is 'c' necessary? (In what kind of case is it used?)

mahulchak commented 5 years ago

c is measured in the same way as hco. In the comand, hco represents the c value that will be used for an alignment that will be used to seed a merging.

On Thu, Nov 7, 2019, 19:41 Mika notifications@github.com wrote:

Sorry, I don't understand about 'c' yet. Is the formula of c the same as that of 'hco' (overlapping region/non-overlapping region)? if so, why does 'c' need? (In what kind of case does it use?)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2FBEPUVI6YUKLQYKM3QSTNUNA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDOUFBA#issuecomment-551371396, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2CMWV7O25SUWNO5ZYLQSTNUNANCNFSM4JI4WB3Q .

MikaUhr commented 5 years ago

Thank you for your reply. I got it. Let me make sure I understand you correctly. you mean I don't need 'c' if I set 'hco'. (ex. c:1.5, hco:5 and c:5, hco:5 are same output)

mahulchak commented 5 years ago

no. it won't. c is used as a filter for all alignments. If an alignment does not pass the threshold of c, it will never be considered for merging. lets say you have n alignments and only m among them have c value > 1.5. so only m alignments will be considered for merging.

Among these m alignments, lets say you have x alignments which have c >5.0. so your merging will start at one of these x alignments.

On Fri, Nov 8, 2019 at 1:15 AM Mika notifications@github.com wrote:

I got it. Let me make sure I understand you correctly. you mean I don't need 'c' if I set 'hco'. (ex. c:1.5, hco:5 and c:5, hco:5 are same output)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2E4A7BSMYLQKTVMLHLQSUUZHA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDPHFCI#issuecomment-551449225, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2GDV2U7XCR33SB5AMLQSUUZHANCNFSM4JI4WB3Q .

-- Mahul Chakraborty Department of Ecology and Evolutionary Biology University of California-Irvine Phone: 949 824 9559 Fax: 949 824 9559 Website: https://mahulchakraborty.wordpress.com/ Github: https://github.com/mahulchak

MikaUhr commented 5 years ago

How do (m-x) alignments which have 1.5<c<5.0 affect merging?

mahulchak commented 5 years ago

That depends on the assembly. So you would be able to tell me better.

On Sun, Nov 10, 2019, 23:27 Mika notifications@github.com wrote:

How do (m-x) alignments which have 1.5<c<5.0 affect merging?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2F3NDU4KNQHOBDICDTQTECDBA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDV43QY#issuecomment-552324547, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2H5NYT7SZPLDT54IJ3QTECDBANCNFSM4JI4WB3Q .

MikaUhr commented 5 years ago

In the case of setting 'c': 1.5, 'hco':5.0, let's say 'Read A' are aligned to 'Read B' with c>5.0 and 'ReadB' are aligned to 'ReadC' with 1.5<c<5.0 so both alignments will be considered for merging. But eventually the alignment merged will be only 'A' and 'B'. ('B' and 'C' are not merged because of c<5.0) If so, I'm not understanding how the alignment of 'B' and 'C' will affect the merging.

Thank you for your many responses.

That depends on the assembly. So you would be able to tell me better. On Sun, Nov 10, 2019, 23:27 Mika @.***> wrote: How do (m-x) alignments which have 1.5<c<5.0 affect merging? — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#48?email_source=notifications&email_token=ABZQH2F3NDU4KNQHOBDICDTQTECDBA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDV43QY#issuecomment-552324547>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2H5NYT7SZPLDT54IJ3QTECDBANCNFSM4JI4WB3Q .

mahulchak commented 5 years ago

well, no. The merging process will be initiated at the A-B alignment (because c>5.0) and then it will be extended to C (because b-c alignment has c>1.5).

On Mon, Nov 11, 2019 at 12:43 AM Mika notifications@github.com wrote:

In the case of setting 'c': 1.5, 'hco':5.0, let's say 'Read A' are aligned to 'Read B' with c>5.0 and 'ReadB' are aligned to 'ReadC' with 1.5<c<5.0 so both alignments will be considered for merging. But eventually the alignment merged will be only 'A' and 'B'. ('B' and 'C' are not merged because of c<5.0) If so, I'm not understanding how the alignment of 'B' and 'C' will affect the merging.

Thank you for your many responses.

That depends on the assembly. So you would be able to tell me better. … <#m-6290509285976296181> On Sun, Nov 10, 2019, 23:27 Mika @.***> wrote: How do (m-x) alignments which have 1.5<c<5.0 affect merging? — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#48 https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2F3NDU4KNQHOBDICDTQTECDBA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDV43QY#issuecomment-552324547>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2H5NYT7SZPLDT54IJ3QTECDBANCNFSM4JI4WB3Q .

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2H3U4VTZDDOEINJSN3QTELHNA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDWCHHA#issuecomment-552346524, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2CO35ZA4D632SNC4EDQTELHNANCNFSM4JI4WB3Q .

-- Mahul Chakraborty Department of Ecology and Evolutionary Biology University of California-Irvine Phone: 949 824 9559 Fax: 949 824 9559 Website: https://mahulchakraborty.wordpress.com/ Github: https://github.com/mahulchak

MikaUhr commented 5 years ago

I think i got it... Is my interpretation correct below?

[Case1] A and B will be merged and then B and C will be merged also. image

[Case2] A and B will be merged but C will not be merged image

MikaUhr commented 5 years ago

I will correct a part of the previous one. In Case2, the alignment of A-B and C has c<1.5 not 1.5<c<5.0

mahulchak commented 5 years ago

Yup those look correct.

On Mon, Nov 11, 2019, 01:41 Mika notifications@github.com wrote:

I will correct a part of the previous one. In Case2, The alignment of A-B and C have c<1.5 not 1.5<c<5.0

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2CWPYJ3KRYUPCW6JJLQTESAZA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDWHIFQ#issuecomment-552367126, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2AU7ZGJUKY2HOAG53TQTESAZANCNFSM4JI4WB3Q .

MikaUhr commented 5 years ago

Thank you very much! @mahulchak

MikaUhr commented 5 years ago

I'm sorry, but I have a last question.

Does Quickmerge prioritize the higher score when aligned at the same position? If so, is there a case where merging is not possible even if alignment is c> 5.0 as shown below?

In the case as follow, I guess A and B will be merged first because 'c=10.0'(A-B) is higher than 'c=8.0' (B-C), and then A-B and C will not be merged because c<1.5. image

mahulchak commented 5 years ago

Yes. The last merging will not happen.

On Mon, Nov 11, 2019, 03:17 Mika notifications@github.com wrote:

I'm sorry, but I have a last question.

Does Quickmerge prioritize the higher score when aligned at the same position? If so, is there a case where merging is not possible even if alignment is c> 5.0 as shown below?

In the case as follow, I guess A and B are merged first because 'c=10.0'(A-B) is higher than 'c=8.0' (B-C) and then A-B and C will not be merged because c>1.5.

[image: image] https://user-images.githubusercontent.com/49222509/68582760-dca01f00-04be-11ea-899f-531c3ed4c7e3.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/mahulchak/quickmerge/issues/48?email_source=notifications&email_token=ABZQH2EVBOI2UVOQAWLQMRDQTE4XNA5CNFSM4JI4WB32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDWPLLI#issuecomment-552400301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZQH2F46D7VQK42S62C4FTQTE4XNANCNFSM4JI4WB3Q .

MikaUhr commented 5 years ago

Thank you for your prompt response !