24小时热门版块排行榜    

查看: 2033  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

mmaazw

新虫 (初入文坛)

[求助] matlab fsolve 函数是隐函数的问题 已有1人参与

这是我的程序
clc;clear all
syms x
y=2*x;
z=x^2;
eq1=z-y-4;
solve(eq1)
eq2=@(x)[z-y-4];
x0=1;
fsolve(eq2,x0)
solve函数可以解隐函数的方程,但是fsolve为啥解不了,我实际的方程中y、z是关于x的一个很复杂的函数,上面只是举个简单的例子,是因为fsolve编程不对么,求高手赐教,有什么解决办法?跪谢!!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
fsolve本身就是主要用于求解数值解的。
一下代码完整复制进一个m文件运行即可。复杂的方程,作类似的修改即可。
CODE:
function test_3
clear all;clc
x0=0;
[x fval]=fsolve(@eq_1,x0)

function f=eq_1(x)
y=2*x;
z=x^2;
f=z-y-4;

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2014-12-09 11:47:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

刘畅的用户名

木虫 (小有名气)

如果计算式很复杂,可以试试数值求解。

[ 发自小木虫客户端 ]
2楼2014-12-09 11:23:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mmaazw

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by 月只蓝 at 2014-12-09 11:47:32
fsolve本身就是主要用于求解数值解的。
一下代码完整复制进一个m文件运行即可。复杂的方程,作类似的修改即可。
function test_3
clear all;clc
x0=0;
=fsolve(@eq_1,x0)

function f=eq_1(x)
y=2*x;
z=x^ ...

多谢同学。我把上述代码复制到m文件里 把此文件命名为eq_1.m。但是运行出错(见附图)。matlab新手,多多指教啊。
matlab fsolve  函数是隐函数的问题
360截图20141209152927498.jpg


matlab fsolve  函数是隐函数的问题-1
360截图20141209152959600.jpg

4楼2014-12-09 15:34:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mmaazw

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 刘畅的用户名 at 2014-12-09 11:23:42
如果计算式很复杂,可以试试数值求解。

fsolve就是用求数值解的啊 多谢
5楼2014-12-09 15:35:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见