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 область

Совет

Для помощи с буквенными и целочисленными представлениями аминокислот и нуклеотидов, смотрите Amino Acid Lookup или Nucleotide Lookup.

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 в нац.

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

Примечание

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

Совет

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

GapOpenValue

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

ExtendGapValue

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

Примечание

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

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

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

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

Описание

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

[Score, Alignment] = swalign(Seq1, Seq2) возвращает 3-by-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 - положение в 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 в единицах nat (nats) путем определения масштабного коэффициента log(2).

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

Ссылки

[1] Durbin, R., Eddy, S., Krogh, A. and Mitchison, G. (1998). Анализ биологической последовательности (Cambridge University Press).

[2] Smith, T. and Waterman, M. (1981). Идентификация общих молекулярных подпоследовательностей. Журнал молекулярной биологии 147, 195-197.

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