geant4
Розбіжності
Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версійПопередня ревізіяНаступна ревізія | Попередня ревізія | ||
| geant4 [2014/07/31 06:24] – [Ссылки] GEANT4 Training Courses wombat | geant4 [2021/11/10 08:47] (поточний) – [Файлы данных] Обновление до версии 10.7 wombat | ||
|---|---|---|---|
| Рядок 6: | Рядок 6: | ||
| ===== Из исходников ===== | ===== Из исходников ===== | ||
| - | Будем следовать рецепту((http:// | + | Будем следовать рецепту((https://geant4-userdoc.web.cern.ch/ |
| - | apt-get install cmake libexpat1-dev | + | apt-get install |
| | | ||
| Если планируется использовать поддержку OpenGL, то: | Если планируется использовать поддержку OpenGL, то: | ||
| - | apt-get install libglu1-mesa-dev | + | apt-get install libglu1-mesa-dev libxmu-dev |
| - | | + | Если планируется использовать интерфейс Qt5, то: |
| - | cd geant | + | |
| - | wget -cS 'http:// | + | apt-get install qtbase5-dev libqt5opengl5-dev |
| - | tar xvf geant4.10.00.p02.tar.gz | + | |
| - | mkdir geant4.10.00.p02-build | + | Если планируется использовать описание геометрии в формате [[https:// |
| - | cd geant4.10.00.p02-build/ | + | |
| + | apt-get install libxerces-c-dev | ||
| + | |||
| + | | ||
| + | cd / | ||
| + | wget -cS 'https://geant4-data.web.cern.ch/releases/geant4.10.07.p02.tar.gz' | ||
| + | tar -xvf geant4.10.07.p02.tar.gz | ||
| + | mkdir geant4.10.07.p02-build | ||
| + | cd geant4.10.07.p02-build/ | ||
| Без поддержки OpenGL (или интерактивного графического интерфейса вообще? | Без поддержки OpenGL (или интерактивного графического интерфейса вообще? | ||
| - | cmake -DCMAKE_INSTALL_PREFIX=/ | + | cmake -DCMAKE_INSTALL_PREFIX=/ |
| - | С поддержкой OpenGL для X11: | + | Для |
| - | cmake -DCMAKE_INSTALL_PREFIX=/ | + | Для поддержки интерфейса Qt: '' |
| + | |||
| + | Для поддержки файлов GDML: '' | ||
| + | |||
| + | ==== Файлы данных ==== | ||
| + | |||
| + | Если при конфигурировании отображается следующее предупреждение: | ||
| + | |||
| + | < | ||
| + | | ||
| + | Geant4 has been pre-configured to look for datasets | ||
| + | in the directory: | ||
| + | |||
| + | | ||
| + | |||
| + | but the following datasets are NOT present on disk at | ||
| + | that location: | ||
| + | |||
| + | G4NDL (4.6) | ||
| + | G4EMLOW (7.13) | ||
| + | PhotonEvaporation (5.7) | ||
| + | RadioactiveDecay (5.6) | ||
| + | G4PARTICLEXS (3.1.1) | ||
| + | G4PII (1.3) | ||
| + | RealSurface (2.2) | ||
| + | G4SAIDDATA (2.0) | ||
| + | G4ABLA (3.1) | ||
| + | G4INCL (1.0) | ||
| + | G4ENSDFSTATE (2.3) | ||
| + | |||
| + | If you want to have these datasets installed automatically | ||
| + | simply re-run cmake and set the GEANT4_INSTALL_DATA | ||
| + | variable to ON. This will configure the build to download | ||
| + | and install | ||
| + | command line, do: | ||
| + | |||
| + | cmake -DGEANT4_INSTALL_DATA=ON | ||
| + | |||
| + | The variable can also be toggled in ccmake or cmake-gui. | ||
| + | If you're running on a Windows system, this is the best | ||
| + | solution as CMake will unpack the datasets for you | ||
| + | without any further software being required | ||
| + | |||
| + | Alternatively, | ||
| + | now or after you have installed Geant4. To do this, | ||
| + | download the following files: | ||
| + | |||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | https:// | ||
| + | |||
| + | and unpack them under the directory: | ||
| + | |||
| + | / | ||
| + | |||
| + | As we supply the datasets packed in gzipped tar files, | ||
| + | you will need the ' | ||
| + | |||
| + | Nota bene: Missing datasets will not affect or break | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | это означает, | ||
| + | |||
| + | mkdir -p /home/user/GEANT4/share/ | ||
| + | cd / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | tar -xvf / | ||
| + | |||
| + | После чего можно заново запустить cmake, как это делалось ранее, чтобы убедиться, | ||
| time make -j4 | time make -j4 | ||
| Рядок 33: | Рядок 128: | ||
| + | ===== G4MPI ===== | ||
| + | |||
| + | Для использования технологий MPI в GEANT4, нужно скомпилировать и установить библиотеку G4MPI. Она поставляется в архиве последних версий GEANT4 в разделе примеров((http:// | ||
| + | |||
| + | mkdir G4MPI.build && cd G4MPI.build | ||
| + | cmake -DGeant4_DIR=/ | ||
| + | make | ||
| + | |||
| + | Если компилятор выдаёт ошибку, | ||
| + | |||
| + | < | ||
| + | / | ||
| + | / | ||
| + | & | ||
| + | ^ | ||
| + | </ | ||
| + | |||
| + | Чтобы собрать G4MPI в таком случае нужно добавить параметр '' | ||
| + | |||
| + | После этого можно установить G4MPI в указанную ранее папку: | ||
| + | |||
| + | make install | ||
| ====== Использование ====== | ====== Использование ====== | ||
| + | Список встроенных команд рабочей среды GEANT4 можно просмотреть [[http:// | ||
| ===== Пример B1 ===== | ===== Пример B1 ===== | ||
| Рядок 49: | Рядок 167: | ||
| С использованием графического интерфейса OpenGL: | С использованием графического интерфейса OpenGL: | ||
| cmake -DWITH_GEANT4_UIVIS=ON -DGeant4_DIR=/ | cmake -DWITH_GEANT4_UIVIS=ON -DGeant4_DIR=/ | ||
| + | make | ||
| cd / | cd / | ||
| Рядок 112: | Рядок 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 ./ | ||
| + | |||
| + | |||
| + | ===== Анимация ===== | ||
| + | |||
| + | При использовании интерфейса Qt правым щелчком мыши по изображению эксперимента вызывается меню, в котором можно выбрать пункт '' | ||
| + | |||
| + | {{:: | ||
| + | В этом окне можно выбрать параметры записи анимации, | ||
| + | |||
| + | Для того, чтобы этим воспользоваться, | ||
| + | |||
| + | sudo apt-get install netpbm | ||
| Рядок 118: | Рядок 316: | ||
| [[http:// | [[http:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | [[https:// | ||
| [[http:// | [[http:// | ||
| Рядок 125: | Рядок 333: | ||
| http:// | http:// | ||
| + | [[http:// | ||
| http:// | http:// | ||
| Рядок 136: | Рядок 344: | ||
| [[http:// | [[http:// | ||
| - | |||
| ===== На русском языке ===== | ===== На русском языке ===== | ||
geant4.1406787884.txt.bz2 · Востаннє змінено: повз wombat
