Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab2.doc
Скачиваний:
68
Добавлен:
12.04.2015
Размер:
276.99 Кб
Скачать

1.7. Конфигурационные файлы и визуализация

При выполнении моделирования было бы интересно варьировать некоторые параметры и смотреть на изменения в результатах моделирования. Значит необходим механизм, который бы позволил передавать эти параметры в программу моделирования. В простейшем случае, параметры можно ”жестко” задавать прямо в коде программы моделирования, но, очевидно, это неудобно, т.к. при каждом изменении параметра необходимо делать перекомпиляцию программы. Можно передавать параметры в командной строке, но это тоже становиться накладно в случае, если таких параметров больше десятка.

Поэтому разработчикиGEANT4 предусмотрели возможность использования конфигурационных файлов для настройки параметров моделирования. Такие файлы обычно имеют расширение .mac и содержат последовательность команд.

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

Для примера рассмотрим .mac-файлы из примера novice\N02. run1.mac:

# строки, начинающиеся с символа‘#’ являются коментариями

# серия команд, оканчивающаяся словом verbose задает объем текстовой

# информации выводимой на экран компьютера

/run/verbose 2

/event/verbose 0

# в качестве первичных частиц устанавливаем протоны с энергией 3 MэВ

/gun/particle proton

/gun/energy 3 MeV

# включаем вывод детальной информации по трекам частиц

/tracking/verbose 1

# и запускаем одну частицу

/run/beamOn 1

# теперь 3 нейтрона, 10 МэВ

# без детализации

/gun/particle neutron

/gun/energy 10 MeV

/tracking/verbose 0

/run/beamOn 3

Чтобы программа моделирования выполнила команды этого файла нужно имя файла передать в качестве параметра командной строки:

exampleN02 run1.mac

Теперь попробуем тоже самое, но с визуализацией геометрии установки и треков частиц, для этого будем использовать другой файл, vis.mac:

# настройки детализации вывода

/control/verbose 1

/run/verbose 1

/tracking/verbose 1

# GEANT4 поддерживает множество систем визуализации, например,

# прямой вывод в растровые графические файлы(jpg, bmp, gif) - RayTracert,

# вывод прямо на экран монитора- OGLIX, вывод в виде текстовой древовидной

# структуры- ASCIITree

# VRML1FILE, при этом геометрия и треки будут сохраняться в широко

# распространенном формате VRML (Virtual Reality Modeling Language)

/vis/open VRML1FILE

# выводим в файл геометрию установки

/vis/drawVolume

# указываем рисовать треки частиц

/vis/scene/add/trajectories

# и точки реакций

/vis/scene/add/hits

# сохранять треки от разных первичных частиц в один и тот же файл

/vis/scene/endOfEventAction accumulate

/gun/particle e-

/gun/energy 1 MeV

#Задаем 10 событий испускания первичных частиц

/run/beamOn 10

Запустите программу моделирования с этим конфигурационным файлом:

user@localhost:~$ ./exampleN02 vis.mac

В текущем каталоге появиться файл g4_00.wrl. Его можно просмотреть программой MeshLab.

2. Задания к лабораторной работе

1. Создать в домашней папке рабочий каталог «Name»_Group_Ks«N»_work, где

«Name» — Фамилия студента (латинскими символами);

«N» — номер группы

2. Перейти в созданный каталог. В нем создать два подкаталога g++ и geant4.

3. В каталоге g++ скомпилировать программу согласно варианту. Программа должна компилироваться с помощью make-файла.

варианта

Задание

1

Вывести на экран случайную последовательность чисел

2

Вывести на экран ряд четных чисел

3

Вывести на экран ряд нечетных чисел

4

Вывести на экран таблицу умножения на 2

5

Вывести в текстовый файл случайную последовательность чисел

6

Вывести в текстовый файл ряд четных чисел

7

Вывести в текстовый файл ряд нечетных чисел

8

Вывести в текстовый файл таблицу умножения на 2

9

Вывести на экран остаток от деления элементов натурального ряда чисел

10

Вывести в текстовый файл остаток от деления элементов натурального ряда чисел

4. В каталог geant4 скопировать содержимое /distrib/Example_lab.

5. Переименовать Example_lab на lab2.

6. В файле vis.mac изменить значение для энергии испускаемых частиц. Получить энергетический спектр данных частиц после прохождения через заданное в примере вещество (результат сохраняется в spectrum.csv). Число запускаемых первичных частиц установить 5000 (задавать в .mac-файле).

Вариант №

1

2

3

4

5

6

7

8

9

10

E, МэВ

1

1,5

2

2,5

3

3,5

4

4,5

5

6,5

7. Построить зависимость интенсивности пучка нейтронов, достигших детектора, от энергии первичных частиц. Энергии первичных нейтронов взять из ряда: 0,025эВ, 0,25эВ, 2,5эВ, 25эВ, 250эВ, 2500эВ, 25000эВ, 250000эВ, 2500000эВ, 25000000эВ. Число запускаемых первичных частиц установить 5000 (задавать в .mac-файле).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]