matlab已知函数值求自变量,谢谢~

f(x)=1.823*x^4-2.725*x^3+1.94*x^2-0.038*x,求当y=0.8,y=0.2时对应的x值,万分感谢!... f(x)= 1.823*x^4-2.725*x^3+1.94*x^2-0.038*x,求当y=0.8,y=0.2时对应的x值,万分感谢! 展开
dukinkin
推荐于2016-05-18 · TA获得超过1.3万个赞
知道大有可为答主
回答量:2444
采纳率:90%
帮助的人:874万
展开全部
你原来的f(x)是一个多项式
按照matlab多项式的定义
p=[1.823 -2.725 1.94 0.038 0];

要求y=0.8时候x的值就是求
方程f(x)= 1.823*x^4-2.725*x^3+1.94*x^2-0.038*x-0.8=0的根

>> p1=p;p1(end)=-0.8;
>> roots(p1)

ans =

0.5378 + 0.8645i
0.5378 - 0.8645i
0.8931
-0.4740

类推y=0.2时
>> p2=p;p2(end)=-0.2;
>> roots(p2)

ans =

0.6825 + 0.7289i
0.6825 - 0.7289i
0.4028
-0.2731

由于是四次多项式,所以有四个根
而如果只需要实根,就从中间挑出来就可以了
欢喜且盎然丶小雀7521
2014-06-03 · 超过50用户采纳过TA的回答
知道答主
回答量:109
采纳率:33%
帮助的人:91.7万
展开全部
代码如下:
f=@(x,a)1./x.*(5/6+1/6.*x.^2).^3-a;
y=[1.0534,1.2314,1.4561,1.6919,1.9177,2.1429,2.29,2.4383];
x=fsolve(f,2.5*ones(size(y)),[],y);

或者

f=@(x,a)1./x.*(5/6+1/6.*x.^2).^3-a;
y=[1.0534,1.2314,1.4561,1.6919,1.9177,2.1429,2.29,2.4383];
for i=1:length(y);
x(i)=fzero(f,2.5,[],y(i));
end

x =

Columns 1 through 6

1.2679 1.5762 1.8156 2.0031 2.1495 2.2744

Columns 7 through 8

2.3475 2.4158
是否可以解决您的问题?
追问
请问哪来的这些数字,可以详细解释吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式