%============================================
% MATLAB kommandoer til avsnittene 6.1 og 6.2
%============================================
%%

%================================================
% Eksempel i avsnitt 6.1 
% (bruddstyrke av staaltraad -konstruert eksempel)
%================================================
%%

%------------------------------------------------------------
% Tegner Weibulltettheten formparameter 2 og skalaparamerer 5
% og beregner forventning og varians
%------------------------------------------------------------
alpha=2;
beta=5;
x=0:0.01:15;
plot(x,wblpdf(x,beta,alpha))
forv=beta*gamma(1+1/alpha);
med=beta*(log(2))^(1/alpha);
%%

%-------------------------------------------------------------
% Genererer fem datamengder hver av størrelse n=10 og beregner 
% gjennomsnitt og empirisk median for hver av datamengdene
%-------------------------------------------------------------
X = wblrnd(beta,alpha,10,5)
meanX= mean(X)
medianX=median(X)
%%

%-------------------------------------------------------------------------
% Genererer 10000 datamengder hver av størrelse n=10, beregner gjenomsnitt 
% og median for hver av datamengdene og tegner histogram som viser fordelingen
% av gjenomsnitt og empirisk median
%-------------------------------------------------------------
X = wblrnd(beta,alpha,10,10000);
meanX= mean(X);
histogram(meanX,'normalization','pdf','binlimits',[0 10])
medianX=median(X);
histogram(medianX,'normalization','pdf','binlimits',[0 10]) 
%%


%============================================
% MATLAB kommandoer til avsnitt 6.2
% Illustrasjon av snentralgrensesetningen
%============================================
%%

%------------------------------------------------------------------------------
% Generere 10000 datamengder hver med n=10 unifomrm(0,1)-fordelte observasjoner
% Beregner standardisert gjennomsnitt for hver datamengde og sammenligner plott 
% av empirisk kumulativ fordeling for de 10000 standardiserte gjennomsnittene
% med kumulativ standardnormalfordeling
%---------------------------------------------------------------------------
n=10;
my=0.5;
s=1/sqrt(12);
X = unifrnd(0,1,n,10000);
meanX= mean(X);
Z=(meanX-my)/(s/sqrt(n));
ecdf(Z)
xlim([-3,3])
hold on
x=-3:0.01:3;
line(x,normcdf(x),'col','red')
%%

%-------------------------------------------------------------
% Gjentar beregningene for eksponential-fordelte observasjoner
%-------------------------------------------------------------
hold off
n=10;
my=1;
s=1;
X=exprnd(1,n,10000);
meanX= mean(X);
Z=(meanX-my)/(s/sqrt(n));
ecdf(Z)
xlim([-3,3])
hold on
x=-3:0.01:3;
line(x,normcdf(x),'col','red')
%%

%----------------------------------------------------------
% Gjentar beregningene for Bernoulli-fordelte observasjoner
%----------------------------------------------------------
hold off
n=10;
my=0.25;
s=sqrt(0.25*0.75);
X=binornd(1,0.25,n,10000);
meanX= mean(X);
Z=(meanX-my)/(s/sqrt(n));
ecdf(Z)
xlim([-3,3])
hold on
x=-3:0.01:3;
line(x,normcdf(x),'col','red')
%%



