exponenta event banner

ramachandran

Рисование графика Рамачандрана для данных банка данных белка (PDB)

Синтаксис

ramachandran(PDBid)
ramachandran(File)
ramachandran(PDBStruct)
RamaStruct = ramachandran(...)
ramachandran(..., 'Chain', ChainValue, ...)
ramachandran(..., 'Plot', PlotValue, ...)
ramachandran(..., 'Model', ModelValue, ...)
ramachandran(..., 'Glycine', GlycineValue, ...)
ramachandran(..., 'Regions', RegionsValue, ...)
ramachandran(..., 'RegionDef', RegionDefValue, ...)

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

PDBidСимвольный вектор или строка, указывающая уникальный идентификатор для записи структуры белка в базе данных PDB.

Примечание

Каждая структура в базе данных PDB представлена четырехсимвольным буквенно-цифровым идентификатором. Например, 4hhb - идентификатор гемоглобина.

File

Символьный вектор или строка, указывающая имя файла или путь и имя файла. Указанный файл является форматированным файлом банка данных белка (PDB). Если указано только имя файла, этот файл должен находиться в пути поиска MATLAB ® или в текущем каталоге MATLAB.

PDBStruct Структура MATLAB, содержащая данные в формате PDB, например, возвращенные getpdb или pdbread.
ChainValue

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

Возможны следующие варианты:

  • 'All' (по умолчанию) - вычисляются и печатаются углы кручения для всех цепей.

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

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

PlotValue

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

  • 'None' - Ничего не строит.

  • 'Separate' - строит графики углов кручения для всех указанных цепей на отдельных графиках.

  • 'Combined' (по умолчанию) - строит графики углов кручения для всех указанных цепей в одном комбинированном графике.

ModelValueЦелое число, указывающее рассматриваемую модель структуры. По умолчанию: 1.
GlycineValueУправляет подсвечиванием остатков глицина окружностью на графике. Варианты: true или false (по умолчанию).
RegionsValue

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

Области по умолчанию являются центральными правыми альфа, ядром бета, ядром левой альфа и разрешены, причем области ядра соответствуют точкам данных предпочтительных значений пар углов psi/phi и допустимые области соответствуют возможным, но отклоненным значениям пар углов psi/phi, основываясь на простых энергетических соображениях. Границы этих областей по умолчанию основаны на расчетах Morris et al., 1992.

Примечание

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

RegionDefValue

Структура MATLAB или массив структур (если указывается несколько областей), содержащих информацию (имя, цвет и границы) для пользовательских опорных областей на графике Рамачандрана. Каждая структура должна содержать следующие поля:

  • Name - символьный вектор или строка, указывающая имя области.

  • Color - символьный вектор или строковый или трехэлементный числовой вектор значений RGB, задающий цвет для области на графике.

  • Patch - 2-by-N матрица значений, причем первая строка содержит значения угла кручения phi (Start), а вторая строка содержит значения угла кручения psi («» («» Start« »). При печати пар углов psi/phi точки данных задают границы области. N - количество точек данных, необходимых для определения области.

Совет

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

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

RamaStruct

Структура MATLAB или массив структур (если белок содержит несколько цепей). Каждая структура содержит следующие поля:

  • Angles

  • ResidueNum

  • ResidueName

  • Chain

  • HPoints

Описание полей см. в следующей таблице.

Описание

График Рамачандрана - это график угла кручения phi, Start, (угол кручения между C-N-CA-C атомы) по сравнению с углом кручения psi, (угол кручения между N-CA-C-N атомы) для каждого остатка белковой последовательности.

ramachandran(PDBid) генерирует график Рамачандрана для белка, указанного идентификатором базы данных PDB PDBid.

ramachandran(File) генерирует график Рамачандрана для белка, указанного File, файл в формате PDB.

ramachandran(PDBStruct) генерирует график Рамачандрана для белка, хранящегося в PDBStruct, структура MATLAB, содержащая данные в формате PDB, такие как возвращенные getpdb или pdbread.

RamaStruct = ramachandran(...) возвращает структуру MATLAB или массив структур (если белок содержит несколько цепей). Каждая структура содержит следующие поля.

ОбластьОписание
Angles

Матрица с тремя столбцами, содержащая углы кручения phi (Start), psi (Start) и omega (λ) для каждого остатка в последовательности, упорядоченные по порядковому номеру остатка. Количество строк в матрице равно количеству строк в ResidueNum вектор столбца, который может быть использован для определения того, какой остаток соответствует каждой строке в Angles матрица.

Примечание

Angles матрица содержит строку для каждого числа в диапазоне порядковых номеров остатков, включая порядковые номера остатков, отсутствующие в файле PDB. Строки, соответствующие порядковым номерам остатков, отсутствующим в файле PDB, содержат значение NaN.

ResidueNum

Вектор столбца, содержащий порядковые номера остатков из файла PDB.

Примечание

ResidueNum вектор начинается с одного из следующих:

  • Самый низкий порядковый номер остатка (если самый низкий порядковый номер остатка отрицательный или нулевой)

  • Число 1 (если наименьший порядковый номер остатка положительный)

ResidueNum вектор заканчивается самым высоким порядковым номером остатка и включает все номера в диапазоне, включая порядковые номера остатка, отсутствующие в файле PDB.

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

ResidueNameВектор-колонка, содержащий названия остатков белка.
ChainСимвольный вектор или строка, задающая цепочки в белке.
HPointsОбработайте точки данных на графике.

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

ramachandran(..., 'Chain', ChainValue, ...) определяет цепь (цепи) для вычисления углов кручения и построения графика. Возможны следующие варианты:

  • 'All' (по умолчанию) - вычисляются и печатаются углы кручения для всех цепей.

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

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

ramachandran(..., 'Plot', PlotValue, ...) определяет способ печати цепей. Возможны следующие варианты:

  • 'None' - Ничего не строит.

  • 'Separate' - строит графики углов кручения для всех указанных цепей на отдельных графиках.

  • 'Combined' (по умолчанию) - строит графики углов кручения для всех указанных цепей в одном комбинированном графике.

ramachandran(..., 'Model', ModelValue, ...) определяет структурную модель для рассмотрения. По умолчанию: 1.

ramachandran(..., 'Glycine', GlycineValue, ...) управляет подсвечиванием остатков глицина окружностью на графике. Варианты: true или false (по умолчанию).

ramachandran(..., 'Regions', RegionsValue, ...) управляет чертежом опорных областей Рамачандрана на графике. Варианты: true или false (по умолчанию).

Области по умолчанию являются центральными правыми альфа, ядром бета, ядром левой альфа и разрешены, причем области ядра соответствуют точкам данных предпочтительных значений пар углов psi/phi и допустимые области соответствуют возможным, но отклоненным значениям пар углов psi/phi, основываясь на простых энергетических соображениях. Границы этих областей по умолчанию основаны на расчетах Morris et al., 1992.

Примечание

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

ramachandran(..., 'RegionDef', RegionDefValue, ...) задает информацию (имя, цвет и границу) для пользовательских опорных областей на графике Рамачандрана. RegionDefValue - структура MATLAB или массив структур, содержащий следующие поля:

  • Name - символьный вектор или строка, указывающая имя области.

  • Color - символьный вектор или строковый или трехэлементный числовой вектор значений RGB, задающий цвет для области на графике.

  • Patch - 2-by-N матрица значений, причем первая строка содержит значения угла кручения phi (Start), а вторая строка содержит значения угла кручения psi («» («» Start« »). При печати пар углов psi/phi точки данных определяют границу области. N - количество точек данных, необходимых для определения области.

Совет

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

Примеры

Пример 64. Построение графика Рамачандрана

Нарисуйте график Рамачандрана для человеческого сывороточного альбумина в комплексе с октадекановой кислотой, которая имеет идентификатор базы данных PDB 1E7I.

ramachandran('1E7I')

Пример 65. Построение графика Рамачандрана для определенной цепи
  1. Используйте getpdb функция для извлечения данных о структуре белка для гормона роста человека из базы данных PDB и сохранения информации в файле.

    getpdb('1a22','ToFile','1a22.pdb');
  2. Вычислите углы кручения и нарисуйте график Рамачандрана для цепи А человеческого гормона роста, представленного в файле pdb, 1a22.pdb.

    ChainA1a22Struct = ramachandran('1a22.pdb','chain','A')
    
    ChainA1a22Struct =
    
             Angles: [191x3 double]
         ResidueNum: [191x1 double]
        ResidueName: {191x1 cell}
              Chain: 'A'
            HPoints: 370.0012

Пример 66. Построение графиков Рамачандрана с выделенными остатками глицина и областями Рамачандрана
  1. Используйте getpdb функция для извлечения данных о структуре белка для гормона роста человека из базы данных PDB и сохранения информации в структуре.

    Struct1a22 = getpdb('1a22');
  2. Нарисуйте комбинированный график Рамачандрана для всех цепей человеческого гормона роста, представленных в структуре pdb, 1a22Struct. Выделите остатки глицина (с окружностью) и нарисуйте опорные области Рамачандрана на графике.

    ramachandran(Struct1a22,'glycine',true,'regions',true);

    Совет

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

  3. Нарисуйте отдельный график Рамачандрана для каждой цепи человеческого гормона роста, представленного в структуре pdb, 1a22Struct. Выделите остатки глицина (с окружностью) и нарисуйте опорные области Рамачандрана на графике.

    ramachandran(Struct1a22,'plot','separate','chain','all',...
                 'glycine',true,'regions',true)

Пример 67. Запись файла отчета с разделителями табуляции из структуры Ramachandran
  1. Создайте массив из двух структур, содержащих углы кручения для цепей A и D в кальций/кальмодулин-зависимой протеинкиназе, которая имеет идентификатор базы данных PDB 1hkx.

    a = ramachandran('1hkx', 'chain', {'A', 'D'})
    
    a = 
    
    1x2 struct array with fields:
        Angles
        ResidueNum
        ResidueName
        Chain
        HPoints
  2. Запишите файл отчета с разделителями табуляцией, содержащий углы кручения phi (Start) и psi (Start) для цепей A и D в кальций/кальмодулин-зависимой протеинкиназе.

    fid = fopen('rama_1hkx_report.txt', 'wt');
    
    for c = 1:numel(a)
        for i = 1:length(a(c).Angles)
            if ~all(isnan(a(c).Angles(i,:)))
                fprintf(fid,'%s\t%d\t%s\t%f\t%f\n', a(c).Chain, ...
                    a(c).ResidueNum(i), a(c).ResidueName{i}, ...
                    a(c).Angles(i,1:2));
            end
        end
    end
    
    fclose(fid);
    
  3. Просмотрите файл, созданный в редакторе MATLAB.

    edit rama_1hkx_report.txt

Ссылки

[1] Моррис, А.Л., Макартур, М.У., Хатчинсон, например, и Торнтон, Дж. М. (1992). Стереохимическое качество координат белковой структуры. БЕЛКИ: структура, функция и генетика 12, 345-364.

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