ОБЪЕДИНЕННЫЙ   ИНСТИТУТ   ЯДЕРНЫХ   ИССЛЕДОВАНИЙ switch to english
ЛАБОРАТОРИЯ   ИНФОРМАЦИОННЫХ   ТЕХНОЛОГИЙ

БИБЛИОТЕКИ   ПРОГРАММ
lit
cern


Библиотека программ  CERNLIB



Библиотека CERNLIB - большая коллекция программ общего назначения, распространяемых на исходном языке, в объектном коде и в виде готовых программ. Большинство этих программ были разработаны в CERN и ориентированы на потребности физических исследовательских лабораторий. Однако многие из этих программ предназначены для решения общих математических задач, для обработки данных, поэтому область их применения значительно шире.

Содержание и организация библиотеки

Библиотека CERNLIB - это нескольких тысяч подпрограмм и самостоятельных программ, которые сгруппированы в несколько сотен программных пакетов. 80% программ написаны на Фортране (используется стандарт языка Фортран 77), остальные - на языках ассемблера и C.

Каждому пакету присвоен уникальный индекс, состоящий из латинской буквы и 3 или 4 цифр. Буква используется для идентификации тематического раздела, к которому относится программный пакет. Пакет состоит из одной или нескольких взаимосвязанных подпрограмм с одним общим индексом и с одним или более ENTRY-входами. Пакеты программ кратко описаны в Short Writeups и при необходимости - более подробно в Long Writeups (MINUIT, GEANT).

Программы библиотеки объединяются в несколько независимых библиотек подпрограмм, вызываемых из программ на Фортране, и самостоятельных программ. Список отдельных библиотек и пакетов приведен ниже.

  • KERNLIB - библиотека основных (базовых) подпрограмм и функций;
  • MATHLIB - математические подпрограммы, включающие генераторы случайных чисел;
  • PACKLIB - библиотека пакетов программ HEPDB, HBOOK, ZEBRA и др.;
  • GRAFLIBS - графические библиотеки HIGZ, HPLOT и др.;
  • PAWLIB - библиотека PAW, включающая COMIS, PAW и SIGMA;
  • Monte Carlo libraries - Монте Карло генераторы, обычно существующие как самостоятельные библиотеки;
  • Modules - модули, такие, как PAW, FATMEN;
  • GEANT - программа для моделирования прохождения элементарных частиц через вещество с использованием методов Монте-Карло.

Разработка и поддержка CERNLIB, использующей Фортран 77, была прекращена в пользу пакета объектно-ориентированных программ и библиотек ROOT, написанных на C++. Также в CERN на объектно-ориентированном языке С++ разработан Geant4, являющийся развитием предыдущих версий GEANT.

Дальнейшая поддержка CERNLIB осуществляется отдельными энтузиастами. Например, 64-битную версию CERNLIB для современных систем и компиляторов (gcc4/gfortran) можно найти на сайте DESY.

Использование библиотеки

Тексты (Sources) библиотеки программ CERNLIB 2006 года можно найти здесь в разделе "2006 sources (README, compressed tar files, include files, files)".

Библиотека CERNLIB на Центральном информационно-вычислительном комплексе ОИЯИ (ЦИВК) размещается в директориях:

  1. /usr/lib64/cernlib/2006-g77/    - для g77
  2. /usr/lib64/cernlib/2006/            - для gfortran

Указать нужную библиотеку (например, mathlib) при вызове компиляторов с языка Фортан можно следующим образом:

  1. g77 test.f -L/usr/lib64/cernlib/2006-g77/lib -lmathlib
  2.        или:
  3. gfortran test.f -L/usr/lib64/cernlib/2006/lib -lmathlib

Архивы некоторых библиотек программ для платформы Windows:

  1. Compaq Visual Fortran - MATHLIB , PACKLIB , KERNLIB , PAWLIB , GRAFLIB ;
  2. Fortran Power Station - MATHLIB , PACKLIB , KERNLIB .

Одна из часто используемых программ библиотеки CERNLIB - MINUIT (D506). Здесь предлагаются отдельно исходные тексты программы MINUIT, пример использования и библиотека для Scientific Linux 6, полученная с помощью GNU Fortran g77 на ЦИВК.

С дополнительной информацией о CERNLIB можно познакомиться на сайте ЛИТ в разделе ЦИВК.

Условия использования библиотеки

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



15.09.2016
Т.Ф.Сапожникова
Ссылка на старый сайт

ЛИТ ОИЯИ
г.Дубна
Московской области
Телефон:+7(49621)62-752
E-mail: tsap@jinr.ru