Наложите 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.1945getpdb | molviewer | pdbread | pdbtransform | procrustes | swalign