swalign

Локально выровняйте две последовательности с помощью алгоритма Смита-лодочника

Синтаксис

Score = swalign(Seq1, Seq2)
[Score, Alignment] = swalign(Seq1, Seq2)
[Score, Alignment, Start] = swalign(Seq1, Seq2)
... = swalign(Seq1,Seq2, ...'Alphabet', AlphabetValue)
... = swalign(Seq1,Seq2, ...'ScoringMatrix', ScoringMatrixValue, ...)
... = swalign(Seq1,Seq2, ...'Scale', ScaleValue, ...)
... = swalign(Seq1,Seq2, ...'GapOpen', GapOpenValue, ...)
... = swalign(Seq1,Seq2, ...'ExtendGap', ExtendGapValue, ...)
... = swalign(Seq1,Seq2, ...'Showscore', ShowscoreValue, ...)

Входные параметры

Seq1, Seq2

Аминокислота или последовательности нуклеотида. Введите любое следующее:

  • Вектор символов или строка букв, представляющих аминокислоты или нуклеотиды, такой, как возвращено int2aa или int2nt

  • Вектор целых чисел, представляющих аминокислоты или нуклеотиды, такой, как возвращено aa2int или nt2int

  • Структура, содержащая поле Sequence

Совет

Для справки с буквой и целочисленными представлениями аминокислот и нуклеотидов, смотрите Поиск Поиска или Нуклеотида Аминокислоты.

AlphabetValueВектор символов или строка, задающая тип последовательности. Выбором является 'AA' (значение по умолчанию) или 'NT'.
ScoringMatrixValue

Любое из следующего:

  • Вектор символов или строка, задающая матрицу выигрыша, чтобы использовать для локального выравнивания. Выбор для последовательностей аминокислот:

    • 'BLOSUM62'

    • 'BLOSUM30', увеличивающийся 5 до 'BLOSUM90'

    • 'BLOSUM100'

    • 'PAM10', увеличивающийся 10 до 'PAM500'

    • 'DAYHOFF'

    • 'GONNET'

    Значение по умолчанию:

    • 'BLOSUM50' — Когда AlphabetValue равняется 'AA'

    • 'NUC44' — Когда AlphabetValue равняется 'NT'

    Примечание

    Вышеупомянутые матрицы выигрыша, которым предоставляют программное обеспечение, также включают структуру, содержащую масштабный коэффициент, который преобразовывает единицы выходного счета вдребезги. Можно также использовать свойство 'Scale' задать дополнительный масштабный коэффициент, чтобы преобразовать выходной счет от битов до другого модуля.

  • Матрица, представляющая матрицу выигрыша, чтобы использовать для локального выравнивания, такой, как возвращено blosum, pam, dayhoff, gonnet или функцией nuc44.

    Примечание

    Если вы используете матрицу выигрыша, которую вы создали или были созданы одной из вышеупомянутых функций, матрица не включает масштабный коэффициент. Выходной счет будет возвращен в тех же модулях как матрица выигрыша. Можно использовать свойство 'Scale' задать масштабный коэффициент, чтобы преобразовать выходной счет в другой модуль.

Примечание

Если необходимо скомпилировать swalign в автономное приложение или компонент программного обеспечения с помощью MATLAB® Compiler™, используйте матрицу вместо вектора символов или строки для ScoringMatrixValue.

ScaleValue

Положительное значение, которое задает масштабный коэффициент, который применяется к выходному счету.

Например, если выходной счет первоначально определяется в битах, и вы вводите log(2) для ScaleValue, затем swalign возвращает Score в nats.

Значением по умолчанию является 1, который не изменяет модули выходного счета.

Примечание

Если свойство 'ScoringMatrix' также задает масштабный коэффициент, то swalign использует его сначала, чтобы масштабировать выходной счет, то применяет масштабный коэффициент, заданный ScaleValue, чтобы повторно масштабировать выходной счет.

Совет

Прежде, чем сравнить очки выравнивания от нескольких выравниваний, гарантируйте, что очки находятся в тех же модулях. Можно использовать свойство 'Scale' управлять модулями выходных очков.

GapOpenValue

Положительное значение, задающее штраф за открытие разрыва в выравнивании. Значением по умолчанию является 8.

ExtendGapValue

Положительное значение, задающее штраф за расширение разрыва с помощью аффинной схемы штрафа разрыва.

Примечание

Если вы задаете это значение, swalign использует аффинную схему штрафа разрыва, то есть, оно очки первый разрыв с помощью GapOpenValue и очков последующие разрывы с помощью ExtendGapValue. Если вы не задаете это значение, очки swalign все разрывы одинаково, с помощью штрафа GapOpenValue.

ShowscoreValueУправляет отображением пробела выигрыша и путем к победе выравнивания. Выбором является true или false (значение по умолчанию).

Выходные аргументы

ScoreОптимальное локальное выравнивание выигрывает в битах.
Alignment3 N символьным массивом, показывающим эти две последовательности, Seq1 и Seq2, в первых и третьих строках и символах, представляющих оптимальное локальное выравнивание между ними во второй строке.
Start2 1 вектор индексов, указывающих на отправную точку в каждой последовательности для выравнивания.

Описание

Score = swalign(Seq1, Seq2) возвращает оптимальный локальный счет выравнивания в битах. Масштабный коэффициент, используемый, чтобы вычислить счет, обеспечивается матрицей выигрыша.

[Score, Alignment] = swalign(Seq1, Seq2) возвращает 3 N символьным массивом, показывающим эти две последовательности, Seq1 и Seq2, в первых и третьих строках и символах, представляющих оптимальное локальное выравнивание между ними во второй строке. Символ | указывает на аминокислоты или нуклеотиды то соответствие точно. : символа указывает на аминокислоты или нуклеотиды, которые связаны, как задано матрицей выигрыша (несовпадения с нулем или положительным выигрывающим матричным значением).

[Score, Alignment, Start] = swalign(Seq1, Seq2) возвращается 2 1 вектор индексов, указывающих на отправную точку в каждой последовательности для выравнивания.

... = swalign(Seq1,Seq2, ...'PropertyName', PropertyValue, ...) вызывает swalign с дополнительными свойствами, которые используют имя свойства / пары значения свойства. Можно задать одно или несколько свойств в любом порядке. Каждый PropertyName должен быть заключен в одинарные кавычки и нечувствительный к регистру. Это имя свойства / пары значения свойства следующие:

... = swalign(Seq1,Seq2, ...'Alphabet', AlphabetValue) задает тип последовательностей. Выбором является 'AA' (значение по умолчанию) или 'NT'.

... = swalign(Seq1,Seq2, ...'ScoringMatrix', ScoringMatrixValue, ...) задает матрицу выигрыша, чтобы использовать для локального выравнивания. Значение по умолчанию:

  • 'BLOSUM50' — Когда AlphabetValue равняется 'AA'

  • 'NUC44' — Когда AlphabetValue равняется 'NT'

... = swalign(Seq1,Seq2, ...'Scale', ScaleValue, ...) задает масштабный коэффициент, который применяется к выходному счету, таким образом, управляя модулями выходного счета. Выбором является любое положительное значение.

... = swalign(Seq1,Seq2, ...'GapOpen', GapOpenValue, ...) задает штраф за открытие разрыва в выравнивании. Выбором является любое положительное значение. Значением по умолчанию является 8.

... = swalign(Seq1,Seq2, ...'ExtendGap', ExtendGapValue, ...) задает штраф за расширение разрыва с помощью аффинной схемы штрафа разрыва. Выбором является любое положительное значение.

... = swalign(Seq1,Seq2, ...'Showscore', ShowscoreValue, ...) управляет отображением пробела выигрыша и завоевания пути выравнивания. Выбором является true или false (значение по умолчанию).

Пробел выигрыша является картой тепла, отображающей лучшую музыку ко всем частичным выравниваниям двух последовательностей. Цвет каждого (n1,n2), координата на пробеле выигрыша представляет лучший счет к соединению подпоследовательностей Seq1(s1:n1) и Seq2(s2:n2), где n1 является положением в Seq1, n2, является положением in Seq2, s1 является любым положением в Seq1 между 1:n1, и s2 является любым положением в Seq2 между 1:n2. Лучший счет к соединению определенных подпоследовательностей определяется путем выигрыша всех возможных выравниваний подпоследовательностей путем подведения итогов штрафов разрыва и соответствий.

Путь к победе представлен черными точками на пробеле выигрыша, и это иллюстрирует соединение положений в оптимальном локальном выравнивании. Цвет последней точки (нижний правый угол) пути к победе представляет оптимальный локальный счет выравнивания к этим двум последовательностям и является Score выходной параметр, возвращенный swalign.

Примечание

Пробел выигрыша визуально показывает тандемные повторения, маленькие сегменты, которые потенциально выравниваются, и частичные выравнивания областей от перестроенных последовательностей.

Примеры

  1. Локально выровняйте две последовательности аминокислот с помощью BLOSUM50 (значение по умолчанию), выигрывающее матрицу и значения по умолчанию для свойств GapOpen и ExtendGap. Возвратите оптимальный локальный счет выравнивания в битах и символьном массиве выравнивания.

    [Score, Alignment] = swalign('VSPAGMASGYD','IPGKASYD')
    
    Score =
    
         8.6667
    
    Alignment =
    
    PAGMASGYD
    | | || ||
    P-GKAS-YD
    
  2. Локально выровняйте две последовательности аминокислот, задающие матрицу выигрыша PAM250 и разрыв открытый штраф 5.

    [Score, Alignment] = swalign('HEAGAWGHEE','PAWHEAE',...
                                 'ScoringMatrix', 'pam250',...
                                 'GapOpen',5)
    
    Score =
    
         8
    Alignment =
    
    GAWGHE
    :|| ||
    PAW-HE
    

  3. Локально выровняйте две последовательности аминокислот, возвращающие Score в туземных модулях (nats) путем определения масштабного коэффициента log(2).

    [Score, Alignment] = swalign('HEAGAWGHEE','PAWHEAE','Scale',log(2))
                                 
    Score =
    
        6.4694
    
    Alignment =
    
    AWGHE
    || ||
    AW-HE

Ссылки

[1] Durbin, R., вихрь, S., Krogh, A. и Мичисон, G. (1998). Биологический анализ последовательности (издательство Кембриджского университета).

[2] Смит, T., и Лодочник, М. (1981). Идентификация общих молекулярных подпоследовательностей. Журнал Молекулярной биологии 147, 195–197.

Представлено до R2006a