本文转自公众号 算法与数学之美
前言:复数不仅有意义,而且可以用图示来优雅地解释
1、实函数与数轴变换
大家都认识y=cx,对于这样的初等函数,我们从小就学会使用直角坐标系来刻画它们:
它们的特点都大同小异:把实数轴对应到实数轴。然而,既然是一维函数,用二维图像来描述未免太过奢侈。如果我们把数轴涂上不同颜色,再把一条新数轴上对应的函数值涂上相应颜色,就可以清晰地用它们的特点都大同小异:把实数轴对应到实数轴。然而,既然是一维函数,用二维图像来描述未免太过奢侈。如果我们把数轴涂上不同颜色,再把一条新数轴上对应的函数值涂上相应颜色,就可以清晰地用数轴-数轴对应来展示函数这一关系:
可以发现每个函数的作用无非是在有些地方把数轴往中间压了压,在有些地方又把数轴往两边扯了扯(观察图中小棒棒之间的间距是变窄还是变宽):
1)cx越往左越挤压数轴,越往右越拉伸数轴
2)x2离0越远,对数轴的拉伸越厉害(在图上左半边图像和右半边图像重叠在了一起)。如果有一个小球在实数轴上向右滑行,那么它的像则先向左滑行到0,然后再向右滑行。
3)x3离0越远,对数轴的拉伸比楼上更厉害,但是不同的是,向右滑行的小球的像也一直向右滑行。
是挤压还是拉伸,就看函数在那一点的导数的绝对值是小于1还是大于1。因此导数大小的意义就是局部小区间在变换下的伸缩倍数。导数正负符号的意义是小区间是否反向,比如第二个函数在x小于0时导数也小于零,那么指向右方的数轴负数部分经过变换指向了左方。
2. 复数与平面变换
既然可以用上面的数轴-数轴对应来描述一维函数,那么类似地,就可以用平面-平面对应来描述二维函数。我们用一个复数表示平面上的点,用字母i区分纵坐标,就可以来研究复数函数的性质,其中。假设我们已经默认了复数的运算:
1)加法:
2)乘法:
3)极坐标分解:,其中r是复数代表的平面向量到原点的距离,是和横轴正方向的夹角。
拿出一个涂色的平面网格(从左上开始逆时针依次涂成红黄蓝绿色),把每个网点的像算出来,按顺序连起来,就可以来研究复函数了。
2.1. 复数的加法:
从图中可知,加法就是平面的平移,平移量恰好是那个复数对应的平面向量。
2.2 复数的乘法:
根据上面的运算法则很容易得到函数的二维对应关系是画在图上就是:
仔细看可以发现,各点乘以的效果是平面逆时针旋转了90度,也就是/2弧度。
各点乘以的后果是平面逆时针旋转弧度,这里是30度。
乘以一个一般的复数,就是把整个平面按它对应的角度旋转弧度,再均匀放大r倍。
因此,复数的加法就是自变量对应的平面整体平移,复数的乘法就是平面整体旋转和伸缩,旋转量和放大缩小量恰好是这个复数对应向量的夹角和长度。二维平移和缩放是一维左右平移伸缩的扩展,旋转是一个至少要二维才能明显的特征,限制在一维上,只剩下旋转0度或者旋转180度,对应于一维导数正负值(小线段是否反向)。
3. 复变函数与伸缩旋转
如果在每一个点处的旋转、放缩和平移量都不同(导数不同),就可以得到比较复杂的复数函数,举个例子:
3.1.
,从上一小节的知识可知,的cz作用就是把平面上每个点按自己对应的坐标放大ex倍、旋转y弧度。我们立即可以猜测这个函数在x较大的地方放大的倍数更多,因为放大率ex更大;在x轴上只伸缩不旋转,因为没有eiy旋转分量;在y轴上只旋转不伸缩,因为没有ex放缩分量:
1)请看左图中的横向中轴,它在右图中的像也是横向中轴,只不过左边压缩,右边扩展,这正是我们一开始就提到的一维指数函数。而这个图,恰好就是一开始那个数轴-数轴对应朝两边扩展形成平面-平面对应的结果。
2)再请看左图中的竖直中轴,它在右图发生了弯曲,贴在了单位圆周上,因此变成了一系列纯旋转的复数乘子。这一点在一维中可完全没有类似物,请谨慎类比。
3)其他点介于纯粹旋转和纯缩放之间。最后,请你回过头再仔细看看这幅图,你会发现这几段话也适用于图中的每个小正方形。小正方形变换前后的旋转和伸缩比例对应于函数的导数,本例中函数的导数就是原函数自己。
3.2.
1)加10就是整体向右平移10个单位,可以最后再看。
2)咱们来看w=z3,令z=rei0,可以得到:w=r3ei*30,这说明单位圆以内(r<1)函数压缩,单位圆以外(r》1)函数拉伸,离原点越远拉伸越厉害,正方形网格应该越来越大。
3)原正方形的四个彩色顶点的角度是135、225、315和45度,分别乘以3再取余360到[0,360]度之间变成45、315、225、135。因此正方形的像从左上逆时针看颜色从红黄蓝绿变成了绿蓝黄红。
图像也和上面的分析完全吻合:
举上面两个例子是想向大家展示伸缩和旋转是优雅地解释复数的有力工具。
4. 复变函数和小正方形
接着我们随便看几个复数函数对应的平面变换图像:
漂亮吧,但是且慢!为什么第二个函数图像比较丑?因为二维函数很复杂,有一小类二维函数的变量之间具有一定关系,导致的结果是虽然整体变换多姿多彩,但是如果只观察局部,这些函数一定把足够小的小正方形变成小正方形,不会压扁它或拆散它,只不过平面不同地方小正方形放缩和旋转程度不同。第二个函数就不属于这种特殊的函数类。
这种性质很好,图像很美的函数称为解析函数,它的变量之间的联系称为柯西黎曼方程,局部小正方形的放缩和旋转幅度恰好等于这个复函数在那一点的导数值(和第一段一维函数的原理极其类似,在那里一维导数用来刻画伸缩和左右方向)。简单的一维函数,可以唯一地向两边扩展成为对应的复解析函数。
如果把初始的正方形网格用极坐标进行参数化,解析函数仍然把小正方形变换为小正方形,与上图对应的图像为:
以后看到复变(准确地说是解析)函数,可要记得它们的本质是对平面局部做旋转和缩放,但保持小正方形形状不变。而一个复数就是一个能把平面进行均匀缩放和旋转的乘子。