Наложение 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.
Переменная, содержащая структуру MATLAB в формате PDB, например, возвращенная 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
, структуру MATLAB в формате PDB, которая представляет координаты в преобразованном 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 на цепь A структуры тиоредоксина (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