排队系统仿真:基于Matlab GUI的数学建模

部分源代码

登录后复制

function varargout = classdesign(varargin)% CLASSDESIGN MATLAB code for classdesign.fig%      CLASSDESIGN, by itself, creates a new CLASSDESIGN or raises the existing%      singleton*.%%      H = CLASSDESIGN returns the handle to a new CLASSDESIGN or the handle to%      the existing singleton*.%%      CLASSDESIGN('CALLBACK',hObject,eventData,handles,...) calls the local%      function named CALLBACK in CLASSDESIGN.M with the given input arguments.%%      CLASSDESIGN('Property','Value',...) creates a new CLASSDESIGN or raises the%      existing singleton*.  Starting from the left, property value pairs are%      applied to the GUI before classdesign_OpeningFcn gets called.  An%      unrecognized property name or invalid value makes property application%      stop.  All inputs are passed to classdesign_OpeningFcn via varargin.%%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one%      instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help classdesign% Last Modified by GUIDE v2.5 26-Aug-2021 17:23:25% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name',       mfilename, ...                   'gui_Singleton',  gui_Singleton, ...                   'gui_OpeningFcn', @classdesign_OpeningFcn, ...                   'gui_OutputFcn',  @classdesign_OutputFcn, ...                   'gui_LayoutFcn',  [] , ...                   'gui_Callback',   []);if nargin && ischar(varargin{1})    gui_State.gui_Callback = str2func(varargin{1});endif nargout    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else    gui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before classdesign is made visible.function classdesign_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject    handle to figure% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% varargin   command line arguments to classdesign (see VARARGIN)% Choose default command line output for classdesignhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes classdesign wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = classdesign_OutputFcn(hObject, eventdata, handles) % varargout  cell array for returning output args (see VARARGOUT);% hObject    handle to figure% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = handles.output;function ser_rate_Callback(hObject, eventdata, handles)% hObject    handle to ser_rate (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of ser_rate as text%        str2double(get(hObject,'String')) returns contents of ser_rate as a double% --- Executes during object creation, after setting all properties.function ser_rate_CreateFcn(hObject, eventdata, handles)% hObject    handle to ser_rate (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction MYGETA_Callback(hObject, eventdata, handles)% hObject    handle to MYGETA (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of MYGETA as text%        str2double(get(hObject,'String')) returns contents of MYGETA as a double% --- Executes during object creation, after setting all properties.function MYGETA_CreateFcn(hObject, eventdata, handles)% hObject    handle to MYGETA (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction server_count_Callback(hObject, eventdata, handles)% hObject    handle to server_count (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of server_count as text%        str2double(get(hObject,'String')) returns contents of server_count as a double% --- Executes during object creation, after setting all properties.function server_count_CreateFcn(hObject, eventdata, handles)% hObject    handle to server_count (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction edit4_Callback(hObject, eventdata, handles)% hObject    handle to LS (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of LS as text%        str2double(get(hObject,'String')) returns contents of LS as a double% --- Executes during object creation, after setting all properties.function LS_CreateFcn(hObject, eventdata, handles)% hObject    handle to LS (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction edit5_Callback(hObject, eventdata, handles)% hObject    handle to TS (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of TS as text%        str2double(get(hObject,'String')) returns contents of TS as a double% --- Executes during object creation, after setting all properties.function TS_CreateFcn(hObject, eventdata, handles)% hObject    handle to TS (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction edit6_Callback(hObject, eventdata, handles)% hObject    handle to edit6 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit6 as text%        str2double(get(hObject,'String')) returns contents of edit6 as a double% --- Executes during object creation, after setting all properties.function edit6_CreateFcn(hObject, eventdata, handles)% hObject    handle to edit6 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction edit7_Callback(hObject, eventdata, handles)% hObject    handle to edit7 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit7 as text%        str2double(get(hObject,'String')) returns contents of edit7 as a double% --- Executes during object creation, after setting all properties.function edit7_CreateFcn(hObject, eventdata, handles)% hObject    handle to edit7 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');end% --- Executes on button press in pushbutton1.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)% --- Executes on button press in cal.function cal_Callback(hObject, eventdata, handles)% hObject    handle to cal (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)Lq = 0; %平均排队长Ls = 0;      %平均队长Tq = 0;      %平均排队时间Ts = 0;      %平均逗留时间lamda=str2double(get(handles.arr_rate,'String'));u=str2double(get(handles.ser_rate,'String'));s=str2double(get(handles.server_count,'String'));mode=get(handles.single,'Value');%仿真类型mode1=get(handles.wait_sys,'Value');%排队系统类型if mode1==1    switch mode      case 1 %单服务台模式        set(handles.attention,'String','此种情况下,到达率要小于服务率');        lou = lamda/u;%获得服务强度        %----以下为仿真模型参数计算        if ((lou > 0)&&(lou < 1) &&(lamda>0) && (u>0))            Lq = lou^2/(1-lou); %平均排队长            Ls = Lq + lou;      %平均队长            Tq = Lq/lamda;      %平均排队时间            Ts = Ls/lamda;      %平均逗留时间        else            errordlg('输入错误,请重新输入','错误');        end             case 0%多服务模式        set(handles.attention,'String','此种情况下,到达率要小于(服务率*服务台数)');        a=lamda/u;        lou = a/s;        if (lou > 0)&&(lou < 1) &&(lamda>0) && (u>0) && (s>0)&&(s==fix(s))                        Lq = lou/(1-lou)*C(s,a);            Ls = Lq + a;            Tq = Lq/lamda;            Ts=Ls/lamda;        else            errordlg('输入错误,请重新输入','错误');        end    otherwise        errordlg('请选择仿真类型','错误');   endelse        set(handles.attention,'String','此种情况下,只需注意到达率、服务率大于0,服务台数为正整数');        a=lamda/u;        if (lamda>0) && (u>0) && (s>=0)&&(s==fix(s))                       Lq = 0;            Ls = a*(1-B(s,a));            Tq = 0;            Ts=Ls/lamda;        else            errordlg('输入错误,请重新输入','错误');                    endend%显示平均等待时间,平均队长等set(handles.LS,'string',num2str(Ls));set(handles.LQ,'string',num2str(Lq));set(handles.TS,'string',num2str(Ts));set(handles.TQ,'string',num2str(Tq));% --- Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject    handle to pushbutton3 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global flag flag=0;ts=timerfind;if ~isempty(ts)    stop(ts);end% --- Executes on button press in exit.function exit_Callback(hObject, eventdata, handles)% hObject    handle to exit (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)ts=timerfind;if ~isempty(ts)    stop(ts);    delete(ts);end    Button=questdlg('确定退出吗','请选择','是','否','否');switch Button    case '是'        close(gcf);    case '否'end% --- Executes during object creation, after setting all properties.function uipanel1_CreateFcn(hObject, eventdata, handles)% hObject    handle to uipanel1 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% --- Executes when selected object is changed in uipanel1.function uipanel1_SelectionChangeFcn(hObject, eventdata, handles)% hObject    handle to the selected object in uipanel1 % eventdata  structure with the following fields (see UIBUTTONGROUP)%  EventName: string 'SelectionChanged' (read only)%  OldValue: handle of the previously selected object or empty if none was selected%  NewValue: handle of the currently selected object% handles    structure with handles and user data (see GUIDATA)if  get(handles.single,'Value')==get(handles.single,'Max')    set(handles.server_count,'Enable','off');    set(handles.server_count,'String','1');else     set(handles.server_count,'Enable','on');end    % --- Executes during object creation, after setting all properties.function Myaxe_CreateFcn(hObject, eventdata, handles)% hObject    handle to Myaxe (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: place code in OpeningFcn to populate Myaxe% --- Executes on mouse press over axes background.function Myaxe_ButtonDownFcn(hObject, eventdata, handles)% hObject    handle to Myaxe (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)function arr_rate_Callback(hObject, eventdata, handles)% hObject    handle to arr_rate (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of arr_rate as text%        str2double(get(hObject,'String')) returns contents of arr_rate as a double1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71.72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89.90.91.92.93.94.95.96.97.98.99.100.101.102.103.104.105.106.107.108.109.110.111.112.113.114.115.116.117.118.119.120.121.122.123.124.125.126.127.128.129.130.131.132.133.134.135.136.137.138.139.140.141.142.143.144.145.146.147.148.149.150.151.152.153.154.155.156.157.158.159.160.161.162.163.164.165.166.167.168.169.170.171.172.173.174.175.176.177.178.179.180.181.182.183.184.185.186.187.188.189.190.191.192.193.194.195.196.197.198.199.200.201.202.203.204.205.206.207.208.209.210.211.212.213.214.215.216.217.218.219.220.221.222.223.224.225.226.227.228.229.230.231.232.233.234.235.236.237.238.239.240.241.242.243.244.245.246.247.248.249.250.251.252.253.254.255.256.257.258.259.260.261.262.263.264.265.266.267.268.269.270.271.272.273.274.275.276.277.278.279.280.281.282.283.284.285.286.287.288.289.290.291.292.293.294.295.296.297.298.299.300.301.302.303.304.305.306.307.308.309.310.311.312.313.314.315.316.317.318.319.320.321.322.323.324.325.326.327.328.329.330.331.332.333.334.335.336.337.338.339.340.341.342.343.344.345.346.347.348.349.350.351.352.353.354.355.356.357.358.359.360.361.362.363.364.365.366.367.368.369.370.371.372.373.374.375.376.377.378.379.380.381.382.383.384.385.386.387.388.389.390.391.


运行结果

【数学建模】基于matlab GUI排队系统仿真【含Matlab源码 1253期】_ico

【数学建模】基于matlab GUI排队系统仿真【含Matlab源码 1253期】_matlab_02


matlab版本

1 matlab版本

2014a


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空