matlab小白问题,已知关于x的表达式,怎么循环计算输出结果
1、很简单啊.
2、比如我们输出一个函数f=A*sin(x)-B*exp(C*x)这种表达式,A,B,C是你输入的任何参数.
(1)你写上如下代码的M文件
function f=dispf(A,B,C)
syms x;
f=A*sin(x)-B*exp(C*x);
end
(2)现在你直接在命令窗口输入命令dispf就可以了,比如
>> dispf(12,36,78)
ans =
12*sin(x) - 36*exp(78*x)
>>
首先画出各个变量跟结果的散点图,看出他们的大概关系,
如果基本都是线性的话,那么用stepwise(x,y,inmodel,alpha)来进行分析,这个函数可以查出变量与结果的线性关系大小,剔除影响小的变量,得到它的回归系数及其置信区间,以及模型的统计量剩余标准差RMSE,相关系数R-Squre,F值,与F对应的概率P等
如果里面有变量与结果有很强的非线性关系,那么就根据散点图大概形状模出它的大概函数,然后通过代换变成线性,然后这样做就可以了
上面一步结束后然后用[b,bint,r,rint,stats]=regress(Y,X)来确定系数了,注意,此处的X=[ones(n,1),x1',x2',...],x1'这些都是为了使x1变成列向量,如果已经是列向量就不用转置了,当然Y也要是列向量
最后的结果是y=b(1)+b(2)*x+b(3)*x^2+...,省略号取决于你剩下的变量数,误差也有了在stats里面
希望我的回答对您有帮助,如果还有问题,请给我留言,祝您学习愉快
睡觉去啦,明天见
for x=1:1:100
eval(['y(',num2str(x),')=',num2str(x^2),';'])%将相应的数存入到y的相应矩阵中相应位置
end
y %输出最后的y值
急求一篇关于矩阵乘法的英语论文,字数大约400左右。多谢多谢!!_百度知...
ATLAB, for example, the product of a point m × p matrix X =(xij)anda oint p × n matrix Y =(yij )whose elements are double precision floating point umbers can be calculated by S = X ∗ Y.