本书按照一般的微积分学教材的编排方式,系统地论述了基于MATLAB 语言编程的方法来实现微
积分问题的求解。全书内容包括函数与序列的描述及图形绘制、极限问题的求解、导数与微分问题的求
解、积分问题的求解、函数的逼近与级数求和、数值导数与数值积分等。此外,书中还概括性地介绍了
积分变换、分数阶微积分等内容。
本书可以作为高等学校理工科各类专业的本科生与研究生学习计算机数学语言(MATLAB)的教材,
也可以作为一般读者学习微积分学的辅助教材,帮助读者从另一个角度认识微积分学问题的求解方法,
并可以作为查询微积分数学问题求解方法的工具书。
2.1.4函数的曲线与曲面表示
一般情况下,一元函数可以由曲线表示,二元函数可以用曲面表示。这里将介绍如何在 MATLAB环境下绘制函数的曲线与曲面。
(1)一元函数:如果已知一元函数 y = f(x),则可以用 fplot()函数直接绘制其曲线,调用格式为
fplot(f), %默认绘图区间 [.5, 5],或 fplot(f,[xm,xM])其中 f可以为匿名函数,也可以为符号表达式或符号函数。不过在使用匿名函数时,应该采用点运算的形式。
在早期版本 MATLAB中,还可以使用 ezplot()函数直接绘制一元显函数曲线,该函数的调用格式为
ezplot(f), %默认绘图区间 [.2π, 2π],或 ezplot(f,[xm,xM])其中 f可以是符号表达式或符号函数,还可以是数值计算中常用的字符串,相比之下,ezplot()函数可以比较好地自动选择坐标轴,但不能直接绘制分段函数,而 fplot()函数可以。
(2)二元函数:若已知二元函数 z = f(x, y),则可以用 fsurf()函数绘制其曲
面图,其调用格式为 fsurf(f)%默认区间 [.5, 5],或 fsurf(f,[xm,xM]), fsurf(f,[xm,xM,ym,yM])
也可以用早期版本函数 ezsurf()绘制,该函数的调用格式为 ezsurf(f), %默认区间 [.2π, 2π],或 ezsurf(f,[xm,xM]), ezsurf(f,[xm,xM,ym,yM])
其中 f可以是符号表达式、符号函数或字符串。还有一些特殊形式的函数,其曲线、曲面的绘制方法将在 2.2节进一步介绍。
2.2不同函数的 MATLAB表示
除了前面介绍的常规函数之外,在实际应用中还有各种特殊形式的函数,如反函数、复合函数、隐函数与参数方程等,本节将分别介绍这些函数的定义、MATLAB输入方法与图形绘制方法。
2.2.1反函数
定义 2-5如果已知函数 y = f(x),并且对值域内的每个 y,都有一个函数 x = g(y)与之对应,且这种对应关系是一一对应,则称 x = g(y)为 y = f(x)的反函数,记作 f.1(y)。
finverse()函数可以求出一些给定函数的反函数。值得指出的是,即使一个函数是一一对应的函数,有时也不一定能得出其反函数的解析解。
例 2-2试求出函数 f(x)=1+ ln(x + 1)的反函数。 解先输入原函数,然后求出其反函数,再将反函数的自变量替换成 y,则可以得出原函数的反函数为 x = g(y)= f.1(y)= ey.1 . 1。
>> syms x y; f(x)=1+log(x+1); g(x)=finverse(f,x); g(y)
2.2.2复合函数
定义 2-6如果函数 y = f(u)为 u的函数,而 u = g(x)为 x的函数,则 y也是 x的函数,y = f(g(x)),这种函数称为复合函数。
在实际应用中,还可以将一个函数嵌入另一个函数来构造复合函数。例如,已知两个函数 f(x)和 g(x),则可以构造出两个复合函数 f(g(x))和 g(f(x))。复合函数 f(g(x))又记作 (f.g)(x)。
例 2-3已知数学函数 f(x)= x sin x,g(x)= tan x,试求出复合函数
x2 +2(x + 5)
f(g(x))和 g(f(x))。 解可以有三种方法在 MATLAB下表示复合函数,第一种是通过变量替换的模式计算,第二种是调用符号运算工具箱的 compose()函数顺序计算,第三种是按照函数的方式直接计算。下面将给出这三种方法的 MATLAB语句。
>> syms x; f=x*sin(x)/sqrt(x^2+2)/(x+5); g=tan(x); F1=subs(f,x,g), F2=subs(g,x,f) %第一种方法:变量替换的方法 F3=compose(f,g,x), F4=compose(g,f,x) %第二种方法:直接合成的方法 f(x)=x*sin(x)/sqrt(x^2+2)/(x+5); g(x)=tan(x); F5=f(g), F6=g(f) %第三种方法:函数求值的方法
·10·薛定宇教授大讲堂(卷 II):MATLAB微积分运算
]
这三种方法得出的结果是一致的。从使用的方便程度看,第三种方法值得推荐。
sintanx tanxx sin x
F1 =F3 =F5 = ,F2 =F4 =F6 = tan(tanx + 5) tan2 x +2 x 2 +2 (x + 5)
√
[
√
例 2-4 Dawson函数是一个特殊函数,其定义为
∫
z
daw(z)= e.z 2 eν2 dξ(2-2-1)
0
已知 Dawson函数的一阶导数可以由下式计算
dd z daw(z)=1 . 2z daw(z)(2-2-2)
试用复合函数的方法递推求出该函数的二阶、三阶和四阶导数。 解可以先在 MATLAB下申明符号函数 f(x),然后采用变量替换的方式求取 Dawson函数的高阶导数。
>> syms x daw(x); f=1-2*x*daw; f1=f;
for i=1:3
f1=diff(f1,x);
f1=collect(expand(subs(f1,diff(daw,x),f)),daw)
end
这样可以得出一系列 Dawson函数的导数为
. .
. .
.
daw′′ (x) = (4x2 . 2)daw(x) . 2x daw′′′ (x)=(.8x3 + 12x)daw(x)+4x2 . 4 daw(4)(x) = (16x4 . 48x2 + 12)daw(x) . 8x3 + 20x
目 录
CONTENTS
第 1章微积分问题简介 1
1.1微积分学发展简史 1
1.2本书的主要内容 · 4
第 2章函数与序列 · 6
2.1函数与映射 · 6
2.1.1函数的定义与描述 6
2.1.2常用超越函数的 MATLAB计算 7
2.1.3一般函数的 MATLAB表示 · 7
2.1.4函数的曲线与曲面表示 8
2.2不同函数的 MATLAB表示 · 9
2.2.1反函数 · 9
2.2.2复合函数 · 9
2.2.3分段函数的描述 10
2.2.4隐函数 · 12
2.2.5参数方程 · 13
2.2.6极坐标函数 · 16
2.3奇函数与偶函数 · 17
2.4复变函数与映射 · 18
2.4.1复数矩阵及其变换 18
2.4.2复变函数的映射 18
2.4.3 Riemann曲面的绘制 19
2.5序列与函数项序列 22本章习题 23
第 3章函数与序列的极限 26
3.1单变量函数的极限 27
3.1.1单变量函数极限的 φ–α定义 · 27
·iv·薛定宇教授大讲堂(卷 II):MATLAB微积分运算
3.1.2函数极限的计算机求解 29
3.1.3复合函数的极限 31
3.1.4序列的极限 · 31
3.1.5分段函数的极限 32
3.1.6无穷小量与无穷大量 33
3.2单边极限与函数连续性 33
3.2.1左极限与右极限 33
3.2.2函数的连续性 35
3.2.3区间极限运算 36
3.2.4函数连续性的应用方程解的判定 · 37
3.3复函数的奇点、极点与留数 · 38
3.3.1奇点与极点的计算 38
3.3.2复变函数的留数 39
3.4多元函数的极限 · 41
3.4.1累极限 · 41
3.4.2重极限及其计算 42本章习题 44第 4章函数的导数与微分 47
4.1函数的导数和高阶导数 48
4.1.1函数的导数与微分 48
4.1.2函数导数与高阶导数 48
4.1.3复合函数的导数 51
4.1.4分段函数的导数 52
4.1.5矩阵的导数 · 53
4.2参数方程的导数 · 53
4.3多元函数的偏导数 55
4.3.1偏导数 · 55
4.3.2全微分 · 58
4.3.3多元复合函数的导数 58
4.4场的梯度、散度与旋度 · 59
4.4.1标量场与向量场 59
4.4.2梯度、散度与旋度 · 59
4.4.3向量场的势 · 61
4.5多元函数的导数矩阵 61
4.5.1 Jacobi矩阵 61
4.5.2 Hesse矩阵 62
4.5.3标量函数的 Laplace算子 · 63
4.6隐函数的偏导数 · 63
4.6.1单个隐函数的一阶导数 63
4.6.2隐函数的高阶导数 64
4.6.3隐函数方程组的偏导数计算· 66
4.7导数与微分的应用 68
4.7.1极值问题 · 68
4.7.2 Newton–Raphson迭代方法 · 71
4.7.3曲面的切面方程与法线方程· 72本章习题 73
第 5章函数的积分 · 75
5.1单变量函数的不定积分 76
5.2定积分与反常积分 79
5.2.1定积分 · 79
5.2.2广义积分与反常积分 81
5.3多重积分问题的 MATLAB求解 · 83
5.3.1多重不定积分 84
5.3.2待定多项式的构造 85
5.3.3多重定积分的计算 86
5.3.4积分区域的处理与变换 87
5.4定积分的应用 · 88
5.4.1曲线弧长的计算 88
5.4.2旋转体的体积计算 89
5.4.3三维图形围成的体积与质量计算 · 90
5.4.4概率密度与分布函数 91
5.4.5积分变换入门 92
5.5曲线积分 · 92
5.5.1第一类曲线积分 93
5.5.2第二类曲线积分 95
5.6曲面积分 · 96
5.6.1第一类曲面积分 96
5.6.2第二类曲面积分 98
·vi·薛定宇教授大讲堂(卷 II):MATLAB微积分运算
本章习题 100
第 6章级数展开与函数逼近 103
6.1级数求和 · 103
6.1.1数项级数的求和 104
6.1.2无穷级数求和计算 106
6.1.3函数项级数的求和 108
6.1.4特殊的无穷项问题 109
6.2无穷级数的收敛性判定 111
6.2.1正项级数的一般描述 111
6.2.2正项级数的收敛性判定 111
6.2.3交替级数的收敛性判定 113
6.2.4函数项级数的收敛区间 114
6.3序列求积问题 · 115
6.3.1数项序列的乘积 115
6.3.2函数项序列的乘积 116
6.3.3正项序列求积的收敛性判定· 116
6.4 Taylor幂级数展开 117
6.4.1单变量函数的 Taylor幂级数展开 · 118
6.4.2多元函数的 Taylor幂级数展开· 121
6.5 Fourier级数展开 · 122
6.5.1 Fourier级数的数学描述 122
6.5.2 Fourier级数的 MATLAB实现 · 123
6.6单变量函数的有理函数近似 126
6.6.1函数的连分式近似 126
6.6.2函数的 Padé近似 · 130
6.7 Laurent级数展开· 131
6.7.1复变函数的 Laurent级数展开 · 131
6.7.2有理函数的 Laurent级数 · 133本章习题 135
第 7章数值导数与微分 139
7.1数值导数算法 · 139
7.1.1前向差分与后向差分算法 140
7.1.2 o(h2)精度中心差分算法 · 140
7.1.3 o(h4)精度中心差分算法 · 141
7.1.4更高精度的中心差分公式 141
7.1.5一般高阶差分公式的推导与计算 · 142
7.1.6高精度前向与后向差分算法· 145
7.2数值导数计算的 MATLAB实现 · 146
7.2.1二阶精度算法的实现 147
7.2.2七点中心算法的实现 148
7.2.3前向差分数值导数算法的实现· 149
7.3已知样本点的任意阶数值导数的求解函数 · 151
7.4二元函数的偏导数计算 153
7.4.1梯度计算 · 153
7.4.2针对单变量的高精度偏导数算法 · 154
7.4.3混合偏导数的数值计算 156
7.4.4高阶混合偏导数的数值计算· 157
7.5样条插值与数值导数计算 158
7.5.1三次样条 · 158
7.5.2 B样条 · 161
7.5.3基于样条的数值导数计算 162
7.5.4不等间距样本散点的数值偏导数计算 · 165本章习题 167第 8章数值积分 · 169
8.1由给定样本点求数值积分 169
8.1.1定积分的直接计算 169
8.1.2积分函数的重建 171
8.1.3等间距样本点的高精度数值积分方法 · 172
8.2单变量数值积分问题求解 175
8.2.1简单数值积分问题 175
8.2.2数值积分问题的 MATLAB求解 176
8.2.3反常积分的数值计算 180
8.2.4含参数函数的数值积分 181
8.2.5积分函数的数值求解 183
8.3双重积分问题的数值解 184
8.3.1双重定积分的计算 184
8.3.2双重积分曲面的计算 185
8.3.3不同积分顺序的双重积分计算方法 · 185
·viii·薛定宇教授大讲堂(卷 II):MATLAB微积分运算
8.4多重积分数值求解 186
8.4.1三重定积分的数值求解 187
8.4.2含参数函数的三重积分 188
8.4.3多重积分数值求解 189
8.4.4某些变边界多重积分问题的数值求解方法 191
8.5数值积分的其他计算方法 191
8.5.1基于 Monte Carlo方法的数值积分近似 192
8.5.2基于样条插值的数值积分 194
8.5.3多重积分的数值计算 196本章习题 197
第 9章积分变换 · 200
9.1 Laplace变换及其反变换 · 200
9.1.1 Laplace变换及反变换的定义与性质 201
9.1.2 Laplace变换的计算机求解 202
9.1.3用 Laplace变换求解微分方程 204
9.2 Laplace变换问题的数值求解 206
9.2.1数值 Laplace反变换 · 206
9.2.2闭环系统响应的思想 207
9.2.3数值 Laplace变换· 208
9.2.4无理系统的响应计算 211
9.3 Fourier变换及其反变换 211
9.3.1 Fourier变换及反变换定义与性质· 212
9.3.2 Fourier变换的计算机求解 212
9.3.3 Fourier正弦和余弦变换 213
9.3.4离散 Fourier正弦、余弦变换 · 215
9.3.5快速 Fourier变换 · 216
9.4其他积分变换问题及求解 217
9.4.1 Mellin变换 217
9.4.2 Hankel变换及求解 219
9.5 z变换及其反变换 220
9.5.1 z变换及反变换定义与性质 · 221
9.5.2 z变换的计算机求解· 221
9.5.3双边 z变换 223
9.5.4有理函数 z反变换的数值求解 · 223本章习题 224
第 10章分数阶微积分· 228
10.1分数阶微积分的定义 · 229
10.1.1为什么要引入分数阶微积分的概念 · 229
10.1.2分数阶微积分的定义 230
10.2不同分数阶微积分定义的关系与性质 231
10.3 Grünwald–Letnikov定义的数值实现 · 232
10.3.1 Grünwald–Letnikov定义 232
10.3.2高精度算法与实现 233
10.3.3不同精度算法的定量比较 · 237
10.4 Caputo微积分定义的数值计算 · 239
10.5 Oustaloup滤波算法及其应用 241
10.5.1 Oustaloup滤波器近似 · 241
10.5.2 Caputo导数的滤波器近似 243
10.5.3基于 Simulink的 Caputo导数计算 245
10.6更高阶导数与积分的数值计算 246本章习题 248参考文献· 249 MATLAB函数名索引 · 251
术语索引· 255
温馨提示:请使用泸西县图书馆的读者帐号和密码进行登录