《墨经》之后,沈括对推进光学的发展也作出了许多贡献。沈括是宋代伟大的科学家,撰有科学巨著《梦溪笔谈》。他被称为“中国科学史上的巨人”,他的著作也被称为“中国科学史上的里程碑”。
“日兆月,月光生,则成明月。”(《周髀》)可见,我国古代人在西汉前就已经知道,月光乃日所照。他们或者把日比喻为发光的“弹丸”,把月比喻为“镜子”,或者将月比喻为不发光的“弹丸”,并指出“日照处则明,不照处则暗”。(《尔雅义疏》卷五)沈括在回答有关日、月、形、体及月为何有光的问题时,肯定地说,“日月之形如丸”,“月本无光”,“日耀之乃光耳”。(《梦溪笔谈》卷七)同时他还指出,每逢月初,太阳在月旁边,因此人们见到月亮的光明部分弯钩;以后太阳离月亮渐渐地远起来,太阳变成斜照月亮,因此看到月亮逐渐变成一个圆。值得指出的是,沈括第一次以一个圆球模型来演示月亮圆缺的道理:将该球的半个球面涂上银粉,另半球是黑的。当人们正对涂银粉的半球观察时,光亮面正好是一个圆;当人们侧视它时,光亮面就如同弯钩。正是在沈括的这一演示实验的思想启发下,元初赵友钦以这种半明半暗的圆球证明月食和月象变化。而明代朱载堉又发展成两个圆球,让它们分别代表日与月,或代表日与地,或月与地,从而演示日食和月食的成因。
中国人对雨虹的认识也有很长一段历史。起初,人们观察到雨虹现象,只能是粗浅地记述着它的位置和形成的季节、条件。从唐代起,对虹的科学认识才产生了新的飞跃。唐人孔颖达(公元574—648年)指出“若云薄漏日,日照雨滴则虹生。”(《礼记注疏·月令》)张志和(公元约730—810年)还以“背日喷水”(《玄真子·涛之灵》)实验,实现小型的人造虹。这就是,背着太阳喷水,水珠在阳光照射下成虹。沈括以自己亲身对虹的观察,不仅肯定前人的有关结论,而且指出,只有顺着太阳照射的方向才能见雨虹,如果对着太阳看,烈日耀眼,就什么也看不到。(《梦溪笔谈》卷二一)在西方,类似唐代人的观察结论直到13世纪才见之史籍,比中国人晚了600余年。
沈括还极大地发展了《墨经》关于平面镜、凹面镜和凸面镜成像的知识,丰富了镜面成像的理论。
在比较平面镜、凹面镜和凸面镜成像规律时,沈括解释了照脸用的小镜为何要使其镜面微凸的原因。他说:因为微凹的镜子,成像是放大的;微凸的镜子,成像是缩小的。小平面镜不能把人脸面照全,微凹的镜子更不能看到人的全部面孔;所以制成稍凸的镜面,因其成像是缩小的,这样镜面虽小,也能把全部脸面照入镜内。古代工匠作镜子时要反复度量镜子的大小以便增减镜面凸起的程度,使人像与镜子大小相适应。这足以看出工匠们的聪明才智!(《梦溪笔谈》卷一九)
在沈括之前,曾流传一种谬说:塔影倒立是因为大海翻腾的缘故。这里的“塔影倒立”是指通过窗隙小孔的寺塔影子。沈括对此科学地解释说:鹰在空中飞翔,它的影子随鹰而移动,如果在鹰与影子之间有一小窗孔,那么光线穿过小孔时,影子的移动与鹰的飞行方向相反。即鹰往东飞,影子往西移;鹰往西飞,影子往东移。寺塔通过窗孔的影子,是倒立的,其道理与此相同,也与凹面镜成像的道理相同,这些都是自然界的一般常识。
关于凹面镜成像,沈括不仅重做了墨家做过的实验,而且还发现了凹面镜的焦点。在墨家之后,汉代成书的《淮南子·说林训》已定性地觉察到阳燧聚焦发火的那一点(即焦点)必须远近适中。沈括第一次明确地指出焦点所在。他说:“阳燧面洼,向日照之,光皆聚向内。离镜一、二寸,光聚为一点,大如麻菽,著物则火生。”(《梦溪笔谈》卷三)在这里,沈括清楚地论述了他所用的凹面镜的焦距长度和焦点大小。
沈括吸取前人的光学知识,对“红光验尸”的方法也有研究。当法官在判断死者属他杀,并在死者身上寻找证据时,他杀的痕迹并非一目了然。沈括记载了某些知县的断案经验:先以酒糟液(类似酒精的功用)或草木灰水(即碱水)擦洗死者皮肤,然后将尸体放于阳光照射的红色雨伞下,死者被鞭笞的痕迹历历可见。(《梦溪笔谈》卷一一)古代人的这种判案方法,被历代清廉的衙门官府采用,并在沈括之后又有所发展。从光学的角度看,这种方法所以能见死者伤痕,是因为红雨伞起了滤光片作用。太阳光透过红雨伞后,只剩红光,其余色光均被雨伞过滤除去。于是,伤痕的青紫色在红光照射反衬明显,就容易被看出来。
在沈括之后,宋元之际的科学家赵友钦对光学也作了重要的研究。他以一间三层的不漏光房间作为实验室,用点燃的上千支蜡烛作为光源,不仅证明光的直线行进的性质,而且正确地说明光源、光源与小孔的距离以及像三者之间的关系。在改变光源的大小与强度、改变小孔的大小以及改变光源与小孔的距离等各种条件下,实验地记录了这三者之间的光学效果(《革象新书·小罅光景》)。这是中世纪世界上最大型的有关小孔成像的光学实验。