您好,欢迎光临有路网!
MATLAB及在电子信息课程中的应用(第4版)
QQ咨询:
有路璐璐:

MATLAB及在电子信息课程中的应用(第4版)

  • 作者:陈怀琛 吴大正 高西全
  • 出版社:电子工业出版社
  • ISBN:9787121209826
  • 出版日期:2013年08月01日
  • 页数:329
  • 定价:¥45.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    MATLAB语言具备**、可视化及推理能力强等特点,是目前工程界流行*广的科学计算语言。本书由语言篇和应用篇两部分组成。语言篇介绍MATLAB语言的基本语法、开发环境、工具、其他函数库等,应用篇讲述MATLAB近百个实例程序,涉及的课程范围有电路、信号与系统、数字信号处理、控制系统等。这些实例使用了MATLAB中多方面的语句,可使读者迅速掌握MATLAB编程的技巧,提高完成工程课程的效率。
    本书前面两个版本已被多所院校作为电子信息类课程的教材和教辅参考书,根据读者需求,作者再次更新了版本,将MATLAB升级,增加了部分例题,更加适合教学和自学。本书可作为学习MATLAB语言的入门及应用教材,也可供电子信息领域大学师生及工程技术人员参考。
    文章节选
    2.1 变量及其赋值
    2.1.1 标识符与数
    标识符是标识变量名、常量名、函数名和文件名的字符串的总称。在MATLAB中,变量和常量的标识符*长允许19个字符;函数和文件名则通常不超过8个字符。这些字符包括全部的英文字母(大小写共52个)、阿拉伯数字和下画线等符号。标识符中第1个字符必须是英文字母。MATLAB对大小写敏感(Case Sensitive),即它把A和a看做两个不同的字符。
    MATLAB内部只有一种数据格式,那就是双精度(即64位)二进制,对应于十进制16位有效数和±308次幂。MATLAB作运算和存储时都用双精度格式,这对绝大多数工程计算是足够的,许多情况下甚至过于“浪费”。在一些其他的算法语言中设有多种数据格式,如字符型(8位)、整数型(16位)、单精度型(32位)等,可节省内存和提高速度,但增加了编程的复杂性。MATLAB把简化编程作为其主要目标,省去了多种数据格式,但在运算速度和内存消耗方面付出代价。不过,现在计算机的时钟频率和内存容量都以几何级数迅速增长,MATLAB付出的代价容易得到弥补。虽然它的数据格式只有一种,但为了人机交互的友好方便,输出显示格式有8种,已在第1章中指出。
    2.1.2 矩阵及其元素的赋值
    赋值就是把数赋予代表常量或变量的标识符。MATLAB中的变量或常量都代表矩阵,标量应看做1?1阶的矩阵。赋值语句的一般形式为:
    ? 变量?表达式(或数)
    例如输入语句
    a?[1 2 3;4 5 6;7 8 9]
    则显示结果为
    a? 1 2 3
    4 5 6
    7 8 9
    元素也可以用表达式代替,如输入 x=[-1.3 sqrt(3) (1+2+3)/5*4]
    结果为 x=-1.3000 1.7321 4.8000
    可以看出,矩阵的值放在方括号中,同一行中各元素之间以逗号或空格分开,不同的行则以分号隔开,语句的结尾可用回车符或逗号,此时会立即显示运算结果。如果不希望显示结果,就以分号结尾。此时运算仍然执行,只是不显示。
    变量的元素用圆括号“()”中的数字(也称为下标)来注明,一维矩阵(也称数组或向量)中的元素用一个下标表示,二维的矩阵可有两个下标数,以逗号分开。三维和更高维的矩阵,可有三个或更多下标。用户可以单独给元素赋值,如:x(2)=1.7321,a(2,3)=6等。如果赋值元素的下标超出了原来矩阵的大小,矩阵的行列会自动扩展。如:
    x(5)=abs(x(1))
    得 x =-1.3000 1.7321 4.8000 0 1.3000
    又如输入 a(4,3)=6.5
    得 a = 1.0000 2.0000 3.0000
    4.0000 5.0000 6.0000
    7.0000 8.0000 9.0000
    0 0 6.5000
    可见,跳空的元素x(4),a(4,1),a(4,2)被自动赋值0。这种自动扩展维数的功能只适用于赋值语句,在其他语句中若出现超维调用的情况,系统将给出出错提示。
    给全行赋值,可用冒号。例如,给a的第5行赋值。
    输入 a(5, : )=[5,4,3]
    得 a = 1.0000 2.0000 3.0000
    4.0000 5.0000 6.0000
    7.0000 8.0000 9.0000
    0 0 6.5000
    5.0000 4.0000 3.0000
    把a的第2, 4行及第1, 3列交点上的元素取出,构成一个新矩阵b。
    可输入 b = a([2,4],[1,3])
    得 b = 4.0000 6.0000
    0 6.5000
    要抽去a中的第2、4、5行,可利用空矩阵[ ]的概念。
    输入 a([2,4,5],:)=[ ]
    得 a = 1 2 3
    7 8 9
    注意,“空矩阵”是指没有元素的矩阵。对任何一个矩阵赋值[ ],就是使它的元素都消失掉。这完全不同于“零矩阵”,后者是元素存在,只是其数值为零而已。可以看出,空矩阵是使矩阵减缩时不可缺少的概念。
    除“变量=表达式(或数)”的标准赋值格式外,还可以不要等式左端而只剩下“表达式”。这有两种可能:(1)该表达式并不产生数字解,例如,产生图形或改变系统状态;(2)该表达式产生数字解,但不需保存它。此时,MATLAB自动给出一个临时变量ans,把右端的结果暂存在ans中。例如输入 a/7
    得 ans = 0.1429 0.2857 0.4286
    1.0000 1.1429 1.2857
    2.1.3 复数
    MATLAB的每一个元素都可以是复数,实数是复数的特例。复数的虚数部分用i或j表示。这是在MATLAB启动时就在内部设定的。例如:
    输入 c = 3+5.2i
    得 c = 3.0000 + 5.2000i
    对复数矩阵有两种赋值方法。
    (1)将其元素逐个赋予复数,如:
    输入 z=[1+2i,3+4i;5+6i,7+8i]
    得 z = 1.0000 + 2.0000i 3.0000 + 4.0000i
    5.0000 + 6.0000i 7.0000 + 8.0000i
    (2)将其实部和虚部矩阵分别赋值,如:
    z = [1,3;5,7]+[2,4;6,8]*i
    两种赋值方法得出同样的结果。注意,只有数字和i的乘积可省略乘号,在上述矩阵式中若省略乘号“*”,就会出错。另外,如果在前面程序中曾经给i或j赋过其他值,则i,j已经不是虚数符号,这些虚数赋值语句都不对了。此时应输入:
    clear i,j
    即把原赋的i,j清掉,然后再执行复数赋值语句。
    MATLAB中所有的运算符和函数都对复数有效。例如:
    输入 f = sqrt(1+2i)
    得 f = 1.2720 + 0.7862i
    检验 f*f
    ans = 1.0000 + 2.0000i
    因此,复数的表达式同样也能作为赋值语句。再来看复数矩阵z的转置、共轭运算,运算符 ' 表示把矩阵作共轭转置,即把它的行列互换,同时,把各元素的虚部反号。函数conj则只把各元素的虚部反号,即只取共轭。所以,若求转置而不要共轭,就把conj和 ' 结合起来完成。
    输入 w=z'(共轭转置),u=conj(z) (共轭),v=conj(z)' (转置)
    得 w = 1.0000 - 2.0000i 5.0000 - 6.0000i
    3.0000 - 4.0000i 7.0000 - 8.0000i
    u = 1.0000 - 2.0000i 3.0000 - 4.0000i
    5.0000 - 6.0000i 7.0000 - 8.0000i
    v = 1.0000 + 2.0000i 5.0000 + 6.0000i
    3.0000 + 4.0000i 7.0000 + 8.0000i
    目录
    第1部分 语 言 篇
    第1章 MATLAB语言概述
    1.1 MATLAB语言的发展
    1.2 MATLAB语言的特点
    1.3 MATLAB的工作环境
    1.3.1 命令窗
    1.3.2 图形窗
    1.3.3 文本编辑窗
    1.4 演示程序
    第2章 基本语法
    2.1 变量及其赋值
    2.1.1 标识符与数
    2.1.2 矩阵及其元素的赋值
    2.1.3 复数
    2.1.4 变量检查
    2.1.5 基本赋值矩阵
    2.2 矩阵的初等运算
    2.2.1 矩阵的加减乘法
    2.2.2 矩阵除法及线性方程组的解
    2.2.3 矩阵的乘方和幂次函数
    2.2.4 矩阵结构形式的提取与变换
    2.3 元素群运算
    2.3.1 数组及其赋值
    2.3.2 元素群的四则运算和幂次运算
    2.3.3 元素群的函数
    2.4 逻辑判断及流程控制
    2.4.1 关系运算
    2.4.2 逻辑运算
    2.4.3 流程控制语句
    2.5 基本绘图方法
    2.5.1 直角坐标中的两维曲线
    2.5.2 线型、点型和颜色
    2.5.3 多条曲线的绘制
    2.5.4 屏幕控制和其他二维绘图
    2.5.5 三维曲线和曲面
    2.5.6 特殊图形和动画
    2.5.7 彩色、光照和图像
    2.5.8 低层图形屏幕控制功能
    2.6 M文件及程序调试
    2.6.1 主程序文件
    2.6.2 人机交互命令
    2.6.3 函数文件
    2.6.4 文件编辑器及程序调试
    第3章 MATLAB的开发环境和工具
    3.1 MATLAB与其他软件的接口关系
    3.1.1 与磁盘操作系统的接口关系
    3.1.2 与文字处理系统Winword的关系
    3.1.3 图形文件的转储
    3.1.4 低层输入输出函数库
    3.1.5 与C和FORTRAN子程序的动态链接
    3.2 MATLAB的文件管理系统
    3.2.1 安装后的MATLAB文件管理系统
    3.2.2 MATLAB自身的用户文件格式
    3.2.3 文件管理和搜索路径
    3.2.4 与目录和搜索有关的命令
    3.2.5 搜索顺序
    3.3 MATLAB的开发环境
    3.3.1 桌面系统的内容
    3.3.2 桌面命令菜单简介
    3.3.3 MATLAB的用户界面
    第4章 MATLAB的其他函数库
    4.1 数据分析函数库(datafun函数库)
    4.1.1 基本的数据分析
    4.1.2 用于场论的数据分析函数
    4.1.3 用于随机数据分析的函数
    4.1.4 用于相关分析和傅里叶分析的函数
    4.2 矩阵的分解与变换(matfun函数库)
    4.2.1 线性方程组的系数矩阵
    4.2.2 矩阵的分解
    4.2.3 矩阵的特征值分析
    4.2.4 特殊矩阵库(specmat)
    4.3 多项式函数库(polyfun)
    4.3.1 多项式的四则运算
    4.3.2 多项式求导、求根和求值
    4.3.3 多项式拟合
    4.3.4 多项式插值
    4.3.5 线性微分方程的解(residue)
    4.4 函数功能和数值积分函数库(funfun)
    4.4.1 函数功能和数值积分函数库的主要子程序
    4.4.2 非线性函数的分析
    4.4.3 任意函数的数值积分
    4.5 字符串函数库(strfun)
    4.5.1 字符串的赋值
    4.5.2 字符串语句的执行
    4.5.3 字符串输入/输出
    4.6 稀疏矩阵函数库(sparfun)
    4.7 图形界面函数库(Guitools)
    4.8 数据类型函数库(datatypes)
    4.8.1 结构阵列
    4.8.2 单元阵列
    4.8.3 类和对象
    习题
    第2部分 应 用 篇
    第5章 MATLAB在电路中的应用
    5.1 电阻电路
    5.2 动态电路
    5.3 正弦稳态电路
    5.4 频率响应
    5.5 二端口电路
    5.5.1 Z,Y,H,G,A,B六种参数间关系的MATLAB语句
    5.5.2 网络函数及其MATLAB语句
    5.6 用MATLAB图解几个电路概念
    习题
    第6章 MATLAB在信号与系统中的应用
    6.1 连续信号和系统
    6.2 傅里叶分析
    6.3 离散信号和系统
    6.4 线性时不变系统的模型
    6.4.1 模型的典型表达式
    6.4.2 模型转换
    6.5 频谱概念的MATLAB图释
    习题
    第7章 MATLAB在数字信号处理中的应用
    7.1 时域离散信号的产生及时域处理
    7.2 z变换和傅里叶变换
    7.3 离散傅里叶变换(DFT)
    7.4 数字滤波器结构
    7.5 FIR数字滤波器设计
    7.6 IIR数字滤波器设计
    7.7 频率、角频率和数字频率
    7.7.1 频率
    7.7.2 角频率
    7.7.3 序列信号的频率——数字频率
    习题
    第8章 MATLAB在自动控制原理中的应用
    8.1 控制工具箱中的LTI对象
    8.1.1 LTI对象的类型和属性
    8.1.2 LTI模型的建立
    8.1.3 对象属性的获取和修改
    8.1.4 LTI模型的简单组合和运算符扩展
    8.1.5 复杂模型的组合
    8.1.6 连续系统和采样系统之间的变换
    8.1.7 典型系统的生成
    8.2 动态特性和时域分析函数
    8.3 系统的频域分析函数
    8.4 系统的状态空间分析函数
    8.5 系统的状态空间法设计函数
    8.5.1 线性平方调节器问题
    8.5.2 线性平方估计器问题
    习题
    第9章 MATLAB工具箱简介
    9.1 符号数学(Symbolic Math)工具箱简介
    9.1.1 Symbolic工具箱的主要功能
    9.1.2 符号数学式的基本表示方法
    9.2 系统仿真(Simulink)工具箱简介
    9.2.1 概述
    9.2.2 环节库及框图的建立
    9.2.3 仿真方法和参数的设定
    9.2.4 仿真的运行
    9.2.5 Simulink的子系统屏蔽(Masking)功能
    9.2.6 Simulink内部工作过程简介
    9.2.7 Simulink应用范围的扩展
    9.3 以matlab为基础的工具箱简介
    9.4 以Simulink为基础的模块工具箱简介
    9.4.1 电力系统(Powersys)模块工具箱简介
    9.4.2 数字信号处理(DSP Blocks)模块工具箱简介
    9.4.3 定点处理(Fix-Point Blocks)模块工具箱简介
    9.4.4 通信系统(Comm)模块工具箱简介
    附录A 全书例题索引
    附录B 关于负频率的探讨
    参考文献
    编辑推荐语
    **购买:数字信号处理教程——MATLAB释义与实现 (第3版) 陈怀琛、吴大正、高西全编著的《MATLAB及在电子信息课程中的应用(第4版)》以电路、信号和系统、数字信号处理和自动控制原理4门主课为目标,作为这些课程的伴侣书。晶体管模拟电路和数字电路虽然也是主课,但有专门的软件来辅助分析,因此本书不作介绍。作为教学辅导书,本书不作理论推导,而是直接利用教材上的现成结论。**讨论如何利用这些结论和MATLAB编程来解决实际问题,通过数字结果来加深对理论的理解。本书自成体系,同时避免各门课程的局限性。由于种种原因,目前各门课程之间往往存在一些重叠,各校对课程范围的划分也不尽相同,本书尽量避免这些不必要的矛盾。比如学习控制理论的时候,关于线性系统求解问题就不再介绍,只要查看信号与系统的有关内容就行了。这样做虽然有些不便,但可以使读者把各门课程的概念真正连贯起来,使之融会贯通,有利于对课程的理解和深化。

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外