banner banner banner
Программное моделирование явлений ядерных реакций на основе технологии создания множества данных с использованием системы алгоритмов на языке С++. Проект «Ядро-ЭВМ». Монография
Программное моделирование явлений ядерных реакций на основе технологии создания множества данных с использованием системы алгоритмов на языке С++. Проект «Ядро-ЭВМ». Монография
Оценить:
Рейтинг: 0

Полная версия:

Программное моделирование явлений ядерных реакций на основе технологии создания множества данных с использованием системы алгоритмов на языке С++. Проект «Ядро-ЭВМ». Монография

скачать книгу бесплатно


cout <<«Charge of b (q) =»;

cin>> q3;

cout <<«Name of b=»;

cin>> k3;

cout <<«»<<endl;

cout <<k1 <<»(»<<a1 <<»,»<<q1 <<») +"<<k2 <<»(»<<a2 <<»,»<<q2 <<») =»;

cout <<«x (»<<a1+a2-a3 <<»,»<<q1+q2-q3 <<») +"<<k3 <<»(»<<a3 <<»,»<<q3 <<»)»<<endl;

cout <<«»<<endl;

Рис. 2.8.1. Первая часть кода

Рис. 2.8.2. Вторая часть кода

Глава 3. Энергетическая часть

3.1. Точные массовые данные

Начинается часть энергетических характеристик ядерных реакций. Для проведения такого типа операций, необходимо использование точного типа данных для масс, по этой причине массы каждого из элементов уточняются достоверно из таблиц изотопов элементов (Рис. 3.1.1—3.1.4).

Рис. 3.1.1. Примеры изотопов. Часть общей таблицы изотопов алюминия

Рис 3.1.2. Примеры изотопов. Часть общей таблицы изотопов гелия

Рис 3.1.3. Примеры изотопов. Часть общей таблицы изотопов водорода

Рис 3.1.4. Примеры изотопов. Часть общей таблицы изотопов магния

Код для данной операции имеет вид код (3.1.1.)

Код 3.1.1. Общий вид части кода для ввода точных данных

float a4,a5,a6,a7;

cout <<«ENERGY PART»<<endl;

cout <<«Real mass of a (m) =»;

cin>> a4;

cout <<«Real mass of A (m) =»;

cin>> a5;

cout <<«Real mass of b (m) =»;

cin>> a6;

cout <<«Real mass of B (m) =»;

cin>> a7;

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

3.2. Вывод ядерной реакции

Одним из основных энергетических данных является выход ядерной реакции, определяемый по формуле (3.2.1).

Для выполнения данной операции, казалось бы необходимо применение математической библиотеки, поскольку присутствует степени и при этом уже для преобразования данного значения в МэВ, необходимо ещё и умножить на значение в 1.6*10

, но существует определённое значение, которое составляет 931,5 МэВ/а. е. м., по этой причине при определении дефекта массы, коим и является выражение в скобках, то остаётся лишь умножить это значение на 931,5 МэВ.

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

Кодовой записью этого случая является (Код 3.2.1).

Код 3.2.1. Запись кода выхода энергии реакции

float q4, t1, E1, E2;

q4= (a4+a5-a6-a7) *931.5;

cout <<«Q="<<q4 <<" MeV»<<endl;

При этом для верного вывода также участвует и момент вывода единицы в МэВ. Единицы, которая выводится при произведении единицы в МэВ/ (а. е. м.), которым исчисляется элемент 931,5 и дефект масс исчисляемый также в единицах а. е. м.

3.3. Порог ядерной реакции

Порог ядерной реакции определяется из равенства (3.3.1).

Из этого равенства определяем следующий код (3.3.1).

Код 3.3.1. Код по определению порога ядерной реакции

float q4, t1, E1, E2;

t1=abs (q4) * (1+a4/a5+abs (q4) / (2*a5*931.5));

cout <<«T="<<t1 <<" MeV»<<endl;

При этом целочисленные данные является не только вещественными, но также эта формула является первой, в которой используется математическая операция (модуль или abs (a)), для выполнения которой необходимо использование и вызов математической библиотеки на первоначальной строке в виде кода 3.3.2.

Код 3.3.2. Код по вызову библиотеки математических операций

#include <math. h>

3.4. Входящая кинетическая энергия

Ещё одним элементом для дальнейших операций, необходим ввод понятия кинетической энергии влетающей частицы. Этот момент отделяется от предыдущего кода пустой строкой для понятия того, что это отдел ввода данных, а именно ввода кинетической энергии частицы.

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

Эта часть кода, до этого момента описывается в (Коде 3.4.1).

Код 3.4.1. Общий код начиная с кинетической энергии до момента выходной общей энергии продуктов реакции

cout <<«»<<endl;

cout <<«Write Ek=»;

cin>> E1;

E2= (a4+a5) *931.5+E1;

cout <<«»<<endl;

cout <<«Ea+EA+Ek="<<E2 <<endl;

cout <<«Energy: Q+Ek="<<q4+E1 <<endl;

На этом моменте завершается условие для кинетической энергии.

Выводы к 3 главе

Итого, был получен следующий код 3.5.1.

Код 3.5.1. Общий код на основе энергетических показателей

float q4, t1, E1, E2;

q4= (a4+a5-a6-a7) *931.5;

t1=abs (q4) * (1+a4/a5+abs (q4) / (2*a5*931.5));

cout <<«Q="<<q4 <<" MeV»<<endl;

cout <<«T="<<t1 <<" MeV»<<endl;

cout <<«»<<endl;

cout <<«Write Ek=»;

cin>> E1;

E2= (a4+a5) *931.5+E1;

cout <<«»<<endl;

cout <<«Ea+EA+Ek="<<E2 <<endl;

cout <<«Energy: Q+Ek="<<q4+E1 <<endl;

В самой же программе этот код выглядит следующим образом (Рис. 3.5.1).

Рисунок 3.5.1. Общий код в самой программе

Глава 4. Целочисленные данные реакции

4.1. Релятивизм в программном моделировании

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

Из этого можно сделать вывод, что для использования в программном моделировании самого понятия релятивизма становится необходимым вызов математической библиотеки данных со всеми дополняющими функциями типа: pow (a,b), sqrt (a), lg (a), sin (x), cos (x), tan (x) и т. д.

4.2. Энергия продуктов реакции

Для определения распределения энергии продуктов ядерной реакции возможно привести решение системы уравнений вытекающей из (4.2.1).

Но для начальной операции, как для простейшего случая возможно применение и двух уравнений (4.2.2) и (4.2.3).

Если записывать это в кодовом варианте для данной программе, получаем следующее равенство (код 4.2.1).

Код 4.2.1. Код для вывода энергии продуктов ядерной реакции

float Tb1, Tb2;

Tb1=a7/ (a6+a7) * (q4+E1);

Tb2=a6/ (a6+a7) * (q4+E1);

cout <<«E (b) ="<<Tb1 <<" MeV»<<endl;

cout <<«E (B) ="<<Tb2 <<" MeV»<<endl;

Также стоит обратить внимание на единицы и указание их в самой программе и коде. Также из этих двух основополагающих показателей представляются все остальные данные, которые демонстрируются в следующих главах (4.3—4.4).

4.3. Скорости действующих частиц

Одним из таких данных, выходящих из энергии продуктов ядерной реакции, является скорость этих продуктов, которое определяется из равенства (4.3.1).

При этом учитывается скорость света равной 299 792 458 м/с, при этом также при делении (отношении энергии к нулевой энергии) имеется ввиду отношение в МэВ. А для использования этой формулы в программе используются лишь переходы в системе единиц.

Общий код для скоростей представлен в последних выводах.