Академический Документы
Профессиональный Документы
Культура Документы
%-------------------------------------------------------------------------
%----- ������������� �� ���� ������������� ������� ��������� theta -----
%-------------------------------------------------------------------------
B=5; % ����������� �������� B (������������� ����� ������� �� �
% ��� Xc*B^(1/2)=const {phi=teta/(Xc*B^(1/2))}�� ����� ����������� �����
% � ��� �� �������������� �� ����������� ���������.
% ��� ����������� ������� ���������. ����� ������ �� ������� �������
% ������� (E=E����-�) ��������� ��������� ������� ��� t.
% ����� �������������� ������� ������������ �� t ( Xc*B^0.5 ������ ���� < 1.
% �������� ����� ��������� ����������� tmax=(E), ��� ������� ��� �������
% ���������: tmax=c1*E^c2 ; � ����������� �1=25 �� Pb � �2=1.8, � ���
% ���������� �1=16 �� Pb � �2=1.4 (���� t � [���], � E � [���]).
% ��������, ����� Xc*B^0.5=0.5 ����� ����� t=0.55*E^2+8.9*E ��� t=7*E^1.3,
% ��� t � [���], � E � [���].
teta=(0.01:0.01:1)*pi; % ���� theta
for as=1:100
% phi(as)=teta(as)/(Xc*B^(0.5));% ���� t=tmax=C*E^1.8(������), �� Xc^2*B=1
phi(as)=teta(as)/0.5;
F0(as)=2*exp(-phi(as)^2);
F1(as)=-4*phi(as)*exp(-phi(as)^2); %� ������ ������� ��� ������� �� F1 ???
g1=1;
if phi(as)<1
if phi(as)>0
g2(as)=(phi(as)/4.1509)*(5*F0(as)+F1(as));
end
else
g2(as)=0;
end
if phi(as)>1
g3(as)=(1/2)*(1/2.1946)*(5*F0(as)+F1(as));
else
g3(as)=0;
end
if phi(as)>0
f1(as)=2*phi(as)*exp(-phi(as)^2);
else
f1(as)=0;
end
if phi(as)<1
if phi(as)>0
f2(as)=1;
end
else
f2(as)=0;
end
if phi(as)>1
f3(as)=2/phi(as)^3;
else
f3(as)=0;
end
a1=1-5/B;
a2=4.1509/B;
a3=2.1946/B;
FUN(as)=sqrt(abs((sin(teta(as))/teta(as))))*(a1*f1(as)+a2*g2(as)
+a3*f3(as)*g3(as));
% FUN(as)=sqrt(a1*f1(as)+a2*g2(as)+a3*f3(as)*g3(as));
end
% figure
% plot(teta,FUN);
% xlabel('0 \leq \theta \leq \pi')
% ylabel('f(\theta)')
% title('Distribution density of positron dispersion angle (\theta)')
%--------------------------------------------------------------------------
%-------- ����� ����� - ����������� ��������� ������� ���� ----------
%--------------------------------------------------------------------------
%-------------------------------------------------------------------
%------- ����� ������ ������� -----------
%-------------------------------------------------------------------
% ����������
p=sqrt((EnergyP1)^2-(Me)^2); %������� ��������� � ���
beta=p/EnergyP1 ;
X=log10(p/Me); % X=log10(p/m*c), p - ������� � ���
%--------------------------------------------------------------------
% ���������� ���� �������
%--------------------------------------------------------------------
if not(out)
t=0.0007*(EnergyP1-Me)^1.3;% ������� ��� � [��] �� Xc*B^(1/2)=0.5(��. ����)
%tmax=Cc*(EnergyP1-Me)^1.8; % ����������� ������� ��� � [��] (��. ������.)
%Cc=0.0025; �� Pb, Cc=0.04; �� Al
%� ��� ����������, ��� �� Pb tmax=0.0016*(EnergyP1-Me)^1.4
% B=5; %Omega0=30 �������������� � �����������
dteta = interp1(FUN1,tetam1,rand(1)*max(FUN1),'linear');%*(-1)^randint;
else
clear FUN FUN2 tetam2
% tmin (���������� ������� ��� ������� ����� ��� ��������) ��������
% ����� 0,0001 �� (1���) �� Pb
% ���� ����� ����������� ����� ������������ Omega0=10, ��
tmin = 10*A0*beta^2*(1+3.33/(137*beta)^2)/7830/Z^(1/3)/(Z+1)/ro;% [��]
if t>tmin
pc=p*1000; % ������ pc ����� ����� � [���] (�������� � ���������)
%----------
% ���������� ������������ �� ���� ������������� ������� teta
%----------
Xc=((515*t*ro*Z*(Z+1))/A0)^0.5/(pc*beta);
Omega0=7830*(Z+1)*Z^(1/3)*t*ro/(A0*(beta^2+3.33*(1/137)^2));
% B=2.6+2.386*log(Omega0)-3.234*log(Omega0+0.994) ������� �� �����������
B= -0.61846*sqrt(log(Omega0))^4+5.1346*sqrt(log(Omega0))^3-
14.889*sqrt(log(Omega0))^2+22.545*sqrt(log(Omega0))-10.983;
% [EnergyP1, Omega0, B, Xc*B^(0.5)]
teta=(0.01:0.01:1)*pi/4; % ���� theta
for as=1:100
phi(as)=teta(as)/(Xc*B^(0.5));
% phi(as)=teta(as); % ���� t=tmax=C*E^1.8(??? ��. ����), �� Xc*B^2=1
F0(as)=2*exp(-phi(as)^2);
F1(as)=-4*phi(as)*exp(-phi(as)^2); %� ������ ������� � ���������� ���
������� �� F1 ???
g1=1;
if phi(as)<1
if phi(as)>0
g2(as)=(phi(as)/4.1509)*(5*F0(as)+F1(as));
end
else
g2(as)=0;
end
if phi(as)>1
g3(as)=(1/2)*(1/2.1946)*(5*F0(as)+F1(as));
else
g3(as)=0;
end
if phi(as)>0
f1(as)=2*phi(as)*exp(-phi(as)^2);
else
f1(as)=0;
end
if phi(as)<1
if phi(as)>0
f2(as)=1;
end
else
f2(as)=0;
end
if phi(as)>1
f3(as)=2/phi(as)^3;
else
f3(as)=0;
end
a1=1-5/B;
a2=4.1509/B;
a3=2.1946/B;
FUN(as)=sqrt(abs((sin(teta(as))/teta(as))))*(a1*f1(as)+a2*g2(as)
+a3*f3(as)*g3(as));
% FUN(as)=sqrt(a1*f1(as)+a2*g2(as)+a3*f3(as)*g3(as));
end
% figure
% plot(teta,FUN);
%====== ������������ ������� ���� �������.����.
for i=1:size(FUN)
if FUN(i)>0 FUN(i)=FUN(i); else FUN(i)=0; end
end
FUN=FUN/sum(FUN);
FUN2(1)=0; FUN2(2)=FUN(1);
tetam2(1)=teta(1); tetam2(2)=teta(2);
i=1;
% for i=2:99
while (FUN(i)>0.001 & i+1<100)
i=i+1;
FUN2(i+1)=FUN2(i)+FUN(i);
tetam2(i+1)=teta(i+1);
end
% end
% FUN=FUN/sum(FUN);
% FUN2(1)=0;
% FUN2(2)=FUN(1);
% for i=2:99
% FUN2(i+1)=FUN2(i)+FUN(i);
% end
% % end
if size(FUN)>2
dteta = interp1(FUN2,tetam2,rand(1)*max(FUN2),'linear');%*(-1)^randint;
end
clear FUN2 tetam2;
end% ����� if t > tmin
end% ����� if not(out)
%---------- ��������� ���� tetha
%dteta = dteta*pi/180; % ???????????????????????????????????
%----------
%����������� ����� ��������� � �������
%----------
%====== ����������
fi1=rand(1)*2*pi;
R=abs(t*cos(dteta));
dx0=R*cos(teta1);
dz0=R*sin(teta1)*cos(fi);
dy0=R*sin(teta1)*sin(fi);
r=abs(t*sin(dteta));
% r1=r/sqrt(1+(cos(fi1)*dz/dx+sin(fi1)*dy/dx)^2);
% dx=dx0-r1*(cos(fi1)*dz/dx+sin(fi1)*dy/dx);
r1=r/sqrt(1+(cos(fi1)*dz/dx+sin(fi1)*dy/dx)^2);
dx=dx0-r1*(cos(fi1)*dz/dx+sin(fi1)*dy/dx);
dz=dz0+r1*cos(fi1);
dy=dy0+r1*sin(fi1);
%teta1=teta1+dteta*cos(fi1);% ------------- ����� ���� ����
%dfi=sin(dteta)*sin(fi1)/sin(teta1);
%fi=fi+dfi; % ----------------------------- ����� ���� ��
%dx=t*cos(teta1)-t*sin(dteta)*cos(fi1)*sin(teta1);
kX=kX+dx;
%dy=t*sin(teta1)*sin(fi);
kY=kY+dy;
%dz=t*sin(teta1)*cos(fi);
kZ=kZ+dz;
% [sin(fi), dy0*10000, dz0*10000]
if out
ind=ind+1
if EnergyP1<Me EnergyP(ind)=0;
else EnergyP(ind)=EnergyP1-Me;
end
dr=sqrt(dx^2+dy^2+dz^2);
%======% ���� �����
gamma(ind)=acos(dx/dr)*180/pi;
g1=ceil(gamma(ind));
ugolG(g1)=ugolG(g1)+1;