Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 10

Prof.

Muhammad Saeed
Mathematical Modeling and Simulation
Using
MATLAB
Graphic User Interface (GUI)Basics
GUI Basics:
1. uicontrols
Edit Text
Static Text Label
Push Button
Radio Button
Button Group
Slider
Check Box
Panel
List Box
Pop-up Menu
Toggle Button
Table
Axes
Menu
Toolbar
2 Modeling & Simulations
3
Edit Text
function edittext1_Callback(hObject, eventdata, handles)
s = get(hObject, 'String');
set(hObject, String, s);
% if number, use num2str or str2num
n = str2num(get(hObject,'string'));
if isnan(n)
errordlg(Enter a numeric value',Input Error','modal');
uicontrol(hObject);
return
end
end
Pushbutton
function pushbutton1_Callback(hObject, eventdata, handles)
plot( );
..;
end
Modeling & Simulations
4
Radiobutton
function radiobutton1_Callback(hObject, eventdata, handles)
if (get(hObject,'Value') == get(hObject,'Max'))
do something
else
do nothing
end
set(handles.radiobutton1,'Value','Max)
end
Checkbox
function checkbox1_Callback(hObject, eventdata, handles)
if (get(hObject,'Value') == get(hObject,'Max'))
%do something
else
%do something else
end
% can be used in a groupbox with other uicontrols


Modeling & Simulations
5
Buttongroup
function uibuttongroup1_SelectionChangeFcn(hObject,eventdata)
switch get(eventdata.NewValue,'Tag)
case 'radiobutton1'
%code;
case 'radiobutton2'
%code;
case 'togglebutton1 %radiobuttons and togglebuttons in group
%code;
case 'togglebutton2
%code;
otherwise
% Code for when there is no match.
end
end
Slider
function slider1_Callback(hObject, eventdata, handles)
val = get(hObject,'Value'); %[0 1]
. %set it to another interval if required as:
min+(max-min)*val;
end

Modeling & Simulations
6
Panel
function uipanel1_ResizeFcn(hObject, eventdata, handles)
set(hObject,'Units','Points) % Was normalized
panelSizePts = get(hObject,'Position'); % Now in points
panelHeight = panelSizePts(4);
set(hObject,'Units','normalized'); % Now normalized again
% Keep fontsize in constant ratio to height of panel
newFontSize = 10 * panelHeight / 115; % Calculated in points
buttons = get(hObject,'Children');
set(buttons(1),'FontSize,newFontSize);% Resize the first button
% Do not resize the other button for comparison
end
Listbox
function listbox1_Callback(hObject, eventdata, handles)
index = get(hObject,'Value');
list = get(hObject,'String');
item = list{index};
set(handles.listbox1,'Value',2)
end
Modeling & Simulations
7
Popupmenu
%Using value
function popupmenu1_Callback(hObject, eventdata, handles)
val = get(hObject,'Value');
switch val
case 1
% code
case 2
%code
end
end

%Using String
function popupmenu1_Callback(hObject, eventdata, handles)
val = get(hObject,'Value');
list = get(hObject,'String');
str = list{val}; % Convert from cell array to string
end
Modeling & Simulations
8 Modeling & Simulations
Problem I
Plancks Radiation Law is formulated as:




where R is the spectral radiance and T is temperature in Kelvins and
is wavelength of radiation




1) Simulate the Law by plotting R vs for different values of T.
range = 0.01m to 8m
T range = 500K to 2500K and let user change the temperature T
2) Display temperature at each step.
3) Display maximum Spectral Radiance R at each step
4) Display wavelength at at each R
5) Draw a vertical line between R and corresponding wavelength at each
step.
9 Modeling & Simulations
Problem II
T(C) -20 0 40 100 200 300 400 500 1000
x10
-5
1.63 1.71 1.87 2.17 2.53 2.98 3.32 3.64 5.04
The above table gives the viscosity ( ) of air at different temperatures (T)
Viscosity is expresed as:
C and S are constants
Determine C and S by curve-fitting using the above equation.
Plot a graph between T and for given data (only markers) and plot a
line graph using the equation.
Calculate the error.

10
END
Modeling & Simulations

You might also like