Разработчик(и) | ЛАНЛ |
---|---|
Стабильный релиз | MCNP6.3 / 10 января 2023 г. ( 2023-01-10 ) [1] |
Написано в | Фортран 90 |
Операционная система | Кроссплатформенный |
Тип | Вычислительная физика |
Лицензия | https://rsicc.ornl.gov/ |
Веб-сайт | mcnp.lanl.gov |
Транспорт частиц Монте-Карло N ( MCNP ) [2] — это универсальный, непрерывно-энергетический, обобщенно-геометрический, зависящий от времени код переноса излучения Монте-Карло, разработанный для отслеживания многих типов частиц в широком диапазоне энергий и разработанный Лос-Аламосской национальной лабораторией . Конкретные области применения включают, помимо прочего, радиационную защиту и дозиметрию, радиационную защиту , рентгенографию , медицинскую физику, безопасность ядерной критичности , проектирование и анализ детекторов, каротаж ядерных нефтяных скважин , проектирование мишеней ускорителей , проектирование реакторов деления и термоядерных реакторов, дезактивацию и вывод из эксплуатации. Код обрабатывает произвольную трехмерную конфигурацию материалов в геометрических ячейках, ограниченных поверхностями первой и второй степени и эллиптическими торами четвертой степени.
Обычно используются данные по точечным сечениям, хотя доступны также данные по группам. Для нейтронов учитываются все реакции, приведенные в конкретной оценке сечения (например, ENDF/B-VI). Тепловые нейтроны описываются как моделями свободного газа, так и моделями S(α,β). Для фотонов код учитывает некогерентное и когерентное рассеяние, возможность флуоресцентного излучения после фотоэлектрического поглощения, поглощение при образовании пар с локальным излучением аннигиляционного излучения и тормозное излучение. Для электронного транспорта используется модель непрерывного замедления, которая включает позитроны, k-рентгеновские лучи и тормозное излучение, но не включает внешние или самоиндуцированные поля.
Важные стандартные функции, которые делают MCNP очень универсальным и простым в использовании, включают в себя мощный общий источник, источник критичности и источник поверхности; как геометрические, так и выходные плоттеры подсчета; богатый набор методов снижения дисперсии; гибкую структуру подсчета; и обширный набор данных поперечного сечения.
MCNP содержит множество гибких счетчиков: поверхностный ток и поток, объемный поток (длина трека), точечные или кольцевые детекторы, нагрев частиц, нагрев деления, счетчик высоты импульса для осаждения энергии или заряда, счетчики сетки и радиографии.
Ключевая ценность MCNP — это предсказательная способность, которая может заменить дорогостоящие или невыполнимые эксперименты. Она часто используется для разработки крупномасштабных измерений, обеспечивая значительную экономию времени и средств для сообщества. Последняя версия кода MCNP от LANL, версия 6.2, представляет собой часть набора синергетических возможностей, каждая из которых разработана в LANL; она включает оцененные ядерные данные (ENDF) и код обработки данных NJOY. Высокая уверенность международного сообщества пользователей в предсказательных возможностях MCNP основана на его производительности с наборами тестов проверки и валидации, сравнениях с его предшественниками, автоматизированном тестировании, базовых высококачественных ядерных и атомных базах данных и значительном тестировании его пользователями.
Метод Монте-Карло для переноса частиц излучения берет свое начало в LANL и датируется 1946 годом. [3] Создателями этих методов были Станислав Улам , Джон фон Нейман , Роберт Рихтмайер и Николас Метрополис . [4] Метод Монте-Карло для переноса излучения был придуман Станиславом Уламом в 1946 году, когда он играл в пасьянс, восстанавливаясь после болезни. « Потратив много времени на попытки оценить успех с помощью комбинаторных вычислений, я задался вопросом, не является ли более практичным методом... разложить его, скажем, сто раз и просто наблюдать и подсчитывать количество успешных игр ». В 1947 году Джон фон Нейман отправил письмо Роберту Рихтмайеру, в котором предложил использовать статистический метод для решения задач диффузии и размножения нейтронов в устройствах деления. [5] Его письмо содержало 81-шаговый псевдокод и было первой формулировкой вычисления Монте-Карло для электронной вычислительной машины. Предположения фон Неймана были следующими: зависящие от времени, непрерывная энергия, сферические, но радиально изменяющиеся, один делящийся материал, изотропное рассеяние и производство делений, и множественности делений 2, 3 или 4. Он предложил запускать по 100 нейтронов для 100 столкновений и оценил время вычислений в пять часов на ENIAC [6] [ циклическая ссылка ] . Рихтмайер предложил предложения, позволяющие учитывать несколько делящихся материалов, отсутствие зависимости от энергии спектра деления, множественность одного нейтрона и выполнение вычислений для машинного времени, а не для количества столкновений. Код был завершен в декабре 1947 года. Первые вычисления были выполнены в апреле/мае 1948 года на ENIAC.
Ожидая физического перемещения ENIAC, Энрико Ферми изобрел механическое устройство под названием FERMIAC [7] для отслеживания движения нейтронов через делящиеся материалы методом Монте-Карло. Методы Монте-Карло для переноса частиц были движущей силой вычислительных разработок с момента появления современных компьютеров; это продолжается и сегодня.
В 1950-х и 1960-х годах эти новые методы были организованы в серию специальных кодов Монте-Карло, включая MCS, MCN, MCP и MCG. Эти коды могли транспортировать нейтроны и фотоны для специализированных приложений LANL. В 1977 году эти отдельные коды были объединены для создания первого обобщенного кода Монте-Карло для переноса частиц излучения, MCNP. [8] [9] В 1977 году MCNP был впервые создан путем слияния MCNG с MCP для создания MCNP. Первой версией кода MCNP была версия 3, выпущенная в 1983 году. Она распространяется Информационным вычислительным центром по радиационной безопасности в Оук-Ридже, штат Теннесси.
Метод Монте-Карло N-Particle eXtended (MCNPX) также был разработан в Лос-Аламосской национальной лаборатории и способен моделировать взаимодействия частиц 34 различных типов (нуклонов и ионов) и более 2000 тяжелых ионов практически при всех энергиях [10] , включая те, которые моделируются MCNP.
Оба кода можно использовать, среди прочего , для оценки критичности ядерных систем и определения доз от источников .
MCNP6 — это слияние MCNP5 и MCNPX. [10]
MCNP6 менее точен, чем MCNPX. [11] [12] Geant4 менее точен, чем MCNPX. [11] [12] [13] [14] [15] Geant4 менее точен, чем MCNP5. [12] [16]
Geant4 медленнее, чем MCNPX. [12] [13] [17]