CERNLIB НА ПЛАТФОРМЕ LINUX |
|
В настоящее время в состав ПО ферм входят библиотеки CERNLIB 2004г. |
CERNLIB библиотеки и пакеты программ, разработанные в CERN для приложений физики высоких энергий, включают: |
- анализ и представление данных;
- моделирование ядерно-физических процессов, проводка треков для электронных установок;
- численные алгоритмы;
- сопровождение программ;
- пересылка файлов; сетевые серверы;
|
|
CERNLIB НА ПЛАТФОРМЕ LINUX/IBM PC
|
|
Постановка CERNLIB велась на Linux RadHat (release 4.0), как на
одной из наиболее популярной и динамически развивающейся реализации Linux |
Характеристики : |
Ethernet adapter
Linux kernel 0.24
GCC 2.7.2 wiht G77 0.5.18
ld.so_1.7.14
binutils-2.7.0.2-4
libc-5.3.12
libm-5.0.6
XFree86-3.2.4 |
Исходные файлы занимают ~ 100Mb, библиотеки , исполняемые модули и include
files - ~100Mb . |
100Mb дискового пространства необходимо для полной двоичной версии CERNLIB |
|
Cтруктура CERNLIB . |
CERNLIB расположен в древовидной файловой структуре с корневым |
/сern/97a - программное обеспечение общего назначения,
версия 95a
/bin - командные (script) файлы, исполняемые модули
/lib - объектные библиотеки, файлы с данными для
Монте-Карло программ
/src - исходные файлы
|
|
Режимы компиляции : |
1. Fortran программ :
g77 -c -O -fno-backslash -fno-automatic
-DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX
2. C процедур :
gcc -c -O2 -m486 -fno-strength-reduce
-fomit-frame-pointer -Dlinux -D__i386__
-D_POSIX_SOURCE -D_BSD_SOURCE
-D_GNU_SOURCE -DX_LOCALE -DFUNCPROTO=15
-DNARROWPROTO -DCERNLIB_LINUX
-DCERNLIB_UNIX -DCERNLIB_LNX
|
Для создания CERN окружения в стартовый файл .profile (bash) добавлены
следующие строки : |
export CERN=/cern
export CERN_LEVEL=97a
export CERN_ROOT=$CERN/$CERN_LEVEL
export BIN=$CERN_ROOT/bin
export LIB=$CERN_ROOT/lib
|
Там же расширяется путь поиска для script-файлов и исполняемых модулей
за счет каталогов $BIN : |
PATH=$CERN_ROOT/bin:$PATH |
|
|
ПРОГРАММНЫЕ БИБЛИОТЕКИ И ПАКЕТЫ
|
|
|
1. Библиотеки и пакеты общего назначения |
Ниже под индексом понимается индекс программы или пакета в CERNLIB [1] |
Каталог $LIB : |
|
Библиотека |
Пакет |
Индекс |
Краткое описание |
kernlib |
|
|
ядро научно-технической библиотеки CERN |
|
kernfor |
|
векторы, матрицы, математические |
|
kernbit |
|
и системно-ориентированные функции |
|
kernnum |
|
и подпрограммы библиотеки CERN |
packlib |
|
|
библиотека основных прикладных пакетов |
|
cspack |
Q124 |
подпрограммы и утилиты "CLIENT-SERVER" |
|
minuit |
D506 |
минимизация функций и анализ ошибок |
|
kuip |
I202 |
интерактивный пользовательский интерфейс |
|
epio |
I101 |
ввод/вывод экспериментальных данных |
|
hbook |
Y250 |
статистический анализ и гистограммирование |
|
zebra |
Q100 |
динамическая память и структуры данных |
|
ffread |
I302 |
ввод данных в свободном формате |
mathlib |
|
|
библиотека математических программ |
|
bvsl |
F123 |
работа с векторами битов |
|
gen |
|
численные алгоритмы |
|
mpa |
A105 |
арифметика с плавающей точкой |
|
|
2. Графические библиотеки и пакеты : |
Библиотека |
Пакет |
Индекс |
Краткое описание |
graflib |
hplot |
Y251 |
графический интерфейс к HBOOK для рисования гистограмм |
|
dzdoc |
Q101 |
генерация и сопровождение документации по ZEBRA структурам |
grafX11 |
higzX11 |
Q120 |
интерфейс к ZEBRA и графическoму пакету X11 |
pawlib |
pawlib |
Q121 |
рабочее место для физического анализа |
|
comis |
I210 |
компиляция и интерпретация FORTRAN- программ |
|
sigma |
Q122 |
пакет для интерактивных графических математических приложений |
|
3. Монте-Карло библиотеки и пакеты : |
Библиотека |
Пакет |
Индекс |
Краткое описание |
geant321 |
|
W5013 |
описание детекторов и средства моделирования [26] |
|
geant321 |
|
генерация и проводка треков через экспериментальную установку,
геометрия установки,
герератор адронных ливней (FLUKA),
генератор адронных ливней (GHEISHA),
экстраполяция и учет ошибок,
интерактивный пакет |
ariadne |
ariadne |
W5052 |
QCD каскады в цветной дипольной формулировке |
cojets |
cojets |
W5040 |
Pbar-P и P-P столкновения при высоких энергиях |
eurodec |
eurodec |
W5058 |
фрагментация и распады кварков, di-кварков и тяжелых лептонов |
fritiof |
fritiof |
W5051 |
адрон-адрон, адрон-ядро и ядро-ядро столкновения |
herwig |
herwig58 |
W5037 |
реакции эмиссии адронов с интерференцией глюонов |
isajet |
isajet713 |
|
P-P и Pbar-P взаимодействия при высоких энергиях |
jetset |
jetset74 |
W5035 |
фрагментация струй и e+e- аннигиляция |
|
pythia57 |
W5035 |
адронные взаимодействия с большими pT |
lepto |
lepto62 |
W5045 |
глобоко неупругое лептон-нуклон рассеивание |
pdhlib |
pdflib |
W5051 |
функции партонных плотностей |
photos |
photos |
W5049 |
радиционные поправки в распадах |
|
|
|
SCRIPT ФАЙЛЫ И ИСПОЛНЯЕМЫЕ МОДУЛИ |
|
Файл Программа Индекс Краткое описание |
1. Каталог $BIN : |
cernlib подключение CERN библиотек при
сборке программ
gxint компиляция, сборка и запуск
интерактивной GEANT-программы
PAW программы
paw pawX11 Q121 рабочее место для физического анализа
(распределенная версия с X11)
pawserv Paw сервер
KUIP программы
kuipc компилятор CDF-файлов
ZEBRA программы
zftp пересылка текстовых, RZ- и FZ-файлов
zserv Zebra сервер
HEPDB программы
hepdb Q180 интерактивный интерфейс
к базам данных
cdserv HEPDB сервер
cdmake создание и модификация
cdmove баз данных
Новые PATCHY программы
nypatchy сборка нужной версии программы
nyshell создание script-файла для компиляции
после nypatchy
nylist печать пронумерованного CAR-файла
nyindex печать индексов CAR-файла
nydiff сравнение CAR-файлов
nytidy копирование CAR-файлов
nycheck проверка управляющих PATCHY-строк
в CAR-файле
|
2. Каталог $CERN/patchy/4.15/bin |
PATCHY программы |
|
|
ypatchy |
L400 |
сборка нужной версии программы |
|
yfrceta |
L400 |
преобразование CETA-файла в двоичный |
|
ytoceta |
L400 |
PAM-файл и обратно |
|
yshift |
L400 |
копирование PAM-файла с преобразованием помеченных строк |
|
yedit |
L400 |
редактирование PAM-файлов с помощью файла коррекции |
|
ycompar |
L400 |
сравнение PAM-файлов |
|
ytobcd |
L400 |
преобразование двоичного PAM-файла в |
|
ytobin |
L400 |
текстовый и обратно |
ylist |
ylistb |
|
печать PAM-файла |
yindex |
yindexb |
|
печать индексов PAM-файла |
|
fcasplit |
|
разделение файла на составляющие его программные модули, создание script
и make-файлов для их компиляции |
|
3. Каталог $CERN/cmz/1.47/bin |
cmz система сопровождения программ
CMZ на основе пакета ZEBRA
|
|
|
ДОСТУП К CERNLIB |
|
|
CERNLIB доступен для анонимных FTP пользователей на linux4u:/pub/CERN/97a
: в ввиде скомрессированных TAR-файлов в следующих каталогах : |
00install |
cmz.tar.gz |
lib.tar.gz |
patchy.contents |
0compiled-on |
compiled-on |
man.contents |
patchy.tar.gz |
bin.contents |
include.contents |
man.tar.gz |
|
bin.tar.gz |
include.tar.gz |
mgr.contents |
|
cmz.contents |
lib.contents |
mgr.tar.gz |
|
|
|
bin.tar.gz | - каталог $BIN |
bin.contents | |
lib.tar.gz | - основные библиотеки |
lib.contents | |
geant321.tar.gz | - GEANT 321 |
mclibs.tar.gz | - Монте-Карло библиотеки |
patchy.tar.gz | - PATCHY 4.15 |
cmz.tar.gz | - CMZ 1.47 |
|
|
Там же находится файл 00install, 0compiled-on с кратким описанием
инсталляции CERNLIB, файлы *.contents с листингом содержимого TAR-файлов |
|
P.S. Существует версия cernlib-97a
для Linux c компилятором fortran-Absoft. |
Режимы компиляции: |
1. Fortran PROGRAMM :
f77 -8 -V -w -W -f -N9 -N110
-DCERNLIB_LINUX -DCERNLIB_UNIX
-DCERNLIB_LNX -DAbsoftUNIXFortran
2. C PROGRAMM :
gcc -O2 -m486 -fno-strength-reduce
-fomit-frame-pointer -b i486-linuxelf
-Dlinux -D__i386__ -D_POSIX_SOURCE
-D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCAL
|
При необходимости обращаться к Громовой Н. ,
email: grom@cv.jinr.ru |
|
|