Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Пакет GEANT4





Объектно-ориентированный пакет библиотек GEANT4 [1] разработан международной научной коллаборацией в Европейской лаборатории частиц (CERN – Conseil Europeen pour la Recherche Nucleaire, Европейская организация ядерных исследований) и предназначен для моделирования взаимодействия излучения с веществом. Встроенные средстваGEANT4 позволяют полностью описать физический эксперимент: геометрию системы, химический состав образующих его материалов, типы частиц, участвующих в эксперименте, и физические процессы управляющие взаимодействием частиц.

GEANT4 представляет объектно-ориентированную библиотеку программ на языке C++, включающую в себя описание всех известных частиц и физических процессов, протекающих при взаимодействии излучения с веществом.

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

Пакет состоит из набора классов, которые можно разделить на следующие

категории:

•глобальный (global) – содержит систему единиц, констант, генерацию случайных чисел;

•материалы и частицы (materials & particles) – реализует функции необходимые для описания физических свойств частиц и материалов;

•геометрия (geometry) – реализует описание геометрии системы и эффективности распространения частиц через объекты системы;

•процессы (processes) – содержит модели физических взаимодействий: электромагнитных и адронных;

•треки(track) – реализует функции необходимые для вычисления треков частиц, и передачи требуемой информации чувствительным объемам

(детекторам);

•события (events) – управление событиями(запуском начальной частицы и управление всеми образовавшимися вторичными частицами);

•запуск (run) – управление группой событий происходящих при одной и той же конфигурации геометрии системы.

Причем, все классы реализуют заложенную в них базовую функциональность. Это значит что программисту использующему библиотеки GEANT4 необходимо изменять лишь те классы, которые своей начальной функциональностью не соответствуют моделируемой задаче. На практике это значит, что всегда нужно изменять классы ответственные за геометрию системы и применяемые материалы, описание используемых частиц и взаимодействий, сбор данных моделирования, но практически никогда не требуется изменять классы, реализующие самый трудоемкий (в плане программирования) процесс – непосредственный процесс пролета частиц и их взаимодействие с веществом.

Работа программы написанной с использованием библиотек GEANT4 проходит следующим образом: конструируется геометрия системы, вычисляются сечения взаимодействия всех используемых частиц со всеми используемыми материалами, затем происходит запуск требуемого числа частиц. Далее идет последовательная обработка движения каждой из частиц – создание трека. При этом движение частицы разбивается на малые шаги. На каждом шаге движения по рассчитанной ранее таблице сечений происходит выбор одного из заданных процессов взаимодействия и его реализация, движение идет до полной потери частицей кинетической энергии. Если в процессе взаимодействия образуется вторичная частица, то далее идет создание ее трека по тем же самым принципам, а затем возврат к первичной частице. Моделирование идет до тех пор, пока не будут обработаны все частицы. На каждом из основных этапов может быть вызвана заданная программистом функция, при этом ей доступна полная информация о состоянии частицы: ее координаты, импульс, потери энергии на последнем шаге и многое другое. Эту информацию и нужно использовать для построения исследуемых зависимостей.

Основные используемые классы изображены на рис. 3.

Рисунок 3. Иерархия основных классов

Класс RunManager отвечает за общую организацию процесса моделирования. Класс DetectorConstruction используется для описания геометрии системы и используемых материалов. С помощью класса PhysicsList указывают используемые частицы и взаимодействия между ними. Группа классов обозначенная названием UserActions используется для доступа к информации о процессе моделирования на всех этапах:

RunAction – этап создания геометрии системы, используемых частиц и расчета таблицы сечений;

PrimaryGenerationAction – этап создания первичной частицы, именно здесь задается тип, начальные направление и энергия частицы;

EventAction – этап запуска/остановки первичной частицы, обычно используется для инициализации/сохранения гистограмм и первичного анализа;

TrackingAction – этап начала/конца создания трека частицы, позволяет получить информацию о треке частицы, например длину;

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

Порядок работы с GEANT4 состоит в следующем: сначала составляется план эксперимента, изучаются основные свойства и характер взаимодействия экспериментальных частиц. Затем составляется программа на объектно-ориентированном языке C++, использующая библиотеки, входящие в состав GEANT4. После этого исходные тексты программ компилируются, программа выполняется, и происходит анализ полученных результатов. По мере анализа полученных данных в программу вносятся изменения, затем процесс повторяетс до тех пор, пока не будут получены удовлетворительные результаты.

 







Дата добавления: 2015-08-11; просмотров: 1246. Нарушение авторских прав; Мы поможем в написании вашей работы!




Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

Словарная работа в детском саду Словарная работа в детском саду — это планомерное расширение активного словаря детей за счет незнакомых или трудных слов, которое идет одновременно с ознакомлением с окружающей действительностью, воспитанием правильного отношения к окружающему...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

Упражнение Джеффа. Это список вопросов или утверждений, отвечая на которые участник может раскрыть свой внутренний мир перед другими участниками и узнать о других участниках больше...

Studopedia.info - Студопедия - 2014-2026 год . (0.011 сек.) русская версия | украинская версия