Matlab中符号变量在normrnd函数使用时,提示第二个输入标量或者唯一的符号变量?代码是这样的Parameter=sym('[mu phi sigma lam rho gamma ome alpha beta]')%生成符号矩阵Length=size(data,1); %输入数据长度Z_tk=norm

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/07 10:53:47
Matlab中符号变量在normrnd函数使用时,提示第二个输入标量或者唯一的符号变量?代码是这样的Parameter=sym('[mu phi sigma lam rho gamma ome alpha beta]')%生成符号矩阵Length=size(data,1);   %输入数据长度Z_tk=norm
xTMoE+#6JP$7Bc{ci4YWuM8u4EI֑M_)wgV=ppz/-~MgIx|HsnOTMWt5OKpn[ ~|D:t߁$Zykd vؼ?]`tw9ֱ"`UR7S,T*JȐ F2V^P+paT(+fVC~1 Q-CYL屉 BF2`K7N'1~Bn>GY79`wL`ה<߇ZIg-> `8 `ˤNX[~Nds'<Oi{u]ӑeHj[˖e %hg,"}4KZijIj2b&p02rX:j+b-#K~ĸpVZhqghc'lΤ5˳YﱈJ R0/) lD<4]h2 e\p?ѷfgԬQ$$TM] +Fi+נsz`vG83ڊ G q;W~3.J_mF634 ,LWmЭ`/'MWv5/.3%Mu -jy4ܝl2ϕiB6D$26łJ'(ӭ+kt3=$qax߀<#9ȷ.ޣOZEW{a5ű5㕸ֈ@\/u@ 1c5意u}z wI=ZKX "V '_Y 6j [SuisҲc@0Q*{

Matlab中符号变量在normrnd函数使用时,提示第二个输入标量或者唯一的符号变量?代码是这样的Parameter=sym('[mu phi sigma lam rho gamma ome alpha beta]')%生成符号矩阵Length=size(data,1); %输入数据长度Z_tk=norm
Matlab中符号变量在normrnd函数使用时,提示第二个输入标量或者唯一的符号变量?
代码是这样的
Parameter=sym('[mu phi sigma lam rho gamma ome alpha beta]')%生成符号矩阵
Length=size(data,1); %输入数据长度
Z_tk=normrnd(Parameter(2),Parameter(3),Length,1); %生成均值Parameter(2),方差为Parameter(3)的正态分布.
在Matlab中提示错误的信息是这样的
Error using symfun>validateArgNames (line 197)
Second input must be a scalar or vector of unique symbolic variables.
求教不知道怎呢解决

Matlab中符号变量在normrnd函数使用时,提示第二个输入标量或者唯一的符号变量?代码是这样的Parameter=sym('[mu phi sigma lam rho gamma ome alpha beta]')%生成符号矩阵Length=size(data,1); %输入数据长度Z_tk=norm

normrnd是用于生成数值类型随机数的,不能用于符号(sym)类型.

 

该函数会对输入参数进行合法性检查,里面有类似下面的语句:

sigma(sigma < 0) = NaN;

这句在不同版本中会导致不同的错误,稍早一些的版本会提示“Undefined function or method 'lt' for input arguments of type 'sym'”,也就是说符号变量不能进行关系运算;后来的版本会出现类似你现在贴出来的错误.

 

如果你想要生成符号类型的正态分布随机数,可以用类似 randn(3,4)*sigma+mu 的式子直接生成,其中sigma和mu为标准差和均值(可以是符号类型),randn函数可以指定需要的矩阵维数.