| 查看: 369 | 回复: 2 | |||
[交流]
【求助】隐函数求解问题 已有2人参与
|
|
各位大虾,我现在有三组实验数据 x=[3.2034 2.5439 2.2442 2.1043 1.9245 1.7846];y=[0.5989 0.4912 0.4593 0.4137 0.3844 0.3573];z=[0.0201 0.0192 0.0191 0.0188 0.0184 0.0180]; 现在我想根据x和z的值用公式x-(y/(y+z))*((1.6504*y+1.4592*z)/1.6504/0.2969)^1.6504=0对y值进行求解并与实验值进行比较,应该如何操作并画出计算值y的趋势图???图以x轴为横坐标,y为纵坐标!用matlab或origin能行吗? |
» 猜你喜欢
溴的反应液脱色
已经有7人回复
国自然申请面上模板最新2026版出了吗?
已经有11人回复
推荐一本书
已经有12人回复
基金申报
已经有4人回复
计算机、0854电子信息(085401-058412)调剂
已经有4人回复
纳米粒子粒径的测量
已经有7人回复
常年博士招收(双一流,工科)
已经有4人回复
参与限项
已经有5人回复
有没有人能给点建议
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复


2楼2010-04-25 10:49:38
zjliu1265
至尊木虫 (正式写手)
- 应助: 18 (小学生)
- 金币: 11863.7
- 散金: 200
- 帖子: 642
- 在线: 678.9小时
- 虫号: 585320
- 注册: 2008-08-08
- 性别: GG
- 专业: 光学
★ ★
legend85(金币+2):非常感谢! 2010-04-28 13:36
adu886886(金币+2):谢谢应助 2010-04-28 14:27
legend85(金币+2):非常感谢! 2010-04-28 13:36
adu886886(金币+2):谢谢应助 2010-04-28 14:27
|
我用二分法写了个程序,不知是否满足你的需要: % 隐函数求解问题 clc;clear;close all; xt=[3.2034 2.5439 2.2442 2.1043 1.9245 1.7846]; zt=[0.0201 0.0192 0.0191 0.0188 0.0184 0.0180]; y=1; for k=1:length(xt); x=xt(k);z=zt(k); y1=0; y2=1; f1=x-(y1/(y1+z))*((1.6504*y1+1.4592*z)/1.6504/0.2969)^1.6504; f2=x-(y2/(y2+z))*((1.6504*y2+1.4592*z)/1.6504/0.2969)^1.6504; while max(abs(f1),abs(f2))>1e-6; f1=x-(y1/(y1+z))*((1.6504*y1+1.4592*z)/1.6504/0.2969)^1.6504; f2=x-(y2/(y2+z))*((1.6504*y2+1.4592*z)/1.6504/0.2969)^1.6504; y=[y1+y2]/2; f=x-(y/(y+z))*((1.6504*y+1.4592*z)/1.6504/0.2969)^1.6504; if f>0; y1=y; else y2=y; end end yt(k)=y; k end yt0=[0.5989 0.4912 0.4593 0.4137 0.3844 0.3573] plot(yt0,'k+');hold on; plot(yt,'rx');hold on; %%%%%%%%%%% 图解确定根的个数 % figure; for k=1:6; x=xt(1);y=yt(k); ys=linspace(0,1,101); f=x-(ys./(ys+z)).*((1.6504*ys+1.4592*z)/1.6504/0.2969).^1.6504; subplot(2,3,k);plot(ys,f); end %%% over %% |
3楼2010-04-28 11:03:34












回复此楼