Weekly seminar
Exercises progress report
The programming was done using MATLAB, which provides built-in functions for most
common probability distributions except for the power-law distribution, which must be
defined manually
Built-in MATLAB Functions Used
➢ normpdf , normrnd for normal probability distributions
➢ binopdf,binornd for binomial probability distributions
➢ poisspdf ,poissrnd for Poisson probability distribution
➢ gammapdf,gammarnd for gamma probability distribution
➢ betapdf,betarnd for beta probability distribution
Exercises 1: Plotting Various Distributions
1.uniform distribution
Mu=-2;%mean value
% sigma=5;%standard deviation
x=-15:0.1:15;
figure
hold on
colors=['r','b','g','y'];
for k=1:4
y=normpdf(x,Mu,k);%normal distribution
plot(x,y,'color',colors(k),'linewidth',1.5)
end
xlabel('x')
ylabel('probability distribution')
title('probability distribution for k=1,k=2,..4')
grid on
legend('k=1','k=2','k=3','k=4')
2.gamma distribution, f (x; k, θ)
teta=2;%angle teta constant
x=0:0.1:25;% range of x values
figure
hold on
colors=['r','b','g','y'];
for k=1:4 % drawing for k=1,k=2,..4
y=gampdf(x,k,teta);
plot(x,y,'color',colors(k),'linewidth',1.5)
end
xlabel('x')
ylabel('probability density function')
title('probability distribution for k=1,k=2,..4')
grid on
legend('k=1','k=2','k=3','k=4')
3.beta distribution
a=2;%angle teta constant
x=0:0.01:1;% range of x values
figure
hold on
colors=['r','b','g','y'];
for b=1:4 % drawing for b=1,b=2,..4
y=betapdf(x,a,b);
plot(x,y,'color',colors(b),'linewidth',1.5)
end
xlabel('x')
ylabel('probability density function')
title('probability distribution for k=1,k=2,..4')
grid on
legend('k=1','k=2','k=3','k=4')
Exercises 2 :Sum of probability distributions
Sum of beta and gamma distribution
x=0:0.01:20;
y1=betapdf(x,2,2);%beta distribution
y2=gampdf(x,2,2);%gamma distribution
y=y1+y2;
figure
plot(x,y1,'color','r')
hold on
plot(x,y2,'color','b')
plot(x,y,'Color','g')
hold off
xlabel('x')
ylabel('probability density function')
title('grapth shows sum of 2 distributions beta and gamma')
legend('beta distr','gamma distr','sum')
%sum of two poisonous distribution
lambda1=3;%mean or variance
lambda2=5;
x=-2:20;%range of x values/number of events
x1=poisspdf(x,lambda1);
x2=poisspdf(x,lambda2);
X=poisspdf(x,lambda1+lambda2);% the sam as x=x1+x2;% sum of two poissonous
distributions
figure
plot(x,x1,'color','r','linewidth',1)
hold on
plot(x,x2,'color','b','linewidth',1)
plot(x,X,'color','g','linewidth', 2)
ylabel('probability distribution')
xlabel('x')
legend('\lambda=3 ','\lambda=5','\lambda=8')
%power law distribution
xmin=1;
a=2;%alpha value
x=xmin:0.1:10;
C=(a-1)*(xmin^(a-1));%normalisation constant
y=C*(x.^-a);
figure;
plot(x, y, 'LineWidth', 2)
xlabel('x')
ylabel('f(x)')
title(['Power-law: \alpha = ', num2str(a)])
grid on
% binomial expansion
n = 10; %number of trials
p = 0.5; %probability of success
y = binornd(n, p,1,1000); % Binomial PDF
histogram(y,100);
xlabel('Number of Successes');
ylabel('Probability');
title(['Binomial Distribution (n = ', num2str(n), ', p = ', num2str(p), ')']);
grid on;
For exercise 3
%sum of two normal distribution
mu1 = 3; sigma1 = 0.5;
mu2 = 2; sigma2 = 1;
x1 = normrnd(mu1, sigma1, 1, 1000); % First normal distribution
x2 = normrnd(mu2, sigma2, 1, 1000); % Second normal distributiion
z = x1 + x2;
%using kernel pdf estimation from continuous data
[x1_pdf,x1_x]=ksdensity(x1);
[x2_pdf,x2_x]=ksdensity(x2);
[z_pdf,z_x]=ksdensity(z);
figure;
plot(x1_x, x1_pdf, 'r', 'LineWidth', 2);
hold on;
plot(x2_x, x2_pdf, 'b', 'LineWidth', 2);
plot(z_x, z_pdf, 'k', 'LineWidth', 2);
hold off;
xlabel('Value');
ylabel('Probability Density');
legend('x1 mu=3,sigma=0.5', 'x2 mu=2,sigma=1', 'z = x1 + x2');
title('Comparison of Two Normal Distributions and Their Sum');
grid on;
Exercises 4. convulation property Z=X+Y
%verification of convulation z=x+y
z=linspace(0.01,10,1000);
y=linspace(-5,10,1000);
dy=y(2)-y(1);
gy=normpdf(y,2,1);
Zpdf=zeros(size(z));%initialise z
for i=1:length(z)
Z=z(i);
x=Z-y;
fx=gampdf(x,2,1);
fx(x <= 0) = 0;
integrand=fx.*gy;
Zpdf(i)=trapz(y,integrand);
end
figure
plot(z, Zpdf, 'b', 'LineWidth', 2);
title('PDF of Z = X + Y (Gamma + Normal)');
xlabel('z'); ylabel('p(z)'); grid on;
grid on
hold on
plot(x,fx,'color','r','linewidth',1)
plot(y,gy,'color','g','linewidth',1)
legend('PDF of Z=X+Y','gamma','normal')
Exercises 5
%product of two log normal distribution
mu=1;
sigma=0.5;%sigma value
x=0:0.1:20;
y2=lognpdf(x,mu,sigma);
y1=lognpdf(x,1.5,1);
y=y1.*y2;%product of two distribution
figure
plot(x,y1,'Color','r')
hold on
plot(x,y2,'Color','b')
plot(x,y,'Color','g')
hold off
xlabel('x')
ylabel('probability density function')
legend('y1','y1','Product')
grid on