matlab一直不出结果,[MATLAB GUI] 一个简单的输入变量值,通过公示计算出结果的小程序,一直调试不好,求指点!...

博主在尝试创建一个MATLAB GUI应用,该应用接收用户输入的变量值,通过一个方程组进行计算,并将结果显示在GUI界面上。目前遇到的问题是,方程组在MATLAB命令窗口中可以正确求解,但在GUI的callback函数中运行出错。博主已经尝试多次调试但未成功,寻求熟悉MATLAB GUI编程的专家帮助。
摘要由CSDN通过智能技术生成

icon1.gif 一个简单的输入变量值,通过公示计算出结果的小程序,一直调试不好,求指点!

GUI中输入几个变量的值,然后通过一个方程组计算出想要的结果,再显示在界面中的程序。

调试了好久也不行,麻烦高手帮忙看一下,感激不尽!(解方程组部分在matlab命令窗口中运行可以算出结果,就是放在callback函数中出问题)

程序如下:

function pushbutton1_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

A=get(handles.edit1,'String');%压下量

B=get(handles.edit2,'String');%初始曲率

C=get(handles.edit3,'String');%厚度

D=get(handles.edit4,'String');%屈服极限

E=get(handles.edit5,'String');%初始张应力

F=get(handles.edit6,'String');%硬化系数

G=get(handles.edit7,'String');%板宽

a=str2num(A);

b=str2num(B);

c=str2num(C);

d=str2num(D);

e=str2num(E);

f=str2num(F);

g=str2num(G);

x=2*(asin((240+c)/((255^2+(240-a)^2)^(1/2)))-atan((240-a)/255));%包角

y=(120+c*((531.2*d*x^(-0.28))/(2*d+e)-243.2))^(-1);%强制弯曲曲率

w=b+y;%总弯曲曲率

%p展平力 m弯矩 t张力 q横向力 h中间层偏移量 l力臂 z弹性区高度

%解方程组

eq1=sym('0.2*p-p*l');

eq2=sym('120*q-p*(l+0.3125)');

eq3=sym('t*g*c-q-e*g*c');

eq4=sym('t*c-h*d*(2*(1-f)+f*c/z)');

eq5=sym('z*w*69000-d');

eq6=sym('m-d*g*((1-f)*(c^2/4-z^2/3-h^2)+f*c^3/(1*z^2))');

eq7=sym('p*255-m-(e*g*c+q)*a');

[h,l,m,p1,q,t,z]=solve(eq1,eq2,eq3,eq4,eq5,eq6,eq7);

P=num2str(p);

set(handles.text19,'String',p);

guidata(hObject,handles);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值