как установить geant4 на windows 10
Installing Pre-Compiled Geant4 on Windows
Prerequisites
To compile and use Geant4 under windows some additional tools are required. First you need Microsoft Visual Studio version 6 (with service pack 5 or later). This is commercial software that you will need to purchase and install. When installing Visual Studio you will be asked whether you want to allow it to modify your environment variables. I find it best to answer No to this question, and instead set the variables in my cygwin startup script (see below).
Secondly you will need to install cygwin, a Unix emulation layer for windows. The cygwin software is freely available from http://www.cygwin.com/. It can be quite tricky to install the correct components of the cygwin toolkit, but Norman Graf has written detailed installation instructions which are included on this CD. I find the easiest way to set up visual studio to run under cygwin is to modify my cygwin.bat file (normally in c:\cygwin) as follows:
You may need to change the path to vcvars32.bat if you installed visual studio in a different location.
Unpacking Geant4
Open the ZIP file containing the pre-compiled Geant4:
Unpack the entire file into c:\ (or somewhere else if you prefer).
Start a cygwin shell, by clicking on the cygwin icon on your desktop:
Then issuing something like the following commands:
cd c:
cd geant4
source geant4-setup.sh
(If you unpacked Geant4 somewhere other than c:\ you will need to modify the geant4-setup.sh script appropriately)
Your done! Now you are ready to continue with the rest of the installation exercise.
Установка Geant4
Для установки Geant4 нам понадобится Linux и Cmake. В данном примере установка проходила на Ubuntu 16.04 и cmake 3.5.1.
Описанный способ установки подходит для версии Geant4 начиная с 9.6, только необходимо проследить, какая версия cmake потребуется для установки Джанта.
Где скачать исходники
Официальный сайт Geant4 сейчас находится по адресу http://geant4.web.cern.ch и на нем можно скачать последнюю версию Geant4. Установочные файлы предоставляются в виде исходных кодов в разделе «Source files» в виде архива tar или zip.
Можно еще устанавливать из предварительно скомпилированных исходников, это раздел «Pre-compiled Libraries», но советую устанавливать именно из исходников, так как тогда конечные программы будет работать быстрее.
Итак, скачиваем исходник, файл geant4.10.03.p03.tar.gz
Куда установить Geant4
Далее, для удобства выделяем специальную папку в домашней директории, где будет установлен Geant4 и будут находится все файлы его касающиеся.
Назвать директорию можно как угодно, но лучше избегать пробелов и если у вас локаль в системе не UTF8, тогда путь должен быть весь только английскими буквами и цифрами, иначе могут начаться проблемы из-за отличия в кодировках.
Что бы установить Geant4 создадим еще две директории
Как понятно из названия, папка с build предназначена для компиляции, а с install для установки.
Настраиваем установку Geant4
Открываем консоль и заходим в папку geant4.10.03-build
Для начала необходимо запустить cmake и с полноценными параметрами запуска команда будет выглядеть так:
В принципе можно запустить только этого тоже должно хватить для установки Geant4.
Вывод получился такой:
Сообщение об успешной сборке Geant4
Самое важное, или есть в конце эти строчки
они говорят об успешной отработке cmake и если они есть, то можно далее приступать к компиляции. Если есть ошибки, смотрите следующий раздел.
Если возникли ошибки при установке Geant4
Однако на свежей установке Ubuntu может выдать ошибки, когда не хватает некоторых пакетов, вот примеры
Первая ошибка
Не найден пакет EXPAT
Решение поставить пакет expat через synaptic или командой
Иногда это не работает, тогда попробуем команду:
Вторая ошибка
Не хватает файлов QT
Решение установить QT4
Третья ошибка
Не хватает файлов исходных файлов или пакета разработки для QT
Четвертая ошибка
Не хватает файлов разработки для X11
На чистой установке Ubuntu 18.04 LTS потребовалось установить немного больше, команда:
При чистой установке Ubuntu больше ошибок не возникает, проверено на Ubuntu 18.04 LTS в июне 2018 года.
Компиляция и установка Geant4
Далее после успешного выполнения cmake компилируем командой
Что бы процесс проходил быстрее компиляцию можно проводить не нескольких ядрах процессора, у меня 4 потока, поэтому компилирую командой
После компиляции выполняем установку
Поздравляю, Geant4 установлен!
Для того что бы использовать именно эту установку Geant4, установите пути в консоли в которой будете собирать и выполнять проект на Geant4 командой:
Более кратко, нужно указать путь к файлу geant4.sh в директории установки
Сборка и запуск примера на Geant4
В этом уроке разберем как собирать и запускать проект на Geant4 для Ubuntu, линукса. Для Windows разбор будет опубликован позже, однако принцип тот же самый.
Подготовка к компиляции примера на Geant4
Следует понимать, что проект или программа Geant4 работает используя его как библиотеку, берет из него необходимые классы, данные сечений, параметров частиц и так далее. Поэтому, для компиляции нужно предварительно указать где лежит Джант, и все необходимые исходные данные.
Для данного разбора возьмем установку по пути
описание которой было дано ранее в этой статье.
Итак, нам нужно указать директорию, в которой компилятор сможет найти все необходимые пути
Для примера, директория другой версии Geant
Схематично этот путь выглядит так:
Создание файла CmakeLists.txt для CMAKE
Для сборки проекта используется CMAKE, это специальная утилита для автоматической сборки приложений. Она существенно упрощает сборку и компиляцию программ.
В файлах примеров с этого сайта и в примерах Geant4 присутствует файл CmakeLists.txt, который необходим для работы CMAKE. В нем присутствуют инструкции для сборки примеров. Перед сборкой убедитесь, что в системе присутствует установленный CMAKE нужной версии.
Проверка версии CMAKE, как правило нужна версия выше 2.6
В примерах требуется CMAKE версии новее 2.6. В качестве исходника можно использовать файл из статьи о простом примере на Geant4.
При минимальной правке стоит обратить внимание только на следующие строчки из CmakeLists.txt файла:
В частности /src/*.cpp — в какой папке в проекте находятся файлы исходного кода и их расширение, а так же /include/*.hh — в какой директории находятся заголовочные файлы.
Сборка программы Geant4
Итак, немножко затронем культуру программирования, как компилировать программу с CMAKE правильно.
Т.е. пусть все наши проекты будут в папке
и в дальнейшем будем работать в ней, но команды попробуем сделать все относительные, что бы не зависеть от того, где лежит проект.
Итак, важное правило программирования: директории, где находятся исходники проекта, где собирается проект и где он устанавливается, должны быть разными!
В статье, где описывается установка Geant4, сделано по этому принципу.
Мы пока просто учимся и устанавливать проект не будем, поэтому пока обойдемся двумя папками — исходников и сборки.
Итак, рядом с папкой, где лежат исходники, создадим папку для сборки.
В консоли команды выглядят так:
можем проверить что находимся в нужной папке командой
Подготовка к компилированию программы на Geant4
Далее собираем проект с помощью команды CMAKE
Можем компилировать в много поточном режиме
В результате сборки появится исполняемый файл проекта — программа, про её запуск читайте далее.
Запуск программы на Geant4
Для запуска исполняемого файла необходимо задать переменные среды для Geant4.
Для этого в консоли задаем команду
Если у вас другая версия Geant4, то схема команды
Пройдемся по основным ошибкам запуска
Не заданы переменные среды
Если просто запустить исполняемый файл — экзешник или бинарник, зачастую появится ошибка.
Для исправления нужно указать на файл geant4.sh в папке bin/ в директории установки
Т.е. открываем консоль, выполняем команду выше, исправив путь установки Джанта на свой, и в этой же консоли запускать программу.
Имя пользователя у меня black (производная от моего ника black-bycel, что по белоруски звучит как «чорны бусел» или по русски «чёрный аист». Это редкий вид аиста, живущего на Полесье, в глухих лесах и болотах, где людей практически нет.)
Нет внешних дополнительных данных
«Мистическое» поведение программы в процессе разработки
Иногда бывает «мистическое» поведение, когда программа то не видит новые файлы, то какие то классы, или ведет себя совершенно не понятно.
Возможно это проблема в коде, но очень часто так же и результат кэширования при компиляции. Команда очистить кэш компиляции
Если вы добавили новые файлы к проекту, то нужно еще раз запускать CMAKE.
Был случай, когда проект копировали в другую папку на другой компьютер и запуск CMAKE не помогал, просто поменялись все пути, а система сборки этого не видела. Вот здесь и важно правило программирования, что папка с исходными файлами и файлы компиляции находятся в разных папка. Мы просто удаляем все что находится в папке сборки, в консоли это можно сделать командой
CERN Accelerating science
View header links
Geant4 10.7
first released 4 December 2020 (patch-02, released 11 June 2021)
The Geant4 source code is freely available. See the licence conditions.
Please read the Release Notes before downloading or using this release. The patches below contain bug fixes to release 10.7, we suggest you to download and apply the latest patch for release 10.7 (see the additional notes for patch-02 and patch-01), or download the complete source with the patch applied; in any case, it is required to apply a full rebuild of the libraries.
Source files
Please choose the archive best suited to your system and archiving tool:
Please choose the archive best suited to your system and archiving tool:
Data files (*)
For specific, optional physics processes some of the following files are required. The file format is compatible with Unix, GNU, and Windows utilities.
Pre-compiled Libraries
These are compiled with Geant4 default settings and optimization turned on. Please choose according to your system/compiler:
These libraries are built using the embedded CLHEP classes, based on CLHEP version 2.4.4.0. Please refer to the Release Notes for details.
Patches for release 10.7 of Geant4
To install the patch, the archive should be unpacked in the Geant4 installation area where the directory geant4.10.07 is placed, and kernel libraries must be recompiled from scratch.
For instructions on how to unpack, see the notes above for the original source code.
Уроки и обучающие примеры по Geant4 на русском
В интернете не так уж и много уроков и обучающих примеров по Geant4 на русском языке, но также их не очень много и на английском. Примеры поставляемые в дистрибутиве Geant4 достаточно сложные для восприятия и понимания новичками, даже самые базовые примеры вводят в небольшое замешательство.
Для уменьшения барьера входа в Geant4 и устранения пробелов его изучении, часть сайта посвящена изучению и моделированию ядерно-физических процессов в физике высоких энергий.
Итак, официальная часть: Geant4 — программный комплекс разработанный в CERN для моделирования взаимодействия и прохождения излучения и элементарных частиц через вещество. Широко применяется для моделирования отклика детекторов на излучение и прохождение частиц высоких энергий на ускорителях, в том числе LHC. На данный момент включает пакет (модуль) для моделирования частиц до низких энергий, нескольких эВ, что значительно расширяет применение Geant4 в медицине и промышленности.
Официальный сайт Geant4 — http://geant4.web.cern.ch/, он поставляется совершенно бесплатно в виде исходных кодов, т. е. что бы его установить — нужно скомпилировать. Нативная (родная) платформа — Linux, доступен также на Windows и MacOS.
Установка Geant4
Как установить Geant4 начиная с версии 9.6
Установка отладочной версии Geant4
Как установить Debug версию Geant4 начиная с 9.6
Простой пример на Geant4
Обучающий урок на Geant4 для новичков (чайников)
Полный рабочий пример на Geant4 с визуализацией
Полный обучающий урок на Geant4, который полноценно моделирует простую установку
Запуск примера на Geant4
Обучающий урок, как собрать и запустить пример на Geant4 для новичков
Многопоточность, multithreading в Geant4
Моделирование в Geant4 на нескольких ядрах
Многопоточный пример на Geant4
Обучающий урок, как моделировать в Geant4 на нескольких ядрах