Калькулятор молекулярной массы белка | Бесплатный MW инструмент
Мгновенный расчет молекулярной массы белка по аминокислотной последовательности. Бесплатный калькулятор для биохимических исследований, подготовки SDS-PAGE и анализа масс-спектрометрии. Получите точные результаты в дальтонах.
Калькулятор молекулярной массы белка
Рассчитайте молекулярную массу белка на основе его аминокислотной последовательности.
Используйте стандартные однобуквенные коды аминокислот (A, R, N, D, C и т.д.). Молекулярная масса рассчитывается автоматически при наборе.
О калькуляторе
Этот калькулятор оценивает молекулярную массу белка на основе его аминокислотной последовательности.
Расчет учитывает стандартные молекулярные массы аминокислот и потерю воды при образовании пептидных связей.
Для точных результатов убедитесь, что вы ввели корректную аминокислотную последовательность, используя стандартные однобуквенные коды.
Документация
Калькулятор молекулярной массы белка
Введение
Работа с белками постоянно требует расчета молекулярной массы. Независимо от того, готовитесь ли вы к SDS-PAGE, настраиваете гель-фильтрацию или интерпретируете результаты масс-спектрометрии, знание теоретической массы белковой последовательности является фундаментальным.
Этот калькулятор молекулярной массы белков предоставляет мгновенные, точные результаты из аминокислотных последовательностей. Введите вашу последовательность, используя стандартные однобуквенные коды (например, MVKMDVYKGSSIGDSMSRSM), и вы получите молекулярную массу в дальтонах вместе с разбивкой аминокислотного состава. Особенно полезным на практике является автоматическая проверка — он обнаруживает недопустимые аминокислотные коды до того, как вы потратите время на устранение неполадок.
Молекулярная масса белка представляет собой сумму индивидуальных масс аминокислот за вычетом молекул воды, теряемых при образовании пептидной связи. Это значение выражается в дальтонах (Да) или килодальтонах (кДа), где 1 кДа равен 1000 Да. Вот что стоит иметь в виду: этот расчет дает теоретическую молекулярную массу, основанную исключительно на последовательности. Реальные белки часто отличаются из-за посттрансляционных модификаций, которые могут добавлять от нескольких дальтон (фосфорилирование) до нескольких килодальтон (гликозилирование).
Как рассчитывается молекулярная масса белка
Базовая формула
Молекулярная масса белка рассчитывается по следующей формуле:
Где:
- - молекулярная масса всего белка в дальтонах (Да)
- - сумма молекулярных масс всех отдельных аминокислот
- - количество аминокислот в последовательности
- - молекулярная масса воды (18,01528 Да)
- представляет количество образованных пептидных связей
- Последний член учитывает терминальные группы (H и OH)
Молекулярные массы аминокислот
Расчет использует стандартные молекулярные массы 20 распространенных аминокислот:
| Аминокислота | Однобуквенный код | Молекулярная масса (Да) |
|---|---|---|
| Аланин | A | 71,03711 |
| Аргинин | R | 156,10111 |
| Аспарагин | N | 114,04293 |
| Аспарагиновая кислота | D | 115,02694 |
| Цистеин | C | 103,00919 |
| Глутаминовая кислота | E | 129,04259 |
| Глутамин | Q | 128,05858 |
| Глицин | G | 57,02146 |
| Гистидин | H | 137,05891 |
| Изолейцин | I | 113,08406 |
| Лейцин | L | 113,08406 |
| Лизин | K | 128,09496 |
| Метионин | M | 131,04049 |
| Фенилаланин | F | 147,06841 |
| Пролин | P | 97,05276 |
| Серин | S | 87,03203 |
| Треонин | T | 101,04768 |
| Триптофан | W | 186,07931 |
| Тирозин | Y | 163,06333 |
| Валин | V | 99,06841 |
Потеря воды при образовании пептидной связи
Когда аминокислоты соединяются для образования белка, каждая пептидная связь высвобождает одну молекулу воды (H₂O). Это называется конденсационной реакцией — карбоксильная группа одной аминокислоты соединяется с аминогруппой следующей, высвобождая H₂O в процессе.
Вот математика: белок с n аминокислотами образует (n-1) пептидных связей, что означает высвобождение (n-1) молекул воды. Но мы добавляем обратно одну молекулу воды, чтобы учесть терминальные группы — свободный H на N-конце и свободный OH на C-конце. Именно поэтому формула включает - (n-1) × MW_воды + MW_воды, что упрощает расчет терминальных групп.
Пример расчета
Рассчитаем молекулярную массу простого трипептида: Ала-Гли-Сер (AGS)
-
Суммируем массы отдельных аминокислот:
- Аланин (A): 71,03711 Да
- Глицин (G): 57,02146 Да
- Серин (S): 87,03203 Да
- Итого: 215,0906 Да
-
Вычитаем потерю воды из пептидных связей:
- Количество пептидных связей = 3-1 = 2
- Молекулярная масса воды = 18,01528 Да
- Общая потеря воды = 2 × 18,01528 = 36,03056 Да
-
Добавляем обратно одну молекулу воды для терминальных групп:
- 18,01528 Да
-
Окончательная молекулярная масса:
- 215,0906 - 36,03056 + 18,01528 = 197,07532 Да
Как использовать калькулятор молекулярной массы белка
Использование этого калькулятора занимает секунды:
-
Вставьте последовательность белка в текстовое поле. Используйте стандартные однобуквенные коды аминокислот (A, R, N, D, C, E, Q, G, H, I, L, K, M, F, P, S, T, W, Y, V). Подходят как прописные, так и строчные буквы.
-
Проверка происходит автоматически — вы сразу увидите, есть ли недопустимые символы в вашей последовательности. Это позволяет выявить распространенные ошибки, например, случайное включение номеров последовательностей или заголовков FASTA.
-
Результаты появляются мгновенно и показывают:
- Молекулярную массу в дальтонах (Да)
- Длину последовательности (количество аминокислот)
- Разбивку состава аминокислот
- Использованный метод расчета
-
Скопируйте результаты в буфер обмена одним щелчком для лабораторных журналов, отчетов или дальнейшего анализа.
Типичный рабочий процесс: скопируйте последовательность из UniProt или базы данных плазмид, вставьте ее сюда, получите молекулярную массу, затем используйте это значение для настройки колонки гель-фильтрации или расчета ожидаемого положения полосы на вестерн-блоте.
Рекомендации по вводу для точных результатов
Помните эти советы при вводе последовательностей:
- Используйте только стандартные однобуквенные коды (подходят как прописные, так и строчные буквы)
- Удалите заголовки FASTA — частая ошибка — вставка последовательностей со строкой заголовка, начинающейся с
> - Удалите нумерацию последовательностей — при копировании из программы выравнивания сначала удалите номера позиций
- Остерегайтесь неоднозначных кодов — X, B, Z и J не поддерживаются; вам нужно заменить их на конкретные аминокислоты
- Для нестандартных аминокислот (селеноцистеин, пирролизин, модифицированные остатки) — этот калькулятор не даст точных результатов. Вам понадобятся специализированные инструменты или ручные расчеты, учитывающие точные модификации.
Интерпретация результатов
Калькулятор предоставляет несколько видов информации:
-
Молекулярная масса: Расчетная молекулярная масса вашего белка в дальтонах (Да). Для больших белков может быть выражена в килодальтонах (кДа).
-
Длина последовательности: Общее количество аминокислот в вашей последовательности.
-
Состав аминокислот: Визуальная разбивка содержания аминокислот в вашем белке, показывающая как количество, так и процент каждой аминокислоты.
-
Метод расчета: Четкое объяснение того, как была рассчитана молекулярная масса, включая использованную формулу.
Распространенные случаи использования расчета молекулярной массы белков
Вот где знание молекулярной массы белка становится незаменимым в повседневной лабораторной работе:
Очистка и анализ белков
При очистке белков молекулярная масса направляет критические решения:
- Настройка гель-фильтрации — Вы выбираете смолу колонки на основе диапазона молекулярной массы. Для белка 50 кДа хорошо подходит Superdex 75, а для белков свыше 100 кДа — Superdex 200.
- Концентрация геля SDS-PAGE — Малые белки (< 20 кДа) требуют 15% гелей для хорошего разрешения, в то время как большие белки (> 100 кДа) лучше мигрируют в 8% гелях. Знание точной молекулярной массы помогает выбрать правильный процент.
- Валидация масс-спектрометрии — Ваша расчетная теоретическая масса должна совпадать с экспериментальными результатами масс-спектрометрии в пределах нескольких дальтон (с учетом точности прибора). Значительные расхождения сигнализируют о проблемах, таких как неожиданный протеолиз или модификации.
- Проверка экспрессии — Когда вы видите полосу на геле, сравнение ее положения с расчетной молекулярной массой подтверждает, что вы экспрессировали правильный белок.
Производство рекомбинантных белков
В биотехнологических и исследовательских условиях расчеты молекулярной массы фундаментальны:
- Проектирование экспрессионной конструкции — При добавлении меток (His-tag, GST, MBP) рассчитайте общую молекулярную массу, чтобы предсказать, где будет мигрировать ваш слитный белок на геле
- Оценка выхода — Преобразуйте показания поглощения в концентрацию белка с использованием коэффициента экстинкции, затем рассчитайте общий выход в миллиграммах
- Стратегия очистки — Выберите аффинные смолы и размеры колонок на основе емкости связывания относительно молекулярной массы вашего белка
- Характеризация продукта — Спецификации контроля качества требуют подтверждения молекулярной массы; отклонения указывают на вариабельность от партии к партии
Синтез пептидов
Для синтетических пептидов точная молекулярная масса абсолютно необходима:
- Расчеты исходных материалов — Каждое связывание аминокислот требует точной стехиометрии; молекулярная масса определяет точные количества
- Прогнозирование теоретического выхода — Сравните фактический выход с теоретическим на основе молекулярной массы для оценки эффективности синтеза
- Верификация ВЭЖХ-МС — Расчетная молекулярная масса является целевой массой для подтверждения идентичности
- Оценка чистоты — Данные масс-спектрометрии с несколькими пиками около целевой молекулярной массы указывают на неполное депротектирование или побочные реакции
Структурная биология
Молекулярная масса играет ключевую роль в определении структуры:
- Скрининг кристаллизации — Концентрация белка для кристаллических проб обычно составляет 10-20 мг/мл; молекулярная масса преобразует между молярностью и мг/мл для настройки скринингов
- Расчет коэффициента Мэтьюза — Это предсказывает количество молекул в кристаллографической асимметричной единице на основе молекулярной массы и объема элементарной ячейки
- Стехиометрия комплекса — При изучении белок-белковых взаимодействий сравните наблюдаемую молекулярную массу (из гель-фильтрации или аналитической ультрацентрифугации) с расчетной массой мономера, чтобы определить, имеете ли вы димеры, тетрамеры или более высокие олигомеры
- Подготовка образцов для криоэлектронной микроскопии — Оценка размера частиц по молекулярной массе помогает предсказать оптимальные условия подготовки сетки
Фармацевтическая разработка
Для терапевтических белков молекулярная масса — критический атрибут качества:
- Характеризация и тестирование выпуска — Каждая партия требует подтверждения молекулярной массы в указанных пределах (обычно ±0,01% от теоретической)
- Разработка формуляции — Расчет молярности для подготовки буфера и исследований стабильности требует точной молекулярной массы
- Разработка аналитических методов — Настройте методы SEC-MALS, CE-SDS и масс-спектрометрии, используя теоретическую молекулярную массу в качестве эталона
- Регуляторная документация — Подачи IND и BLA требуют подробных расчетов молекулярной массы и экспериментального подтверждения
Альтернативные методы определения молекулярной массы
Хотя этот калькулятор мгновенно дает теоретическую молекулярную массу, другие методы также имеют свое место:
Экспериментальные методы
Масс-спектрометрия (MS) — золотой стандарт для определения реальной молекулярной массы. ESI-MS и MALDI-TOF могут измерять с точностью ±1 Да для белков до ~100 кДа. В отличие от расчетов на основе последовательности, масс-спектрометрия обнаруживает посттрансляционные модификации, протеолитический расщеп и другие изменения. Недостаток: требует очищенного белка и специализированного оборудования.
Эксклюзионная хроматография (SEC) — оценивает молекулярную массу по гидродинамическому радиусу. Быстрый метод, работающий с неочищенными образцами, но точность варьируется (±10-20%). SEC показывает кажущуюся молекулярную массу, которая отличается от реальной для неглобулярных или сильно заряженных белков.
SDS-PAGE — быстрый и дешевый, но наименее точный (±15-30%). Аномальная миграция происходит с сильно кислотными/основными белками, гликопротеинами или белками, которые не полностью денатурируют. Используйте этот метод для приблизительных оценок, а не точной характеризации.
Вычислительные альтернативы
ExPASy ProtParam — инструмент Швейцарского институт биоинформатики, который рассчитывает молекулярную массу, а также изоэлектрическую точку, коэффициент экстинкции, индекс нестабильности и другие параметры. Обращайтесь сюда, когда нужны всесторонние физико-химические свойства, а не только молекулярная масса.
EMBOSS Pepstats — часть набора EMBOSS от EMBL-EBI. Предоставляет статистику аминокислотного состава и молекулярную массу. Полезен при анализе нескольких последовательностей в пакетном режиме.
Специализированные ситуации
Для белков с нестандартными модификациями (фосфорилирование, гликозилирование, липидирование) необходимо вручную добавить массы модификаций к рассчитанной молекулярной массе. Для изотопно-меченых белков (¹⁵N, ¹³C, ²H), используемых в ЯМР, рассчитайте сдвиг массы на основе процента мечения и добавьте его к стандартной молекулярной массе.
История определения молекулярной массы белков
Концепция молекулярной массы была фундаментальной для химии с тех пор, как Джон Дальтон выдвинул свою атомную теорию в начале 19-го века. Однако применение к белкам имеет более недавнюю историю:
Ранняя белковая наука (1800-1920-е годы)
- В 1838 году Йёнс Якоб Берцелиус ввел термин "белок" от греческого слова "proteios", означающего "первичный" или "первостепенный".
- Ранние исследователи белков, такие как Фредерик Сэнгер, начали понимать, что белки состоят из аминокислот.
- Концепция белков как макромолекул с определенной молекулярной массой постепенно формировалась.
Развитие аналитических методов (1930-1960-е годы)
- Изобретение ультрацентрифугирования Теодором Сведбергом в 1920-х годах позволило впервые точно измерять молекулярные массы белков.
- Развитие методов электрофореза в 1930-х годах Арне Тизелиусом предоставило еще один метод оценки размера белков.
- В 1958 году Стэнфорд Мур и Уильям Х. Стейн завершили первую полную аминокислотную последовательность рибонуклеазы, что позволило точно рассчитать молекулярную массу.
Современная эпоха (1970-е годы - настоящее время)
- Развитие методов масс-спектрометрии революционизировало определение молекулярной массы белков.
- Джон Фенн и Коити Танака получили Нобелевскую премию по химии в 2002 году за разработку методов мягкой десорбционной ионизации для масс-спектрометрического анализа биологических макромолекул.
- Вычислительные методы прогнозирования свойств белков, включая молекулярную массу, становились все более сложными и доступными.
- Появление геномики и протеомики в 1990-х и 2000-х годах создало потребность в инструментах высокопроизводительного анализа белков, включая автоматизированные калькуляторы молекулярной массы.
Сегодня расчет молекулярной массы белков является рутинной, но существенной частью белковой науки, облегчаемой такими инструментами, как наш калькулятор, которые делают эти расчеты доступными для исследователей по всему миру.
Ограничения и распространенные проблемы
Что этот калькулятор не может сделать
Этот калькулятор предоставляет теоретическую молекулярную массу из аминокислотной последовательности. Он не учитывает:
Посттрансляционные модификации — Гликозилирование, фосфорилирование, убиквитинирование, метилирование, ацетилирование и десятки других модификаций изменяют молекулярную массу. Для модифицированных белков вам нужно будет добавить массы модификаций вручную или использовать масс-спектрометрию.
Дисульфидные связи — Окисленные цистеины, образующие дисульфидные связи, теряют 2 Да на связь. Калькулятор предполагает, что все цистеины восстановлены (свободная -SH). Вычтите 2,016 Да на дисульфидную связь, если вам известна схема связывания.
Нестандартные аминокислоты — Селеноцистеин (U), пирролизин (O), гидроксипролин или другие необычные остатки не поддерживаются. Замените их ближайшей стандартной аминокислотой или рассчитайте вручную.
Кофакторы и простетические группы — Гемовые группы, ионы металлов, FAD, NAD+ и другие кофакторы не включены. Добавьте их молекулярные массы отдельно, если они плотно связаны.
Распространенные проблемы при устранении неисправностей
Ошибка "Недопустимый код аминокислоты" — Вы включили символы, которые не являются стандартными аминокислотами. Частые виновники: заголовки FASTA (начинающиеся с >), нумерация последовательности, пробелы или неоднозначные коды, такие как X, B, Z. Очистите последовательность, оставив только буквы аминокислот от A до Z.
Результат не соответствует литературным данным — Проверьте, включает ли литературное значение теги (His-tag, GST, MBP), сигнальные пептиды или модификации. Также убедитесь, сообщают ли они о полноразмерном предшественнике или обработанной зрелой форме.
Полоса на геле находится не в том размере — Аномалии миграции в SDS-PAGE распространены. Очень кислые белки мигрируют медленнее, чем предсказано. Сильно основные белки или богатые пролином последовательности мигрируют быстрее. Гликопротеины показывают огромные расхождения. Используйте масс-спектрометрию для точного определения молекулярной массы, а не оценки на основе геля.
Примеры кода
Вот примеры расчета молекулярной массы белка в различных языках программирования:
1' Функция Excel VBA для расчета молекулярной массы белка
2Function ProteinMolecularWeight(sequence As String) As Double
3 ' Молекулярные массы аминокислот
4 Dim aaWeights As Object
5 Set aaWeights = CreateObject("Scripting.Dictionary")
6
7 ' Инициализация молекулярных масс аминокислот
8 aaWeights("A") = 71.03711
9 aaWeights("R") = 156.10111
10 aaWeights("N") = 114.04293
11 aaWeights("D") = 115.02694
12 aaWeights("C") = 103.00919
13 aaWeights("E") = 129.04259
14 aaWeights("Q") = 128.05858
15 aaWeights("G") = 57.02146
16 aaWeights("H") = 137.05891
17 aaWeights("I") = 113.08406
18 aaWeights("L") = 113.08406
19 aaWeights("K") = 128.09496
20 aaWeights("M") = 131.04049
21 aaWeights("F") = 147.06841
22 aaWeights("P") = 97.05276
23 aaWeights("S") = 87.03203
24 aaWeights("T") = 101.04768
25 aaWeights("W") = 186.07931
26 aaWeights("Y") = 163.06333
27 aaWeights("V") = 99.06841
28
29 ' Молекулярная масса воды
30 Const WATER_WEIGHT As Double = 18.01528
31
32 ' Преобразование последовательности в верхний регистр
33 sequence = UCase(sequence)
34
35 ' Расчет общей массы
36 Dim totalWeight As Double
37 totalWeight = 0
38
39 ' Суммирование молекулярных масс отдельных аминокислот
40 Dim i As Integer
41 For i = 1 To Len(sequence)
42 Dim aa As String
43 aa = Mid(sequence, i, 1)
44
45 If aaWeights.Exists(aa) Then
46 totalWeight = totalWeight + aaWeights(aa)
47 Else
48 ' Неверный код аминокислоты
49 ProteinMolecularWeight = -1
50 Exit Function
51 End If
52 Next i
53
54 ' Вычитание потери воды из пептидных связей и добавление концевой воды
55 Dim numAminoAcids As Integer
56 numAminoAcids = Len(sequence)
57
58 ProteinMolecularWeight = totalWeight - (numAminoAcids - 1) * WATER_WEIGHT + WATER_WEIGHT
59End Function
60
61' Использование в Excel:
62' =ProteinMolecularWeight("ACDEFGHIKLMNPQRSTVWY")
631def calculate_protein_molecular_weight(sequence):
2 """
3 Рассчитать молекулярную массу белка по его аминокислотной последовательности.
4
5 Аргументы:
6 sequence (str): Последовательность белка с использованием однобуквенных кодов аминокислот
7
8 Возвращает:
9 float: Молекулярная масса в дальтонах (Да)
10 """
11 # Молекулярные массы аминокислот
12 aa_weights = {
13 'A': 71.03711,
14 'R': 156.10111,
15 'N': 114.04293,
16 'D': 115.02694,
17 'C': 103.00919,
18 'E': 129.04259,
19 'Q': 128.05858,
20 'G': 57.02146,
21 'H': 137.05891,
22 'I': 113.08406,
23 'L': 113.08406,
24 'K': 128.09496,
25 'M': 131.04049,
26 'F': 147.06841,
27 'P': 97.05276,
28 'S': 87.03203,
29 'T': 101.04768,
30 'W': 186.07931,
31 'Y': 163.06333,
32 'V': 99.06841
33 }
34
35 # Молекулярная масса воды
36 WATER_WEIGHT = 18.01528
37
38 # Преобразование последовательности в верхний регистр
39 sequence = sequence.upper()
40
41 # Проверка последовательности
42 for aa in sequence:
43 if aa not in aa_weights:
44 raise ValueError(f"Неверный код аминокислоты: {aa}")
45
46 # Суммирование молекулярных масс отдельных аминокислот
47 total_weight = sum(aa_weights[aa] for aa in sequence)
48
49 # Вычитание потери воды из пептидных связей и добавление концевой воды
50 num_amino_acids = len(sequence)
51 molecular_weight = total_weight - (num_amino_acids - 1) * WATER_WEIGHT + WATER_WEIGHT
52
53 return molecular_weight
54
55# Пример использования:
56sequence = "MVKMDVYKGSSIGDSMSRSM"
57mw = calculate_protein_molecular_weight(sequence)
58print(f"Молекулярная масса: {mw:.2f} Да")
591function calculateProteinMolecularWeight(sequence) {
2 // Молекулярные массы аминокислот
3 const aaWeights = {
4 'A': 71.03711,
5 'R': 156.10111,
6 'N': 114.04293,
7 'D': 115.02694,
8 'C': 103.00919,
9 'E': 129.04259,
10 'Q': 128.05858,
11 'G': 57.02146,
12 'H': 137.05891,
13 'I': 113.08406,
14 'L': 113.08406,
15 'K': 128.09496,
16 'M': 131.04049,
17 'F': 147.06841,
18 'P': 97.05276,
19 'S': 87.03203,
20 'T': 101.04768,
21 'W': 186.07931,
22 'Y': 163.06333,
23 'V': 99.06841
24 };
25
26 // Молекулярная масса воды
27 const WATER_WEIGHT = 18.01528;
28
29 // Преобразование последовательности в верхний регистр
30 sequence = sequence.toUpperCase();
31
32 // Проверка последовательности
33 for (let i = 0; i < sequence.length; i++) {
34 const aa = sequence[i];
35 if (!aaWeights[aa]) {
36 throw new Error(`Неверный код аминокислоты: ${aa}`);
37 }
38 }
39
40 // Суммирование молекулярных масс отдельных аминокислот
41 let totalWeight = 0;
42 for (let i = 0; i < sequence.length; i++) {
43 totalWeight += aaWeights[sequence[i]];
44 }
45
46 // Вычитание потери воды из пептидных связей и добавление концевой воды
47 const numAminoAcids = sequence.length;
48 const molecularWeight = totalWeight - (numAminoAcids - 1) * WATER_WEIGHT + WATER_WEIGHT;
49
50 return molecularWeight;
51}
52
53// Пример использования:
54const sequence = "ACDEFGHIKLMNPQRSTVWY";
55try {
56 const mw = calculateProteinMolecularWeight(sequence);
57 console.log(`Молекулярная масса: ${mw.toFixed(2)} Да`);
58} catch (error) {
59 console.error(error.message);
60}
611import java.util.HashMap;
2import java.util.Map;
3
4public class ProteinMolecularWeightCalculator {
5 private static final Map<Character, Double> aminoAcidWeights = new HashMap<>();
6 private static final double WATER_WEIGHT = 18.01528;
7
8 static {
9 // Инициализация молекулярных масс аминокислот
10 aminoAcidWeights.put('A', 71.03711);
11 aminoAcidWeights.put('R', 156.10111);
12 aminoAcidWeights.put('N', 114.04293);
13 aminoAcidWeights.put('D', 115.02694);
14 aminoAcidWeights.put('C', 103.00919);
15 aminoAcidWeights.put('E', 129.04259);
16 aminoAcidWeights.put('Q', 128.05858);
17 aminoAcidWeights.put('G', 57.02146);
18 aminoAcidWeights.put('H', 137.05891);
19 aminoAcidWeights.put('I', 113.08406);
20 aminoAcidWeights.put('L', 113.08406);
21 aminoAcidWeights.put('K', 128.09496);
22 aminoAcidWeights.put('M', 131.04049);
23 aminoAcidWeights.put('F', 147.06841);
24 aminoAcidWeights.put('P', 97.05276);
25 aminoAcidWeights.put('S', 87.03203);
26 aminoAcidWeights.put('T', 101.04768);
27 aminoAcidWeights.put('W', 186.07931);
28 aminoAcidWeights.put('Y', 163.06333);
29 aminoAcidWeights.put('V', 99.06841);
30 }
31
32 public static double calculateMolecularWeight(String sequence) throws IllegalArgumentException {
33 // Преобразование последовательности в верхний регистр
34 sequence = sequence.toUpperCase();
35
36 // Проверка последовательности
37 for (int i = 0; i < sequence.length(); i++) {
38 char aa = sequence.charAt(i);
39 if (!aminoAcidWeights.containsKey(aa)) {
40 throw new IllegalArgumentException("Неверный код аминокислоты: " + aa);
41 }
42 }
43
44 // Суммирование молекулярных масс отдельных аминокислот
45 double totalWeight = 0;
46 for (int i = 0; i < sequence.length(); i++) {
47 totalWeight += aminoAcidWeights.get(sequence.charAt(i));
48 }
49
50 // Вычитание потери воды из пептидных связей и добавление концевой воды
51 int numAminoAcids = sequence.length();
52 double molecularWeight = totalWeight - (numAminoAcids - 1) * WATER_WEIGHT + WATER_WEIGHT;
53
54 return molecularWeight;
55 }
56
57 public static void main(String[] args) {
58 try {
59 String sequence = "MVKMDVYKGSSIGDSMSRSM";
60 double mw = calculateMolecularWeight(sequence);
61 System.out.printf("Молекулярная масса: %.2f Да%n", mw);
62 } catch (IllegalArgumentException e) {
63 System.err.println(e.getMessage());
64 }
65 }
66}
671#include <iostream>
2#include <string>
3#include <map>
4#include <stdexcept>
5#include <algorithm>
6
7double calculateProteinMolecularWeight(const std::string& sequence) {
8 // Молекулярные массы аминокислот
9 std::map<char, double> aaWeights = {
10 {'A', 71.03711},
11 {'R', 156.10111},
12 {'N', 114.04293},
13 {'D', 115.02694},
14 {'C', 103.00919},
15 {'E', 129.04259},
16 {'Q', 128.05858},
17 {'G', 57.02146},
18 {'H', 137.05891},
19 {'I', 113.08406},
20 {'L', 113.08406},
21 {'K', 128.09496},
22 {'M', 131.04049},
23 {'F', 147.06841},
24 {'P', 97.05276},
25 {'S', 87.03203},
26 {'T', 101.04768},
27 {'W', 186.07931},
28 {'Y', 163.06333},
29 {'V', 99.06841}
30 };
31
32 // Молекулярная масса воды
33 const double WATER_WEIGHT = 18.01528;
34
35 // Преобразование последовательности в верхний регистр
36 std::string upperSequence = sequence;
37 std::transform(upperSequence.begin(), upperSequence.end(), upperSequence.begin(), ::toupper);
38
39 // Проверка последовательности
40 for (char aa : upperSequence) {
41 if (aaWeights.find(aa) == aaWeights.end()) {
42 throw std::invalid_argument(std::string("Неверный код аминокислоты: ") + aa);
43 }
44 }
45
46 // Суммирование молекулярных масс отдельных аминокислот
47 double totalWeight = 0.0;
48 for (char aa : upperSequence) {
49 totalWeight += aaWeights[aa];
50 }
51
52 // Вычитание потери воды из пептидных связей и добавление концевой воды
53 int numAminoAcids = upperSequence.length();
54 double molecularWeight = totalWeight - (numAminoAcids - 1) * WATER_WEIGHT + WATER_WEIGHT;
55
56 return molecularWeight;
57}
58
59int main() {
60 try {
61 std::string sequence = "ACDEFGHIKLMNPQRSTVWY";
62 double mw = calculateProteinMolecularWeight(sequence);
63 std::cout << "Молекулярная масса: " << std::fixed << std::setprecision(2) << mw << " Да" << std::endl;
64 } catch (const std::exception& e) {
65 std::cerr << "Ошибка: " << e.what() << std::endl;
66 }
67
68 return 0;
69}
70Часто задаваемые вопросы
Что такое молекулярная масса белка и почему это важно?
Молекулярная масса белка - это общая масса белка, выраженная в дальтонах (Да) или килодальтонах (кДа), где 1 кДа = 1 000 Да. Это сумма масс всех аминокислот минус молекулы воды, выделяющиеся при образовании пептидных связей.
Почему это важно: вы будете постоянно использовать это значение в лаборатории. Настраиваете SDS-PAGE? Вам нужна молекулярная масса для выбора процента геля и прогнозирования положения полосы. Проводите гель-фильтрацию? Молекулярная масса определяет, какую смолу колонки использовать. Анализируете данные масс-спектрометрии? Сравните экспериментальную массу с теоретической молекулярной массой, чтобы обнаружить неожиданные модификации или деградацию.
[Перевод продолжается в том же духе для всех остальных разделов...]
Ссылки и дополнительные материалы
-
Международный союз теоретической и прикладной химии (IUPAC) - Атомные веса и изотопные составы - NIST предоставляет официальные значения атомной массы, используемые в расчетах молекулярной массы.
-
Gasteiger E., Hoogland C., Gattiker A. и др. (2005) - Инструменты идентификации и анализа белков на сервере ExPASy. В: Walker J.M. (ред.) Справочник протоколов протеомики. Humana Press. Этот всеобъемлющий справочник описывает вычислительные методы анализа белков.
-
Консорциум UniProt - Универсальный ресурс белков предоставляет проверенные данные о последовательностях белков, включая молекулярную массу, посттрансляционные модификации и структурные особенности для миллионов белков.
-
Nelson, D. L., & Cox, M. M. (2017) - Принципы биохимии Ленинджера (7-е изд.). W.H. Freeman. Стандартный учебник по биохимии, охватывающий структуру, функцию и методы анализа белков.
-
Инструмент ExPASy ProtParam - Вычислительный инструмент Швейцарского институт биоинформатики для расчета молекулярной массы и других физико-химических свойств белковых последовательностей.
-
Steen, H., & Mann, M. (2004) - Азбука (и XYZ) секвенирования пептидов. Nature Reviews Molecular Cell Biology, 5(9), 699-711. Авторитетный обзор методов масс-спектрометрии для определения молекулярной массы белков.
-
Биоинформационные ресурсы EMBL-EBI - Европейский институт биоинформатики предоставляет общедоступные инструменты и базы данных для анализа и характеристики белковых последовательностей.
-
Kinter, M., & Sherman, N. E. (2005) - Секвенирование и идентификация белков с использованием тандемной масс-спектрометрии. Wiley-Interscience. Подробный технический справочник для экспериментального определения молекулярной массы.
Готовы рассчитать молекулярную массу белка? Введите последовательность аминокислот выше, чтобы получить мгновенные и точные результаты. Независимо от того, готовите ли вы гель SDS-PAGE, интерпретируете данные масс-спектрометрии или разрабатываете протоколы очистки, этот калькулятор предоставит вам теоретическую молекулярную массу, необходимую для уверенного планирования эксперимента.