matlab中 积分函数quad使用问题 function y=density(x)xd=[-0.1:0.001:0.1];h=1.05*std(xd)*(length(xd)^(-1/5));y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));end%%%quad(@density,0,1)%%运行上述语句发生错误 为什么?Error u

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/09 01:42:58
matlab中积分函数quad使用问题functiony=density(x)xd=[-0.1:0.001:0.1];h=1.05*std(xd)*(length(xd)^(-1/5));y=1/(l

matlab中 积分函数quad使用问题 function y=density(x)xd=[-0.1:0.001:0.1];h=1.05*std(xd)*(length(xd)^(-1/5));y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));end%%%quad(@density,0,1)%%运行上述语句发生错误 为什么?Error u
matlab中 积分函数quad使用问题
function y=density(x)
xd=[-0.1:0.001:0.1];
h=1.05*std(xd)*(length(xd)^(-1/5));
y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));
end
%%%
quad(@density,0,1)
%%运行上述语句发生错误 为什么?
Error using -
Matrix dimensions must agree.
Error in density (line 4)
y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));
Error in quad (line 72)
y = f(x,varargin{:});

matlab中 积分函数quad使用问题 function y=density(x)xd=[-0.1:0.001:0.1];h=1.05*std(xd)*(length(xd)^(-1/5));y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));end%%%quad(@density,0,1)%%运行上述语句发生错误 为什么?Error u
发生错误的原因主要是由于quad在做积分元算时,每次迭代会给x一组数据而不是一个数,所以x是一个向量,以此计算出的y也是一个向量,再将向量y中元素的差叠加求出积分.
而在你的函数中又有一个求和的运算,导致x-xd这一步中,xd也是一个向量.quad计算给x的向量和xd的向量长度不统一出现错误.
在这里需要将x-xd的x 和xd都拓展成矩阵,然后求和得出y向量
程序改为:
function y=density(x)
xd=[-0.1:0.001:0.1]';
h=1.05*std(xd)*(length(xd)^(-1/5));
y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((ones(length(xd),1)*x-xd*ones(1,length(x)))/h).^2)/2));
end

quad函数如何积带变量上下限的函数matlab中的积分问题 matlab中 积分函数quad使用问题 function y=density(x)xd=[-0.1:0.001:0.1];h=1.05*std(xd)*(length(xd)^(-1/5));y=1/(length(xd)*h)*sum(1/sqrt(2*pi)*exp(-(((x-xd)/h).^2)/2));end%%%quad(@density,0,1)%%运行上述语句发生错误 为什么?Error u 在问题‘matlab求带参数的积分,符号积分解不出,用数值积分怎么搞’中,如果用quad应该怎么做? Matlab 中为什么不能运用trapz或quad或程序求解广义积分? matlab中,定义匿名函数时有嵌套看匿名函数的嵌套时,看到这一句,不懂myfhd=@(a)(quad(@(x)(a.*x.^2+1./a^2),0,1)我知道,quad(fun,a,b)是积分函数,前一个@也明白,第二个@怎么回事?如果写成myfhd=@(a)(quad(a.*x.^2+1 matlab 使用quad函数对f1计算数值积分结果,怎么修改啊?句柄函数也创建了呀,是不是路径有问题f1=@(t)(sin(t)^2*exp(0.1*t)-0.5*abs(t))function y=sy(t)%SY y=(sin(t).^2*exp(0.1*t)-0.5*abs(t)y=(sin(t).^2*exp(0.1*t)-0.5*abs(t) q matlab中 如何用quad函数积上下限带变量的函数 matlab中求定积分中int与quad的区别是什么?还有quad跟inline有什么关系么.而不是拷贝别人的 matlab 关于inline的问题我不懂matlab,想用它求个积分,但遇到个很久结的问题,我想用matlab求函数y=x2(x的平方)的定积分,积分区间从1到2,下面是我的程序:format long syms x;w=x.^2;f=inline('w');a=quad(f,1, matlab中对于 f=1/(3*((1-x)*x^0.5)^2.2该函数的数值积分问题>> quad('1/(3*((1-x)*x^0.5)^2.2)',1,10)Error using ==> inlineeval at 15Error in inline expression ==> 1/(3*((1-x)*x^0.5)^2.2)Matrix must be square.Error in ==> inline.subsref at 27 matlab程序出现Error in ==> fesin at 错误,求高手指导.在使用quad函数求积分时[s,n]=quad('fesin',-100000000000,10000000000)出现一下错误,(我的fesin是这样定义的.function funz=fesin(x)funz=691200.*x./((1+9./0.7.*x^2)^4./3 matlab程序出现Error in ==> fesin at 错误,求高手指导.在使用quad函数求积分时[s,n]=quad('fesin',-100000000000,10000000000)出现一下错误,(我的fesin是这样定义的.function funz=fesin(x)funz=691200.*x./((1+9./0.7.*x^2)^4./3 matlab中求定积分中 int 与quad的区别?例如:被积函数为cos(15x),积分下上限分别为0,3*pi/2用int==>syms x;a1=int('cos(15*x)',x,0,3*pi/2);用quad=>f=inline('cos(15*x)','x');quad(f,0,3*pi/2);上一个答案为1/15,后者答案为:0.0 初学者一个关于MATLAB的问题MATLAB7.0 求积分quad函数 调用形式s=quad('fname',a,b,tol,trace,p1,p2,.)其中trace是控制是否制图的而tol是控制精度我想出图,精度采用默认值,请问参数应该如何设置,也就是如 matlab怎么表示含参变量的积分matlab中,我想表示一个函数g(a)=(函数f(a,x)在[0,a]上对x的积分)终于知道怎么做了,很直接地function F=g(a)F=quad(@(x)myfun(x,a),0,a);我一直不清楚的是含两个自变量的函数 关于matlab多项式的表达在计算的时候,使用quad函数,quad('1./(x.^3-2*x-5)',0,2),请问式中‘1.’ ‘x.^3’ 中的1和x后面为什么加点‘.’而在有些时候多项式中x的后面不加点? matlab quad 函数代码中的y(1) ,跟数值积分分成的n个节点有什么关系,function [Q,fcnt] = quad(funfcn,a,b,tol,trace,varargin)%QUAD Numerically evaluate integral,adaptive Simpson quadrature.% Q = QUAD(FUN,A,B) tries to approximate the matlab积分函数quad用法syms sita;Ra=60*quad('(((cos(2*pi*cos(sita)*x)-cos(2*pi*x))/sin(sita))^2)*sin(sita)',0,pi); 我写的这个不知怎么回事,一直有错