Из Википедии, бесплатной энциклопедии
  (Перенаправлено из BALLView )
Перейти к навигации Перейти к поиску

BALL (произносится как «мяч») - это программное обеспечение, состоящее из универсальной библиотеки биохимических алгоритмов (BALL) структуры классов C ++ , набора алгоритмов и структур данных для молекулярного моделирования и вычислительной структурной биоинформатики , интерфейса Python для этой библиотеки и графического пользовательского интерфейса. в BALL, программу просмотра молекул BALLView .

BALL превратился из коммерческого продукта в бесплатное программное обеспечение с открытым исходным кодом, распространяемое по лицензии GNU Lesser General Public License (LGPL). BALLView находится под лицензией GNU General Public License (GPL).

BALL и BALLView были портированы на операционные системы Linux , macOS , Solaris и Windows .

Средство просмотра молекул BALLView, также разработанное командой проекта BALL, представляет собой приложение BALL на C ++ с использованием Qt и OpenGL с трассировщиком лучей RTFact в реальном времени в качестве серверной части рендеринга . Для обоих BALLView предлагает трехмерную и стереоскопическую визуализацию в нескольких различных режимах и прямое применение алгоритмов библиотеки BALL через графический интерфейс пользователя.

Проект BALL разработан и поддерживается группами Саарландского университета , Майнцского университета и Тюбингенского университета . И библиотека, и программа просмотра активно используются для обучения и исследований. Пакеты BALL стали доступны в проекте Debian в апреле 2010 г. [1]

Ключевые особенности [ править ]

  • Интерактивный молекулярный рисунок и конформационное редактирование (+)
  • Чтение и запись молекулярных форматов файлов (PDB, MOL2, MOL, HIN, XYZ, KCF, SD, AC)
  • Чтение вторичных источников данных, например (DCD, DSN6, GAMESS, JCAMP, SCWRL, TRR)
  • Генерация молекул и согласование выражений SMILES и SMARTS с молекулами
  • Оптимизация геометрии
  • Минимайзер и классы молекулярной динамики
  • Поддержка силовых полей (MMFF94, AMBER, CHARMM) для подсчета очков и минимизации энергии
  • Интерфейс Python и функциональность сценариев
  • Инфраструктура плагина (3D Space-Navigator, отслеживание головы на основе WII *, OpenSim *)
  • Молекулярная графика (3D, стереоскопический просмотр, трассировка лучей *) (+)
  • исчерпывающая документация (Wiki, фрагменты кода, онлайн-документация по классам, средство отслеживания ошибок)
  • комплексные регрессионные тесты
  • Формат проекта BALL для презентаций и совместного обмена данными (+)
  • QSAR *
  • ЯМР
  • редактируемые ярлыки (+)

(*) Экспериментальная функция следующей версии (+) Функция BALLView

Библиотека BALL [ править ]

Библиотека биохимических алгоритмов (BALL) - это комплексная среда быстрой разработки приложений для структурной биоинформатики. Он был тщательно разработан с учетом потребностей экспертов и новичков в программировании. Пользователи могут использовать богатые функции BALL, при этом им предлагается обширная структура структур данных и алгоритмов C ++, а также множество стандартных алгоритмов структурной биоинформатики. Новые алгоритмы могут быть легко добавлены.

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

Импорт-экспорт файлов

BALL поддерживает широкий спектр молекулярных форматов файлов, таких как PDB, MOL2, MOL, HIN, XYZ, KCF, SD, AC, и вторичные источники данных, такие как DCD, DSN6, GAMESS, JCAMP, SCWRL и TRR. Молекулы также могут быть созданы с использованием пептидного строителя BALL или на основе выражений SMILES.

Общий структурный анализ

Дальнейшая подготовка и проверка структуры возможны, например, с помощью процессоров Kekuliser-, Aromaticity-, Bondorder-, HBond- и Secondary Structure. Библиотека фрагментов автоматически выводит недостающую информацию, например, об атомах водорода или связях белка. Библиотека Rotamer позволяет определять, назначать и переключаться между наиболее вероятными конформациями боковой цепи белка. Процессоры преобразования BALL управляют созданием действительных трехмерных структур. Его механизм выбора позволяет указывать части молекулы простыми выражениями (SMILES, SMARTS, типы элементов). Этот выбор может использоваться всеми классами моделирования, такими как процессоры или силовые поля.

Молекулярная механика

Быстрые и стабильные реализации популярных силовых полей CHARMM, Amber и MMFF94 могут быть объединены с классами минимизатора и моделирования BALL (крутой спуск, сопряженный градиент, L-BFGS и смещенный L-VMM).

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

Пример [ править ]

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

 используя  пространство имен  std ;  используя  пространство имен  BALL ;  int  main ()  {  // читаем PDB-файл  PDBFile  file ( "test.pdb" );  Система  S ;  файл  >>  S ;  файл . закрыть ();  // добавляем недостающую информацию  // например, атомы водорода и связи  FragmentDB  fragment_db ( "" );  S . применить ( fragment_db . normalize_names );  S . применить ( fragment_db . add_hydrogens );  S . применить ( fragment_db . build_bonds );  // проверяем заряды, длину связей  // и отсутствующие атомы  ResidueChecker  checker ( fragment_db );  S . применить ( проверить );  // создаем  ЯНТАРНОЕ  силовое поле AmberFF FF ;  S . deselect ();  FF . настройка ( S );  Селектор  селектора ( «элемент (H)» );  S . применить ( селектор );  // оптимизируем позиции водорода  ConjugateGradientMinimizer  minimizer ;  минимизатор . настройка ( FF );  минимизатор . setEnergyOutputFrequency ( 1 );  минимизатор . минимизировать ( 50 );  // написать PDB файла  файл . open ( "test_out.pdb" ,  ios :: out );  файл  <<  S ;  файл . закрыть ();  }

Интерфейс Python [ править ]

SIP используется для автоматического создания классов Python для всех соответствующих классов C ++ в библиотеке BALL, чтобы обеспечить одинаковые интерфейсы классов. Классы Python имеют то же имя, что и классы C ++, поэтому перенос кода, использующего BALL, с C ++ на Python и наоборот, обычно является тривиальной задачей.

Например, приведенный выше код C ++ переводится как:

# Пример файла  =  PDBFile ( "test.pdb" ) system  =  System () файл . прочитать ( системный ) файл . закрыть () # Добавьте недостающую информацию # например, водороды и связи. fragment_db  =  FragmentDB ( "" ) системы . применить ( fragment_db . normalize_names ) system . применить ( fragment_db . add_hydrogens ) систему . применить ( fragment_db . build_bonds ) # Проверьте заряды, длину связей, # и недостающие атомы. Проверка  =  ResidueChecker ( fragment_db ) система . применить ( проверить ) # Создайте ЯНТАРНОЕ силовое поле. FF  =  AmberFF () системы . deselect () FF . setup ( system ) selector  =  Селектор ( "элемент (H)" ) system . применить ( селектор ) # Оптимизировать позиции водорода. минимизант  =  ConjugateGradientMinimizer () минимизант . setup ( FF ) Minimizer . setEnergyOutputFrequency ( 1 ) минимизатор . минимизировать ( 50 ) # Записать файл PDB. выходной_файл  =  PDBFile ( "test_out.pdb" ,  File . MODE_OUT ) выходной_файл . напишите ( системный ) файл Outfile . закрыть ()

Интерфейс Python полностью интегрирован в приложение просмотра BALLView и, таким образом, позволяет напрямую визуализировать результаты, вычисленные с помощью скриптов Python. Кроме того, BALLView можно управлять из интерфейса сценариев, а повторяющиеся задачи можно автоматизировать.

BALLView [ править ]

BALLView - это автономное приложение BALL для моделирования и визуализации молекул. Это также основа для разработки функций молекулярной визуализации.

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

BALLView поддерживает несколько современных методов визуализации и ввода, таких как, например, различные стереорежимы, космический навигатор и устройства ввода с поддержкой VRPN.

На CeBIT 2009 BALLView был широко представлен как первая полная интеграция технологии трассировки лучей в реальном времени в программу просмотра молекул и инструмент моделирования. [2]

См. Также [ править ]

  • Список систем молекулярной графики
  • Список бесплатных программных пакетов и пакетов с открытым исходным кодом
  • Сравнение программного обеспечения для моделирования молекулярной механики
  • Программное обеспечение для молекулярного дизайна
  • Молекулярная графика
  • Редактор молекул

Ссылки [ править ]

  1. ^ Debian: Пакет с исходным кодом: Ball
  2. ^ «BALLView с возможностями трассировки лучей в реальном времени, продемонстрированная на официальной пресс-конференции Intel», веб-сайт BALL, 3 марта 2009 г. Архивировано 25 июля 2011 г. на Wayback Machine Доступ 13 декабря 2010 г.

Дальнейшее чтение [ править ]

  • Хильдебрандт, Андреас; Дехоф, Анна Катарина; Рураинский, Александр; Берч, Андреас; Шуман, Марсель; Туссен, Нора С; Молл, Андреас; Штокель, Даниэль; Никель, Стефан; Мюллер, Сабина С; Ленгоф, Ганс-Петер; Кольбахер, Оливер (2010). «ШАР - Библиотека биохимических алгоритмов 1.3» . BMC Bioinformatics . 11 : 531 и далее. DOI : 10.1186 / 1471-2105-11-531 . PMC  2984589 . PMID  20973958 .
  • Кольбахер, Оливер; Ленгоф, Ганс-Петер (2000). «ШАР - быстрое прототипирование программного обеспечения в вычислительной молекулярной биологии». Биоинформатика . 16 (9): 815–24. DOI : 10.1093 / биоинформатики / 16.9.815 . PMID  11108704 .
  • Молл, Андреас; Хильдебрандт, Андреас; Ленгоф, Ганс-Петер; Кольбахер, Оливер (2005). «BALLView: инструмент для исследований и обучения молекулярному моделированию» . Биоинформатика . 22 (3): 365–6. DOI : 10.1093 / биоинформатики / bti818 . PMID  16332707 .
  • Молл, Андреас; Хильдебрандт, Андреас; Ленгоф, Ганс-Петер; Кольбахер, Оливер (2006). «BALLView: объектно-ориентированная структура молекулярной визуализации и моделирования». Журнал компьютерного молекулярного дизайна . 19 (11): 791–800. DOI : 10.1007 / s10822-005-9027-х . PMID  16470421 .

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • Веб-страница BALLView
  • Библиотека кода
  • Галерея
  • Учебники