24小时热门版块排行榜    

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

上太空说

新虫 (初入文坛)

[求助] matlab解方程问题求助 已有2人参与

clc;
clear all;
close all;
cl=1500;cs=3000;bs=1800;
pl=1000;ps=2500;H=50;h=25;f=30;w=2*pi*f;
kal=w/cl;kas=w/cs;kbs=w/bs;
syms x;
sln=sqrt(kal^2-x^2);ssn=sqrt(x^2-kas^2);lsn=sqrt(x^2-kbs^2);
kn=solve('tan(sln*H)=(ps/pl)*((x/kbs)^4)*(sln/ssn)*(4*ssn*ssn/(x^2)-((x^2+lsn)/x^2)^2)','x');
这是源程序,在2014a中运行不报错,但是得不出一个准确的结果,只是一个4*1的矩阵,请教大神问题出在什么地方,如何解出具体的结果,不胜感激!
回复此楼

» 猜你喜欢

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

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

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
上太空说: 金币+50, ★★★★★最佳答案 2016-05-04 11:27:43
CODE:
function jie_fangcheng
clc;
clear all;
close all;
format long
xx1=[linspace(0.1048,0.1256,1000)];
xx2=[linspace(-0.1256,-0.1048,1000)];
yy1=obj(xx1);
a1=0.1*(max(xx1)-min(xx1));
b1=0.1*(max(yy1)-min(yy1));

xx2=[linspace(-0.1256,-0.1048,1000)];
yy2=obj(xx2);
a2=0.1*(max(xx2)-min(xx2));
b2=0.1*(max(yy2)-min(yy2));

figure(1)
subplot(2,1,1)
plot([min(xx1)-a1 max(xx1)+a1],[0 0],'r-',xx1,yy1,'b-');axis([min(xx1)-a1 max(xx1)+a1 min(yy1)-b1 max(yy1)+b1]);


subplot(2,1,2)
plot([min(xx2)-a2 max(xx2)+a2],[0 0],'r-',xx2,yy2,'b-');axis([min(xx2)-a2 max(xx2)+a2 min(yy2)-b2 max(yy2)+b2]);


[x fval]=fsolve(@obj,[ -0.105 -0.12 0.105 0.12  ])   

function f=obj(x)

cl=1500;cs=3000;bs=1800;
pl=1000;ps=2500;H=50;h=25;f=30;w=2*pi*f;
kal=w/cl;
kas=w/cs;
kbs=w/bs;

sln=sqrt(kal^2-x.^2);
ssn=sqrt(x.^2-kas^2);
lsn=sqrt(x.^2-kbs^2);
f=(ps/pl)*((x/kbs).^4).*(sln./ssn).*(4*ssn.*ssn./(x.^2)-((x.^2+lsn)./x.^2).^2)-tan(sln*H);

解x =

  -0.104895162970198  -0.121516622857776   0.104895162970198   0.121516622857776


方程残差fval =

  1.0e-010 *

  -0.000201505478969  -0.051869619710487  -0.000201505478969   0.749196260585450

matlab解方程问题求助

» 本帖已获得的红花(最新10朵)

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

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
1. x全都是以2次形式出现的,简化的话,不如先求x^2;
2. 符号解可能是求不出来的,求关于 t=x^2 的非线性方程 F(t)=0的根的时候,先画图出来可以看到在(0.01,0.016)之间 t有多根
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
2楼2016-05-03 20:32:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

上太空说

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by Mr__Right at 2016-05-03 20:32:38
1. x全都是以2次形式出现的,简化的话,不如先求x^2;
2. 符号解可能是求不出来的,求关于 t=x^2 的非线性方程 F(t)=0的根的时候,先画图出来可以看到在(0.01,0.016)之间 t有多根

多谢您啊,对于第2点求根要用什么函数呢?

发自小木虫IOS客户端
3楼2016-05-03 23:21:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

引用回帖:
3楼: Originally posted by 上太空说 at 2016-05-03 23:21:54
多谢您啊,对于第2点求根要用什么函数呢?
...

数值解,用 fsolve, 自己看文档和说明 , 用doc fsolve
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
4楼2016-05-04 07:28:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见