| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 9315 人关注过本帖, 1 人收藏
标题:翻译
取消只看楼主 加入收藏
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏(1)
 问题点数:0 回复次数:15 
翻译
想得到大家的指点如果有错误请大家指点.
这本书是<<matlab programming for engineers>> stephen j.chapman
翻译的内容会在以后的几个月发上来
搜索更多相关主题的帖子: 翻译 
2006-06-14 14:12
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 

MATLAB(矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算。但在以后的几年内,它逐渐发展为一种极其灵活的计算体系,用于解决各种重要的技术问题。

Matlab 程序执行matlab 语言,并提供了一个极其广泛的预定义函数库,这样就使得技术工作变得简单高效。在解决工程技术问题方面,MATLAB比其它任何计算机语言(包括FORTANC)都简单高效。本书将介绍matlab语言,并向大家展示如何运用它去解决经典的技术问题。

本书把matlab 当作一种技术编程语言来教,向学生展示如何编写简洁高效,有充分根据的程序。本书不主张把MATLAB数以百计的函数全部介绍给大家,而是教给学生怎样使用MATLAB语言,以及如何使用网上在线工具去加载你所需要的函数。

本书的前六章是“编程设计介绍”的课程,专门为大一的工科学生而设计编写的。这部分内容以9周,每周3个小时教学为宜。其余的章节涵盖了一些高级的主题,例如输入输出接口(input/output interfaces)和图形用户界面(GUI)。这些章节可能需要更长时间的学习,也可以作为使用MATLAB 的工科学生和有经验的工程师的参考。

第二版的变化

本书与MATLAB6.0和6.1相匹配,但基本的MATLAB 语言与MATLAB 5.0大体相一致,而集成工具,窗口和帮助子系统都发生了巨大的变化.还有MATLAB 6.0许多新的完整的MATLAB 图形用户界面. 于是还在使用6.0以前版本的用户应注意到:在第十章的对于图形用户界面(GUI)的发展并不适用于他们.

用MATLAB进行科技编程的优点

MATLAB语言相对于传统的科技编程语言有诸多的优点。主要包括:

1. 易用性

MATLAB 是种解释型语言,就像各种版本的BASIC。和BASIC一样,它简单易用程序可用作便笺簿求打在命令行处表达式的值,也可执行预先写好的大型程序。在MATLAB 集成开发环境下,程序可以方便的编写,修改和调试。这是因为这种语言极易使用,对于教育应用和快速建立新程序的原型,它是一个理想的工具。

许多的编程工具使得MATLAB 十分简单易用。这些工具包括:一个集成的编译/调试器,

在线文件手册,工作台和扩展范例。

2. 平台独立性

MATLAB支持许多的操作系统,提供了大量的平台独立的措施。在本书编写的时侯,windows 98/2000/NT和许多版本的UNIX 系统都支持它。在一个平台上编写的程序,在其它平台上一样可以正常运行,在一个平台上编写的数据文件在其它平台上一样可以编译。因此用户可以根据需要把MATLAB编写的程序移植到新平台。

3. 预定义函数

MATLAB 带有一个极大的预定义函数库,它提供了许多已测试和打包过的基本工程问题的函数。例如,假设你正在编写一个程序,这个程序要求你必须计算与输入有关的统计量。在许多的语言中,你需要写出你所编数组的下标和执行计算所需要的函数,这些函数包括其数学意义,中值,标准误差等。像这样成百上千的函数已经在MATLAB中编写好,所以让编程变得更加简单。

除了植入MATLAB基本语言中的大量函数,还有许多专用工具箱,以帮助用户解决在具体领域的复杂问题。例如,用户可以购买标准的工具箱以解决在信号处理,控制系统,通信,图象处理,神经网络和其他许多领域的问题。

4. 机制独立的画图

与其他语言不同,MATLAB 有许多的画图和图象处理命令。当MATLAB运行时,这些标绘图和图片将会出现在这台电脑的图象输出设备中。此功能使得MATLAB成为一个形象化技术数据的卓越工具。

5. 用户图形界面

MATLAB允许程序员为他们的程序建立一个交互式的用户图形界面。利用MATLAB 的这种功能,程序员可以设计出相对于无经验的用户可以操作的复杂的数据分析程序。

6. MATLAB编译器

MATLAB 的灵活性和平台独立性是通过将MATLAB代码编译成设备独立的P代码,然后在运行时解释P代码来实现的。 这种方法与微软件的VB相类似。不幸的是,由于MATLAB是解释性语言,而不是编译型语言,产生的程序执行速度慢。当我们遇到执行速度慢的程序时,我们将会指出其这一特性。

本书的特点

本书诸多特点主要是向大家强调如何编写可靠的程序。这些特性不仅为初学MATLAB的学生服务,而且也为在工作岗位上的熟练者服务。

1. 强调自上而下的编程方法

本书在第三章引入自上而下的编程方法,然后在以后的课程中坚持使用这种方法去解决问题。这种方法要求学生在开始编写代码前先做大体的设计。在其他工作开始之前,应强调问题解决方案的确定和输入输出量的定义。一旦一个问题被适当地确定了,我们会教给学生怎样逐步分解为一连串小的问题,然后执行这些小的问题就像执行独立的子程序或函数一样。最后我们将运用这种方法向大家介绍检测编程全过程的重要性,包括整个程序的单元检测和最终产品的彻底检测。

本书教授的编程流程归纳如下:

l 清晰地描述出你所要解决的问题。

l 定义出程序所要求的输入量和程序所应的输出量。

l 描述出你所要编写程序的算法,这一步将运用到自上而下和逐步分解的设计方法,用伪代码和流程图来描述。

l 把算法转化为MATLAB语句。

l 检测MATLAB程序。这一步包括单个函数的单元检测,也包括最终程序的详尽检测。

2. 强调使用函数

本书强调使用函数在逻辑上把大问题分解成小的子问题。它也强调在组合成最终的程序之前,先检测单元函数的重要性。本书也会介绍一些常见编程错误和如何避免的方法。

3. 强调MATLAB工具的应用

本书将教会你适当使用MATLAB提供的工具,使编程和调试变得简单。这些工具包括:launch pad,编译调试器,工作台,帮助台和GUI设计工具。

4. 好的编程练习提示框

为了方便提示学生起见,好的编程习惯被突出显示出来。每章的编程练习将会在章末做总结。示例如下:

好的编程习惯

为了增强程序的可读性,在if 结构体开头缩进两格或更多的空间。

5. 常见编程错误提示框

这些常见错误提示框突出显示一些常见的编程错误,故初学者能够参考,以致不出类似的错误。示例如下:

常见编程错误

确保变量名的前三十一个字符是独一无二的,否则,MATLAB 将辨认不出两变量的不同。

6. 强调数据结构

第七章向大家详细地介绍MATLAB数据结构,数据结构包括稀疏阵列,单元阵列和结构阵列.这一章通过用户掌握图解和用户图形接口来向大家介绍如何适当使用这些数据结构.

授课特点

本课程的前六个章节是作为工程学一年级学生的《编程及问题解决入门》课程的教材而书写的.它将耗费九周的时间,每周三个小时.如果时间不充足的话,第六章可以删除不讲.前五章仍是编程基础和应用MATLAB解决问题,这就要求我们工程学教学工作者.

其余的章节涵盖了matlab的高级内容,这些内容将在学生以后工作中将会非常的有用。它包括高级输入输出和用户图形界面的设计。

本书许多的特性可帮助学生理解。总共有15个小测试零散的分布在全书中,其答案存在于附录B中。这些小测试将有助于自我理解。此外,大约还有140道章末课后题。一部分精选的课后题的答案可在本书的网站上找到,当然全部联系的答案可在教师的指导书中找到。好的编程习惯在所有的章节中被突出显示出来,常见错误提示框突出显示一些常见的编程错误。章末的材料包括好的编程习惯的总结和matlab命令和函数的总结。

与本书相配套的教师参考手册包含所有章末练习的答案。本书所有例子的代码都可在本书的网站上得到,而章末练习的答案的代码只能在手册中得到。

对使用者最后的提示

不论我多么努力的校对本书的文本,印刷错误总是难免的。如果你发现了一些错误,你可以通过出版商通知我,我将在再版的时候做到最好。非常感谢你们在这方面的帮助。

我列举了一系列的错误和更正在网站http://info.bookscole.com/chapman。欢迎访问。

鸣谢

我应当感谢bill stenquist 和他在books/cole公司的同仁们对于本书的支持,有了他们的支持才有本书的出版.对于本书第一版的反馈我深感幸慰.这是我们通力合作的结果.

我还应感谢我的妻子ROSE和我的孩子们avi, david, Rachel, aaron, sarah, Naomi, shira ,and devorah.他们都是乐观的人,在工作上给于我很大的鼓励.


因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-06-29 23:16
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 


感谢genrial 的提醒,我将注意理论的学习,掌握核心的东西


因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-06-30 09:09
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 
第一章
MATLAB入门
MATLAB(矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算。但在以后的几年内,它逐渐发展为一种极其灵活的计算体系,用于解决各种重要的技术问题。
Matlab 程序执行MATLAB 语言,并提供了一个极其广泛的预定义函数库,这样就使得技术工作变得简单高效。本书将介绍matlab语言,并向大家展示如何运用它去解决经典的技术问题。
MATLAB是一个庞大的程序,拥有难以置信的各种丰富的函数;即使基本版本的MATLAB语言拥有的函数也比其他的工程编程语言要丰富的多。基本的MATLAB语言已经拥有了超过1000多个函数,而它的工具包带有更多的函数,由此扩展了它在许多专业领域的能力。本书无意将MATLAB的所有函数介绍给大家,而是让大家掌握编写调试和优化程序的基本功,还有一些重要函数的子集。所以从大量可利用的函数中筛选出你所需要的函数就显得尤为重要。
1.1 MATLAB的优点

MATLAB语言相对于传统的科技编程语言有诸多的优点。主要包括:
1.    易用性
MATLAB 是种解释型语言,就像各种版本的BASIC。和BASIC一样,它简单易用程序可用作便笺簿求打在命令行处表达式的值,也可执行预先写好的大型程序。在MATLAB 集成开发环境下,程序可以方便的编写,修改和调试。这是因为这种语言极易使用,对于教育应用和快速建立新程序的原型,它是一个理想的工具。
许多的编程工具使得MATLAB 十分简单易用。这些工具包括:一个集成的编译/调试器,
在线文件手册,工作台和扩展范例。
2.    平台独立性
MATLAB支持许多的操作系统,提供了大量的平台独立的措施。在本书编写的时侯,windows 98/2000/NT和许多版本的UNIX 系统都支持它。在一个平台上编写的程序,在其它平台上一样可以正常运行,在一个平台上编写的数据文件在其它平台上一样可以编译。因此用户可以根据需要把MATLAB编写的程序移植到新平台。
3.    预定义函数
MATLAB 带有一个极大的预定义函数库,它提供了许多已测试和打包过的基本工程问题的函数。例如,假设你正在编写一个程序,这个程序要求你必须计算与输入有关的统计量。在许多的语言中,你需要写出你所编数组的下标和执行计算所需要的函数,这些函数包括其数学意义,中值,标准误差等。像这样成百上千的函数已经在MATLAB中编写好,所以让编程变得更加简单。
除了植入MATLAB基本语言中的大量函数,还有许多专用工具箱,以帮助用户解决在具体领域的复杂问题。例如,用户可以购买标准的工具箱以解决在信号处理,控制系统,通信,图象处理,神经网络和其他许多领域的问题。
4.    机制独立的画图
与其他语言不同,MATLAB 有许多的画图和图象处理命令。当MATLAB运行时,这些标绘图和图片将会出现在这台电脑的图象输出设备中。此功能使得MATLAB成为一个形象化技术数据的卓越工具。
5.    用户图形界面
MATLAB允许程序员为他们的程序建立一个交互式的用户图形界面。利用MATLAB 的这种功能,程序员可以设计出相对于无经验的用户可以操作的复杂的数据分析程序。
6.    MATLAB编译器
MATLAB 的灵活性和平台独立性是通过将MATLAB代码编译成设备独立的P代码,然后在运行时解释P代码来实现的。 这种方法与微软的VB相类似。不幸的是,由于MATLAB是解释性语言,而不是编译型语言,产生的程序执行速度慢。当我们遇到执行速度慢的程序时,我们将会指出其这一特性。
1.2 MATLAB的缺点
MATLAB有两个基本的缺点。
第一,    它是解释型语言,其执行速度要比编译型语言慢得多。这个问题可以通过合理的MATLAB结构得到缓解,也可以在发行广泛使用前编译出MATLAB程序。
第二,    他的费用较高。一个完全版MATLAB编译器的大小是一个C语言或Fortan语言编译器的5到10倍。但MATLAB 能够节省大量的时间在科技编程方面,故MATLAB在商业编程过程中是节省成本的。尽管如此,相对于大多数考虑购买的人还是很昂贵的。幸运的是,它有一个价格便宜的学生专用版本,对学生来说它是学习MATLAB语言的一个重要工具。学生版的MATLAB和完全版的MATLAB 是基本一致的。
1.3 MATLAB 的开发环境
任何一个MATLAB 程序的基本组成单元是数组。数组是一组数据值的集合,这些数据被编上行号和列号,拥有唯一的名称。数组中的单个数据是可以通过带有小括号的数组名访问,括号内有这个数据的行标和列标,中间用逗号隔开。标量也被MATLAB 当作数组,只不过只有一行和一列。在第二章我们将学习如何创建和操作MATLAB数组。
当MATLAB运行时,有多种类型的窗口,有的用于接收命令,有的用于显示信息。三个重要的窗口有命令窗口;图像窗口;编辑/调试窗口;它们的作用分别为输入命令;显示图形;充许使用者创建和修改MATLAB程序。在本节课中我们将会看到这三个窗口的例子。
1.3.1 MATLAB桌面
当MATLAB程序启动时,一个叫做MATLAB 桌面的窗口出现了。默认的MATLAB 桌面结构如图figure 1.1所示。在MATLAB 集成开发环境下,它集成了管理文件、变量和应用程序的许多编程工具。
在MATLAB 桌面上可以得到和访问的窗口主要有:
&amp;#61550;    命令窗口(The Command Window)
&amp;#61550;    命令历史窗口(The Command History Window)
&amp;#61550;    启动平台(Launch Pad)
&amp;#61550;    编辑调试窗口(The Edit/Debug Window)
&amp;#61550;    工作台窗口和数组编辑器(Workspace Browser and Array Editor)
&amp;#61550;    帮助空间窗口(Help Browser)
&amp;#61550;    当前路径窗口(Current Directory Browser)
我们将在本章的最后一节讨论这些工具的函数。
1.3.2 命令窗口(The Command Window)
MATLAB桌面的右边是命令窗口。在命令窗口中,用户可以在命令行提示符(&amp;gt;&amp;gt;)后输入一系列的命令,这些命令的执行也是在这个窗口中实现的。
举一个简单的例子,假设你要计算一个半径为2.5m的圆的面积。在命令窗口中的操作如下:
&amp;gt;&amp;gt; area = pi*2.5^2
area =
   19.6350
 


   


Figure 1.1 MATLAB桌面。 具体的桌面布局可能因机器的不同而会有细微的变化。

当回车键敲下的一瞬间,结果被计算了出来,并被存储到一个叫area的变量中(其实是一个1×1的数组)。这个变量的数值将显示在命令窗口(The Command Windows),如图Figure 1.2  所示,而且这个变量能进行进一步的计算。(注意π是MATLAB预先定义好的变量,所以pi不需要预先声明。)
如果一个语句在一行内书写太长了,可能要另起一行接着写,在这种情况下我们需要在第一行末打上半个省略号(…),再开始第二行的书写。
 
Figure 1.2 命令窗口(The Command Windows)在桌面的右半部分。用户可在这里输入命令。


举例如下,下面这两语句是等价的。
x1 = 1 + 1/2 + 1/3 + 1/4 + 1/5 + 1/6;
     And
     x1 = 1 + 1/2 + 1/3 + 1/4……….
         +1/5+1/6;

将一系列命令写入一个文件,在命令窗口(The Command Windows)输入此文件的文件名,然后MATLAB 就开始执行这个文件,而不是用直接在命令窗口(The Command Windows)键入的方法,这样的文件叫做脚本文件(Script files),由于脚本文件(Script files)的扩展名为“.m”,所以这它也叫做M文件。
1.3.3 历史命令窗口(The History Command Window)
历史命令窗口(The History Command Window)用于记录用户在命令窗口(The Command Windows),其顺序是按逆序排列的。即最早的命令在排在最下面,最后的命令排在最上面。这些命令会一直存在下去,直到它被人为删除。双击这些命令可使它再次执行。在历史命令窗口(The Command Windows)删除一个或多个命令,可以先选择,然后单击右键,这时就有一个弹出菜单出现,选择Delete Section。任务就完成了。
1.3.4    启动平台(the launch pad)
启动平台是一个特殊的工具,为MATLAB和其工具箱提供帮助、demos、其他相关文件和应用程序等参考资料。这些信息是产品附带的,所有的参考资料都在每个产品或工具箱后面列出。不同的人拥有不同的产品,所以这个内容随个人安装的不同而不同。
Figure1.4显示的是只带有基本MATLAB产品的参考资料的启动平台。双击其中一个条目,你将会得到MATLAB的帮助,运行MATLAB的示例,访问这个程序所支持的标准工具,或访问MATLAB在互联网上的网站。
编辑调试器
编辑调试器一般用于创建M文件,或者修改已存在的M文件。当你打开或修改一个M文件,编辑调试器会自动被调用。创建一个M文件的方法:一,在菜单按“File/New/M-file”创建;二,单击图标 。打开一个已存在的M文件也有两个方法:一,按路径“File/Open”打开;二,单击图标 。
编程调试器是个重要的程序的文档编辑器,MATLAB语言的一些特性会被不同的顔色表现出来。M文件中的评论用绿色表示,变量和数字用黑色来表示,字符变量用红色表示,语言的关键字用蓝色表示。如Figure1.5显示了一个包含有M文件的简单的编辑窗口。这个文件是为了计算半径已知的圆的面积并输出结果。
当M文件保存完后,在命令窗口(The Command Windows)中输入这个M文件的名字,它就可以被执行了。Figure 1.5的输出结果为
&amp;gt;&amp;gt;calc_area
The area of the circle is 19.635
这个编辑器同样是个调试器,我们将会在第二章介绍它在调试方面的应用。
1.3.5    图像窗口(Figure Windows)
图像窗口主要是用于显示MATLAB 图像。它所显示的图像可以是数据的二维或三维坐标图,图片,或用户图形接口。下面是一个简单的脚本文件(Script files)用于计算函数sinx并打印出图象。
%sinx.m :this m-file calculates and plots the
%function sin(x)for 0&amp;lt;=x&amp;lt;=6.
x=0:.1:6;
y=sin(x);
plot(x ,y );
 
如果此文件以sin_x.m为文件名保存,那么你可以在命令窗口(The Command Windows)输入此文件名就可以执行文件了。当脚本文件(Script files)被编译后,MATLAB将会找开一个图象窗口,并在窗口打印出函数sinx的图象。
Figure1.6  函数sinx的图象
1.3.6    MATLAB 工作区
   像z=10这样的语句创建了一个变量z,把10存储在其内,它保存在计算机的一段内存中,就是我们所常说的工作区。当一个专门的命令,M文件或函数运行时,工作区是MATLAB 所需要的所有变量和数组的集合。所有在命令窗口(The Command Windows)中执行的命令,和所有在命令窗口(The Command Windows)执行的脚本文件(Script files)都会被分配一个普通的分配空间,所以它们能共享变量。MATLAB 函数的拥有独立的工作区,这是函数区别于脚本文件(Script files)的一个重要特征。在后面的介绍我们将会看到的。
用whos命令将会产生一个在当前工作区内的所有变量和数组状况表。就以M文件calc_area和sin_x为说明,当两文件执行后,这个工作区所包含的变量有:
&amp;gt;&amp;gt; whos
  Name         Size                   Bytes  Class

  area         1x1                        8  double array
  radius       1x1                        8  double array
  string       1x32                      64  char array
  x            1x61                     488  double array
  y            1x61                     488  double array

Grand total is 156 elements using 1056 bytes
脚本文件(Script files) calc_area创造了变量area,radius和string,sin_x创造了变量x和y。请注意所有的变量在同一工作区,所以两个脚本文件(Script files)按顺序执行,第二个脚本文件(Script files)可以利用第一个脚本文件(Script files)所创建的变量。每一个变量和数组的内容可以通过在命令窗口(The Command Windows)中输入对应名字得到显示。例如string的内容如下:
&amp;gt;&amp;gt;string
string  =
the area of the circle is 19.635
可用clear命令删除在本工作区的变量,格式如下
clear var1,var2…….
var1,var2是要删除变量的变量名。clear variables命令或clear命令用于清除当前工作区中的所有变量。
工作空间窗口(The workspace browser)
当前工作区的内容也可以通过基于GUI的工作空间窗口检测到。工作空间窗口默认出现在MATLAB 桌面的左上角,它提供了和whos命令可得到的相同的信息,并当工作区内的内容发生改变时,其内的信息也会随之更新。工作空间窗口(The workspace browser)允许用户改变工作区内的任何一个变量的内容。  
典型的工作空间窗口(The workspace browser)如图Figure1.7.你能看到它显示的信息和whos命令得到的信息是一样的。双击这个窗口任一变量便产生了一个数组编辑器,这个编辑器允许用户修改保存在变量中的信息。

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-08 20:27
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 
Figure 1.7 工作空间窗口(The workspace browser)
 
Figure1.8 双击工作空间内的一个变量可调用数组编辑器(Array Editor)。数组编辑器(Array Editor)允许用户改变变量和数组的值。
 
Figure 1.9 帮助窗口
一个或多个变量可在工作空间内删除,先选择它们,然后按Delete键或右击选择Delete选项。
1.3.7    MATLAB帮助
你有三种方法可以得到MATLAB 的帮助。最好的方法是使用帮助空间窗口(help browser)。你可以单击MATLAB桌面工具栏上的图标 ,也可以在命令窗口(The Command Windows)中输入helpdesk或helpwin来启动帮助空间窗口(help browser)。你可以通过浏览MATLAB参考证书或搜索特殊命令的细节得到帮助。帮助空间窗口如图1.9所示。
另外还有两种运用命令行的原始形式得到帮助。第一种方法是在MATLAB 命令窗口(The Command Windows)中输入help或help和所需要的函数的名字。如果你在命令窗口(The Command Windows)中只输入help,MATLAB将会显示一连串的函数。如果有一个专门的函数名或工具箱的名字包含在内,那么help将会提供这个函数或工具箱。
第二种方法是通过lookfor命令得到帮助。lookfor命令与help命令不同,help命令要求与函数名精确匹配,而lookfor只要求与每个函数中的总结信息有匹配。Lookfor命令比help命令运行起来慢得多,但它提高了得到有用信息的机会。举个例子,假设你想找到一个求矩阵的逆阵(inverse of matrix)的函数。但是MATLAB中没有叫inverse的函数,这时help命令就不起作用了,只能用lookfor命令,得到以下结果:
&amp;gt;&amp;gt; lookfor inverse
INVHILB Inverse Hilbert matrix.
IPERMUTE Inverse permute array dimensions.
ACOS   Inverse cosine.
ACOSH  Inverse hyperbolic cosine.
ACOT   Inverse cotangent.
ACOTH  Inverse hyperbolic cotangent.
ACSC   Inverse cosecant.
ACSCH  Inverse hyperbolic cosecant.
ASEC   Inverse secant.
ASECH  Inverse hyperbolic secant.
ASIN   Inverse sine.
ASINH  Inverse hyperbolic sine.
ATAN   Inverse tangent.
ATAN2  Four quadrant inverse tangent.
ATANH  Inverse hyperbolic tangent.
ERFCINV Inverse complementary error function.
ERFINV Inverse error function.
INV    Matrix inverse.
PINV   Pseudoinverse.
IFFT Inverse discrete Fourier transform.
IFFT2 Two-dimensional inverse discrete Fourier transform.
IFFTN N-dimensional inverse discrete Fourier transform.
IFFTSHIFT Inverse FFT shift.
inverter.m: %% Inverses of Matrices
 DSPBLKPINV DSP Blockset Pseudo Inverse block helper function.
INVKINE Inverse kinematics of a robot arm.
 TRAININV Train two ANFISs for inverse modeling of two-link robot arm.
IDCT2 Compute 2-D inverse discrete cosine transform.
IRADON Compute inverse Radon transform.
TFORMINV Apply inverse spatial transformation.
MINVTRAN  Process the map inverse transformations
DNETINV Inverse transfer derivative function.
NETINV Inverse transfer function.
UPDHESS Performs the Inverse Hessian Update.
IDST   Inverse discrete sine transform.
通过这个列表我们可以看到我所需的函数的名字为inv.
1.3.10一些重要的命令
如果你是个MATLAB新手,一些示例可能有助你理解它的功能。在命令窗口(The Command Windows)中输入demo或在启动平台中选择“demos”来运行MATLAB内建的示例。
在任何时侯你都可以用clc命令清空命令窗口(The Command Windows)中的内容,可以用clf清空当前图象窗口中的内容。在工作空间窗口(The workspace browser)中变量可用clear命令清除。正如我们看到的,工作空间窗口(The workspace browser)中的变量在独立的命令和M文件间执行时,可能会出现第一个问题中的变量存留在工作区而影响到第二个问题的解决。为了避免这种情况的发生,在新的计算开始之前,应当有clear命令清空工作区。
另一个重要的命令是abort命令。如果一个M文件运行时间过长,里面可能含有无限循环,而没有结束。在这种情况下,可在命令窗口内输入control-c(简写为^c)。输入这个命令方法是光标在命令窗口内,按住控制键然后按c。当MATLAB删除了^c,说明这个程序已经停止并回到命令行提示符状态。
省略号(!)是另一个重要的特殊字符。它的特殊作用是给计算机操作系统发送一个命令。在省略号后的字符会发送给计算机并且执行,如果在计算机的命令行提示符中输入字符是一样的。这种特性使系统命令更容易植入MATLAB程序中。
最后,你能用diary命令记录下在MATLAB 中运行过程中每个线程所做的事。命令的格式如下:
     diary filename
当这个命令被执行后,所有在命令窗口(The Command Windows)中的输入和输出将会被记录在diary 文件中。这是一个非常重要的工具,当MATLAB发生错误而中断时,利用它你可以重建重要的事件。diary off命令中止写入diary文件,diary on命令重新开始写入。
MATLAB搜索路径(the MATLAB search path)
MATLAB 用MATLAB 搜索条寻找M文件。在你的文件系统中,MATLAB的M文件是以目录的形式被组织。
如果用户在MATLAB提示符后输入一个名字,那么MATLAB在解释器将按以下顺序寻找这个名字:
它先查看这个名字是否是个变量名。如果它是一个变量,MATLAB将会显示出这个变量的值。
然后检查看它是否是内建函数或命令。如果是,则执行对应的函数或命令。
检查是不是在当前目录下的一个M文件。如果是,则执行对应的函数或命令。
检查是不是在MATLAB搜索路径的所有目录下的一个M文件。如果是,则执行对应的函数或命令。
注意:如果首先检测到的是变量名,且这个变量名与MATLAB的某一个函数或命令同名,那么这个函数或命令将变得无法访问。这是初学者易犯的错误之一。
常见编程错误
如果变量名与MATLAB 中的函数或命令重名,那么这个函数或命令将不能被访问。

还有,如果有多个函数或命令重名,那么MATLAB将会执行在搜索路径中找到的第一个,其他的将不会被执行。对于初学者,这也是一个常见的问题,往往将M文件的名字与MATLAB内建函数或命令重名,从而导致函数或命令的不能访问。
常见编程错误
不要创建和MATLAB 内建函数或命令同名的M文件。
MATLAB还包括一个特殊的命令——which命令,它能帮助我们找到正在执行的文件版本和它的路径。在检查文件名冲突方面它是非常有用的。这个命令的格式是which filename, filename代表你所要加载的函数名。举个例子,你要加载的函数是cross.m:
&amp;gt;&amp;gt;which cross
D:\mat\toolbox\matlab\specfun\cross.m
我们可以运用启动平台中的路径工具(the path tool)随时检查和修改这个路径,或者在命令窗口(The Command Windows)中输入edipath命令。路径工具(the path tool)如图1.10所示。它允许使用者添加,删除路径和改变在目录中的顺序。还有其他与路径相关的函数,包括:
addpath 增加目录到MATLAB搜索路径。
path 显示MATLAB搜索路径。
path2rc   增加当前目录到MATLAB搜索路径。
rmpath 移动MATLAB 搜索路径中的目录。
 
Figure 1.10 路径工具(the path tool)
1.4把MATLAB 当作便笺薄来使用
MATLAB可用作便笺薄以最简单的形式进行数学计算。所要进行的计算可直接输入命令窗口(The Command Windows),+,-,*,/和^分别代表加号,减号,乘号,除号和乘方。在窗口中输入一个表达式后,它将会自动计算和显示出结果。例如,你要计算一个半径为r,高度为l的圆柱体的体积。圆柱体的底面面积的计算式为A=πr2 (1.1)
圆柱体的体积计算式为V=Al.
假设一个圆柱体的底面半径为0.1m,高度为0.5m,这个圆柱体的体积可以通过以下MATLAB语言进行计算得到:
&amp;gt;&amp;gt;A=pi*0.1^2
A =

    0.0314
&amp;gt;&amp;gt;V=A*0.5
V =

    0.0157
注意pi的预定义值为3.1415926…,还有A的值存在于MATLAB中,当计算V时A值得到重复利用。
测试1.1本测试提供了一个快速的检查方式,看你是否掌握了第一章的基本内容。如果你对本测试有疑问,你可以重读本章,问你的老师,或和同学们一起讨论。在附录B中可以找到本测试的答案。
MATLAB的命令窗口的作用是什么?编辑/调试窗口?图象窗口?
列出几种不同的得到MATLAB帮助的方法。
什么是工作区?在同一工作区内,你如何决定它里面存储了什么?
你怎样清空MATLAB工作区内的内容?
一小球从空中下落的位移公式为x=x0+v0 t+1/2at2 ,用MATLAB计算小球在t=5s时的位置,已知x0  =10m,v0  =15m/s, a=-9.84m/s2.
假设x=3,y=4.用MATLAB计算下列表达式:
           
下列问题将有助于你熟悉MATLAB工具。(如果你使用的MATLAB比6.0旧,那么解决这些问题将比较麻烦因为旧版本的MATLAB的许多工具与新版本的不同)
7. 在命令窗口(The Command Windows)执行M文件calc_area.m和sin_x.m(这些M文件可在本书的网站上得到)。然后用工作空间平台查看有那些变量在当前工作区。
8.用数组编辑器查年和修改变量x的值。然后的在命令窗口键入命令plot(x,y)中,观察在图象窗口内数据怎样被显示。
总结
在本章中,我们学到了基本类型的MATLAB窗口,工作区和如何得到在线帮助。当MATLAB程序启动时,MATLAB桌面就会被显示出来。在单一位置它集成许多的MATLAB工具。这些工具包括命令窗口(The Command Windows),命令历史窗口,启动平台,数组编辑器,和当前目录查看器。命令窗口是最重要的窗口,因为所有的命令都得在此键入,所有的结果在此输出。
用编辑/调试器经常用于创建和修改M文件。 它用于显示M文件的内容,内容用不同的颜色显示出来:解释,关键字,字符串等等。
图象窗口用于显示图象。
MATLAB用户可以通过帮助空间窗口,help命令,lookfor命令三种方式得到帮助。帮助空间窗口可以帮助用户访问所有的MATLAB文件设置。而help命令是一个在命令窗口内显示帮助的方法。不幸的是,运用这个命令你必须知道你所要帮助的函数的名字。只要MATLAB函数评论的第一评论句中的单词与搜索词相对应,那么用lookfor命令就可找到,并显示出来。
当用户在命令窗口中键入一个命令,MATLAB按照MATLAB路径特殊编排而成的目录搜索这个命令。当MATLAB执行了路径中第一个与之对应的M文件,其他的拥有相同名字的M文件将会被忽略。路径工具(the path tool)允许使用者添加,删除路径和改变在目录中的顺序。
1.5.1 MATLAB 总结
下面的总结表是本章的遇到的所有的MATLAB的特殊符号,并带有简短的解释。
特殊符号
+    加号
-    减号
*    乘号
/    除号
^    乘方
1.6练习
1.1下列MATLAB语句用于画出函数y(x)=2e-0.2x在[0,10]的值。
x=0:0.1:10;
y=2*exp(-0.2*x);
plot(x,y);
用MATLAB 编辑器创建一个新的M文件,把上面的语句写入这个文件并命名为test1.m。然后在命令窗口中输入test1执行这个文件。看得到什么结果?
1.2通过以下两种方式得到关于exp函数的帮助
(a)在命令窗口中输入help exp命令
(b)运用帮助空间窗口
1.3使用lookfor命令寻找一个数以十为底的对数函数。
1.4假设u=1和v=3,用MATLAB语句编写下列语句
a.  
b.  
c.  
d.  
1.5应用MATLAB 帮助空间窗口查找显示文件当前目录的命令。MATLAB 启动时它文件当前目录是什么?
1.6应用MATLAB 帮助空间窗口创建一个新目录,这个在当前目录下这个新目录的名字为mynewdir.把这个目录置于路径的顶端。
1.7把当前目录改为mynewdir目录,然后打开一个编辑窗口,增加以下语句:
%create an input array from -2*pi to 2*pi
t = -2*pi:pi/10:2*pi
%calculate | sin(t)|
x=abs(sin(t));
%plot result
plot(x,y);
把此文件以test2.m为文件名保存,然后在命令窗口中输入test2执行此文件。
1.8关闭画图窗口,然后返回到原始目录,然后再命令窗口中输入test2 。看有何情况发生,为什么。

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-08 20:28
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 
由于文件太大,我把第二章的翻译的内容发到http://vip.oot.cn/temp/xingshujun/第二章.pdf,大家可以下载后查看[URL=http://vip.oot.cn/temp/xingshujun/第二章.pdf]http://vip.oot.cn/temp/xingshujun/第二章.pdf[/URL]

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-18 23:15
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 

我只是一个大学二年级的学生,中间的翻译的错误定然不少,希望大家能够指正,能和大家一起交流学习,非常高兴.
如果大家没有<<matlab programming for engineers>>这本书,我这里有它的地址[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part01.exe[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part02.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part03.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part04.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part06.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part06.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part07.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part08.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part09.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part10.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/matlab programming for engineers.part11.rar[/url]


因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-18 23:58
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 
这里是第三章的内容[url]http://vip.oot.cn/temp/xingshujun/chapter3.part1.exe[/url]
[url]http://vip.oot.cn/temp/xingshujun/chapter3.part2.rar[/url]
[url]http://vip.oot.cn/temp/xingshujun/chapter3.part3.rar[/url]

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-25 00:44
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-30 00:54
xingshujun
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-1-17
收藏
得分:0 
witchingnalay,谢谢 ,我是利用暑假的空余时间来翻译这本书,不会影响其它专业课的学习

因为喜欢一个人,走上一条不归路.热情需要燃烧.
2006-07-30 17:46
快速回复:翻译
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019833 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved