geant4
Розбіжності
Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версійПопередня ревізіяНаступна ревізія | Попередня ревізія | ||
| geant4 [2016/04/02 22:25] – Установка G4MPI + новые пути wombat | geant4 [2021/11/10 08:47] (поточний) – [Файлы данных] Обновление до версии 10.7 wombat | ||
|---|---|---|---|
| Рядок 6: | Рядок 6: | ||
| ===== Из исходников ===== | ===== Из исходников ===== | ||
| - | Будем следовать рецепту((http:// | + | Будем следовать рецепту((https://geant4-userdoc.web.cern.ch/ |
| apt-get install build-essential cmake libexpat1-dev | apt-get install build-essential cmake libexpat1-dev | ||
| Рядок 14: | Рядок 14: | ||
| apt-get install libglu1-mesa-dev libxmu-dev | apt-get install libglu1-mesa-dev libxmu-dev | ||
| - | Если планируется использовать интерфейс | + | Если планируется использовать интерфейс |
| - | apt-get install | + | apt-get install |
| + | |||
| + | Если планируется использовать описание геометрии в формате [[https:// | ||
| + | |||
| + | apt-get install libxerces-c-dev | ||
| mkdir / | mkdir / | ||
| cd / | cd / | ||
| - | wget -cS 'http:// | + | wget -cS 'https://geant4-data.web.cern.ch/releases/geant4.10.07.p02.tar.gz' |
| - | tar -xvf geant4.10.00.p02.tar.gz | + | tar -xvf geant4.10.07.p02.tar.gz |
| - | mkdir geant4.10.00.p02-build | + | mkdir geant4.10.07.p02-build |
| - | cd geant4.10.00.p02-build/ | + | cd geant4.10.07.p02-build/ |
| Без поддержки OpenGL (или интерактивного графического интерфейса вообще? | Без поддержки OpenGL (или интерактивного графического интерфейса вообще? | ||
| - | cmake -DCMAKE_INSTALL_PREFIX=/ | + | cmake -DCMAKE_INSTALL_PREFIX=/ |
| Для поддержки OpenGL для X11: '' | Для поддержки OpenGL для X11: '' | ||
| Для поддержки интерфейса Qt: '' | Для поддержки интерфейса Qt: '' | ||
| + | |||
| + | Для поддержки файлов GDML: '' | ||
| ==== Файлы данных ==== | ==== Файлы данных ==== | ||
| Рядок 38: | Рядок 44: | ||
| < | < | ||
| - | | + | *WARNING* |
| Geant4 has been pre-configured to look for datasets | Geant4 has been pre-configured to look for datasets | ||
| in the directory: | in the directory: | ||
| - | / | + | / |
| but the following datasets are NOT present on disk at | but the following datasets are NOT present on disk at | ||
| that location: | that location: | ||
| - | G4NDL (4.4) | + | G4NDL (4.6) |
| - | G4EMLOW (6.35) | + | G4EMLOW (7.13) |
| - | PhotonEvaporation (3.0) | + | PhotonEvaporation (5.7) |
| - | RadioactiveDecay (4.0) | + | RadioactiveDecay (5.6) |
| - | | + | |
| G4PII (1.3) | G4PII (1.3) | ||
| - | RealSurface (1.0) | + | RealSurface (2.2) |
| - | G4SAIDDATA (1.1) | + | G4SAIDDATA (2.0) |
| - | G4ABLA (3.0) | + | G4ABLA (3.1) |
| - | | + | |
| + | G4ENSDFSTATE (2.3) | ||
| If you want to have these datasets installed automatically | If you want to have these datasets installed automatically | ||
| Рядок 75: | Рядок 82: | ||
| download the following files: | download the following files: | ||
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| + | https://cern.ch/geant4-data/datasets/ | ||
| and unpack them under the directory: | and unpack them under the directory: | ||
| - | / | + | / |
| As we supply the datasets packed in gzipped tar files, | As we supply the datasets packed in gzipped tar files, | ||
| Рядок 98: | Рядок 106: | ||
| </ | </ | ||
| - | это означает, | + | это означает, |
| - | mkdir -p / | + | mkdir -p / |
| - | cd / | + | cd / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| - | tar -xvf / | + | tar -xvf / |
| + | tar -xvf / | ||
| После чего можно заново запустить cmake, как это делалось ранее, чтобы убедиться, | После чего можно заново запустить cmake, как это делалось ранее, чтобы убедиться, | ||
| Рядок 120: | Рядок 129: | ||
| ===== G4MPI ===== | ===== G4MPI ===== | ||
| + | |||
| + | Для использования технологий MPI в GEANT4, нужно скомпилировать и установить библиотеку G4MPI. Она поставляется в архиве последних версий GEANT4 в разделе примеров((http:// | ||
| mkdir G4MPI.build && cd G4MPI.build | mkdir G4MPI.build && cd G4MPI.build | ||
| Рядок 220: | Рядок 231: | ||
| Idle> /run/beamOn 10 | Idle> /run/beamOn 10 | ||
| + | |||
| + | ===== Параллельные вычисления ===== | ||
| + | |||
| + | ==== G4MPI ==== | ||
| + | |||
| + | Согласно [[http:// | ||
| + | |||
| + | <code c++> | ||
| + | #include " | ||
| + | #include " | ||
| + | |||
| + | int main(int argc,char** argv) | ||
| + | { | ||
| + | // Создание диспетчера G4MPImanager | ||
| + | G4MPImanager* g4MPI= new G4MPImanager(argc, | ||
| + | | ||
| + | // Создание сессии MPI (G4MPIsession) вместо G4UIterminal | ||
| + | G4MPIsession* session= g4MPI-> GetMPIsession(); | ||
| + | | ||
| + | // Далее следует стандартный код программы на GEANT4 | ||
| + | G4RunManager* runManager= new G4RunManager(); | ||
| + | |||
| + | ... | ||
| + | |||
| + | // После установки всех параметров программы нужно запустить сессию MPI. | ||
| + | // MPIsession может работать как в интерактивном, | ||
| + | session-> | ||
| + | |||
| + | // В конце выполнения программы | ||
| + | delete g4MPI; | ||
| + | delete runManager; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Компилировать такую программу нужно следующим образом (предполагается, | ||
| + | |||
| + | Сначала нужно указать в '' | ||
| + | |||
| + | <code txt " | ||
| + | # Поиск пакета MPI в системе: | ||
| + | find_package(MPI REQUIRED) | ||
| + | |||
| + | # Установка флагов компилятора и компоновщика: | ||
| + | set(CMAKE_CXX_COMPILE_FLAGS ${CMAKE_CXX_COMPILE_FLAGS} ${MPI_COMPILE_FLAGS}) | ||
| + | set(CMAKE_CXX_LINK_FLAGS ${CMAKE_CXX_LINK_FLAGS} ${MPI_LINK_FLAGS}) | ||
| + | |||
| + | # Путь к заголовочным файлам: | ||
| + | include_directories(${MPI_INCLUDE_PATH} "/ | ||
| + | |||
| + | # Путь к библиотекам для компоновки окончательного исполнимого файла программы: | ||
| + | target_link_libraries(MPItest-program.bin ${MPI_LIBRARIES} ${G4mpi_DIR}/ | ||
| + | </ | ||
| + | |||
| + | Затем собственно компиляция: | ||
| + | |||
| + | < | ||
| + | cd / | ||
| + | mkdir MPItest.build | ||
| + | cd MPItest.build | ||
| + | . / | ||
| + | cmake -DGeant4_DIR=/ | ||
| + | make | ||
| + | </ | ||
| + | |||
| + | Запускать полученную программу можно в стандартном окружении MPI. Например, | ||
| + | |||
| + | mpirun -n 4 ./ | ||
geant4.1459635923.txt.bz2 · Востаннє змінено: повз wombat
