MATLAB命誉明贺令是normrnd
功能:生成服从正态分布的随机数列,也就是你需要的高斯随机序列槐迅
>> help normrnd
NORMRND Random arrays from the normal distribution.
R = NORMRND(MU,SIGMA) returns an array of random numbers chosen from a
normal distribution with mean MU and standard deviation SIGMA. The size
of R is the common size of MU and SIGMA if both are arrays. 庆派 If either
parameter is a scalar, the size of R is the size of the other
parameter.
R = NORMRND(MU,SIGMA,M,N,...) or R = NORMRND(MU,SIGMA,[M,N,...])
returns an M-by-N-by-... array.
语法:
R=normrnd(MU,SIGMA)
R=normrnd(MU,SIGMA,m)
R=normrnd(MU,SIGMA,m,n)
说 明:
R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数。输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。标量输入将被扩展成和其它输入具有 相同维数的矩阵。
R=norrmrnd(MU,SIGMA,m):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的 随机数矩阵,矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。
R=normrnd(MU,SIGMA,m,n): 生成m×n形式的正态分布的随机数矩阵。
例:
>> A = normrnd(0,1,1,100)
>> plot(A)
注:正态分布只需要2个参数。
randn() 是标准正态分布;
normrnd()是自己可以指定均数和标准差的正太分布。
向左转|向右转
%%%必须知好磨道三个输入
输入矩阵a
初值x0
和b
%%%
function
y=gs(a,b,x0)
d=diag(diag(a))%对角线老派矩阵
l=-tril(a,-1)%下三角取负号,不包括对角
u=-triu(a,-1)%上三角取负号,不包括对角
b=(d-l)\u
f=(d-l)\b
y=b*x0+f
n=1
while
norm(y-x0)>=1.0e-6
x0=y
y=b*x0+f;
n=n+1;友含斗
end
可调用matlab内部函数,格式为u=randn(N)或者u=randn(M,N),前者为N维向量,后者为M*N矩阵,
这种调用方式产生的随机序晌灶昌列均值为零,方差为1
例如:R
=
normrnd(Mu,
Sigma,
m,
n)
%产生宴扒服从N(Mu,
Sigma^2)
分布的辩早m行n列的随机数组R
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)