两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于校正核酸序列數(shù)據(jù)中的引物延伸誤差的系統(tǒng)和方法

文檔序號:6453845閱讀:551來源:國知局

專利名稱::用于校正核酸序列數(shù)據(jù)中的引物延伸誤差的系統(tǒng)和方法
技術(shù)領(lǐng)域
:本發(fā)明涉及分子生物學(xué)領(lǐng)域。更特別地,本發(fā)明涉及校正由一般被稱為"合成測序"(SBS)(sequencing-by-synthesis)的技術(shù)生成的核酸序列數(shù)據(jù)中的誤差。
背景技術(shù)
:合成測序(SBS)—般是指用于確定核酸樣本中一個或多個核苷酸的特征或序列構(gòu)成的方法,其中該方法包括將單鏈的多核苷酸分子補體逐步合成為模板核酸分子,其中確定了核苷酸序列組成。例如,SBS技術(shù)一般是通過在相應(yīng)的序列位置上添加單一的核酸(也稱為核苷酸)核素到新多核苷酸分子補體以形成模板分子的核酸核素來操作。對新分子添加核酸核素一般是利用各種本領(lǐng)域公知的方法進行檢測,該方法包括,但不限定于稱作為焦測序或熒光檢測方法的方法,諸如那些采用了可逆終止子的方法。一般地,重復(fù)操作過程直到完成(即,表示了所有的序列位置)或合成了模板想要的序列長度補體(complementary)。SBS技術(shù)的一些例子在US專利No.6,274,320中描述,因此其全部內(nèi)容在此被引入作為參考用于所有用途;以及美國專利申請系列號為No.10/788,529;09/814,338;10/299,180;10/222,298;10/222,592,因此它們中的每一個的全部內(nèi)容在此被引入作為參考用于所有目的。在SBS的一些具體實施方式中,低核苷酸引物被設(shè)計成退火到樣品模板分子的預(yù)定的補充位置。引物/模板合成物在核酸聚合酶的存在下可能表現(xiàn)為核苷酸核素(nucleotidespecie)。如果核苷酸核素是對核酸核素的補充,那么聚合酶將用核苷酸核素延伸引物,其中核酸核素對應(yīng)于緊鄰低核苷酸引物的3'末端的樣品模板分子上的序列位置。或者,在一些實施例中,引物/模板合成物被立即呈現(xiàn)成多個感興趣的核苷酸核素(代表性的A,G,C和T),并且核苷酸核素被合并,該核苷酸核素是在緊鄰低核苷酸引物的3'末端的樣品模板分子上的對應(yīng)的序列位置的補充。在任何一個上述實施例中,核苷酸核素可以以化學(xué)方法被封閉(比如在3'-0位置)以防止進一步延伸,并且需要在第二輪合成前解除封閉。如上所述,核苷酸核素的合并可以通過本領(lǐng)域中已知的各種方法檢測,如通過檢測焦磷酸鹽(PPi)的釋放(在美國專利No.6,210,891;6,258,568;禾口6,828,100中描述的范例,因此每個范例的全部內(nèi)容在此被引入作為參考用于所有目的),或經(jīng)由綁定到核苷酸的可檢測的標簽。可檢測標簽的一些例子包括但不限于質(zhì)量標記和熒光或化學(xué)發(fā)光的標簽。在-一些典型實施例中,未合并的核苷酸會被移除,例如被洗滌。在可檢測的標簽被使用的實施例中,它們通常會在接下來的合成循環(huán)之前被失活(例如,通過化學(xué)的分裂或光致退色)。在模板/聚合酶合成物的下一個序列位置可以用另一個核苷酸核素或如上所述的多個感興趣的核苷酸核素查詢。核苷酸添加、引物延伸、信號獲取、和洗滌的重復(fù)循環(huán)導(dǎo)致模板鏈的核苷酸序列的確定。在SBS的典型的實施例中,很多或大量的基本上相同的模板分子(例如103,104,105,106或107分子)以任何一種測序反應(yīng)被同時分析,以便實現(xiàn)對于可靠的檢測足夠強的信號。為了低信噪比,需要在大量的給定反應(yīng)中與基本上所有模板分子有關(guān)的被稱作為未成熟分子的"均勻延伸"。如在此使用的術(shù)語"均勻延伸",一般指的是延伸反應(yīng)的關(guān)系或相位,在延伸反應(yīng)中上述的基本上相同的每一個模板分子在反應(yīng)中均勻地執(zhí)行相同的步驟。例如,每個與多個模板分子有關(guān)的延伸反應(yīng)可以被描述為當它們在相同的序列位置為每個相關(guān)的模板分子執(zhí)行相同的反應(yīng)步驟時處于同相或彼此相位同步。然而那些本領(lǐng)域中的普通技術(shù)人員將要理解,在每個群體中的小部分模板分子與群體中剩余的模板分子錯過或失去了相位的同步性(也就是說,與一部分模板分子有關(guān)的反應(yīng)或者超過,或者落后對群體進行的測序反應(yīng)中的其它模板分子(在Ronaghi,M.PyrosequencingshedslightonDNAsequencingGenomeRes.11,3-11(2001)中描述了一些例子,其全部內(nèi)容在此被引入作為參考用于所有目的)。例如,將-一個或多個核苷酸核素適當?shù)睾喜⒊蔀橐粋€或多個未成熟的分子用于延伸該序列一個位置的反應(yīng)的失敗,導(dǎo)致隨后的每個反應(yīng)處于在群體剩余的序列位置后的和與群體剩余的序列位置不同相的序列位置。這個效果在此稱為"不完全的延伸"(IE)??商鎿Q的,通過將一個或多個核苷酸核素合并到領(lǐng)先于和與群體其余的序列位置不同相的序列位置中而不適當延伸的未成熟分子在此被稱為"結(jié)轉(zhuǎn)"(CF)(carryforward)。CF禾口IE的綜合效應(yīng)在此被稱為CAF正。對于不完全延伸的問題,也許存在有一些可能的機制,其有助于可能單獨出現(xiàn)或在一些組合中出現(xiàn)的IE??赡艿挠兄谡龣C制的一個例子可以包括,缺少表現(xiàn)為模板/聚合酶合成物的子集的核苷酸核素。可能的有助于IE機制的另一個例子可以包括,聚合酶分子的子集沒有成功的合并核苷酸核素,該核苷酸核素被適當?shù)爻尸F(xiàn)用于合并成未成熟的分子??赡艿挠兄贗E機制的另--個例子可以包括在模板/聚合酶合成物中缺少聚合酶活動。至少部分地用于SBS方法中的IE誤差的又一個可能考慮機制的例子可以包括,由Metzger(GenomeRes.2005Dec;15(12):1767-76,其全部內(nèi)容在此引入作為參考用于所有目的)所述的所謂的循環(huán)可逆終止(CRT)。在CRT中,核苷酸核素具有修改的3'-0組(通常被稱為帽,保護組,或終止子),其防止在單個核苷酸核素合并之后未成熟分子的進一步延伸。這些保護組通過各種方法的一種被設(shè)計成可移動的,其中一種方法包括化學(xué)處理或光照處理。一旦3'-0位置去保護(以及3'-OH組創(chuàng)建),未成熟的分子可能通過另一個核苷酸核素被延伸。然而,當少許未成熟的分子保持受保護的狀態(tài)時,由于未完成的去保護效果(不完全的去保護)將會出現(xiàn)相位的異步。在隨后的循環(huán)中,這部分保持受保護的狀態(tài)的未成熟的分子將不會被延伸,因而將落后于群體剩余的序列位置并且與群體剩余的序列位置不同相。然而,隨后的去保護步驟可以成功地刪除已經(jīng)預(yù)先不正確保留的至少一些保護組,使延伸恢復(fù),并且從未成熟的分子中創(chuàng)建信號并且繼續(xù)與剩余的群體非相位同步。那些本領(lǐng)域中的普通技術(shù)人員將會理解,可能存在其它有助于正的因素,因而不局限于上面提供的例子。目前描述的本發(fā)明實施例的系統(tǒng)和方法旨在校正可能由任何這種單獨的或組合的原因或機制而產(chǎn)生的正誤差。例如,由不完全的去保護和隨后成功的去保護的結(jié)合所引起的正誤差的校正是本發(fā)明的一個目的。對于CF的問題,也許存在有一些可能的機制,其有助于可能單獨出現(xiàn)或在一些組合中出現(xiàn)的CF。例如,一個可能的機制可以包括從前一循環(huán)中剩余的過量的核苷酸核素。這種情況是可能出現(xiàn)的,這是因為在循環(huán)的未端執(zhí)行的洗滌協(xié)議將從循環(huán)中刪除大多數(shù)的但都是不必要的核昔酸核素。在本例子中結(jié)果可能包括存在于"G"核苷酸核素循環(huán)中的"A"核苷酸核素的小部分,如果互補的"T"核苷酸核素存在于模板分子中的對應(yīng)的序列位置則延伸未成熟分子的小部分。引起結(jié)轉(zhuǎn)效果的可能機制的另一個例子可以包括聚合酶誤差,諸如不適當?shù)暮喜⒑塑账岷怂爻蔀榕c模板分子上的核苷酸核素不互補的未成熟的分子。至少部分地用于SBS方法中的CF的又一個可能考慮機制的例子包括,如由Metzger(GenomeRes.2005Dec;15(12):1767-76,上述的合并作為參考)評述的循環(huán)可逆終止(CRT)。在本例子中,如上所述對于正也許采用對3'-0受保護的核苷酸核素的準備,其中核苷酸分子的一些部分將缺少保護組,或已經(jīng)丟失該保護組。保護組的遺失也可能出現(xiàn)在打算的去保護步驟之前的測序處理期間。任何這種去保護組的缺乏將導(dǎo)致一些未成熟的分子將由每次超過一個的核苷酸核素延伸。這種不適當?shù)膶?一小部分未成熟分子的多個延伸導(dǎo)致它們在序列位置中正向移動并且與群體剩余的序列位置不同相。因而,未被保護的核苷酸和/或過早去保護的核苷酸,可以至少部分地有助于包含CRT的SBS方法中的CF。目前描述的本發(fā)明實施例的系統(tǒng)和方法旨在校正可能由任何這種單獨的或組合的原因或機制而產(chǎn)生的CF誤差。例如,校正由于缺乏保護組而出現(xiàn)的CF誤差是本發(fā)明的一個目的。進一步,目前描述的本發(fā)明實施例的系統(tǒng)和方法旨在校正IE誤差和CF誤差兩者,其中兩種類型的錯誤可能出現(xiàn)在用于相同測序反應(yīng)中的群體的一些組合中。例如,每個IE和CF可能由如上所述的單獨的或組合的原因或機制產(chǎn)生。那些普通技術(shù)人員將要理解,對于IE和CF兩者誤差的可能性也許出現(xiàn)在延伸反應(yīng)期間每個序列位置,因而可能在最后所得到的序列數(shù)據(jù)中具有明顯的累積效應(yīng)。例如,該效果對于一系列測序反應(yīng)的末尾可能變得尤其顯著,其有時也被稱為"試驗"(run)或"測序試驗"(sequencingrun)。進一步,正和CF效果可以規(guī)定可以使用SBS方法可靠地測序的模板分子長度的上限(有時被稱為"讀取長度"),這是因為序列數(shù)據(jù)的質(zhì)量隨著讀取長度增加而減少。例如,SBS的一個方法可以在典型試驗中生成包括超過2千5百萬個序列位置的具有20或更多的被稱為"Phred"的質(zhì)量得分(20的Phred質(zhì)量得分推斷序列數(shù)據(jù)被預(yù)測為具有99%或更高的準確性)的序列數(shù)據(jù)。當對于SBS方法具有Phred20質(zhì)量的整個測序吞吐量顯著地高于由如采用毛細管電泳技術(shù)的Sanger測序方法的現(xiàn)有技術(shù)中眾所周知的那些生成的序列數(shù)據(jù)的吞吐量時,則對于SBS方法目前以基本'上較短的讀取長度為代價(Margulies等,2005,Nature437:376-80,因此其全部內(nèi)容在此被引入作為參考用于所有目的)。因而通過避免或校正由正和CF誤差產(chǎn)生的序列數(shù)據(jù)的降級增加讀取長度的上限將導(dǎo)致SBS方法的整個測序吞吐量的增加。因此,所希望的是提供旨在校正在通過核酸測序的合成測序方法產(chǎn)生的序列數(shù)據(jù)中的IE和/或CF誤差的系統(tǒng)和方法。多個參考文件援引在此,它們的整個公開在此引入作為參考用于所有的目的。進一步,無論上面如何表征,這些參考中沒有--個被認為是對在此請求保護主題的本發(fā)明的現(xiàn)有技術(shù)。
發(fā)明內(nèi)容本發(fā)明的實施例涉及確定核酸序列。更具體的說,本發(fā)明實施例涉及用于校正在由SBS對核酸進行排序期間獲得的數(shù)據(jù)中的誤差的方法和系統(tǒng)。描述一種用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的方法的實施例,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于信號的值;以及(C)利用第一參數(shù)和第二參數(shù)校正用于相位同步誤差的值。在一些執(zhí)行過程中,為模板分子的每個序列位置重復(fù)(a)-(c)步驟,并且每個被校正的值可以被合并到可以包括流程圖表示的模板分子的表示中。除此之外,一種用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的方法的實施例,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于信號的值;(C)并入該值到與模板分子序列關(guān)聯(lián)的表示中;(d)對每一個模板分子的序列位置重復(fù)步驟(a)-(c);(e)利用第一參數(shù)和第二參數(shù)校正表示中的相位同步誤差的每個值;以及(f)利用校正值生成校正表示。此外,一種用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的方法的實施例,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于信號的值;(C)并入該值到與模板分子序列關(guān)聯(lián)的表示中;(d)對每一個模板分子的序列位置重復(fù)步驟(a)-(c);(e)將該表示分成多個子集,其中每個子集包括模板分子的一個或多個序列位置;(f)估計每個子集中第一參數(shù)和第二參數(shù)的同步誤差;(g)利用每個各自子集的第一參數(shù)和第二參數(shù)的同步誤差估計校正每個子集中的用于相位同步誤差的每個值;以及(h)利用校正值將該校正子集組合成校正表示。另外地,描述了一個用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的系統(tǒng)的實施例,包括具有存儲在其上用于執(zhí)行的程序代碼的計算機,其執(zhí)行的方法包括(a)響應(yīng)測序反應(yīng)中一個或多個核苷酸并入生成檢測的信號值;以及(b)利用第一參數(shù)和第二參數(shù)校正相位同步誤差值。更進一步地,描述一個用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的系統(tǒng)的實施例,包括具有存儲在其上用于執(zhí)行的程序代碼的計算機,其執(zhí)行的方法包括(a)響應(yīng)測序反應(yīng)中一個或多個核苷酸并入生成檢測的信號值;(b)合并該值到與模板分子的序列關(guān)聯(lián)的表示中;(c)對模板分子的每個序列位置重復(fù)步驟(a)-(b);(d)利用第一參數(shù)和第二參數(shù)校正表示中的相位同步誤差的每個值;以及(e)利用校正值生成校正表示。此外,描述一個用于校正與從模板分子的基本相同副本的種群中產(chǎn)生的序列數(shù)據(jù)的相位同步相關(guān)聯(lián)的誤差的系統(tǒng)的實施例,包括具有存儲在其上用于執(zhí)行的程序代碼的計算機,該程序代碼執(zhí)行的方法包括(a)響應(yīng)測序反應(yīng)中一個或多個核苷酸并入生成檢測的信號值;(b)合并該值到與模板分子的序列關(guān)聯(lián)的表示中;(c)對模板分子的每個序列位置重復(fù)步驟(a)-(c);(d)將該表示分成多個子集,其中每個子集包括模板分子的一個或多個序列位置;(e)估計每個子集中第一參數(shù)和第二參數(shù)的同步誤差;(f)利用每個各自子集中的第一參數(shù)和第二參數(shù)的同步誤差估計來校正每個子集中的用于相位同步誤差的每個值;以及(g)利用校正值將該校正子集組合成校正表示。由本發(fā)明的實施例實現(xiàn)的優(yōu)點包括但并不局限于(a)序列數(shù)據(jù)質(zhì)量得到增加,從而得到實現(xiàn)想要級別的精確度的合意序列所需的更少的序列覆蓋深度;(b)有用的序列讀取長度被延伸,也就是說更高質(zhì)量序列數(shù)據(jù)可以從單次試驗中獲取;(C)因為有用的序列讀取長度被延伸,需要更少的試驗就能實現(xiàn)給定深度的序列覆蓋;(d)因為有用的序列讀取長度被延伸,需要更少的序列來組合跨越給定區(qū)域的序列contig;和(e)結(jié)果增加的讀取長度促進交疊讀取的組合,尤其是在重復(fù)的序列區(qū)域中。結(jié)合附圖,以上及其更多的特征將會被通過下列詳細的描述更清晰的理解。在附圖中,相同的參考數(shù)字代表相同的結(jié)構(gòu)、元件或方法步驟并且參考數(shù)字最左邊的阿拉伯數(shù)字表示參考元件初次出現(xiàn)的附圖的數(shù)字(例如,元件160最早出現(xiàn)在圖1中)。然而,所有這些協(xié)定,是典型性的或解釋說明性的,而不是限制性的。圖1是用于將"完美的"理論流程圖轉(zhuǎn)換為"不清晰的"(duty)觀察流程圖的數(shù)學(xué)模型的一個實施例的簡化圖形表示;圖2是圖1中映射模型反轉(zhuǎn)的一個實施例的簡化圖形表示-,圖3a是用于正向及反轉(zhuǎn)包含圖1和圖2中映射模型的矩陣計算的模型的一個實施例的簡化圖形表示;圖3b是采用圖3a正向模型的正向矩陣計算的一個實施例的簡化圖形表示;圖4a是采用圖3a反轉(zhuǎn)模型的反轉(zhuǎn)矩陣計算的一個實施例的簡化圖形表示;圖4b是利用不同級別的使用圖3a和4a的反轉(zhuǎn)模型的迭代(itemtwe)校正而得到的結(jié)果的一個實施例的簡化圖形表示;圖5是當前描述發(fā)明的CAFIE誤差校正方法的結(jié)果的一個實施例的簡化圖形表示;圖6是基本相同模板分子種群的樣本上分配參數(shù)值的一個實施例的簡化圖形表示;以及圖7是僅僅IE校正的效果和CAFIE校正效果的一個實施例的簡化圖形表示。具體實施例方式當前描述發(fā)明的實施例至少部分基于理論上或"完美"的流程圖可以通過IE和CF的數(shù)學(xué)模型被轉(zhuǎn)化為現(xiàn)實生活中可觀察的"不清晰"流程圖的發(fā)現(xiàn)。在這里使用的術(shù)語"流程圖"一般泛指,從測序試驗中產(chǎn)生的測序數(shù)據(jù)的表示,其可以例如包括測序數(shù)據(jù)的圖形表示。例如,完美的或者理論上的流程圖表示從測序試驗中產(chǎn)生的數(shù)據(jù),該測序試驗根據(jù)上述的CAFIE機制沒有誤差,或有其他類型的背景誤差。沿著相同的線不清晰的或可觀察的流程圖表示從測序試驗中生成的數(shù)據(jù),其中該測序試驗包括CAF正和背景誤差因素。在本例中,一些或所有誤差因素可以被準確近似和運用到完美的流程圖模型中,以提供從實際的測序試驗中得到的真實數(shù)據(jù)的表示。重要的是,當前描述的發(fā)明也至少部分地基于上面描述的數(shù)學(xué)模型的反轉(zhuǎn)可以從一個不清晰的可觀察流程圖中來近似完美理論流程圖的發(fā)現(xiàn)。然而,繼續(xù)上面近似誤差的例子可以應(yīng)用到在可觀察的流程圖中表示的實際測序數(shù)據(jù)中,從而形成具有可移除的所有或基本上所有的誤差因素的實際序列數(shù)據(jù)的完美或基本上完美的理論流程圖表示。本領(lǐng)域的普通技術(shù)人員將會理解,準確移除數(shù)據(jù)中的誤差會提供給所述數(shù)據(jù)更有效率和準確的解釋。因此,例如,從測序試驗中產(chǎn)生的數(shù)據(jù)中移除誤差會導(dǎo)致在從序列試驗中產(chǎn)生的序列中識別每個核酸核素的調(diào)用的更準確的產(chǎn)品,以及更高質(zhì)量的序列信息。當前描述發(fā)明的一些實施例包括用于分析在測序設(shè)備上的SBS測序試驗產(chǎn)生的數(shù)據(jù)的系統(tǒng)和方法。SBS設(shè)備和方法的一些例子可以使用可被稱為基于焦磷酸鹽的測序方法,其可能例如包含一個或多個檢測裝置例如,電荷耦合裝置(CCD)照相機,微射流室,樣品帶盒托座,或泵和流量閥。以基于焦磷酸鹽的測序為例,設(shè)備的實施例可以使用化學(xué)發(fā)光作為檢測方法,該化學(xué)發(fā)光對于焦磷酸鹽測序產(chǎn)生內(nèi)在的低分貝的背景噪音。在本例中,用于測序的樣品帶盒托座可以包括所謂的"鉻尖晶石托盤",它是由一個酸腐蝕的纖維光學(xué)面板形成的,以產(chǎn)生成百上千的非常細小的井(well),每個井能夠容納大量的基本上相同的模板分子。在一些實施例中,基本上相同的模板分子的每個群體可以被布置在固體襯底上,如珠子,每個珠子可以布置在所述井之一中。繼續(xù)本例子,設(shè)備可以包括試劑傳送元件,用來提供液體試劑到鉻尖晶石托盤支架上;和CCD類的檢測裝置,能夠收集從鉻尖晶石托盤上每個井中射出的光子。更多的用于執(zhí)行SBS類測序和焦磷酸鹽測序的設(shè)備和方法例子在美國專利申請序列號No.l0/767,779;11/195,254中有描述,因此這兩個文件的全部內(nèi)容在此被引入作為參考用于所有目的。更進一步的,當前描述發(fā)明的實施例的系統(tǒng)和方法可以實施為存儲在計算機可讀介質(zhì)上,以用于在計算機系統(tǒng)上執(zhí)行。例如,下面詳細描述了一些實施例,以處理和校正使用在計算機系統(tǒng)上可實現(xiàn)的SBS系統(tǒng)和方法檢測的信號中的誤差。計算機可以包括任何類型的計算機平臺,如工作站、個人計算機、服務(wù)器、或任何當前或未來的計算機。計算機通常包括己知的部件如處理器、操作系統(tǒng)、系統(tǒng)內(nèi)存、存儲器存儲裝置、輸入輸出控制器、輸入輸出裝置、和顯示裝置。相關(guān)領(lǐng)域中的那些普通技術(shù)人員應(yīng)當理解,計算機可能會有很多可能的配置和部件,并也可能包括高速緩沖存儲器、數(shù)據(jù)備份單元、和很多其他裝置。顯示裝置可以包括提供可視信息的顯示裝置,此信息一般可以被邏輯地和/或物理性地組織為像素陣列。也可以包括界面控制器,界面控制器可以包括任何類型的用于提供輸入輸出界面的已知或未來的軟件程序。例如,界面可以包括一般被定義為"圖形用戶界面"(一般稱作GUI)的界面,圖形用戶界面提供給用戶一個或多個圖形表示。界面通常能夠接受用戶使用本領(lǐng)域中那些普通技術(shù)人員已知的選擇或輸入裝置進行的輸入。在相同或可替換的實施例中,計算機上的應(yīng)用程序可以采用包括被稱為"命令行界面"(經(jīng)常稱為CLI)的界面。在應(yīng)用程序和用戶之間,CLI通常提供基于文本的交互。典型的,命令行界面通過顯示裝置顯示輸出和接收輸入作為文本行。舉個例子,一些實現(xiàn)方法可以包括所謂的"殼",如本領(lǐng)域中的那些普通技術(shù)人員已知的UmxShells,或MicrosoftWindowsPowershell,其采用面向?qū)ο箢愋偷木幊腆w系結(jié)構(gòu)例如Microsoft.NETframework。本領(lǐng)域普通技術(shù)人員將要理解,界面可以包括一個或多個GUI,CLI或它們的組合。處理器可以包括商業(yè)上可用的處理器如英特公司生產(chǎn)的Itaniun^或奔騰處理器,SunMicrosystems公司生產(chǎn)的SPARC⑧處理器,AMD公司生產(chǎn)的AthalorT或OpteronTM處理器,或它也可以是一個正在或?qū)⒁兂煽梢允褂玫钠渌幚砥?。處理器的一些實施例也可以包括所謂的多核處理器和/或能夠在單核或多核配置中采用并行處理技術(shù)。例如,多核結(jié)構(gòu)一般包括兩個或多個處理器"執(zhí)行核"。在當前例子中,每個執(zhí)行核可以以作為能夠并行執(zhí)行多個線程的獨立處理器執(zhí)行。另外,本領(lǐng)域中的那些普通技術(shù)人員將會理解,處理器可以被設(shè)置成一般所謂的32或64位結(jié)構(gòu),或其他現(xiàn)在已知或?qū)頃婚_發(fā)的體系結(jié)構(gòu)。處理器一般運行操作系統(tǒng),例如,操作系統(tǒng)可以是微軟公司的\¥11^)0\^3@型操作系統(tǒng)(如WindowsXP或WindowsVista);蘋果電腦公司的MacOSX操作系統(tǒng)(如7.5MacOSXv10.4"Tiger"或7.6MacOSXvl0.5"Leopard"操作系統(tǒng));Unix或Linux型操作系統(tǒng)可以從很多賣主或所謂的公開渠道得到;其它或未來的操作系統(tǒng);或它們的一些組合。操作系統(tǒng)通過公知方式與固件和硬件接口,并且?guī)椭幚砥髡{(diào)整和執(zhí)行各種能以各種編程語言寫入的計算機程序的功能。操作系統(tǒng),一般和處理器協(xié)作,協(xié)調(diào)和執(zhí)行計算機其他部件的功能。操作系統(tǒng)同樣也提供進度表、輸入-輸出控制、文件和數(shù)據(jù)管理、存儲管理、以及通信控制及相關(guān)服務(wù),所有的都依照已知的技術(shù)。系統(tǒng)存儲器可以包括任何類型的已知或未來的存儲器存儲設(shè)備。例子包括任何一般可以獲得的隨機存取存儲器(RAM),磁介質(zhì)例如駐存硬盤或磁帶,光學(xué)介質(zhì)例如讀和寫光盤,或其他存儲器存儲設(shè)備。存儲器存儲設(shè)備可以包括任何類型已知的或未來的設(shè)備,包括光盤驅(qū)動、磁帶驅(qū)動、可移動硬盤驅(qū)動、USB或閃存、或磁盤設(shè)備。這種類型的存儲器存儲設(shè)備一般讀自和/或?qū)懭氲匠绦虼鎯橘|(zhì)中(未示出)例如,分別為光盤、磁帶、可移動硬盤、USB或閃存或軟盤。這些程序存儲介質(zhì)中的任何一個或其他現(xiàn)在使用的或也許以后會開發(fā)的可以視為計算機程序產(chǎn)品。如所希望的,這些程序存儲介質(zhì)--般存儲計算機軟件程序和/或數(shù)據(jù)。計算機軟件程序,同樣稱為計算機控制邏輯,一般被存儲在系統(tǒng)存儲器中和/或用于連接存儲器存儲設(shè)備的程序存儲設(shè)備中。在一些實施例中,計算機程序產(chǎn)品被描述為包括計算機可用介質(zhì),該計算機可用介質(zhì)具有存儲在其中的控制邏輯(計算機軟件程序,包括程序代碼)。該控制邏輯,當由處理器執(zhí)行時,使得處理器執(zhí)行這里所述的功能。在其他實施例中,一些功能主要由使用例如硬件狀態(tài)機的硬件實行。執(zhí)行硬件狀態(tài)機以便執(zhí)行這里所述的功能對于本領(lǐng)域相關(guān)技術(shù)人員來說將是顯而易見的。輸入-輸出控制器可以包括任何類型的已知的用于接收和處理來自用戶信息的設(shè)備,該用戶無論是人還是機器,無論是本地的還是遠程的。這樣的設(shè)備包括,例如調(diào)制解調(diào)器卡、無線卡、網(wǎng)絡(luò)接口卡、聲卡、或用于任何類型已知輸入設(shè)備的其他類型的控制器。輸出控制器可以包括用于向用戶顯示信息的任何類型的已知顯示設(shè)備的控制器,該用戶無論是人還是機器,無論是本地還是遠程。在當前描述的實施例中,計算機的功能元件通過系統(tǒng)總線彼此相互通信。計算機的一些實施例可以利用網(wǎng)絡(luò)或其他類型的遠程通信與一些功能性的元件互相通信。正如相關(guān)領(lǐng)域的技術(shù)人員顯然得知的,工具控制和/或數(shù)據(jù)處理應(yīng)用,如果用軟件執(zhí)行,則可以被載入并從系統(tǒng)內(nèi)存和/或存儲器存儲設(shè)備中執(zhí)行。所有或部分工具控制和/或數(shù)據(jù)處理應(yīng)用同樣可以駐留在只讀存儲器中或類似于存儲器存儲設(shè)備的設(shè)備中,這樣的設(shè)備不要求工具控制和/或數(shù)據(jù)處理應(yīng)用通過輸入-輸出控制器被首先加載。相關(guān)領(lǐng)域技術(shù)人員將要理解的是,工具控制和/或數(shù)據(jù)處理應(yīng)用或它們的一部分可以由處理器以公知的方式被載入到系統(tǒng)內(nèi)存中,或高速緩沖存儲器中,或二者中,作為執(zhí)行的優(yōu)勢。同樣,計算機可以包括存儲在系統(tǒng)內(nèi)存中的一個或多個庫文件、試驗數(shù)據(jù)文件、以及互聯(lián)網(wǎng)客戶。例如,試驗數(shù)據(jù)可以包括與一個或多個試驗或分析相關(guān)的數(shù)據(jù)比如檢測信號值,或其他與一個或多個SBS試驗或處理相關(guān)聯(lián)的值。此外,互聯(lián)網(wǎng)客戶可以包括能利用網(wǎng)絡(luò)訪問另一個計算機上的遠程服務(wù)的應(yīng)用,例如可以包括所謂的"Web瀏覽器"。在當前例子中一些通常使用的web瀏覽器包括從NetscapeCommunications公司獲得的Netsc叩e⑧8丄2,從Microsoft公司獲得的MicrosoftInternetExplorer7,從Mozilla公司獲得的MozillaFirefox2,從Apple計算機公司獲得的Safan1.2,或技術(shù)人員現(xiàn)在已知的或?qū)砜赡荛_發(fā)的其他類型的web瀏覽器。此外,在同一實施例或其他實施例中,互聯(lián)網(wǎng)客戶可以包括(或可能成為一個元件)專用軟件應(yīng)用程序,該專用軟件應(yīng)用程序使得能經(jīng)由網(wǎng)絡(luò)例如SBS應(yīng)用所使用的數(shù)據(jù)處理應(yīng)用來訪問遠程信息。網(wǎng)絡(luò)可以包括一個或多個本領(lǐng)域普通技術(shù)人員所熟知的不同類型的網(wǎng)絡(luò)。例如,網(wǎng)絡(luò)可以包括使用通常所說適用于通信的TCP/IP協(xié)議的局域或廣域網(wǎng)。網(wǎng)絡(luò)可以包括具有彼此互連的計算機網(wǎng)絡(luò)的世界范圍系統(tǒng)的網(wǎng)絡(luò),其一般稱之為互聯(lián)網(wǎng),或還可以包括各種內(nèi)聯(lián)網(wǎng)設(shè)施。相關(guān)領(lǐng)域普通技術(shù)人員將可以理解網(wǎng)絡(luò)互連環(huán)境中的一些用戶可以最好使用一般所說的"防火墻"(有時候也稱為包過濾器,或邊界保護設(shè)備)來控制與硬件和/或軟件系統(tǒng)的信息交換。例如,防火墻可以包括硬件或軟件元件或其中的一些組合,并且一般被設(shè)計為用戶可以加強安全規(guī)則,例如用于即時的網(wǎng)絡(luò)管理等。SBS實施例的例子一般使用添加到如上所述的模板分子中的核苷酸核素的連續(xù)或迭代的循環(huán)。這里這些循環(huán)也被稱為"流"(flow)。例如,在每個流中,或者四個核苷核核素中的一個,A,G,C或T被表示(例如,對于焦磷酸鹽(PPl)測序法);或者四個所有的核苷酸核素一起被表示為模板-聚合酶合成物(例如,用于使用與每個核苷酸核素相關(guān)的不同標簽的測序方法)。繼續(xù)當前例子,一個流可以包括在序列位置處模板分子中的核苷酸核素的核苷酸核素補體,該序列位置緊鄰于正被合成的未成熟分子的3'末端,其中核苷酸核素被合并到未成熟分子中。在當前例子中,核苷酸核素的合并可以以光信號(如,光信號可以例如包括從發(fā)光或熒光處理中產(chǎn)生的光)或其他信號如質(zhì)量標簽的形式被檢測到。在每個核苷酸核素的流的迭代中,洗滌方法是通過去除沒有被并入的剩余的核苷酸核素和試劑來實施的。在完成洗滌階段之后,下一個流的迭代表示到模板聚合酶合成物的另一個核苷酸核素,或核苷酸核素的混合體。在一些實施例中,"流循環(huán)"指加起來的或者迭代或者并行的四個核苷酸核素,其中例如一個流循環(huán)包括所有四個核苷酸核素的總和。當繪制了一個流程圖,每個流的檢測光或其它信號的值可以是大約零(意味著流中的核苷酸核素不是下一個序列位置處模板中核苷酸核素的補體,因而未被合并),或大約1(意味著檢測到剛好合并一個核苷酸核素補體到模板中的核苷酸核素中),或者大約大于1的整數(shù)(意味著檢測到在模板中并入了兩個或多個在流互補的兩個連續(xù)核苷酸核素中出現(xiàn)的核苷酸核素的副本)。如上所述,重復(fù)系列流的理論結(jié)果導(dǎo)致從每個流的信號應(yīng)該正好為零,或整數(shù)并且表示在完美流程圖中。盡管不同的試驗變量包括CF和IE機制,通過改變數(shù)量,真實檢測的信號趨向于圍繞著這些期望的理論值波動。包括這個變量的被檢測信號表示為不清晰的或觀察的流程圖。這里術(shù)語流程圖和熱解圖是可以相互交替使用的。術(shù)語"完美流程圖","干凈流程圖"和"理論流程圖"在這里也可以交替使用。術(shù)語"不清晰的流程圖","現(xiàn)實生活流程圖"和"可觀察的流程圖"在這里也可以交替使用。另外,如這里所用的,"讀"一般是指從單個核酸模板分子或多個基本上相同模板分子的副本的群體中獲得的整個序列數(shù)據(jù)。"未成熟的分子"一般是指通過合并作為模板分子中對應(yīng)核苷酸核素補體的核苷酸核素,正在由依賴于模板的DNA聚合酶延伸的DNA鏈。這里使用的術(shù)語"完成效率"是指在給定流中被完全延伸的未成熟分子的百分比。這里使用的術(shù)語"未完成延伸率"通常是指未能完全延伸的未成熟分子的數(shù)目和所有未成熟分子數(shù)目的比率。如上所述的發(fā)明的一些實施例校正每個流被檢測的信號,以考慮如上所述的CF和正機制。例如,發(fā)明的一方面包括對任何已知序列計算相位同步損失的范圍,假設(shè)CF和正的級別已知。表格1,如下所示,提供了用數(shù)學(xué)法模型化的提供99%或更高準確度的正和CF的閨值的例子(如,讀至少99%表示了模板分子的真實序列)用于不同的讀取長度。在表1中表示的預(yù)測值舉例說明了對于各種讀取長度在排序精確度上的CF和IE效果的影響和可以忍受的以實現(xiàn)近似99%的讀取精確度的IE和CF誤差的范圍。表1示出了對于不正確的讀取,不大于P/。CF率是可以允許的(假設(shè)IE對于此群體等于零),以為了大約100個序列位置達到99%準確度的讀取長度(即,99%或更高的完成效率)。此外,不超過0.25。/。的IE率是允許的(假設(shè)CF率等于零)以為了成為99%準確率的大約100個序列位置的讀取長度。表格l.導(dǎo)致在不同讀取長度下99%準確性的預(yù)測的誤差率<formula>formulaseeoriginaldocumentpage20</formula>將要理解的是,表格1表示的值是為了解釋目的,而不應(yīng)該被認為限制目的。本領(lǐng)域中的那些普通技術(shù)人員將會理解,一些因素可能有助于值的變化性如染色體或參考序列和其他的用于說明預(yù)測的參數(shù)。例如,SBS方法典型的實施例通常達到CF比率的范圍從1-2%,而正比率的范圍從0.1-0.4%(例如,完成效率范圍為99.6-99.9%)。如上所述,校正CF和正是合意的,這是因為損失的相位同步對于讀取長度有累積效應(yīng),并且隨著讀取長度增加降低了讀取的質(zhì)量。在一個當前描述的發(fā)明的實施例中,表示CF和IE兩者的值被假設(shè)成在基本上相同模板分子群體的整個讀取期間是基本上不變的,該群體例如是駐留在鉻尖晶石系統(tǒng)的單個井中的模板分子的群體。這允許在整個讀取期間使用兩個簡單參數(shù)"未完成延伸"和"結(jié)轉(zhuǎn)"而不用任何模板分子的實際序列的現(xiàn)有技術(shù)對每個序列位置進行數(shù)字校正。當前描述的本發(fā)明實施例的系統(tǒng)和方法在確定和校正出現(xiàn)在模板分子群體中的CF和正的數(shù)量時是有用的。例如,本發(fā)明的實施例為駐留在每個井中的基本相同的模板分子的每個群體,校正從每個流中檢測的信號值,以考慮CF禾卩IE本發(fā)明的實施例模擬缺少相位同步作為非線性映射。方程(1):M(p,e,X)=q其中-M是CAFIE映射-p是假設(shè)的"完美"流程圖[如陣列]-入是完成效率參數(shù)-e是結(jié)轉(zhuǎn)參數(shù)-q是"不清晰的"流程圖[如陣列]理論上的"完美"流程圖可以通過使用在方程(1)中給出的映射模型公式被轉(zhuǎn)化為現(xiàn)實生活的"不清晰的"流程圖以估計正和CF。用于這種映射公式的模型可以如下方式產(chǎn)生,例如,通過測序具有己知序列的多核苷酸模板分子來分析被提供給可觀察流程圖(q)的誤差。在方程(1)中給出的數(shù)學(xué)模型的例子可以在圖1中舉例說明。例如在圖1的左手邊,理論上的流程圖101是理論上的(完美或理想的)流程圖(p)的舉例說明的表示,其中示出在相鄰其相關(guān)的核苷酸核素的括號中描述的理想化的信號強度值。理論流程101的每個理想化的值是整數(shù)或零。在當前例子中,"1"的值代表由單個核苷酸并入得出的100%檢測的信號強度,"0"代表0%信號(例如,在一個井中包含1百萬個基本上相同模板分子的群體和1百萬個未成熟分子,"l"代表當每個未成熟分子被單獨的核苷酸延伸時得到的信號,"2"代表當每個未成熟分子被兩個核苷酸延伸時得到的信號等)。在圖1的右手邊,可觀察的流程103是一個從觀察的(或模擬的不清晰的)流程圖(q)中檢測到的信號強度值的形象表示。同樣的,流程103中的每個信號強度值在緊挨著它的相關(guān)核苷酸核素的括號中描述。同樣在圖1右手邊是流105,其提供表示與核苷酸核素和信號值(如,流105的每次迭代代表在洗滌處理后核苷酸核素的增加物)相關(guān)的迭代流序列的代表性的數(shù)。例如,在圖1中說明的流1與在所述的流105的迭代中介紹的"C"核苷酸核素相關(guān),并且對應(yīng)于理論流101和可觀察的流103兩者的信號值。在圖1例子中,用于每個流105迭代的在理論流程圖101和可觀察的流程圖103之間的信號強度值中的區(qū)別至少部分表示相位同步的損失。例如,在可觀察的流程圖103中代表的信號值不是整數(shù),而是每個更典型的稍微更高或稍微更低于在對于流105相同迭代的理論流程圖101中代表的理想值。表示為"M"的映射模型IIO可以用已知參數(shù)113的值進行估算。例如,參數(shù)113包括e(結(jié)轉(zhuǎn))參數(shù)和A(完成效率)參數(shù)。參數(shù)113可以被采用以估算映射模型110,并將理論流程圖(p)101的信號值轉(zhuǎn)換成觀察值(q)103。在當前例子中,由映射模型110表示的誤差值隨著流105的每次迭代而積累,并且會成指數(shù)增長。繼續(xù)上述例子,由誤差值表示的誤差可以在理論上隨著每個流成指數(shù)增長。例如,在流迭代后,跟基本上相同模板分子的每個群體相關(guān)的相位同步測序反應(yīng)會成為三種不同的相位同步子群體。該子群體包括相位同步反應(yīng)的第一子群體,其中流中的核苷酸核素能夠恰當?shù)牟⑷朐诟0宸肿酉嚓P(guān)的適當?shù)男蛄形恢蒙?例如,沒有CAFIE效果);相位同步反應(yīng)的第二子群體,其中根據(jù)CF機制不恰當?shù)牟⑷胍呀?jīng)發(fā)生并且反應(yīng)是在相對于第一群體的序列位置之前;和相位同步反應(yīng)的第三子群體,其中根據(jù)IE機制不恰當?shù)牟⑷胍呀?jīng)發(fā)生,并且反應(yīng)是在第一群體的序列位置之后。在當前例子中,在下個流迭代中,三個子子群體將會從如上所述的三個子群體的每個子群體中形成,等等。本領(lǐng)域那些普通技術(shù)人員將會理解,在第n個流迭代中,就會有3n相位同步反應(yīng)的群體,每個在流n會產(chǎn)生信號。進一步繼續(xù)上述例子,圖2提供了反轉(zhuǎn)在圖2中表示的映射模型110的示例性表示作為反轉(zhuǎn)映射模型210。例如,通過為參數(shù)113估計校正值(如用于e(結(jié)轉(zhuǎn))和入(完成效率)參數(shù)這兩者的值),觀察流程圖(q)103的信號值被反轉(zhuǎn)回來,以提供理論流程圖(p)101的信號值。本領(lǐng)域相關(guān)技術(shù)人員將會理解,圖1和2中表示的信號值被提供僅僅用于舉例說明的目的,寬范圍的信號值也是可能的。因此這不應(yīng)該被認定為限制。本發(fā)明的一些實施例在下面概述的兩連續(xù)的階段(i)和(ii)中執(zhí)行反轉(zhuǎn)映射對于每一個核苷酸核素流i:(i)-通過核苷酸核素的添加延伸未成熟的分子<formula>formulaseeoriginaldocumentpage23</formula>對于所有J都有Nj=Ni并且Pj>0(H)-通過從前一個添加中剩余的核苷酸核素延伸未成熟的分子<formula>formulaseeoriginaldocumentpage23</formula>對于所有J都有Nj=Ni-1并且Pj〉0其中-pi是在第i個核苷酸核素流處的理論(干凈)流信號值-qi是在第i個核苷酸核素流處的觀察的(不清晰的)流信號值-mi是在對于第i個核苷酸核素流的流序列位置上可供并入的核苷酸核素分子的一小部分-N1,是第,個核苷酸核素添加(A,C,G或T)-(JJ')是指數(shù)對,使得在流上Pj,是Pj的下一個絕對值映射模型按照流對流的形式進行這些計算(例如,迭代流105)和通過階段(i)和(ii)遞歸式地更新觀察流程圖(q)和部分模板分子m。圖3a提供為矩陣計算采用的模型的示例性例子。例如下面將會進行更詳細的描述,正向矩陣模型310可以被采用以獲得反轉(zhuǎn)矩陣模型320。在當前例子中,使用反轉(zhuǎn)矩陣模型320進行矩陣運算可以被采用以得到對參數(shù)113的估算。譬如,參數(shù)113的各種值可以被運用到矩陣計算和評估觀察流程圖103的匹配程度。典型的,提供最匹配觀察流程圖(q)103的參數(shù)113被認為是對參數(shù)113的實際值的好的估算。另外,圖3b提供一個用正向矩陣模型310的正向矩陣計算的示例性的例子。在當前例子中,可觀察的流程圖(q)103是由用參數(shù)113的矩陣計算產(chǎn)生的,參數(shù)113包括完成效率值入=0.95和結(jié)轉(zhuǎn)值e-0.05。與矩陣的流105的迭代相關(guān)的每行記錄了對每個核苷酸核素流的遞歸階段G,n)的操作和結(jié)果。方程(1)和遞歸階段(i,")可以被重寫為矩陣-陣列操作方程(2)[M^")"p-q其中_[^10)''£^)]是矩陣-*是矩陣陣列乘法-p'=sgn(p),是理論或"完美"流的二進制編碼(例如,圖1中的流p,p-是(設(shè)置-理論)反轉(zhuǎn)矩陣使用迭代法來解決反轉(zhuǎn)方程(3),圖3a中圖示為反轉(zhuǎn)矩陣模型320,來獲得理論流(p)101用于每個讀取。對于CAFIE反轉(zhuǎn),用給定的參數(shù)對113(e,A)來執(zhí)行這種迭代方程(4):p(n")^[M"(p'(n)'e,X)]*q其中p"n^sgn(pW-閾值)以及p①三q被用作為計算的依據(jù)。該閾值依賴于系統(tǒng)的信噪比率。和圖3b相似,圖4a提供了用反轉(zhuǎn)矩陣模型320反轉(zhuǎn)矩陣計算的示例性例子。在當前例子中,理論上干凈的流程圖(p)101從觀察的不清晰的流程圖(q)103中產(chǎn)生,其使用了包括完成效率值lambda^0.95和結(jié)轉(zhuǎn)值epsilon=0.05的參數(shù)113。例如,在一個執(zhí)行中,可以使用固定值,即閾值=0.2。在這樣一個執(zhí)行中,當流程圖值P大于0.2的時候,二進制編碼流程圖P'編碼值"1",和當流程圖值p小于或等于0.2時編碼值"0"。在當前例子中,閾值0.2是信噪比率的估計??商鎿Q的,一些執(zhí)行方法可以采用在區(qū)間0和1的閾值,如0.05,0.1或0.3。因此,對于給定的參數(shù)對113(e,A),"不清晰的"觀察的流程圖(q)103可以通過方程(4)被反轉(zhuǎn)回干凈的"完美"理論流程圖(p)101。在很多執(zhí)行中,一般情況下流程圖執(zhí)行的單次迭代就足夠了。在一些執(zhí)行中,執(zhí)行2,3或更多的流程反轉(zhuǎn)迭代是所希望的,其中隨著每次迭代,流程圖表示的準確性得到提高,尤其是對更長的讀取長度,直到以想要的質(zhì)量在解決方案上計算收斂。在優(yōu)選的實施例中,可以為了計算效率而執(zhí)行流程圖反轉(zhuǎn)的一次迭代或二次迭代。同樣,用計算機代碼實現(xiàn)的本發(fā)明的一些實施例可以允許使用者選擇一定量的迭代來響應(yīng)于用戶選擇而執(zhí)行和/或系列執(zhí)行每次迭代。例如,用戶可以使用本領(lǐng)域中已知的方法如在GUI中顯示的一個或多個欄或選擇按鈕中輸入值來執(zhí)行選擇。在當前例子中,使用者可以輸入表示迭代數(shù)目的值來執(zhí)行和/或使用者可以選擇按鈕來執(zhí)行本發(fā)明的迭代。另外,使用者可以選擇數(shù)據(jù)質(zhì)量的指示,其中本發(fā)明迭代直到數(shù)據(jù)質(zhì)量的級別達到滿意為止。圖4b提供了一個使用方程4的方法在連續(xù)次的迭代后結(jié)果如何可以被提高的示例性的例子。粗流程圖410示例了--個具有參數(shù)值113的觀察的流程圖(q)103的實施例,其包括來自核苷酸核素增加物的336流迭代的完成效率值人=0.997和結(jié)轉(zhuǎn)值e=0.03,每次迭代由流條409表示。例如,每個流條409是核苷酸核素流的代表,每個核素可以由條409的顏色或圖案特別表示。另外,和每個流相關(guān)的被檢測或校正的信號值由與由信號強度405給定的比例相關(guān)的條409的高度表示。本領(lǐng)域中的那些普通技術(shù)人員將會理解,在粗流程圖410中對于流條409的信號強度405的值有很大程度的多樣性,尤其讀取長度大于與由讀取長度407給定的比例相關(guān)的50序列位置。換言之,大多數(shù)的流條409的信號值不包括整數(shù)的信號值。流程圖420的兩個迭代示例了在用發(fā)明實施例校正的兩次迭代之后觀察的流程圖(q)103的相同實施例。對流條409的信號強度405的一致性得以提高,尤其是對于讀取長度407位置105或更少的流條409。相似的數(shù)據(jù)質(zhì)量的提高分別在4次迭代流程圖430和8次迭代流程圖440中展示,其中流程圖440示例了基本上所有流條409顯示一致性和整數(shù)值。在一些實施例中,對于參數(shù)113的估算值可以用方程(4)確定。例如,完成效率參數(shù)(A)的最合適值可以通過使用方程(4)輸入用于完成效率參數(shù)不同的值同時使用CF參數(shù)固定值執(zhí)行測試計算來確定。在當前例子中,值入=1,0.999,0.998,…,0.990,和固定CF值e^可以被連續(xù)使用并且每次得到結(jié)果。在不同的實施例中,在輸入A值之間的0.001的間隔可以被其他間隔取代,例如,間隔值0.05,0.01,0.005,0.001,0.0005,0.0001,等等。繼續(xù)當前例子,如果對于流條409在計算的理論流程圖(p)中任何信號值405在用輸入值A(chǔ)解方程(4)后落在零以下,那么那個人值將被宣布為最合適的完成效率參數(shù)值。一旦決定了最合適值入,那么用后續(xù)的更小A值將會導(dǎo)致所謂的"過于合適"和產(chǎn)生人工-負的流信號。同樣在當前例子中,對于在表示均聚物的長系列的流條409(例如,一系列的序列位置包括同樣的核苷酸核素)之后的序列位置的一些流條409的被校正信號值405可能落在零以下。這個零交叉點可以被展示在圖5中的橢圓形503中,之后最合適完成效率會被表示成入'。同樣,在一些實施例中,CF的效果可以用類似方法得到。例如,CF參數(shù)值可以被測試,譬如,其可以包括值e=0,0.0025,0.005,0.0075,0.01...,0.04和在前面得到的值A(chǔ)*處固定的完成效率參數(shù)入。這在圖5中舉例說明,如步驟2—3,其中橢圓形503指示起始點2(e,人)=(0,入*)。在當前例子中,在輸入值e間的0.0025間隔表示用于舉例說明的目的,并且可被其他更小的間隔值取代,例如,間隔值0.05,0.01,0.005,0.001,0.0005,0.0001,0.00001,等等。如果在使用輸入值e解答方程(4)之后(例如,在沿著入路徑搜索期間,流條409的任何信號值405不同于落到零以下的流條409的信號值405),在計算的理論流程圖(p)中任何流條409的信號值405落到零以下,然后那個e值被宣布為最佳匹配CF參數(shù)值。一旦決定最佳匹配值e,用后面更大的值將會導(dǎo)致過佳和人工產(chǎn)生負的流信號。同樣在當前例子中,在表示均聚物的長系列流條409之前的序列位置處的一些流條409的被校正信號值405可能落到零以下。這個零交叉點可以在圖5橢圓形505中示出,最佳匹配CF可以在以后被表示成e*。圖5提供了一個示例性范例,例如,橫坐標代表完成效率軸520,縱坐標代表CF軸510。在橢圓形501,503和505中的圖像每個代表上述步驟并包含示出3個信號的流的示例性部分。譬如,中央條代表主信號條537,兩側(cè)是左次要信號(CF條535)和右次要信號(IE條533)。橢圓形501示例了原始可觀察流程圖(q)103的步驟,其主信號條537被相位異步縮小,CF條535和IE條533的次要信號代表由相位異步造成的噪音。橢圓形503代表當IE己經(jīng)被校正的步驟,其中與正條533a相關(guān)的信號被消除,中央主信號條537相應(yīng)地增加。如上所述,IE已經(jīng)被校正的點例如包括最佳匹配完成效率參數(shù)的零交叉點并表示為A'。橢圓形505代表了CF已經(jīng)被校正的更進一步的步驟,其通過消除與CF條535a相關(guān)的信號來舉例說明,并且中央主信號條537相應(yīng)地增加。如上所述,CF已經(jīng)被校正的點可以例如包括最佳匹配完成效率參數(shù)的零交叉點并被表示為e*。橢圓形505表示校正結(jié)果,其近似于理論的、期望的流程圖,其中已經(jīng)基本上移除了歸因于相位異步誤差的噪音。因而,因為CF和IE的數(shù)量和潛在的模板分子序列p事前是未知的,因此本發(fā)明的方法可以被使用在完全的再次分析模式。不需要聚合酶并入效率(即,A)或核苷酸洗滌的有效性(即,e)的現(xiàn)有知識;也不需要任何需要執(zhí)行反轉(zhuǎn)的參考核苷酸序列。在一些實施例中,上述的參數(shù)估算查找過程通過階段(i,ii)在每個輸入查找間隔e和A處構(gòu)建了矩陣[M],其從計算效率的角度進行限制。這種限制可以至少部分地通過使用在矩陣構(gòu)建操作上的近似值進行克服。例如,可以避免在每個搜索間隔上重新構(gòu)建矩陣,從而很大程度提高了計算速度。兩種方法如下所述方法1在小的e值和(l-入)上(例如,(l-入)<=0.001且e《0.0025),矩陣[M]被分解,且近似于形式方程(5):+"〗)""~m+ra["]其中-卩]是相同矩陣。-卩]和M是[L]和[U]各自的非對角矩陣。這說明了計算矩陣冪的旁路階段,且因此提供了進一步的加速(例如,減少)計算時間。該(S7,4)中的搜索空間現(xiàn)在包含所有正實數(shù)。該最匹配的小"被定義在零交叉條件下;對應(yīng)的完成效率和CF參數(shù)是<formula>formulaseeoriginaldocumentpage29</formula>。這里提供的實施例是基于構(gòu)建和反轉(zhuǎn)矩陣,和在(e,A)平面中的二維搜索以探測CAFIE參數(shù)的理想對。在基本上相同的模板分子的每個群體上進行這些計算,這些計算例如可以包括在鉻尖晶石類系統(tǒng)中的逐井分析。在一些實施例中,為每個群/井構(gòu)建一個矩陣以產(chǎn)生理想的CAF正值(Z,A"。圖6提供了示例性的例子,其中在一些成百上千群體/井603的樣品中分配完成效率參數(shù)605值A(chǔ)*和CF參數(shù)607值e如通過使用如上描述的反轉(zhuǎn)/查找方法1計算的。使用上述方法2計算,其需要比方法1更少的計算時間,可以提供類似結(jié)果。上述的實施例同樣可以假設(shè)在整個測序試驗中跟恒定的完成效率入和CFe參數(shù)相關(guān)的比率保持恒定。此假設(shè)可以通過將CAFIE查找和反轉(zhuǎn)程序應(yīng)用到包括幾個流循環(huán)(這里"幾個"是指在1和流循環(huán)的總數(shù)之間的任何整數(shù))的流程圖中的所謂的"流窗口"上而減輕。例如,每個流窗口是流程圖中表示的全組流循環(huán)的子集,具有一對需要被發(fā)現(xiàn)的CAFIE參數(shù)和相對應(yīng)的干凈的理論流程圖101。在當前例子中,每個流窗口被排列以便它從與測序試驗相關(guān)的流程圖中的第一個流開始并且在某個短于或等于流程圖中的流循環(huán)的全長的流處結(jié)束,其中每個更小的流窗口套入在大一點的窗口中。對于每個流窗口n來說,查找和反轉(zhuǎn)處理獨立發(fā)生以產(chǎn)生一組CAF正參數(shù)113,該CAFIE參數(shù)U3現(xiàn)在是窗口索引n的功能^"'(")andV=同樣被套入的計算的干凈理論流程圖101,p(n),是這些依賴于索引n的CAFIE參數(shù)的變量值的結(jié)果。"縫紉"處理p二p(n)用于窗口(n-l)和n間的流,將流窗口序列p(n)重新組合成最終干凈的流程圖(p)101。在同樣的或可替換的實施例中,人和e恒定值的假設(shè)可以用另一種方法消除。例如,對于每個核苷酸核素增加物"N"("A","G","C",或"T"),完成效率入和CFe參數(shù)可以假設(shè)成參量的形式,如指數(shù),并且作為流位置的功能"f,(1,2,3,……)EN(f)=eVexp(-pN*f).其中-入W(f)是第f個流上核苷酸核素"N"的完成效率-eN(f)是第f個流上核苷酸核素"N"的CF-入%和e、是初始值-5n禾Qpw是衰減率。搜索方法被應(yīng)用在4個參數(shù)空間中,^W'^肌Sw和pN,來確定最佳值。另外,本領(lǐng)域那些普通技術(shù)人員將會理解其他不與描述的CAFIE機制相關(guān)的噪音源也可以存在。這些噪音源可以包括但不局限于,電子源如所謂"暗流"、光源、生物源、化學(xué)源或其他本領(lǐng)域已知或?qū)砜赡馨l(fā)現(xiàn)的源。當前描述的本發(fā)明的一些實施例可以展示對其他噪聲源改變的敏感程度,在很多應(yīng)用中,該敏感程度可以是基本上一致的和/或可預(yù)知的級別。例如,對于歸屬于已知和未知來源的可預(yù)見的和一致級別的噪音通常很容易校正。其中一種校正法是通過數(shù)學(xué)加和減來自于與流相關(guān)的所有信號值中的與噪音相關(guān)的值(取決于是否噪音添加超出信號或減小檢測的信號)。在一些實施例中,噪音級別是不可預(yù)測的,至少部分不可預(yù)測,可以從嵌入在信號數(shù)據(jù)中的信息中獲得噪音級別的估算值。例如,對于已知的或預(yù)測不在序列位置上的核苷酸核素,期望實際信號值應(yīng)該等于零。所以,任何檢測到的信號應(yīng)該歸屬于系統(tǒng)內(nèi)所有噪音的來源。在當前例子中,因為當前描述的發(fā)明估計噪音形成CAFIE機制,因此這種噪音可能從數(shù)據(jù)或顯示的潛在噪音中去除。在當前例子中,估算可以通過考慮測序試驗中所有的"零-最大有效生產(chǎn)率"(zero-mer)序列位置來改進。在此情況下,在二進制編碼p'方程(4)中的"閾"值可以被每個試驗動態(tài)確定,以表示它的噪音級別,而不是在上述之前的實施例中描述的一個固定值。甚至于,本發(fā)明的一些實施例可以包括那些所謂的"安全標準"用以防止在觀察的流程圖中表示的序列數(shù)據(jù)的過度校正。如上所述,過度校正可能造成隨著所述算法迭代引入的誤差上的指數(shù)累積。例如,上面描述的其他噪音源可以確定包括將被使用在信號數(shù)據(jù)上的校正量的安全標準。例如,一些執(zhí)行方法可以假設(shè)來自于其他無CAFIE源的給定級別的噪音,并且將所謂的60%校正度(例如,100%意味著完全校正)的安全標準應(yīng)用給數(shù)據(jù)。此估算運用"混合"流程圖,"0.6p+0.4q",包含60%的計算的干凈流程圖p和40M的觀察的不清晰流程圖q。可替換的,如果無CAFIE噪音在"低"級別上,則可以應(yīng)用更高百分比的校正,例如80%。例1在454生命科學(xué)基因組測序器上對金黃色葡萄球菌COL和生殖支原體的基因組進行鳥槍法測序(Margulies等,2005,結(jié)合上述內(nèi)容作為參考)。圖7提供了一種在基因組覆蓋范圍上僅僅IE校正和CAFIE校正的效果的例證性的例子,校正共有序列、介質(zhì)讀取長度、和具有對超過125個序列位置的讀取長度實現(xiàn)100%準確度的井的百分比。通過這些措施中的每一個措施,CAFIE校正優(yōu)于單獨的正校正。單獨的IE校正優(yōu)于在沒有校正的情況下實現(xiàn)的結(jié)果。在準備陣列之前,具有控制序列的珠子被準備與試驗樣品分離和混合。通過使用以上流程,63循環(huán)試驗的平均讀取長度從112序列位置增加到147序列位置,該147序列位置靠近63循環(huán)或252流迭代的理論最大值(例如每個流循環(huán)包括4個核苷酸核素流迭代)。平均起來,在4個核苷酸添加的每個循環(huán)中,通過相乘流循環(huán)的數(shù)目在這種情況下是63和被延伸的序列位置的數(shù)目(2.5)計算理論最大值63x2.5=157.5(理論最大值)。147序列位置平均的讀取長度通過映射流程圖到已知的基因組序列來確定,在流循環(huán)上具有95%的精確度。進一步,在此公開的是,使用上述方法1的四個示例性的由如上所述的數(shù)據(jù)處理應(yīng)用執(zhí)行的偽碼計算機程序,艮口(1)buildTransitionMatrixIEOnly.c構(gòu)造用于不完全延伸的轉(zhuǎn)移矩陣(2)buildTransitionMatrixCFOnly.c構(gòu)造用于結(jié)轉(zhuǎn)的轉(zhuǎn)移矩陣(3)cafieCorrectOneNukeTraceFastTMC2.c反轉(zhuǎn)在(l)中計算的轉(zhuǎn)移矩陣,并且搜索正值(4)cafieCorrectOneNukeTraceFastCarryForwardOnly.c反轉(zhuǎn)在(2)中計算的轉(zhuǎn)移矩陣,并且搜索CF值輸入是用于每個讀取的不清晰的流程圖和流順序(核苷酸添加);輸出是干凈的流程圖和最佳值(e*,人')。將要理解的是,這些偽碼計算機程序僅僅是例證性的,并且各種修改和變化落入本發(fā)明的范圍內(nèi)。由此可見提供了方法和系統(tǒng)用于校正在核酸測序期間獲得的序列數(shù)據(jù)中的誤差。盡管具體的實施例已經(jīng)在此詳細地公開,但這只是為了例證說明起見舉例來說,并不意味著對于隨后附加的權(quán)利要求范圍迸行限制。具體來講,可以進行各種替換,改變和修改而不會脫離正如權(quán)利要求所定義的本發(fā)明的精神和范圍。其它方面、優(yōu)點、和修改被認為是落入下列權(quán)利要求的范圍之內(nèi)。提供的權(quán)利要求書表示這里公開的發(fā)明。其它未經(jīng)要求保護的發(fā)明也可以被預(yù)期到。在此保留在以后的權(quán)利要求中追加本發(fā)明的權(quán)利。計算機程序清單計算機程序清單1:buildTransitionMatrixCFOnly"FunctionName:buiJdTra"sitionMatrixCFOn,yDescription-Thisflmeti加generatesasquarematrixforagivennukesignaltraceandg"enextensioncompletionefficiencyandcarryoverfactor.fnputs:n細Posi"vescanryOvsr**Outputs:numberofnulceflows"Returns:"nonen腦berofpositiveflows-dhnesionofthematrix-extensioncompletionefficiency-carryoverfactorNxNmatrix,whereNisthe"FunctionDeclarations"EntryPoint'voidbuildTransitionMatrixCFOnly(structlistTrack,'ng*nukeTraceList,doublecarryover,int*numPositives,int"positives,int"ca,lab,es,double***outputMatrix)"Variabledeclarations/staticcharfunctionName="buikiTransitionMatrixCFOn,/';staticinttraceLevel-TRACE—LEVEL—8;intHstError'inti:intj;intinde^intnumPositives;intnumNukeFiows;i'TitnumSoFar;intunCondensedlndex;int*indexljintindex!Num=0;intindex2N訓(xùn)-0;structwe"Info**index2Fbws;BOOLsequence已nded;doubleeff-1.0;doubledf;doublemaxMarginalValue;inttestMarginallndex;structwelInfo,歸xMarginainow;double*fractionAtEachFlow;釘USE—DELTA—BUFFERdoubk*deltaFractionAtEachFlow;#endifdouble"fMjdouble"condensedMatrix:structwe川nfo吖romNukeList;structweUInfo豐fromPosUst;stmctwelHnfo*prcvMukeInfoNULL;BeginExecutableCodetraceln(fimctionName,traceLevel);/爭**GetthenumberofnukeflowsnumNukeFlows-HstGetCoimt(加JceTraceList,AtoError);*pos,'tives=index1-safeMalloe(sizeof(int),numNukeFlows);callables=inde)t2=safeMalloc(sizeof(int)*numNukeFlows);index2Flows-safeMalloc(sizeof(stnjctwcUlnfo*)*numNukeFlows);Getthenumberofpositivenukeflows鎖#endif**AllocatespaceforarectangularmatrixofdiTnension:"miirtNukeFlowsxnumPositives*/fMrasafeMalloc(numNukeFlows*sizeof(double*));for(i=O,sequenceEnded=FALSE;i<n畫NukeF,ows;fM[i]=safeMalloc(numNukeFlows*sizeof(double));fromNukeList=listGetAt(nulceTraceList,i,&list&Tor);if(fromNukeList->signal>TMC_LOWER_CUTOFF)fMi[i〗=1.0;indent(index1Num=i;indexlNurtvf+.'if(fromNukeList->signal>TMCJJPPER—CUTOFP).index2[index2Num]=i;index2F,ows[i油x2Num〗fromNukeUst;產(chǎn).**Chec)ctomakesurethiswouldn'tbethreenegativesinarow"whichwilltotallyhose叩thecorrection.Sinceweknowwc"keypassdon'tworryabout仏cboundrywithnopositivesFORCE—CALLSif((i-indexllindexlNum-l]^503)&&!sequenceEnded)***Promotethehighestvauefromindexl[indeclNimi-l]"Htoitoa0.2positive*/.maxMarginalIndex=index1[indexINum-1]+l;fromNiikeList^h'sKUetAt(nuIceTraceList,nmxMarginalli)dex,&listETTor);maxMarginalValue=fromNukeList->sigrml;for(test"arginallndexmaxMarginallndex+l;比stMarginaHndex<邊i;teMMarginallndex++)《fromNukeList-listGetAt(nukeTraceList,tcstMarginaHndex,&'istError);if(fVomNukeList->signa,>maxMarginalValue)maxMargina,Value-fromNukeUst->signal;maxMarginallndextestMarginalndex;fM[maxMarginailndex[maxMarginalIndex}=1.0;#endifindexIfindex1Num]=maxMarginal'ndex;indexINum++;if((i-index2[index2Num-l"3)&&!s叫uenceEnded){"Promotethehighestvaluefromindejd[,'nciexWum-IJ"Htoitoa0.5singletmaxMarginallndex-index2[index2NiimvO]+l->fromNukeList=lislGetAt(nukeTraceListjmaxMarginallndex'&listError);maxMarg^nalVa,ue=frcmiNukeList》signa,;maxMargina,F(xiàn)low=fromNukeUst;for(,estMarginalIndex=maxMarginallndex+1;testMargina,Index<=i;testMarginaUndex++><formula>formulaseeoriginaldocumentpage37</formula><formula>formulaseeoriginaldocumentpage38</formula>fi:actionAtEachFlow(j+l]+=df;Sendif#ifUSE—DELTA一BUFFERfor(jo;j<index2Num;j++>fractionAtEachFlow[j+=dehaFractionAtEachFlow[j];#endif,*Secondpasscalculatescarryforward(i>0)/if(i>0)#ifUSE—DELTA—BUFFERmemset(dehaFractionAtEachFlow,O,sizeo《double)*index2Nuni);#endiffor(j=■0;j<index2Num;j++)fromPosList=indeJi2Flowslj];unCondensedlndex。index2(j];>fluidFlowed)#ifUSE—DELTA—BUFFERrfendif#ifUSE_DELTA_BUFFER#else/tendif、<if(prevNukelnfo->fluidF,owed==fromPosList-df=fractionAtEachnow(jcanyOver;deltaFractionAtEachFlow[j)df;fractionAtEachF,ow[jdf;闊i][imCondensedlndex]=df;if(j!-(index2Num-I))《deltaFractionAtEachFlow(j+lJdf;fractio7iAtEachFlow(j十ldf;USE—DELTA—BUFFERfor(j:fractionAiEachFlowU]+^deUaFraetionAtEachFlow[j];"TruncatetocondensedspaceWfDUMPJNFOf^rintf(stdeix,"%s-WholematrixaftercalculationW',fiincrionName);for(i=0;i<:numNukeFlovvs;i++>{for(j=0;j<numNukeFlows;j++)fjjrintf(stderr,"\t%.4ir',,][j:|);frrintf(stderr,"W');—tf(stderr,"%s-EFF-'%lf,CF-'%,fV,functionName,eff,caiTyOver);for(i=0;i<indexINum;fromPosUst=KstGetAt(nukeTraceList'indexi],&listError>;fj>rintf(stderT,"\t%.4ir,fromPosList->signal);fi5iintf(stderr,'"W');#endifindex=0:for(i=0;i<index1Num;<for(j=0;j<indexINum;j++)ctmdensedMatrixi][j〗=呵indexli]][indexl肌#ifDUMP—INFO——tf(stderT,"、t。/"lf",c。ndensedMatrix[i[j]);#endif)#ifDUMP—INFOfjsrintf(s,derr,"W');#endifsafeFree(fractionAtEachFlow);糾fUSE—DELTA—BUFFERsafeFee(deltaFractionAtEachFlow);safeFree(index2Flows);if網(wǎng)for(i=0;i<叫mNukeFlows;i4~f)幼feFree(fMi]);safeFree(fM);traceOut(fuiK"onName'iraccLeYel);rctunr'計算機程序清單2:buildTransitionMatrix正Only<formula>formulaseeoriginaldocumentpage41</formula>EntryPointvoidbuiWTransi"onMatrixlEOnly(structlistTrackingukeTraceList,doub,eeff,int*numPositfves,int"positives,int*numCaUables,int"callables,double"outputMatrix)Variabledeclarationsstaticcharfimc"onNanie[)-"buUdTransitionMatrixIEOnly";staticint歐eLevel-TRACE—LEVEL—8;ntHstError;nti;nt_j;ntindex;ntn師Positives;intnumNiikeFlows:ntnumSoFar;ntunCondensedlndex;doubtemaxMarginalValuc;intmaxMarginallndex;inttestMarginallndex;structwelllnfo*maxMarginalFlow;iiU"ndex,jintindexINimi-0;structwel,hifo"indexlFlows;int■"irtde"''intindex2Num=0;structweinnfo"mdex2Flows;doubledf;double*fractionAtEachn。w;BOOLsequenceEnckd;#iftJSJE一DELTA一BUFFERdouble*dehaF"ractionAtEachFlow:double"condensedMatrix;structwelllnfo*fromNulceList;structwelllnfo*fromPosUst;structwelllnfo*prevNu)ceInfb'.BeginExecutableCode<table>tableseeoriginaldocumentpage43</column></row><table>fromNukeList=h'sK3etAt(nukeTraceListirnaxMarginallndex,&,istError);maxMaTgirmlValue-fromNukeList->signal;maxMarginalFlow-fromNukeList;for(test&argjnaUndex-niaxMai"ginalIndex+,;testMarginallnckx<o,';testMarginal,ndevM")行omNukeList=,islGetAt(nukeTraceList,teslMar—allndex,&listError);if(fromNukeList->signa>maxMarginalVa,ue)maxMarginalValue-fromNukeList》signal;maxMarginalFlow=fromNukeList;haxMargina,IndextestMargi"allndex;》#if0fM〖maxMarginanndex][maxMarginallndex-1.0;#endifindexI[index1Num]=nrnMarginalJudex;indexlhows[indexiNumj=m狄MarginalHow;if((i-index2[index2N訓(xùn),1〗=3)&&!sequenceEnded)《*Promotethehighestvaluefromindex1[index1N咖-1]+1toitoa0.2singletmaxMarginaHndex。index2[index2Num-l]+l:fromNujceList-listGetM(TiukeTraceLi5t,niaxIVIarginaHndex,&li5tError);maxMarginalValue-froniNukeList->signa,;maxMargina,F(xiàn),ow=fromNukeList;for(testMarginallndex=maxMarginal!ndex+,;testMarginallndex<=i;testMarginanndex++)《fVomNukeList=HstGetAt(nukeTraceList,testMarginalIndex,&listError);if(fromNukeLisl)signa,>maxMarginalValue)m狄MaTginalValuefromNukeList-:>signahmaxMarginallndex=testMaTginallndcx;maxMarginalFlowfromNukeLisl;if(maxMarginalValue>TMC—TOOJLOWJTO—FORCE)index2limJex2NumJ=ma^MarginalIndex;index2flows[inde^Nuni]-maxMarginalFlow;elsesequenceEnded=TRUE:#endif**Returnthenumberofcallablesandpositives,/numCallablcs=■ind"2N師;*numPositives=indexlNum;condensedMatrix=safeMalloc(sizeof(double*)*indexlNum);outputMatrix=condensedMatrix;for(i=0;i<indexINum;i++)comJensedMahrix[i〗^safeMalloc(indexlNum,sizeof(double));>糾fDUMPJNFOfor(i=0;i<index1Num;印rimf(stderr,"o/os"nciexlpos'%cT\t'%dVj",func"onName,i,indexli]);一tf(stderr'V);for(i-0;i<index2Num;i")印rimf(suleiT,"%s-index2pos'o/odV^d^VnVimcticmName,i,index2[i]);fprintf(stderr'"Xn");fprinlf(slderr,"%s-WholematrixbeforecalculationW',fimc"onName);for(i==0;i<mimNukeFk)WS;i"H")for(j=0;j《n師NukeF,o、vs;j++)fi)rinlf(stderr,"、t。/。.4ir,卿](j]);fijrintf(stderr,"Vi");#endif**Setallmatrixelementstozerofor(i=0;i<indexIN圓;i++)for(j=0;j<index1Mum:j++)ui][j=0.0;tfendif**AllocatespacetoholdincorporationinfofractionAlEachFlow。safeMalloc(index1Num*sizeof(double));#ifUSE—DELTA—BUFFERdeltaFractionAtEachFlow=safeMalloc(index1Num*sizeof(double));#endiffractionAtEachFlow[O]=1.0;for(i=0;i<mimNukeFlows;i++)/,*FirslpassofpositiveTraceListcalculatesincompleteextention/fromNukeList='istGetAt(nukeTraceList,i,AlistError);#ifUSE—DELTA—BUFFERmemset<deltaFractionAtEachFlow,0,sizeofl[doublc)*indc3c1Nuni);#endiffor(j=0;j<:index1Num;j++)fromPosList=index)F,owsjj];unCcmdensedlndet=index1[j;Pif(fromNulceList">fluidFlo\vedfromPosList-〉fluW,owed)df=fractionAtEachFlow[j*eff;#ifUSEJDELTA^BUFFERdekaFractionAtEachFlow[j*=*df;fracrionAtEachFlow[j)df;#endiffM[i][unCondensedlndex]-df;if(j!-(indexNmn-1》#ifUSE—DELTABUFFER—""deltaFraction八tEachnow[j"H〗—df;存e,sefractionAtEachFk>w[j+l]十-df;#endif弁ifUSE—DELTA—BUFFERfor(j=°0;j<index)Num;fractio7iA促achFlow[j]deHaFractionAtEachFlow[j];}**TruncatetocondensedspaceV#ifDUMP_INFO<formula>formulaseeoriginaldocumentpage47</formula><table>tableseeoriginaldocumentpage48</column></row><table><formula>formulaseeoriginaldocumentpage49</formula>traceln(ftmcrionName,加ceLevel);/*"Ass師ewewillbeok/牟error-ANALYSIS—OK;"、*Buildthetransitionmatrix.SetthecarryoverparametertozeroandusetheeffMax/bui,dTransitionMatricIEOnly(nukeTraceList,cffMsx,&numPositives,&positives,&numCaHables,&condensedMatrix);numFbws="listGetCo加t(nukeTraceUst,&listError);/爭**Ifthere,renotenoughnumber(1/4oftotalflows)ofpositives,"wewon'tdoanythingif(numCallables<=0.25rmmF,ows)《gotobye;,,PopulateUandholdacopyinanarrayTtukeSignals-safeMalloc(numPositives*sizeof(double));for(i-0;i<numPositives:welllnfo,istGetAt(nukeTraceUst,posi"ves[i,&listErTor);if(,istError!=LIST一OK)fprintf(errorOut','%s-Errorgetting%d-thwelllnfofromimkeUstAn"i);error-listError,gotobyejmikeSignals卩=welInfo->signal;"Allocatespaceforacopyofnukesignalsb-safeMaHoc(numPositives*sizeof(doub,e));s叩erDirtySignals=sa化Malloc(numPositives*sizeof(double));newSuperDirtySignals=safeMalloc(numPositives*sizeof(double));for(i-0;i<numPositives;<formula>formulaseeoriginaldocumentpage51</formula>加wSuperDirtySigna化[i)=newVai;/**Swapthepoimere*/tempDubPnewSuperDirtySigna,s;newSuperDirtySignalssuperDirtySignals;superDirtySignals-tempDubP;/**Seeifwehaveanynegativevalues.Thisistheindicatorthatwe**havecorrectedenough.n則Pos"WcD-Ojfor(i=0;i<加mPositives;i++)《if(b[i]<0,0)n圃PositiveEH"+:break;/*'*Ifwehaveapositivecountthenitistimelojumpintotheactual*,correctionphase'/if(numPositiveD>0)maxD=fabs(b[O-nukeS—als〉;for(i=1;i<numPositives;i卄)if(maxD<fabs(b[i]-nukeSignals[i]))《maxD-fabs(bi-nukcSigna則);)*niaxQ-fabs(superDirtySigna,s[O-r>ukeSignals);if(maxQ<newVal)maxQ-newVa,;lambda=0.8*maxQ/maxD;if('ambda>1.0)lambda-1.0;ConstructthenewnukesignalsfVomsolutionfor(i-0;i<numPositives;=nukeSigna剛+lambda*(b[i-nu!ceSignals[i);5Correctedsignals加keSignalsi〗=xi;Wefoundthebestefficiency,won'ttrymorestageseffidencyUsed=bestEff-eff;breakjIfwedidn'tfmdthebestefficiency,wewon'talternuketrace*/if(bestEff=0.0)gotobyej/**/Nowmakethechangeofficialintheoriginalnuketracefor(i=0;i<numPositives;i++)well,nfo-listGetAt(nukeTraceList,posirives[i,&listError);if(listError!=LlSTOK〉<一fi)Tintf(errorOut,"%s-Errorgetting%d-thwelllnfofromposi"veTraceList.\n",functionName,error=listError'gotobye;#ifDO一CORRECTIONwelllnfb">signal=nukeSignals[i];if(welUnfo->signal<0.0)welHnfb">signal=0.0;#endifbye:**Freeupspacx*/if(positives)safeFree(positives);if(callables〉safeFree(ca'lables);if(nukeSignals)safeFree(nukeSignals);if(superDirtySigna,s)safeFree(s叩eDirtySignals);if(newSuperDirtySignals).safeFree(newSuperDirtySignals);if(indx)safeFree(indx);if(b)safeFree(b);safeFree(x》for(i=();'<numPositives;if(condensedMatrix&&condensedMatrixi])<safeFree(condensedMatrix[i]);ifOionLuCondensedMatrix&&nonLuCondensedMatrixi])safeFree(nonLuCondensedMatrix[i);if(condensedMatrix)safeFree(咖densedMafrix);if(nonLuCondensedMatrix)safeFree(加nLuCondensedMatrix)jtraceOut(fUnctionName,traceLevel);retum(efficiencyL)sed);計算機程序清單4:cafieCorrectOneNukeTraceFastTMC2**FunctionName:ca行eCorrectOneNukeTracePastTMC2Description:ThisfunctionreadsinanukepyrograminfomiarionHstandperfoCAFIECorrectiontoit.Inputs:Outputs:error-errorvalueInput/Outputs:nukeTraceUst-binaryweHtracelistReturns:none"Includes+#include<cafieCommons.h>#defmeTEST0FunctionDeclarationsGlobalDeclarationsexternFILE*errorOut;EntryPointdoublecafleCorrectOneNulceTraceFastTMC2(structistTracldng*mikeTrac6Ust>int+error〉VariabledeclarationsstaticcharfunctionName[]-"cafieCorrectOneMukeTraceFastTMC2"staticinttrac化evel-TRACE—LEVEL—8;inti;intj;intlistCm;intindexjintlistError;intnumFlows;intn訓(xùn)Callab,es;intn畫Positives=0;int*indx-NULL;doubleeffMax-0.999;doublee綱ns(),卿;doublenewVal;doublebcstEff;doubleeff;doubleefficiencyUsed=1.0;doublesumfdoublecarryOver;doublelambda;doublem狄D;doublemaxQ;doublenumPositiveD;doubled;double爭nukeSignalsNULL;double*supeTDirtySignais15NUL乙;double*nevvSuperDirtySignals-NULL;double*tempDufc>P;double*x-NULL;double*"NULL;double"condensedMatrix=NULL;double"nonLuComJensedMatrix-NULL;int*positives=NULL;int,callables-NULL;stnictwe,Hnfb*welllnfb;BeginExecutableCodetrace,n(ftmctionName,traceLevel)j"Assumewewillbeokerror-ANALYSISJ)JC;BuiJdthetransitionmatrix.SetthecarryOverparametertozeroandusetheeffMax/buiIdT柳siticmMatrixlEOnIy(mikeTraceList,cffMax,&numPositives,&positives,&numCallables,&condensedMatrix);加mFlows-listGelCoimt(rmkeTraceList,&hstEn*or);〃**Ifthere,renotenoughnumber(1/4oftotalflows)ofpositives'**wewon'tdoanything,/if(numCaHables<-0.25*munFlows)gotobye;**PopulateitandholdacopyinanarraynukeSigna,s=safeMalloc(mmiPositives*sizeof(double));for(i0;i<numPositives;i~H>)welllnfo=listGetAt(nukeTraceList,positives[i],&listError);if(listError!=LISTOK){*"flsrintf(errorOul,"%s-Errorgetting0/od-lhwelllnfofromnukeList.\n"*/functionName,i);*error-HstError,gotobye:Allocatespaceforacopyofnukesignalsb=*safeMal,oc(numPositives*sizeof(double));superDirtySignals5^safeMalloc(numPositiyes*s,'zeof(double));newSuperDirtySignalssafeMalloc(n圃Positives*sizeof(double));for(i=0;i<numPosirivcs;i付〉s叩erDirtySignals[i=b[i]=nukeSigna,s[i;**AUocatespaceforthesearraystobeusedforsolvinglinear"equationsindx■*safeMa,,oc(n師Positives*sizeof(int));x-safeMalloc—mPositives*Sizeof(double》;nonLuCondensedMatrix=safcMalloc(mimPositi'Yes*si湖f(double");for(i=0;i<numPositives;i++)nonLuCondenscdMatrix(i〕safeMalloc(numPos"ives+sizeof(double));for(j-0;j<numPositives:j++)(...nonLuCondensedMatric〖i][j〗KcondensedMatrix[i][j];/**Wewillsolvealinearsystemofform:AX=B,whereAwillbeu,**Xwillbethesolutionvector,andBisinitiallynukeSignals,,*afterwards'hwillstorethesolutionvector,吖#ifDO_LU_DECOMPOSmONif(!luDecomposition(condensedMatrix,numPositives,indx,&d))'error=ERR_CAFlE_NONJNVERTABLE_MATRIX;gotobye)/MaintrunkoftheCondensedMatrixAlgorithmbelowisaloop"processtosearchforthebestextensionefficiencyparameterbestEff=0.0;化r(eff=effMax;effeffMin;efi"-0.001)**ApplythematrixtransformluBackSubstitution(condensedMatrix,numPositives,indx,b);/**Alsocreatethenew,dirtierpyrogram爭/for(i=0;i<nuinPositives;<newVal=0.0;for(j=0;j<numPositives;j++)《JnewValnonUiComknsedMatrix[i(j*superDirtySignals[j;)newSuperDirtySigna,si]=newVa,;/"SwapthepointersVtempDubP-newSuperDirtySignals;newS叩erDhlySigna,sms叩erDirtySigna,s;s叩erDirtySignalsratempDubP;/+Seeifwehaveanynegativevalues.Thisistheindicatorthatwehavecorrectedenough.VnumPositiveD-0;for(i0;i<numPosi"ves;i++)if(b[i]<0.0)numPositiveD++;break;**Ifwehaveapositivecountthenitistimetojumpintotheactual"correctionphaseif(numPositiveD>0)maxD=fabs(b[O]-nukeSignals[O]);foT(i=1;i<numPosirives;i++)if(maxD<fabs(b[i〗-nukeSignals[i]))maxD==fabs,-nukeSignals[i]);maxQ=fabs(superDirtySignals[O-nukeSignals[O]);for(i=,;,<numPosirives;newVal=fabs(s叩erDirtySignals[i-nukeSignals[i]);if(maxQ<newVal)maxQranewVal;>lambda。0.8*maxQ/maxD;if(lambda>1.0)*/for(ilambda=1.0;Constructthenewnukesigpalsfromsolution:0;i<numPositives;i*H*)x[i=nukeSignals[i]+lambda(b[i]-nukeS'gna則);CorrectedsignalsnukeSigna則=x卩];Wefoundthebestefficiency,won'ttrymorestagesefficiencyUsed=bestEff-eff;break;Ifwedidn'tfindthebestefficiency,wewon'talternuketracef(bestEff=0.0)gotobye',Nowmakethechangeofficialintheoriginalnuketrace《for(i=0;i<n圃Positives;i++)wel"nfo==listGetA"nukeTraceList,positives[i],&listEnror);if(listEiw!-LlSTOIC){一f^rintf(errorOut,"%s-Errorgetting%d-thwe川nfofrompos"iveTraceList.Nn",fimcrioTiName,i);error=,istError;gotobyej#ifDO—CORRECTIONwelHnfo->signat=Tm)ceSigna,s[i;if(wemnfo->signal<0-0)we"lnfo->signal=0.0;#endifbye/"Freeupspace*/if(positives)safeFree(positives);}if(callables)safeFree(callables);if(nukeSignals)safeFree(nulceSignals〉;if(superDirtySignals)safeFree(s叩erDirtySignals);if(newSuperDirtySignals)safeFree(newSuperDirtySignals);if(indx),safeFree(indx);if(b)if(x)for(i:safeFree(b);safeFree(x》:0;i<nutnPosirives;i++)if(condensedMatrix&&condensedMatrix[ij)safeFree(condensedMatrix[i]);if(nonLuCondensedMatrix&&nonLuCondensedMatrixi])safeFree(nonLuCondensedMatrix[i]》if(condensedMatrix)safeFree(condensedMatrix);if(nonLuCondensedMatrix〉safcFree(nonLuCondensedMatrix);traceOut(functionName,traceLevel);return(efficiencyUsed);權(quán)利要求1、一種用于校正與模板分子的基本相同副本的種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的方法,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于所述信號的值;以及(c)利用第一參數(shù)和第二參數(shù)校正相位同步誤差的值。2、權(quán)利要求1的方法,進一步包括(d)對于每一個模板分子的序列位置重復(fù)步驟(a)-(c)。3、權(quán)利要求2的方法,進一步包括(e)將每個校正值并入到模板分子的表示中。4、權(quán)利要求3的方法,其中該表示包括流程圖。5、權(quán)利要求2的方法,其中該相位同步誤差包括不完全延伸分量和結(jié)轉(zhuǎn)分量,兩者都實質(zhì)上被視為用于每個模板分子的序列位置的常量,其中第一參數(shù)代表不完全延伸分量,第二參數(shù)代表結(jié)轉(zhuǎn)分量。6、權(quán)利要求2的方法,其中該相位同步誤差包括結(jié)轉(zhuǎn)分量,其實質(zhì)上被視為用于每個模板分子的序列位置的常量,其中該第二參數(shù)代表結(jié)轉(zhuǎn)分量。7、權(quán)利要求l的方法,其中該信號包括響應(yīng)于一個或多個核苷酸并入而發(fā)出的光。8、權(quán)利要求7的方法,其中該光包括來自測序反應(yīng)的化學(xué)發(fā)光的光。9、權(quán)利要求8的方法,其中該測序反應(yīng)包括焦磷酸鹽測序反應(yīng)。10、權(quán)利要求7的方法,其中該光包括來自測序反應(yīng)的熒光。11、權(quán)利要求10的方法,其中該測序反應(yīng)包括使用可逆終止子的測序反應(yīng)。12、權(quán)利要求1的方法,其中信號值表示大量并入的核苷酸。13、權(quán)利要求1的方法,其中通過搜索用于每個第一和第二參數(shù)最適合的矩陣方程式來估計第一參數(shù)所用的值以及第二參數(shù)所用的值。14、權(quán)利要求13的方法,其中最適合第一和第二參數(shù)的估計包括利用測試值之間的間隔來搜索以及在每個測試值上將一個或多個近似值應(yīng)用到矩陣結(jié)構(gòu)操作,其中近似值提供改進的估計計算效率。15、一種用于校正與模板分子的基本相同的副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的方法,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于信號的值;(C)并入該值到與模板分子序列關(guān)聯(lián)的表示;(d)對每一個模板分子的序列位置重復(fù)步驟(a)-(c);(e)利用第一參數(shù)和第二參數(shù)校正表示中的相位同步誤差的每個值;以及(f)利用校正值生成校正表示。16、權(quán)利要求15的方法,進一步包括(g)利用步驟(e)中前一個迭代獲得的校正值迭代重復(fù)步驟(e)-(f),其中一些或所有這些校正值隨著每次迭代在質(zhì)量上有所改進。17、權(quán)利要求15的方法,其中該相位同步誤差包括不完全延伸分量和結(jié)轉(zhuǎn)分量,兩者都實質(zhì)上被視為用于每個模板分子的序列位置的常量,其中第一參數(shù)代表不完全延伸分量以及第二參數(shù)代表結(jié)轉(zhuǎn)分量。18、權(quán)利要求15的方法,其中該相位同步誤差包括結(jié)轉(zhuǎn)分量,其實質(zhì)上被視為用于每個模板分子的序列位置的常量,其中該第二參數(shù)代表結(jié)轉(zhuǎn)分量。19、權(quán)利要求15的方法,其中該信號包括響應(yīng)于一個或多個核苷酸并入而發(fā)出的光。20、權(quán)利要求19的方法,其中該光包括來自測序反應(yīng)的化學(xué)發(fā)光的光。21、權(quán)利要求20的方法,其中該測序反應(yīng)包括焦磷酸鹽測序反應(yīng)。22、權(quán)利要求19的方法,其中該光包括來自測序反應(yīng)的熒光。23、權(quán)利要求22的方法,其中該測序反應(yīng)包括使用可逆終止子的測序反應(yīng)。24、權(quán)利要求15的方法,其中,-信號值表示大量并入的核苷酸。25、權(quán)利要求15的方法,其中通過搜索用于每個第一和第二參數(shù)最適合的矩陣方程式來估計第一參數(shù)所用的值以及第二參數(shù)所用的值。26、權(quán)利要求25的方法,其中最適合第一和第二參數(shù)的估計包括利用測試值之間的間隔來搜索以及在每個測試值上將一個或多個近似值應(yīng)用到矩陣結(jié)構(gòu)操作,其中近似值提供改進的估計計算效率。27、權(quán)利要求15的方法,其中該表示和校正的表示包括流程圖。28、一種用于校正與模板分子的基本相同的副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的方法,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入產(chǎn)生的信號;(b)生成用于所述信號的值;(C)并入該值到與模板分子序列關(guān)聯(lián)的表示中;(d)對每一個模板分子的序列位置重復(fù)步驟(a)-(c);(e)將該表示分成多個子集,其中每個子集包括一個或多個模板分子的序列位置;(f)估計每個子集中第-參數(shù)和第二參數(shù)的同步誤差;(g)利用每個各自子集中的第一參數(shù)和第二參數(shù)的同步誤差估計來校正用于相位同步誤差的每個子集中的每個值;以及(h)利用校正值將該校正子集組合成校正表示。29、權(quán)利要求28的方法,其中該相位同步誤差包括不完全延伸分量和結(jié)轉(zhuǎn)分量,所述不完全延伸分量和結(jié)轉(zhuǎn)分量在模板分子的多個序列位置的上方波動,其中第一參數(shù)代表不完全延伸分量以及第二參數(shù)代表結(jié)轉(zhuǎn)分量。30、權(quán)利要求28的方法,其中該相位同步誤差包括結(jié)轉(zhuǎn)分量,所述結(jié)轉(zhuǎn)分量在模板分子的多個序列位置的上方波動,其中該第二參數(shù)代表結(jié)轉(zhuǎn)分量。31、一種用于校正與模板分子的基本相同副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的系統(tǒng),包括計算機,所述計算機包括在其上存儲的用于執(zhí)行的程序代碼,該程序代碼執(zhí)行的方法包括(a)生成響應(yīng)測序反應(yīng)中一個或多個核苷酸并入檢測的信號值;以及(b)利用第一參數(shù)和第二參數(shù)校正相位同步誤差值。32、權(quán)利要求31的系統(tǒng),其中由該程序代碼執(zhí)行的方法進一步包括(c)對于每個模板分子的序列位置重復(fù)步驟(a)-(b)。33、權(quán)利要求32的系統(tǒng),其中由程序代碼執(zhí)行的方法進一步包括(d)并入每個校正值到模板分子的表示中。34、權(quán)利要求33的系統(tǒng),其中由程序代碼執(zhí)行的方法進一步包括(e)提供該表示給用戶。35、一種用于校正與模板分子的基本相同副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的系統(tǒng),包括計算機,所述計算機包括在其上存儲的用于執(zhí)行的程序代碼,該程序代碼執(zhí)行的方法包括(a)生成響應(yīng)測序反應(yīng)中一個或多個核苷酸并入而檢測的信號值;(b)合并該值到與模板分子的序列關(guān)聯(lián)的表示中;(c)對每個模板分子的序列位置重復(fù)步驟(a)-(b);(d)利用第一參數(shù)和第二參數(shù)校正表示中的相位同步誤差的每個值;以及(e)利用校正值生成校正表示。36、權(quán)利要求35的系統(tǒng),其中由程序代碼執(zhí)行的方法進一步包括(f)利用步驟(d)中前一個迭代獲得的校正值迭代重復(fù)步驟(d)-(e),其中一些或所有這些校正值隨著每次迭代在質(zhì)量上有所改進。37、權(quán)利要求36的系統(tǒng),其中響應(yīng)于用戶選擇的迭代次數(shù)來執(zhí)行迭代重復(fù)步驟。38、權(quán)利要求35的系統(tǒng),其中由程序代碼執(zhí)行的方法進一步包括(f)提供該校正表示給用戶。39、一種用于校正與模板分子的基本相同副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的系統(tǒng),包括計算機,所述計算機包括在其上存儲的用于執(zhí)行的程序代碼,該程序代碼執(zhí)行的方法包括(a)生成響應(yīng)測序反應(yīng)中一個或多個核苷酸并入檢測的信號值;(b)合并該值到與模板分子的序列關(guān)聯(lián)的表示中;(c)對每個模板分子的序列位置重復(fù)步驟(a)-(c);(d)將該表示分成多個子集,其中每個子集包括一個或多個模板分子的序列位置;(e)估計每個子集中第一參數(shù)和第二參數(shù)的同步誤差;(f)利用每個各自子集中的第一參數(shù)和第二參數(shù)的同步誤差估計校正用于相位同步誤差的每個子集中的每個值;以及(g)利用校正值將該校正子集組合成校正表示。全文摘要描述一種用于校正與從模板分子的基本相同副本種群中產(chǎn)生的相位同步序列數(shù)據(jù)相關(guān)聯(lián)的誤差的方法的實施例,包括(a)檢測響應(yīng)于測序反應(yīng)中一個或多個核苷酸并入而產(chǎn)生的信號;(b)生成用于信號的值;以及(c)利用第一參數(shù)和第二結(jié)轉(zhuǎn)參數(shù)校正用于相位同步誤差的值。文檔編號G06F19/22GK101390101SQ200780005575公開日2009年3月18日申請日期2007年2月15日優(yōu)先權(quán)日2006年2月16日發(fā)明者J·辛普森,K·麥達德,陳怡儒申請人:454生命科學(xué)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
古田县| 武夷山市| 康定县| 同仁县| 柏乡县| 阳西县| 南丹县| 明水县| 塘沽区| 华蓥市| 慈利县| 石柱| 株洲县| 尼勒克县| 葫芦岛市| 老河口市| 沈阳市| 奎屯市| 墨竹工卡县| 通榆县| 潢川县| 巨野县| 腾冲县| 扎赉特旗| 霍邱县| 夏邑县| 睢宁县| 尼木县| 钟山县| 高邮市| 化德县| 蒲城县| 罗江县| 遂昌县| 蒙城县| 棋牌| 新野县| 台北县| 余江县| 龙陵县| 饶平县|