1、(3)课程设计论文用B5纸统一打印,装订按学校的统一要求完成4)答辩与评分标准:(1)完成原理分析:20分;(2)完成设计过程:40分;(3)完成调试:(4)回答问题:5)参考文献:(1)刘卫国.MATLAB程序设计与应用(第二版). 北京:高等教育出版社,2008. (2)陈壵光 毛涛涛 王正林 王玲.精通MATLAB GUI设计.电子工业出版社,2011.(3)金一庆 陈越 .数值方法 . 机械工业出版社,2000.6)课程设计进度安排 内容 天数地点 构思及收集资料 2图书馆 编程设计与调试 1实验室 撰写论文 2图书馆、实验室 学生签名: 2012年 6 月 18 日课程设计(论文)评
2、审意见(1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(20分):(3)完成调试(20分):(4)翻译能力(20分):(5)回答问题(20分):(6)格式规范性及考勤是否降等级:是()、否()(7) 总评分数优()、良()、中()、一般()、差();评阅人: 职称: 讲师2012 年 6 月 25 日1.MATLAB简介与特点 MATLAB的简介 MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATL
3、AB和Simulink两大部分。MATLAB不仅具备卓越的数值计算能力,还具有专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多. 当前流行的MATLAB 7.0/Simulink 6.0包括拥有数百个内部函数的主包和三十几种工具包(Toolbox).工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处
4、理工具包,通信工具包等都属于此类. 开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包.MATLAB的特点:一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点,正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB最突出的特点就是简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和FORTRA
5、N语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。3)MATLAB既具有结构化的控制语句(如for循环,while循环,brea
6、k语句和if语句),又有面向对象编程的特性。4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。6)MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。8)功能强大的工具箱是MATLAB的另一特色。MATLAB包含两
7、个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl proceessing toolbox,commumnication toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外
8、,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。2.GUI简介与特点GUI简介:GUI 是 Graphical User Interface 的简称,即图形用户界面,通常人机交互图形化用户界面设计经常读做“goo-ee”,准确来说 GUI 就是屏幕产品的视觉体验和互动操作部分。GUI 是一种结合计算机科学、美学、心理学、行为学,及各商业领域需求分析的人机系统工程,强调人机环境三者作为一个系统进行总体设计。 这种面向客户的系统工程设计其目的是优化产品的性能,使操作更人性化,减轻使用者的认知负担,使其更适合用户的操作需求,直接
9、提升产品的市场竞争力。GUI 即人机交互图形化用户界面设计。纵观国际相关产业在图形化用户界面设计方面的发展现状,许多国际知名公司早已意识到 GUI 在产品方面产生的强大增值功能,以及带动的巨大市场价值,因此在公司内部设立了相关部门专门从事 GUI 的研究与设计,同业间也成立了若干机构,以互相交流 GUI 设计理论与经验为目的。随着中国 IT 产业,移动通讯产业,家电产业的迅猛发展,在产品的人机交互界面设计水平发展上日显滞后,这对于提高产业综合素质,提升与国际同等业者的竞争能力等等方面无疑起了制约的作用。GUI特点:GUI的广泛应用是当今计算机发展的重大成就之一,他极大地方便了非专业用户的使用人
10、们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作。而嵌入式GUI具有下面几个方面的基本要求:轻型、占用资源少、高性能、高可靠性、便于移植、可配置等特点。3. Jacobi方法简介jacobi迭代原理将方程组Ax=b(设)化成等价方程组:采用迭代格式:jacobi迭代特点1,迭代程序简单2,每迭代一次只需计算一次矩阵和向量的乘法3,占用(N+1)N个单元存放矩阵和常向量,占用两组工作单元 X(k)和X(k+1).4,存在收敛性问题4.GUI中方程组的Jacobi迭代求解的实现GUI设计界面:步骤为:双击打MATLAB,然后点File-New-GUI-O
11、K产生如上如的编辑界面,然后选取push Button、static text、edit text等到编辑区,并修改相应属性值,得到如下图的界面:添加数值后运行结果如下:5.课设学习心得通过此次课设的制作,让我对MATLAB的GUI设计和用jacobi迭代法求解方程组的解有了更深入的了解。起初我对MATLAB并不是很感兴趣,对课本上的大部分MATLAB知识都是一知半解的状态,这次课设我还以为会向前几次课设那样先自己尝试做下,不会就找同学帮忙做或者到网上直接下载一份完事。开始做的第一天我上网查了一些GUI设计的视频教程和资料,然后自己按照上面讲的试写了两个程序,都运行成功了,这给了我很大的信心,
12、然后我开始自己动手做这次课设题目了。第一天晚上一直忙到晚上三点多,终于把GUI界面做好了,但代码运行还是出现了错误。第二天又重新做了一遍,还是出现了一些小问题,拿给同学看了下,同学很快就帮我找到了问题,原来是edit5的MAX值应该1,因为当MAX-MIN1时,可编辑文本框是多行文本。这次课设给我最大的收获就是世上无难事只要有心人。很多时候都是我们自己把问题想复杂的。6.参考文献(2)金一庆、陈越、王冬梅.数值方法(第二版)北京:机械工业出版社、2000.27.附录(代码)function varargout = untitled1(varargin)% UNTITLED1 M-file fo
13、r untitled1.fig% UNTITLED1, by itself, creates a new UNTITLED1 or raises the existing% singleton*.% H = UNTITLED1 returns the handle to a new UNTITLED1 or the handle to% the existing singleton*.% UNTITLED1(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in UNTITLED1.M
14、with the given input arguments.Property,Value,.) creates a new UNTITLED1 or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before untitled1_OpeningFunction gets called. An% unrecognized property name or invalid value makes property application%
15、stop. All inputs are passed to untitled1_OpeningFcn via varargin.% *See GUI Options on GUIDEs Tools menu. Choose GUI allows only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES% Copyright 2002-2003 The MathWorks, Inc.% Edit the above text to modify the response to help untitl
16、ed1% Last Modified by GUIDE v2.5 17-Jun-2012 19:02:12% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, .gui_OpeningFcn, untitled1_OpeningFcn, .gui_OutputFcn, untitled1_OutputFcn, .gui_LayoutFcn, , .gui_Callback, );if na
17、rgin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:% End initialization code - DO NOT EDIT% - Executes just before untitled1 is made visible.function untitled1_OpeningFcn(hObj
18、ect, 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 untitled1 (see VARARGIN)% C
19、hoose default command line output for untitled1handles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes untitled1 wait for user response (see UIRESUME)% uiwait(handles.figure1);% - Outputs from this function are returned to the command line.function varargout = unt
20、itled1_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% Get default command line output from handles structurevarargout1 = handles.output;function edit1_Callback(hObject, eventdata, handles)% hObject handle to edit1 (see GCBO)% Hints: get(hObj
21、ect,String) returns contents of edit1 as text% str2double(get(hObject,) returns contents of edit1 as a double% - Executes during object creation, after setting all properties.function edit1_CreateFcn(hObject, eventdata, handles)% handles empty - handles not created until after all CreateFcns called%
22、 Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc set(hObject,BackgroundColorwhite);,get(0,defaultUicontrolBackgroundColor);function edit2_Callback(hObject, eventdata, handles)% hObject handle to edit2 (see GCBO) returns contents of edit2 as text) return
23、s contents of edit2 as a doublefunction edit2_CreateFcn(hObject, eventdata, handles)function edit3_Callback(hObject, eventdata, handles)% hObject handle to edit3 (see GCBO) returns contents of edit3 as text) returns contents of edit3 as a doublefunction edit3_CreateFcn(hObject, eventdata, handles)function edit4_Callback(hObject, eventdata, handl
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1