24小时热门版块排行榜    

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

Fanny675

铜虫 (初入文坛)

[求助] 用MATLAB求解一个超越方程已有1人参与

tan(k*L)=(k*L)/[1+N/(N-1)^2*(k*L)^2]我整理方程得到了这种方程,不会解  麻烦高手们把Matlab程序等解题过程写的详细一些!谢谢!我最后要求的结果是k*L=?

用MATLAB求解一个超越方程
1.jpg
回复此楼

» 收录本帖的淘帖专辑推荐

matlab编程绘图

» 猜你喜欢

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

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

Fanny675

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by 月只蓝 at 2015-08-12 11:25:56
程序中以x表示k*L,由于你没有给出N的数值,我就以n=1.5为例,代码如下:
>> n=1.5;
>> =fsolve(@(x) tan(x)-  n/(1+x^2*n/((n-1)^2)  ),0)

计算结果:
解x =

    0.5198


方程残差fval = ...

你把方程弄错了,丢掉了(k*L)^2
3楼2015-08-12 12:14:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 15 个回答

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
程序中以x表示k*L,由于你没有给出N的数值,我就以n=1.5为例,代码如下:
CODE:
>> n=1.5;
>> [x fval]=fsolve(@(x) tan(x)-  n/(1+x^2*n/((n-1)^2)  ),0)

计算结果:
解x =

    0.5198


方程残差fval =

-2.7154e-011

楼主需要注意的是,tan是周期性函数,给出不同的初值,将得到不同的解,上述代码是求得x=0点附近的解。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2015-08-12 11:25:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by Fanny675 at 2015-08-12 12:14:44
你把方程弄错了,丢掉了(k*L)^2...

x表示 k*L,x^2即(k*L)^2。
你若不信,把 k*L=0.5198代回方程两边,看两边相等不。

此外,你给出的方程 “tan(k*L)=(k*L)/[1+N/(N-1)^2*(k*L)^2 ” 和你图片中给出的不一致,这个需要你核对。

我是按照你图片中给出的方程编写的。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
4楼2015-08-12 12:20:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Fanny675

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by 月只蓝 at 2015-08-12 11:25:56
程序中以x表示k*L,由于你没有给出N的数值,我就以n=1.5为例,代码如下:
>> n=1.5;
>> =fsolve(@(x) tan(x)-  n/(1+x^2*n/((n-1)^2)  ),0)

计算结果:
解x =

    0.5198


方程残差fval = ...

我有一个例子,其中N=2.89,求得k*L=3.455。我用楼主的方法试了下不对
5楼2015-08-12 12:27:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见