⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 indepverify.m

📁 该程序用来检验monte carlo随机数的分布是否满足随机性要求。包括独立性检验、均匀性检验和参数检验。
💻 M
字号:
function okay=indepVerify(varargin)
if nargin==1
    r=varargin{1,1};
    alpha=0.05;k=1;     %默认为0.05显著性检验,间距为1。
end
if nargin==2
    r=varargin{1,1};
    alpha=varargin{1,2};
    k=1;
end
if nargin==3
    r=varargin{1,1};
    alpha=varargin{1,2};
    k=varargin{1,3};
end

% %程序测试代码
% r=myunirnd(30,1);
% alpha=0.01;
% k=2;

r=reshape(r,1,[]);
n=prod(size(r));

%确定临界点z值
critical.alpha=[0.05 0.01];
critical.pvalue=[1.96 2.58];  
z_value=critical.pvalue(critical.alpha==alpha);
theory_critical=z_value/sqrt(n-k);

%求间隔为k的r序列间的相关系数
real_exp=mean(r);
real_std=std(r,1);
temp=0;
for i=1:n-k
    temp=temp+r(i)*r(i+k);
end
real_corrcoef=(1/(n-k)*temp-real_exp^2)/(real_std^2);

if abs(real_corrcoef)>theory_critical
    okay=0;
    fprintf('不满足独立性检验!\n')
else
    okay=1;
    fprintf('满足独立性检验!\n')
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -