几何的数与数的几何:超复数的浅探究
By 苏剑林 | 2014-01-11 | 60081位读者 | 引用这也是我的期末论文之一...全文共17页,包括了四元数的构造方法,初等应用等。附录包括行列式与体积、三维旋转的描述等。使用LaTex进行写作(LaTex会让你爱上数学写作的)
几何的数与数的几何
――超复数的浅探究
摘要
今天,不论是数学还是物理的高维问题,都采用向量分析为基本工具,数学物理中难觅四元数的影子。然而在历史上,四元数的发展有着重要的意义。四元数(Quaternion)运算实际上是向量分析的“鼻祖”,向量点积和叉积的概念也首先出现在四元数的运算中,四元数的诞生还标记着非交换代数的开端。即使是现在,四元数还是计算机描述三维空间旋转问题最简单的工具。另外,作为复数的推广,四元数还为某些复数问题的一般化提供了思路。
本文把矩阵与几何适当地结合起来,利用矩阵行列式$\det (AB) =(\det A)(\det B)$这一性质得出了四元数以及更高维的超复数的生成规律,并讨论了它的一些性质以及它在描述旋转方面的应用。部分证明细节和不完善的思想放到了附录之中。
视频演示:费曼的茶杯
By 苏剑林 | 2014-02-07 | 19190位读者 | 引用Project Euler 454 :五天攻下“擂台”
By 苏剑林 | 2014-06-27 | 28978位读者 | 引用进入期末了,很多同学都开始复习了,这学期我选的几门课到现在还不是很熟悉,本想也在趁着这段时间好好看看。偏生五天前我在浏览数学研发论坛的编程擂台时看到了这样的一道题目:
设对于给定的$L$,方程
$$\frac{1}{x}+\frac{1}{y}=\frac{1}{n}$$
满足$0 < x < y \leq L$的正整数解共有$f(L)$种情况。比如$f(6)=1,f(12)=3,f(1000)=1069$,求$f(10^{12})$。
这道题目的来源是Project Euler的第454题:Diophantine reciprocals III(丢潘图倒数方程),题目简短易懂,但又不失深度,正符合我对理想题目的定义。而且最近在学习Python学习得不亦乐乎,看到这道题目就跃跃欲试。于是乎,我的五天时间就没有了,而且过程中几乎耗尽了我现在懂的所有编程技巧。由于不断地测试运行,我的电脑发热量比平时大了几倍,真是辛苦了我的电脑。最后的代码,自我感觉已经是我目前写的最精彩的代码了。在此与大家共享和共勉~
上述表达式是分式,不利于编程,由于$n=\frac{xy}{x+y}$,于是上述题目也等价于求$(x+y)|xy$(意思是$x+y$整除$xy$)的整数解。
在讨论了倒立单摆的相关分析之后,胡雄大哥(笔者的一位好友)提出了一个问题:一根均匀杆,当然质量不可忽略,只有一个力(简单起见,可以先假设为恒力)作用在其中一个点上(简单起见,可以假设为端点),那么杆是怎么运动的?
其实笔者学了不少的经典力学,也分析了不少问题,但就是对于力矩、角动量等还是模模糊糊的,对于我来说,大多数经典力学问题就是“作用量+变分”,本题也不例外。为了让题目的实验意义更加明确,不妨将题目改成:
一根中性的均匀杆,它的一个端点带有一个点电荷,那么它(仅仅)在一个均匀电场中的运动是怎样的?
在这里,我们进一步简化,只考虑平面问题。杆属于刚体,为了描述杆的运动,我们需要描述杆上一点的运动,以及杆绕这一点的转动,也就是说,即使只考虑平面的情况,该系统也是有三个自由度的。设杆的带电荷那一端点的坐标为$(x,y)$,为了描述杆的转动,以这一端点为中心建立极坐标系,设杆的极角为$\theta$。设电势的函数为$U(x,y)$,因为只有一点带电(受力),因此势能是简单的。
炼钢.vs.做菜:淬火与过冷河
By 苏剑林 | 2014-02-22 | 40470位读者 | 引用除了数学物理和中国象棋,我闲时也喜欢弄一下吃的。看到各种菜料经过自己的加工变成佳肴,也是一件美不胜收的事情;有时看到同样的菜料能够做出不同款式、不同味道的菜时,更是其乐无穷。作为广东人,我很自豪于其中一句话:“广东人吃所有东西——天上飞的,除了飞机;地上爬的,除了火车;水中游的,除了潜艇”。虽然不免有些夸张,但这句话充分显示了广东人(或者说岭南地区)饮食和烹饪的强大本领。我的厨房技术来源于我妈妈,小时候妈妈在家里做菜,由于是烧柴草生火,所以我得在灶前看好火。于是看火之时也在看妈妈做菜,久而久之,也会学会了一些做菜的方法。而现在,妈妈仍是家里的厨房好手,而我也不时进入厨房,做做自己喜欢吃的东西。谢谢我的好妈妈!
炼钢
本文叫“炼钢.vs.做菜”,这两者基本上是风牛马不相及,不过我却发现它们有一点点相似的技巧。已不记得什么时候了,在一本自然科学的书上,我曾看到过炼钢的两种技术:淬火和退火(后来发现还有正火、回火等,原理类似)。简单来说,淬火是将一块钢铁烧红,然后放进冷水中迅速冷却(也就是加热到一定温度,然后迅速冷却),如此重复,便可使得钢铁变硬,但同时也会更脆;退火则刚刚相反,它是将钢铁烧红后,让它自然冷却(有必要时,想办法降低冷却速度),如此一来,钢铁变软了,也变韧了。正火、回火均与退火类似,只是在细节上不同。通过淬火和退火的适当组合,可以生产出硬度和韧度都适当的钢铁。
不求珍馐百味,但愿开水白菜
By 苏剑林 | 2014-03-15 | 41626位读者 | 引用一本对称闯物理:相对论力学(一)
By 苏剑林 | 2014-03-19 | 31184位读者 | 引用简单说说
笔者最近陶醉于从李对称的角度来理解力学和场论,并且计算得到一些比较有趣的结果,遂想在此与大家分享。我发现,仅仅需要一个描述对称的无穷小生成元和一些最基本的假设,几乎就可以完成地推导出整个相对论力学来,甚至推导出整个(经典)场论理论来。这确实是不可思议的,我现在能基本体会到当年徐一鸿大师写的《可畏的对称》的含义了。对称的威力如此之大,以至于我们真的不得不敬畏它。而在构思本文题目的时候,我也曾想到过用“可畏的对称”为题,但不免有抄袭和老套之嫌。后来想到曾有一部漫画叫《一本漫画闯天涯》,遂将“漫画”改成“对称”,“天涯”改成“物理”,似乎也能表达我对“对称”的感觉。
对称就是在某种变换下保持不变的性质,比如狭义相对论要求所有物理定律在所有惯性系中保持不变,这相对于要求描述物理定律的方程在匀速运动的坐标变换下保持不变,结合光速不变的要求,我们就可以推导出洛伦兹变换,从而完成地描述了狭义相对论里边的对称。然而,并不是任何时候都可以想推导洛伦兹变换那样,能够把一个完整的变换推导出来的。幸好,李对称的不需要完整的对称描述,它只需要“无穷小变换”(意味着我们可以忽略掉高阶项),对应地产生一个“无穷小生成元”,用这个无穷小生成元,就足以完整构建出我们所需要的物理来。这种“无穷小”决定“广泛”、“局部”决定“全局”的奇妙至今仍让我觉得不可思议。(关于李对称、无穷小生成元的基本概念,不妨先阅读:《求解微分方程的李对称方法》)
用PyPy提高Python脚本执行效率
By 苏剑林 | 2014-06-11 | 23719位读者 | 引用在《两百万前素数之和与前两百万素数之和》中,我们用Python求了前两百万的素数和以及两百万前的素数和,并且得到了在Python 3.3中的执行时间如下:
两百万前的素数之和:
142913828922
time: 2.4048174478605646前两百万的素数之和:
31381137530481
time: 46.75734807838953
于是想办法提高python脚本的执行效率,我觉得在算法方面,优化空间已经比较小了,于是考虑执行器上的优化。在搜索的无意间我看到了一个名词——Psyco!这是python的一个外部模块,导入后可以加快.py脚本的执行。网上也有《用 Psyco 让 Python 运行得像 C一样快》、《利用 psyco 让 Python 程序执行更快》之类的文章,说明Psyco确实是一个可行的选择,于是就跃跃欲试了,后来了解到Psyco在2012年已经停止开发,只支持到Python 2.4版本,目前它由 PyPy所接替。于是我就下载了PyPy。
最近评论