Наложите 3-D структуры двух белков
pdbsuperpose(
PDB1
, PDB2
)
Dist
= pdbsuperpose(PDB1
, PDB2
)
[Dist
, RMSD
]
= pdbsuperpose(PDB1
, PDB2
)
[Dist
, RMSD
, Transf
]
= pdbsuperpose(PDB1
, PDB2
)
[Dist
, RMSD
, Transf
, PBD2TX
]
= pdbsuperpose(PDB1
, PDB2
)
...
= pdbsuperpose(...,
'ModelNum', ModelNumValue
, ...)
...
= pdbsuperpose(...,
'Scale', ScaleValue
, ...)
...
= pdbsuperpose(...,
'Translate', TranslateValue
, ...)
...
= pdbsuperpose(...,
'Reflection', ReflectionValue
, ...)
...
= pdbsuperpose(...,
'SeqAlign', SeqAlignValue
, ...)
...
= pdbsuperpose(...,
'Segment', SegmentValue
, ...)
...
= pdbsuperpose(...,
'Apply', ApplyValue
, ...)
...
= pdbsuperpose(...,
'Display', DisplayValue
, ...)
PDB1 , PDB2 | Структуры белка, представленные любым следующим:
|
ModelNumValue | Двухэлементный числовой массив, элементы которого соответствуют моделям в |
ScaleValue | Задает, включать ли масштабирующийся компонент в линейное преобразование. Выбором является |
TranslateValue | Задает, включать ли компонент перевода в линейное преобразование. Выбором является |
ReflectionValue | Задает, включать ли отражательный компонент в линейное преобразование. Выбор:
|
SeqAlignValue | Задает, выполнить ли локальное выравнивание последовательности и затем использовать только фрагменты структур, соответствующих сегментам, которые выравниваются, чтобы вычислить линейное преобразование. Выбором является |
SegmentValue | Задает контуры и цепочку двух подпоследовательностей, чтобы рассмотреть для вычисления линейного преобразования.
Можно не использовать контуры, чтобы указать на целую цепочку, такой как в |
ApplyValue | Задает степень, к которой должно быть применено линейное преобразование. Выбор:
|
DisplayValue | Задает, отобразить ли исходную структуру |
Dist | Значение, представляющее меру по несходству, данную суммой квадратичных невязок между |
RMSD | Скаляр, представляющий среднеквадратичное расстояние между координатами структуры |
Transf | Линейное преобразование, вычисленное, чтобы наложить цепочку
ПримечаниеТолько альфа-координаты атома углерода используются, чтобы вычислить линейное преобразование. СоветМожно использовать |
PDB2TX | PDB-отформатированная структура MATLAB, которая представляет координаты в преобразованной структуре белка PDB2 . |
pdbsuperpose(
вычисляет и применяет линейное преобразование, чтобы наложить координаты структуры белка, представленной в PDB1
, PDB2
)PDB2
координатам структуры белка, представленной в PDB1
. PDB1
и PDB2
являются структурами белка, представленными любым следующим:
Вектор символов или строка, задающая уникальный идентификатор для структуры белка, записывают в базе данных PDB.
Переменная, содержащая PDB-отформатированную структуру MATLAB, такой, как возвращено getpdb
или pdbread
.
Вектор символов или строка, задающая имя файла или путь и имя файла. Файл, на который ссылаются, является PDB-отформатированным файлом. Если вы задаете только имя файла, тот файл должен быть на пути поиска файлов MATLAB или в Текущей папке MATLAB.
Альфа-координаты атома углерода одной цепочек для каждой структуры, как рассматривается, вычисляют линейное преобразование (перевод, отражение, ортогональное вращение, и масштабирующийся). По умолчанию первая цепочка в каждой структуре, как рассматривается, вычисляет преобразование, и преобразование применяется к целой молекуле. По умолчанию исходная структура PDB1
и получившаяся преобразованная структура PDB2
отображены как отдельные модели в окне Molecule Viewer с помощью функции molviewer
.
возвращает меру по несходству, данную суммой квадратичных невязок между Dist
= pdbsuperpose(PDB1
, PDB2
)PDB1
и PDB2
. Для получения дополнительной информации смотрите procrustes
.
[
также возвращает Dist
, RMSD
]
= pdbsuperpose(PDB1
, PDB2
)RMSD
, среднеквадратичное расстояние между координатами структуры PDB1
и преобразованной структуры PDB2
, полагая, что только атомы раньше вычисляли линейное преобразование.
[
также возвращает Dist
, RMSD
, Transf
]
= pdbsuperpose(PDB1
, PDB2
)Transf
, линейное преобразование, вычисленное, чтобы наложить цепочку PDB2
к цепочке PDB1
. Transf
является структурой MATLAB со следующими полями:
T
Ортогональное вращение и отражательный компонент.
b
Компонент шкалы.
c
Компонент перевода.
Только альфа-координаты атома углерода используются, чтобы вычислить линейное преобразование.
[
также возвращает Dist
, RMSD
, Transf
, PBD2TX
]
= pdbsuperpose(PDB1
, PDB2
)PBD2TX
, PDB-отформатированная структура MATLAB, которая представляет координаты в преобразованной структуре белка PDB2
.
вызывает ... = pdbsuperpose(..., 'PropertyName', PropertyValue, ...)
pdbsuperpose
с дополнительными свойствами, которые используют имя свойства / пары значения свойства. Можно задать одно или несколько свойств в любом порядке. Каждый PropertyName
должен быть заключен в одинарные кавычки и нечувствительный к регистру. Это имя свойства / пары значения свойства следующие:
задает модели, чтобы рассмотреть в суперпозиции, когда ...
= pdbsuperpose(...,
'ModelNum', ModelNumValue
, ...)PDB1
или PDB2
содержат многоуровневые модели. ModelNumValue
является двухэлементным числовым массивом, элементы которого соответствуют моделям в PDB1
и PDB2
соответственно. По умолчанию первая модель в каждой структуре рассматривается.
задает, включать ли масштабирующийся компонент в линейное преобразование. Выбором является ...
= pdbsuperpose(...,
'Scale', ScaleValue
, ...)true
или false
(значение по умолчанию).
задает, включать ли компонент перевода в линейное преобразование. Выбором является ...
= pdbsuperpose(...,
'Translate', TranslateValue
, ...)true
(значение по умолчанию) или false
.
задает, включать ли отражательный компонент в линейное преобразование. Выбором является ...
= pdbsuperpose(...,
'Reflection', ReflectionValue
, ...)true
(включайте отражательный компонент), false
(исключают отражательный компонент), или 'best'
(может или может не включать отражательный компонент, в зависимости от лучшего подходящего решения). Значением по умолчанию является 'best'
.
задает, выполнить ли локальное выравнивание последовательности и затем использовать только фрагменты структур, соответствующих сегментам, которые выравниваются, чтобы вычислить линейное преобразование. Выбором является ...
= pdbsuperpose(...,
'SeqAlign', SeqAlignValue
, ...)true
(значение по умолчанию) или false
.
Если вы устанавливаете свойство 'SeqAlign'
на true
, можно также задать следующие свойства, используемые функцией swalign
:
'ScoringMatrix'
'GapOpen'
'ExtendGap'
Для получения дополнительной информации об этих свойствах смотрите swalign
.
задает контуры и цепочку двух подпоследовательностей, чтобы рассмотреть для вычисления линейного преобразования. ...
= pdbsuperpose(...,
'Segment', SegmentValue
, ...)SegmentValue
является массивом ячеек из символьных векторов со следующим форматом: {'start1-stop1:chain1', 'start2-stop2:chain2'}
. Можно не использовать контуры, чтобы указать на целую цепочку, такой как в {'chain1', 'start2-stop2:chain2'}
. Можно задать только одну пару сегментов в любой момент времени, и заданные сегменты приняты, чтобы содержать то же количество альфа-атомов углерода.
задает степень, к которой должно быть применено линейное преобразование. Выбором является ...
= pdbsuperpose(...,
'Apply', ApplyValue
, ...)'all'
(примените линейное преобразование к целой структуре PDB2), 'chain'
(применяют линейное преобразование только к заданной цепочке), или 'segment'
(применяют линейное преобразование только к заданному сегменту). Значением по умолчанию является 'all'
.
задает, отобразить ли исходную структуру ...
= pdbsuperpose(...,
'Display', DisplayValue
, ...)PDB1
и получившуюся преобразованную структуру PDB2TX
в окне Molecule Viewer с помощью функции molviewer
. Каждая структура представлена как отдельная модель. Выбором является true
(значение по умолчанию) или false
.
Используйте функцию getpdb
, чтобы получить данные о структуре белка от базы данных Protein Data Bank (PDB) для двух структур гемоглобина.
str1 = getpdb('1dke'); str2 = getpdb('4hhb');
Наложите первую модель двух структур гемоглобина, применив преобразование к целой молекуле.
d = pdbsuperpose(str1, str2, 'model', [1 1], 'apply', 'all');
Наложите две структуры гемоглобина (каждый содержащий четыре цепочки), вычислив и применив цепочку линейного преобразования цепочкой. Не отображайте структуры.
strtx = str2; chainList1 = {str1.Sequence.ChainID}; chainList2 = {str2.Sequence.ChainID}; for i = 1:4 [d(i), rmsd(i), tr(i), strtx] = pdbsuperpose(str1, strtx, ... 'segment', {chainList1{i}; chainList2{i}}, ... 'apply', 'chain', 'display', false); end
Наложите цепочку B на цепочке thioredoxin структуры (PDBID = 2trx), и затем примените преобразование только к цепочке B.
[d, rmsd, tr] = pdbsuperpose('2trx', '2trx', 'segment', {'A', 'B'}, ... 'apply', 'chain') d = 0.0028 rmsd = 0.6604 tr = T: [3x3 double] b: 1 c: [109x3 double]
Наложите две структуры кальмодулина согласно линейному преобразованию, полученному с помощью два 20 сегментов длиной в остаток.
pdbsuperpose('1a29', '1cll', 'segment', {'10-30:A', '10-30:A'}) ans = 0.1945
getpdb
| molviewer
| pdbread
| pdbtransform
| procrustes
| swalign