weibull/normal 仿真与参数估计

假定一个随机变量服从威布尔分布,另一个随机变量服从正态分布,考虑两者的比值或者通过其它表达式计算的结果服从何种分布。

 

我考虑用蒙特卡洛的方法进行实现。

 

步骤如下:

1、设定参数范围

2、对参数进行排列

3、进行1e6次仿真

4 、统计参数(后续与设定参数进行比较)

5、对于两个随机变量的比值进行参数估计

6、进行WPP图检验

7、输入所有的结果

 

clc;clear

u=1
sigma=0.02:0.01:0.06
beta=2:0.2:4
yita=200:50:500

k=1;

% 参数排列组合
for i=1:length(u); 
    for j=1:length(sigma);
        for m=1:length(beta);
            for n=1:length(yita);
          p(k,:)=[u(i),sigma(j),beta(m), yita(n)];
                
           k=k+1;     
                
            end
        end
    end
end

% 设定仿真次数
 N=1e6; 
p1=p;
for i=1:length(p);i
   
f=wblrnd(p(i,4),p(i,3),N,1);
        p_w=wblfit(f);
j=normrnd(p(i,1),p(i,2),N,1);
        [p_n_1 p_n_2]=normfit(j);  
              p1(i,:)=[p_n_1 p_n_2  p_w(2) p_w(1)];  % 仿真后参数估计
f_g=f./j;
p_g(i,:)=wblfit(f_g);   % goodman修真后的幅值参数

   figure(i);wblplot(f_g);   %幅值wpp图  
   saveas(gcf,int2str(i),'jpg');
   figure(i);close

end

P=[p p1 p_g]    
  

 

posted @ 2020-09-03 10:34  redufa  阅读(348)  评论(0)    收藏  举报