MATLAB Answers

0

Symbolic value assignment in GUIDE

Asked by Muhendisleksi on 20 Dec 2017
Latest activity Commented on by Muhendisleksi on 22 Dec 2017
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)
F=get(handles.edit1,'String');
D=get(handles.edit3,'String');
f = sym(F);
D = symvar(D);
turev =diff(f,D);
set(handles.text2,'String',turev) % there is an error here

  0 Comments

Sign in to comment.

1 Answer

Answer by Geoff Hayes
on 20 Dec 2017
 Accepted Answer

Muhendisleksi - try using char to convert the symbolic expression to a string that you can then set in the text control. For example,
...
turev =diff(f,D);
set(handles.text2,'String',char(turev)) % there is an error here
Unfortunately, I don't have the Symbolic Toolbox so I can't confirm if the above will work.

  2 Comments

Yes, that should work.
If you have a symbolic array, then if you char() it then you will get text that begins with 'matrix(' which you probably do not want. So for that, use
arrayfun(@char, SymbolicVariableNameHere, 'uniform', 0)
to get a cell array of character vectors with the contents. You would then have to decide how you wanted to present that array as text.
thanks Geoff Hayes

Sign in to comment.