声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1567|回复: 5

[GUI界面] 请帮我解决一个界面问题,谢谢!

[复制链接]
发表于 2009-1-8 10:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
1.jpg
我的目的是输入一个行程速比系数K和许用压力角φ,计算杆件长度。
极位夹角θ=180°*(K-1)/(K+1)
杆长比t的计算公式为:arccos[(t*sinφ-1)/(t+1)]-arccos[(t*sinφ-1)/(t-1)]-θ=0
我编的js_Callback下程序为:
global K theta
theta=180*(K-1)/(K+1);
theta=num2str(theta);
set(handles.theta,'string',theta);
global t phi theta
theta=get(handles.theta,'string');
theta=str2num(theta);
phi=phi/180*pi;
theta=theta/180*pi;
t=solve('acos((t*sin(phi)-1)/(t+1))-acos((t*sin(phi)-1)/(t-1))-theta');
t=num2str(t);
set(handles.t,'string',t);
运行后提示问题如下,请各位朋友帮忙指点一下,谢谢!


2.jpg
回复
分享到:

使用道具 举报

 楼主| 发表于 2009-1-8 19:34 | 显示全部楼层
个人感觉主要问题可能就是solve这个函数,不知道大家有什么意见!
发表于 2009-1-8 20:49 | 显示全部楼层
GUI很久没玩了! 不熟! 根据错误提示好像是solve出问题!
建议可否先不用GUI做看看, 或许比较容易发现错误!
 楼主| 发表于 2009-1-8 21:35 | 显示全部楼层

回复 板凳 ChaChing 的帖子

谢谢
我在命令窗口输入后,带入数据可以计算,如果用参数,同样运行不了。所以我怀疑是solve这个函数的问题,可是不知道可以用什么函数替代
发表于 2009-1-8 23:44 | 显示全部楼层

回复 地板 beetle521 的帖子

doc fzero
看看这个函数行不
 楼主| 发表于 2009-1-9 11:26 | 显示全部楼层

问题解决特此汇报,方便以后遇到类似问题的朋友!

改正后程序为:
temp2=phi/180*pi;
temp3=theta/180*pi;
f=@(t)acos((t*sin(temp2)-1)/(t+1))-acos((t*sin(temp2)-1)/(t-1))-temp3;
t=fzero(f,[4,5])

注意@后参数要加(),另外solve丢根很严重,所以计算前可以可以先作图,然后指定解出某区间的的一个解。

嘿嘿,问题解决,爽!
十分感谢唠嗑的帮助,谢谢!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-2 19:27 , Processed in 0.069138 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表