铰链四连杆-双曲柄机构等,使用geogebra演示

在机械入门的书里看到铰链四连杆机构示意图,其中一个曲柄做圆周运动,另一个曲柄做圆周运动或者在圆弧上的往复运动。在书里还给出了后一个曲柄做哪种运动的判断条件。但是不直观,毕竟静止的图片,如果点击一下能运动就好了。如果能一边改变机架、摇柄、曲柄的长度,一边观察,就更好了。在网上搜索了一番,有的要花钱,有的要注册,有的要观注。要搜索互联网的话,这几个部件的英文我不知道,而且可能搜索到以后发现被墙,或者网速非常慢。

一个这么简单的演示,自己做一个吧,用 geogebra。

1. 需求

下面的视频是用geogebra完成以后的效果,也就是最初想达成的需求。

有4个杆,在平面表示为4条线段,为相互区分,颜色分别为 黑色、绿色、红色、蓝色。这4条线段的长度在同一次演示/场景中固定不变,在不同的演示中可以修改。

黑色线段固定不动。

红色线段和黑色线段之间、蓝色线段和黑色线段之间,分别是铰链。铰链,在平面上表示为线段的一端可以绕着旋转的点。

红色线段和绿色线段的交点是个铰链,可以向其主动施加旋转动作,红色线段和蓝色线段的交点是个铰链,被动/受迫运动,运动的轨迹此时我们还不知道。

演示时,操作人员拖动绿色线段和红色线段之间的点运动。称这个点的主动运动。这个点这个点的主动运动轨迹受系统限制,该限制为 黑色线段固定、绿色线段和红色线段长度不变。

2. 分析 及 设计机制

在分析阶段,我们要讨论的是 4个杆/线段、4个铰链/点 所受到约束的 “形式化”表达方法。一方面,这个“形式化”表达方法 满足上述需求的业务逻辑 business logic;另一方面,这个“形式化”表达方法能够用 geogebra实现。

Geogebra 能够实现的功能为 a.菜单和按钮、b.命令或函数。我们需要选取其中一个子集,与这个“形式化”表达方法相对应,支持需求的所有业务逻辑。

2.1 如何表达A点和B点不动?

在平面上随意选取两个点就可以。因为这两个点的特征只有坐标XY,彼此独立,且并非由其他因素推演而来,因此演示中不会因为拖动某个点这一类的操作而发生变易。

因此,线段AB的长度不会变。

2.2 线段的长度不变

这里讨论的线段是 BC、CD、DA这3条线段。

我们可能考虑使用 每2个点确定1条线段。这个方法的问题在于,既要保证每两条线段间有交点,又要保证线段长度不变。在下图中,K和J需要是同一个点。

类似的,I和H、F和G是同一个点。那会是下图这样。

L和F如果是同一个点,如何保证线段LF的长度既是a.由杆长指定的,同时又b.两端分别接L和F呢?

上述问题可以归结为 两种类型的约束条件要同时满足,具体地说,线段长度这一约束和线段两两端点重合这约束要同时满足。

这个问题尚未解决,并且还有其他问题。线段AB长度的固定由A、B两个点固定得到,之所以可以这样实现,是因为A、B两个点在需求中就是固定的。但是其余的两点,需求是要运动的,因此不能固定,进而通过固定(除A、B两点外)点的位置来固定杆长,这一方案不可行。

实现方案之一是 用圆形,固定半径和圆心的圆。以A为圆心、AD长度为半径划圆,就能得到长度不变的杆。在演示中,杆长始终等于指定的半径。在不同演示中,可以修改半径得到不同杆长。

另一种实验方案是 用指定长度的线段。看起来似乎更直观一些,但是没有圆作为辅助线,杆长不变这个希望传递的信息就不那么明显了。因此我没有采用这一方案。

3. 实现步骤

本节给出用geogebra制作铰链四杆机构的实现步骤,最终效果如下图所示。

A和B是两个固定的点。

以B为圆心,指定半径r1画圆b,蓝色。

在圆b上任选一点C。

以C为圆心,指定半径r2画圆c,红色。

以A为圆心,指定半径r3画圆a,绿色。

圆a与圆c的交点为D。

以上既已建立4个点和4条线段间的约束关系。

为演示直观起见,分别连接 AB、BC、CD、AD。

命令或函数的过程如下。

为演示方便,可以隐藏部分元素的 label,和/或降低辅助圆的对比度。

4. 操作

用鼠标拖动点C(主动动作),显示D点的轨迹(被动动作),如下图所示。

得到如下图所示的轨迹。

在这个场景中可以看以D点的轨迹是圆。

加大AB的长度,拖动C点。观察D点的轨迹,可见其只是圆弧的一部分。无法越过DC和BC、AD和DC分别在同一条直线上的位置。

以上仅讨论了用 geogebra做演示,增加直观感受。双曲柄、双摇杆、曲柄遥杆的判定等,可以参见 https://www.zhihu.com/question/536225620/answer/2516112936

在这里有人问到模型,如下。本文即是。

5. 其他几个机构 曲柄滑块 等

随便找了个页面,

https://baijiahao.baidu.com/s?id=1707132353406255219

下文给出其中随便几个机构的录屏。根据录屏中辅助线(或根据原理)容易得到各元素间的约束和推演关系。

以下给出的机构包括 摆动异杆机构、曲柄滑块、插床机构、搅拌机1、搅拌机2,共5种。

6. 缺陷

与实物或(猜测)solidworks之类的建模工具相比,上文中的实现方案的缺点是,主动运动的点是固定的,不能更换成由动力来自某个被动的点。在下图中,某个场景中,只能拖动C点,D点无法拖动,因为D的位置是求取/推演得到的。

此文也发布在以下站点。
----
知乎 https://www.zhihu.com/people/yang-gui-fu-52

独立博客 https://younggift.net/

微信公众号 杨贵福
----
以下是我曾经发布博客的站点,有些旧文。
----
豆瓣 - 因为审核"我的日记",不再更新。
https://www.douban.com/people/younggift/?_i=0098558fqLUL9h

CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。
https://blog.csdn.net/younggift?type=blog

blogsopt – 因为从我的机器不可达,无法更新

科幻与我 之 识字以前

以下,是2024年12月16日晚在东北师大图书馆本部读书分享《科幻与我》的一段,感谢王文佳老师邀请。现回忆写成文字,投稿到河流老师的征文《我与科幻》,并发在我的博客上。

很久以后,我们才知道当初的某件小事的意义深远。读书经常给我这种感觉,读完跟没读一样。但是那一页不知不觉已经长久深刻影响着我,二三十年后的某一刻才突然知道,当时读得居然是它啊,怪不得。

学前我没有上过幼儿园,不认字。上小学之前,我爸教会我写“岳飞”两个字,还有我自己的名字。都是繁体的,其中的飞字我当时写得张牙舞爪,我爸评论“真飞起来了”。

不认字,当时也没有漫画,只有小人书,印象最深的有两本。一本是《英雄救日月》,也许西南一带,也许东南亚或南亚的民间故事。画风充满装饰意味,非常现代,色调黑白对比鲜明。故事是蛇妖偷走了太阳和月亮,英雄把它们救了回来,并且顺带把蛇妖一家灭门了的故事。我哥带我捞泥鳅的时候,我们把所有大小泥鳅都安排了角色,就是蛇公蛇母蛇祖蛇孙。这为我们涸泽而渔的行为赋予了正义的意义。另一本是《变法斗三仙》,西游记一整套里的一本,讲的是师徒四人和虎力大仙、鹿力大仙、羊力大仙斗法的故事。线描风格。有剖腹挖肝、在大锅里煮人这样的情节,还有人被虫子蛰从高台上掉下来。破烂流丢一口钟,也是这里的。那么多小人书,《铁腿红心》《人民医生李月华》内容都没多少印象了,偏偏记住这两本。可见少年天性,耽于幻想,长大以后看电影只喜欢打打杀杀看不懂情情爱爱,一直以来对现实主义的兴趣就不大。

也有些我爸读给我和我哥听的。家里还有半部《三国演义》,我爸从市图书馆借的《陈十四奇传》。后面这本是非现实主义作品,给我的印象比三国要浓烈。长期以来我常记成《陈十四传奇》,讲一位剑仙女士,名字叫陈十四,也许不是剑仙而是学了别的法门。性别不会错,总之很厉害。她和蛇妖斗争的故事。咦,为什么又是蛇妖?胜了。最后还剩了三寸蛇尾,居然也能兴风作浪,双一顿打斗。这位女士的儿子也有法术血统,剪了小纸人儿把他的爸爸从床上抬起来扔地上。这儿子的爸爸,也就是陈十四的丈夫,是个县官。

除了这些,还有我哥订的杂志。《看图说话》和《东方少年》,好像是这个名字,印象不深了。有个杂志叫作《智慧树》,其中一篇《钩吻》给我留下深刻的印象,我哥读给我听的。神农氏尝百草的报告文学版本,附图是那种很扭曲而有美感的画风,现在看也许从汉墓引申而来。神农氏最后尝到的草药就是钩吻,吃了以后他看不见听不到,肚子也疼。经过很多痛苦,痛苦的细节文中有写,也令儿童时代的我深受震撼。后来他死了。我的同龄人很多第一次知道钩吻,即断肠草,是从《神雕侠侣》里知道的。读到医生向杨过科普钩吻的时候,我心里想的是,这个我知道,你没救了。

除了这些,日常最容易接触到的阅读材料是 日历牌。不是挂历,有点像黄历,每页是单独的一天,平日黑色,星期六绿色,星期天红色。每页除了年、月、日、农历以外,下面还有三四行小字,科普常识。没有宜忌之类的。这是我科普阅读的开始,一直到初中,我姨家的妹妹还替我攒了不少等着给我。

我哥给我讲过狭义相对论。尺缩效应,在很长的街道上,以接近光速行走,长剑像铁钉一样短。人不能超过光速。我问,如果用一个小齿轮,套在另一个非常大的齿轮上。小齿轮转得接近光速,大齿轮不就超过光速了吗?我哥说,齿轮就爆了。这段对话发生在我小学三四年级以前,我哥初一以前。

以上这些,在我看来都是广义上的科幻。阅读,也只能接触到这样的狭窄范围。

除此以外,就是广播。中央人民广播电台,孙敬修老爷爷,“小喇叭开始广播啦,dadida”。通化人民广播电台,330米909千赫。听过不少广播剧,每个都不止一遍。《远山没有雪》,一对苦命知青在西南一带下乡,女青年后来成为东南亚游击的骨干,她一直介怀“远山没有雪”。一部忘了名字的广播剧,讲几个科技工作者在长白山采集气象资料。要过某个山口的时候狂风大作,大雨或大雪倾盆而下。一个女青年吓得大喊,“这座活火山是不是要喷发啦?”熊的吼叫。真由美和探员吓得尖声喊叫,“熊!”杜丘冷静的声音,“熊。”东京街头闹市区的奔马群,啦呀啦的歌声。真由美说,“这就完了吗?”杜丘说,“哪有个完呐。”还有温和的男中音讲《梦游天姥吟留别》。也许这是在我识字以后的事情了,不过,我一定是先听到后读到,因为“姥”字不会读错。还有讲《春江花月夜》的,广播剧提到雨果的。

广播里还有京剧,所以收音机本名戏匣子。京剧我一句也不理解,我姥爷甚是喜欢,我对他的喜欢也不能理解。学前在我姥家还看了不少电视,有相当多片断当时完全不懂,后来让我一拍大腿“原来是这个”的那种。

我记得的,大部分是“一个小男孩”开头,因为只能看懂这种。一个小男孩,为了挣钱为带到一个大城堡里。里面黑乎乎的,只有蜡烛。有个老太太穿着大袍,装饰繁复,在烛光下闪光一样。有个小女孩照顾老太太。老太挺吓人,小女孩也严肃得很。后来我读某本书的时候,感觉非常诡异,就是那种“我在哪里见过这个妹妹”的恐怖版本。我读过?没有啊。但是为什么有印象。直到后来慢慢回忆丰富,嵌入在十二寸还是九寸黑白电视里,一切才清晰起来。这是《远大前程》。

一个小男孩,被派为栅栏刷油漆,骗了一群小朋友替他刷。一个小男孩,带着一个大姐姐,陷在一个溶洞里。很多年以后读书时发现这是《汤姆·索亚历险记》。所谓大姐姐就是我当时的看法,类似我小学一年级,看到我们班主任把她家孩子带到班级,说“打预防针非常好,你们看我把自己孩子都带来了”。我们老师的孩子当时在我看来就是非常大非常能打的大姐姐。现在看,也就是初高中生。

一个青年倚在燃烧的巨大车轮上,用纸笔写着什么。衣着华丽,像中世纪的贵族。远处士兵们还在拼杀。似乎有炮声和马嘶。很多年以后,在《战争与和平》里我又一次看到了这一幕。

小女孩被送到她爷爷或者姥爷那里生活,用非常粗糙的毛市,洗脸盆是巨大的石头槽。远处有巨大巍峨的高山,我的印象里那是安第斯山或者落基山。都不是。后来跟二猫一起看电影的时候,我一拍大腿,“这个我看过!”是阿尔卑斯山,《海蒂与爷爷》。

当时居然有机会看到这么多名著。

还有,和丹麦的Lars教授和Anders教授聊起来老电影。他们的年龄都要比我大二三十岁那样吧。我们聊起《西部往事》,提到哥哥被坏人在脖子上挂着绳子,站在弟弟的肩膀上,后来弟弟撑不住,眼睁睁看着哥哥吊死了。按说,我小时候的年代,应该没有机会看到这部美国影片才对。但是情节完全对应,只能用看过解释。又过了十来年,有同事听我讲这个,告诉我,你看的是另一部,印度影片,也有这个情节。当时我有一种科幻迷遇到刘慈欣、燕垒生、宝树的感觉,他们什么都知道,你提个头儿,他就告诉你这个头儿的几个来源,然后就能讲下去了,涛涛不绝。印度影片,这就解释得通了,而且我可能是在电影院看了。这部影片的名字,我找到过,又忘记了。

后来,上学以后,就识字了。有市图书馆,小学、初中、高中,学校都有图书馆室。可以有更大的阅读范围。同学也识字,同学的家里也有很多书。

在于波、李国志、张海旭、赵志刚中某位同学家里,第一次看到《星球大战》,有人对主人公说“我是你爸爸”。我们画了不少设定,肚子里的三维指南针之类的,考虑它们的实现需要哪些技术。很多年以后在录像厅里第一次听到这段话,原来是这样的声音,在这样的场景。我久远以来的记忆,那些模糊得看不清样子的记忆,已经不知道与这真实的场景有哪些差异了。

在陈军同学家里第一次看到《星际迷航》,我相当长时间猜测外星飞船的名字是 维吉尔,古罗马诗人,看到最后才知道是Voyager,第一个飞出太阳系的人类造物。这本书沉在我的大脑深处,久无印象,看到看电影《星际迷航》第一部分。又是那种感觉,我看过这个。到了大揭秘的时候,我慨然长叹,是你啊,老友。

老友。就像莱茵哈特称呼齐格飞的那句墓志铭。吾友,Mein Freund。

那些机缘最终把我们引导到如今的这条道路上。很久以后的现在看来,宿命一般,虽然大家宿命的路线差异巨大,但是最终塑造成有机会相互阅读的彼此。

此文也发布在以下站点。
----
知乎 https://www.zhihu.com/people/yang-gui-fu-52

独立博客 https://younggift.net/

微信公众号 杨贵福
----
以下是我曾经发布博客的站点,有些旧文。
----
豆瓣 - 因为审核"我的日记",不再更新。
https://www.douban.com/people/younggift/?_i=0098558fqLUL9h

CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。
https://blog.csdn.net/younggift?type=blog

blogsopt – 因为从我的机器不可达,无法更新

船只侧倾时自动回正-用geogebra绘图

1. 目的

看机械入门的书里提到,船只侧倾时会自动回车的原则,是因为船受到的浮力在船重心的旁边,像个杠杆,形成的力矩会推动船只恢复到竖直的角度。还配了一张图,看起来就像作者说的那样。真是这样吗?

书上的图大致如下图所示,图是我用geogebra画的。

科学的特点是每个人都可以做实验证伪,如果有一次实验失败了(且不能解释),那么假说就是假的。如果没有实验条件,我们也可以在纸上推导,只要内部有一处矛盾,那么假说还是假的。有geogebra,我可以自己试试,很方便。

2. 技术原型

2.1 这一节是错的,承蒙李腾飞老师指出

我要做的包括(1)画船的剖面,从正前方向后看,计算船的重点;(2)水平线,计算船在水下部分的重心,即把船视为质点时的浮力,称为浮心。把两条放在一起考虑,我需要的技术原型是 求多边形的重心。

以下保留错误作为引文。

-----错误引文开始-------

https://glamas.github.io/geogebra_commands.html 查到求重心的函数,英文版是 Barycenter,中文版是 重心。手册在这里 https://geogebra.github.io/docs/manual/en/commands/Barycenter/

Barycenter( <List of Points>, <List of Weights> )

Geogebra给出的例子如下。

第一个大括号里是多边形的所有点;第二个大括号里是每个点的权重,这里我假设船体是均质的,权重都是1。

试一下。随便画几个点,求重心。

得到的图如下。

E就是求得的重点,位置看起来挺像重心的。

随便拖动一个点,例如A,换个位置。重心随之移动。

进一步验证重心是对的。

------错误引文结束-------

2.2 正确的做法

我望文生义,以为 barycenter 就是重心。

但是李腾飞老师说,你得看手册啊,“仅仅就是对点到列表加权求均值”。大意如此,不是原文。这正是我常跟同学们讨论时用的那句,RTFM。

手册在 https://geogebra.github.io/docs/manual/en/commands/Barycenter/,原文是“defined as the average of their positions”。加权平均,不是重心?

李腾飞老师说,“杨老师你想,如果我在一个对称图形的任意一侧边上加一个点,明显重心不变。但输到这个函数里,明显值就变了”。这反驳太有力量,以至于我哑口无言。如下图,在P,Q,R,S这个多边形非常靠近的地方加个点T,(物理意义上的)重心明显不变,但是barycenter这个函数的值,即加权平均,一定变了!

Barycenter,并不是我们需求的物理重心。

那么,重心用什么求呢?李腾飞老师告诉我,“用geogebra内置形心函数Centroid(Polygon(顶点坐标列表))可求的质心即重心。”

用法如下图中的示例,得到的点N即形心,也即物理的重心。

3. 步骤

那么开始做船吧。

第1步 画半边船

从前方向后看,画出船的剖面。为方便后续步骤起见,船不是竖直的,而是侧倾的。

随便4个点,看起来像船的半边即可,坐标不重要,所在在此省略。

第2步 关于船的中心线对称,得到船体剖面

画一条斜线,就是船的中心线。

做对称。选中船剖面的4个点A,B,C,D,对于直线EF做对称/反射。

得到下图。

连接所有点,构成船体的剖面。

第3步 求船体的重心

指令如下。前一版本错用了 barycenter函数,这一版已按李腾飞老师的指点修改过。

画出重心如图所示,其中点G就是重心。

随便改变几个点的位置,重点G随之改变。

A,B,C,D,F点可以主动改变,A’,B’,C’,D’不可以主动改变,只能被动由直线EF对称得到。

第4步 求船受到的浮力,即船体排开水的重心

根据阿基米德浮力定律,船体受到的浮力即排开船体排开水体的重心。

画水平面,求得水平面与船的交点。

蓝色直线HI代表水平面,与船体的交点是点J和点K。

求船排开的水体的重点,即 J,B,C,DF,D’,C’,B’,A’,A,K 的重心。前一版本错用了 barycenter函数,这一版已按李腾飞老师的指点修改过。此处有另一错误也蒙李腾飞老师指出,他告诉我“还有在帖子的第一种情况中,求排开水的形心的多边形时,误把A点包含进去,应以J点收尾”。这一版本已修正。

得到下图。

在上一版本中,由于(1)用错了求质心的函数,(2)点的序列错了,所以“浮心在重心的左边,这会继续侧倾,然后船就沉了!”如下图所示,接下来还做了讨论,以下作为引文。

----错误引文开始-----------

通过剖面上的点和对称轴,调整一下船的截图,再求一次船体与水平面的交点,再求重心。

这回看起来对了。

----错误引文结束-----------

根据李腾飞老师指出的,用形心函数、点的序列保证正确,当船体右倾时,浮心总在重心的右侧,形成的浮力矩总是倾向使船体回复竖直。并不存在我担心的侧翻情况。

即使侧倾至对称轴水平,船体旋转90度,回复力矩仍然存在。

4. 随便改改

随便改改参数,有利于提高我们对问题的感性认识——以及更重要的,提高成就感。

随便改变一下船体形状和侧倾角度,观察重点和浮心间的关系。

上图中,浮心K用以下多边形求得,由于与水平面相交的边改变了,所以把点L改为点M。

选中船体的多边形,关于重心旋转。如下图所示,绿色多边形是是粉色船体逆时钟旋转45度。

遗留的问题是,船体在重力和浮力的共同作用下,旋转会围绕哪个点进行?

隐藏标签,隐藏无关的元素,改变 caption。截图,标上箭头,如下图所示。

又一个遗留的问题是,重心来自的多边形 比 浮心来自的多边形 多一块面积,即船在水面以上的部分。同时,根据漂浮的船是静止的,浮力等于重力。问题来了,船体面积较大,排开水体面积较小,船体和水体面积不等,为什么分别对应的重力和浮力是相等的呢?

此文也发布在以下站点。
----
知乎 https://www.zhihu.com/people/yang-gui-fu-52

独立博客 https://younggift.net/

微信公众号 杨贵福
----
以下是我曾经发布博客的站点,有些旧文。
----
豆瓣 - 因为审核"我的日记",不再更新。
https://www.douban.com/people/younggift/?_i=0098558fqLUL9h

CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。
https://blog.csdn.net/younggift?type=blog

blogsopt – 因为从我的机器不可达,无法更新

十进制小数转二进制-方便手算或使用计算器的方法,及用Excel实现

1. 问题

十进制小数转为二进制小数点以后的部分,课本中的方法,是“乘2取整数”。做乘法次数相当多,直到小数部分为0,或者达到要求保留的位数。手算容易出错。

Excel和Windows内置的计算器都不支持小数部分由十进制转换为二进制。

本文提到的方法是从 https://www.instructables.com/Convert-Fractional-Decimal-to-Binary-Using-Calcula/ Convert Fractional Decimal to Binary Using Calculator!!! 学来的,适合十进制小数转换为二进制时的手动计算。用这个方法,也可以非常方便地用Excel或计算器辅助完成。

2. 方法

方法的步骤和基本原理如下。

要转换的数,我们称为d;

转换后要保留的二进制位数,我们称为p。

例如,我们要把 1.732转换为二进制,二进制小数点后保留7位。

这样 d=1.732,p=7

第1步 d * 2^p,在十进制内操作。

即 1.732*2^7 = 221.696

计算器支持这一计算。

手动计算的话如下式。因为在十进制内计算,所以比乘二除整的步骤要少,不那么容易出错。

上式用[http://www.xushanxiang.com/tools/mvg/]生成。

第2步 把上一步结果中的整数部分转换为二进制。

221转换为二进制为11011101。

计算器支持这一计算。或者除计算器外,这一计算也可以用除2取余法手动完成。或者这种较小的数可以逐次减去2的整数次幂求得,如下表。

2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
128 64 32 16 8 4 2 1
If(221>128) If(221-128)>64 If(221-128-64)>32
1 1 0 1 1 1 0 1

第三步 把上一步结果的二进制除以2^p,在二进制内进行。

11011101除以2^7。在二进制中,每位权重为2,因此除以2^7,即小数点左移7位。
类似十进制中除以10^3,即小数点向左移3位。

1 1 0 1 1 1 0 1 向左移7位,如下图。

得到1.1011101。

第3步的结果,就是要求的二进制数。

结果正确的原因是,第一步乘以2^p,第三步除以2^p,所以结果不变。

能够使用计算器的原理是,第一步乘以2^p,可以把所有将转换为小数的部分都变成整数,整数就可以用计算器来辅助了。

3. 用Excel实现

用这一方法制作Excle如下。

其中列A和列B,分别是要转换的数字十进制小数d和二进制的精度p。

列C对应上述步骤中的第1步,在十进制内乘以2^p。公式如下。

列D对应上述步骤中的第2步,按列B的精度把列C转换为二进制数。

拆分列D,分别得到整数部分列E和小数部分列F。公式如下。

4. 未尽事项

上述步骤中对小数部分做舍去处理,未讨论舍入,需要单独另行考虑。

有惊无险修眼睛

某天早晨刚开始吃饭,我感觉不对。这天上午有课,头一天备课只熬了一点夜,并不特别疲惫。感觉不对的是,右眼内侧偏上,能看到明显的黑色条纹,偶尔闪光。我揉了两下,转了几次眼睛,还在。左眼看不到条纹和闪光,所以并不是在现实世界中的现象。

我告诉二猫妈,“不好,我好像视网膜剥脱了。”

高度近视,从小的时候,就有很多医生告诉我,一定要注意观察这个现象。这是视网膜㓥脱的前兆,也可能已经掉了。高度近视导致眼睛前后径拉长、眼内压高,容易导致视网膜剥脱。要特别防范突然受力,所以各种球类运动、剧烈运动、打斗都非常危险。在成长的过程中,有很多人表达了不屑和鼓励要勇敢,我的态度都是“反正瞎了的话的又不是你。”

还有医生告诉过我更详细的,隔一段时间伸直双臂画圈,目视前方,单只眼睛用余光观察能否看到手掌。视网膜剥脱可观察的现象,最初是比边缘开始的。如果不特别注意观察,眼球一转,你就看到了,以为自己没事。

这天早晨我看到黑条纹和闪光的时候,不需要这些复杂的操作,现象过于明显。最近有两位前辈告诉我他们的眼睛做过手术了,玻璃体脱落之类的,都不止一次。还有同事告诉过我,视频网剥脱很难治,需要面朝下趴着,保持不动一个月还是三个月,一动就前功尽弃。他爸爸意志坚定,相当不容易,手术成功了。我自忖没有这样的意志。还听说,治好以后视力也会大幅下降。我现在这高度近视和弱视的程度,如果再下降,就不剩什么了。

二猫妈说,“上完课以后,别拖,赶紧去校医院查一下吧。”

我们就校医校的医疗设施讨论了一翻,我显摆了一下“查眼底”有一堆复杂的不同含义,讲了几种我见过的不同设备和手法。在讨论的过程中,我突然回忆起来某位医生的话,要快,要尽早诊治。刻不容缓。

这时,黑色条纹和闪光消失了。我反复确认,看起来一切正常。但是一定发生过,因为太清晰了,不可能是错觉。我看手机、读书、看显示器的时候,都用这只眼睛,刚好它能用了。赶紧利用这段时间向教务秘书、班长说明情况,请假。在班级群里发消息,请假,为影响大家的日程安排表达歉意。幸好我所在的学校更有人性一些,有的学校最近一段时间规定“因为专家在检查,因此不得调课”。

二猫妈说,“去医院你能坐公交吗?”我说,一点异常没事,完全是好人一个,我还打算走着去呢。冷,还是公交吧。

出发以前二猫妈就办好了挂号。到达,看到那一大排亭子都不见了,恍如隔世。我边上台阶边想,幸好不用预约不用检测核酸,进门的时候也不需要……不然得耽误不少时间。

排队时间不长。医生问我,你怎么了呢?我说,我怀疑我视网膜剥脱了。医生明显楞了一下,问,你为什么这么想?我把现象讲了一遍。她问,你高度近视吗?我说,是。多少度?我说了。她说,嗯。

用诊室里的机器检查第一轮。视野里一个挺晃眼睛明亮矩形,转来转去。查眼底的,我见识过。我复述黑条纹和闪光的位置,医生把光打到那里一顿看。

医生说,“看不出来。”开单子,交钱,排除,第一轮检查。吹风测眼压的,我见识过。还有眼睛的B超还是彩超,我没做过,跟肚子上和脖子上的彩超差不多,只是抹粘液和探头都是在眼皮眼珠子上,当然隔着眼皮。还有一项,忘了。都不疼,印象不深。

一会儿结果出来了,拿去给医生看。中间还有不出结果,需要找工作人员沟通的。他们显然很熟悉这种情况,告诉去哪儿哪儿,仅稍微波折一下就拿到结果了。

医生说,“看不出来。”记不清了,印象里开了一些单子,又查了些不疼的项目。这时病人多起来了,座椅很快就没有空的了。病人大多是小孩儿,感觉像配眼镜来了。只有一个人,他的一只眼睛失明好几年了,被钉子还是什么扎的,诉求是眼皮有点杀,希望解决一下。医生说,你都感染成这样,眼皮杀根本就不算什么大问题。

没有座椅,二猫妈又感觉特别累,排队的时候甚至要靠墙蹲一会儿。事后我们回顾,她说,当时就觉得不对,为什么要一查再查。感觉心力交瘁,极度疲劳。当时我的看法是,啥事没有,只是因为我描述得过于清晰,而且高度近视,不排除风险医生不敢放心。再说,反正检查又不花医生的钱,多查查呗。二猫妈的看法是,不好,有危险,不然为什么查个没完,如果没事不会查。她说,虽然觉得也没什么大不了的,最多就是瞎了而已,日子怎么也是过。二猫后来评论,你的身体仍然害怕了,这部分是理性以外的。

医生又看不出来,但是没有放过我,告诉我去哪个房间,找某某医生。去了,又说了一遍现象。这位医生开了单子,给我散瞳,15分钟以后告诉去某某地方检查。

去了,比诊室壮观多了,一堆设备脸朝外。我说了看到的现象。医生掏出个小瓶,说抬头滴眼睛。我说刚散完瞳,15分钟。她说,不是散瞳,这是麻药。

一顿查。这次,雪亮雪亮的!简直就要亮瞎我的眼睛。我知道散瞳会导致瞳孔不能收缩,但是切身感受过于刺激。医生不停地告诉我,别躲,别往后退。我也想,可是由不得我。就像上课睡着了一下,醒过来的时候才发现。每次都是医生提醒我才注意到,已经把脸撤回来了。

医生看了一会儿,说,等会儿让某老师给你看一下。我心想,真认真啊。二猫妈当时不知道在想些什么,肯定更坚定有毛病了吧。

等了一会,老大夫来了。我又讲了一遍看到的现象。他说,你有这个意识很好。

看了一会,当然我又一顿躲。他说,有个孔。然后同时告诉我和年轻的医生,我同一只眼睛的同一位置,以前裂过一个孔,我当时没注意到,长上了,留下了个瘢痕。年轻医生先前看到了,不能确认的,是那个疤。

问我,你昨天剧烈运动啦?我说,没有,完全没有,我昨天一点也没运动。问我,平时练?我说练,天天练。问我,练什么?我说,自重训练。然后解释了一下,引体向上、俯卧撑、倒立。医生说,就倒立整的。我说,我昨天没倒立。他说,以前倒立整的。以后别倒立了,引体向上、俯卧撑可以练。

又回到第二位医生那里。二猫妈问,需要住院手术吗?医生说,手术?不用。

她说,你今天有事吗?我说,有啊,心想,上课吗,现在已经没了。她说,没事的话,你快点交钱,还能赶上午饭以前做上。医生们用的措辞就是“做一下”,还提到了激光,不是焊,不是修,也不是某个专业术语。不是什么大不了的事儿,不值得专门严肃地讨论它,医生说手术不用的时候,表情就是“啊呀,多大点个小事”,差不多就是“穿个耳朵眼”“激光点痦子吧”的感觉。后来我在网上查,术语可能是“视网膜激光光凝术”。

开票,交钱。迅速就位,医生果然还没去吃饭。那一大堆设备也没吃饭,面朝外严阵以待

又查了两下,还是晃眼睛,我又不由自主地躲。医生说,开始了啊,有点疼。我看看设备,怼着脸等我眼睛凑过去。我想起了一个老同学,他学兽医,给我讲过骟牛的时候如何把牛绑定,那个架子多坚定,牛多么有力。然而此时我关注的重点不是这些,只想起了王小波写如何锤。我说,你等会儿,我是不是得抓着桌子啊。医生说,有家属吗?我说,有。医生说,喊进来按着点。

好。喊二猫妈进来,医生说,从后面按着点他脑袋,别让他躲。对,就这么按。

我把脑袋用力抵在设备上。开始了,绿色的光辉,贼亮。疼!这根本不是“有点疼”,不是十级,也有八九级。而且不能躲。绿光断断续续,我躲开的时候医生就淡然告诉我再回来。二猫妈的手没啥用,我稍微一用力就挤开了,主要靠自己往前顶。

中间实在忍不住,我嗷一嗓子。医生说,吓我一跳。语气还是很淡定,然后他就开始和同事讲段子。我想起了治牙的时候医生和护士讲段子,当时我还想,你怎么这样呢。现在明白了,分散病人的注意力。

我一身汗的时候,医生说,再忍忍,还有两分钟了。我想起了keep里的教练,她就常说“最后五秒”。也回忆起了当我听到这句话时,我骂得多么恶毒。好在医生言而有信,与有些牙医大不相同。牙医经常说“快了快了”,然而根本没有很快。“有点疼”这句,他们差别不大,那是非常疼,特别疼。

后来有同学问,为啥不用麻药啊。我后来也查到,如果我没查错的话,视网膜激光光凝术可以用麻药。然而当时我完全不知道麻药这回事,而且以为只是“有点疼”而已。如果有麻药,估计不是之前滴我眼睛那种,那个应该是不断翻我眼皮免得我挣扎用的,应该不会麻醉到视网膜那么深。

结束了。我确认了一下,没了,结束了,好了?医生说,对,就这样,结束了。肌肉才放松下来,我怀疑脸色煞白。一个月后复查,我相当怀疑到时候有没有勇气坐在那设备前面。

我说,还疼。医生说,得疼一阵儿呐。

按栈弹出,后进先出。回到第二位医生那里。二猫妈说,要注意啥?医生说,别开车,因为你散瞳了。散瞳看不清东西我知道,现在被晃得跟瞎了差不多,那只眼睛一片阴影,只能闭着。二猫妈问,还注意啥?医生说,别用手机,别看书,一个礼拜。

再回到第一位医生那儿,她又用诊室的设备一顿查。她说,因为玻璃体浑浊太严重,所以把裂孔挡住了,先前不能确认。她指着检查结果的某个片子问,这里以前是不就这样。那里一片星星点点。我说,我看不懂,不过玻璃体浑浊飞蚊症挺严重的。她说,别用手机,别看书,一个礼拜。做这个激光是有点疼。

“有点疼”不止当时,一直持续到傍晚。吃了止疼药,可以忍受,睡觉。晚上药劲过了,又开始疼,睡觉。第二天一早,完全不疼了。

回家用好眼睛发了朋友圈,别微信我,看不到。给我妈打了电话,说看了我朋友圈别担心啊,啥事没有。后来又有好友电话询问,提到,你现在是不是像海盗一样独眼龙戴个眼罩。我突然想起来了,又给我妈打了电话,解释了一下,完全没有外伤,没有眼罩,看着和正常一样。只是需要修养而已。我妈问,怎么整的呢?我说,没原因,啥也没干,高度近视就容易这样。知道这个知识几十年以后才用上,已经很幸运了。

等到复查,就没事了。猜测不少同学看了朋友圈以后,对事件的经过很好奇,所以,我写出来吧。以后谁想知道,我就把博客发给你。

十进制小数转二进制,用Excel实现

不借助现成工具,亲身手动解决是加深对问题理解的不二法门。不过,有时候重复繁琐的步骤真是令人厌烦。这时既手动又自动的方法,是按手动的方法写个工具解决,而不借助现成的工具。

例如,十进制小数转二进制。(0.5)dec->(0.1)bin手动的方法在计算机导论、数字电路课里都有,这个方法的名字叫 乘2取整。课本里有,在此不赘述。

Excel 中没有函数可以输入十进制小数给出二进制。在这里,我们按手动解决的过程,用Excel求十进制小数的二进制。

1. 效果演示

其中第二行中的0.14是输入的十进制小数;

第三行是输出的二进制小数,每个单元格对应二进制小数的一位。

如果我们想换个十进制小数,例如 2.718,那么修改0.14为0.718,二进制小数的每一位会自动更新。

如果我们想要二进制小数点后更多位数,那么把最后一位的两列向右复制。

验算操作是 复制第三行(取整)中所有二进制小数位,在第五行(小数进制|验算)选择性粘贴为数值。

验算的过程在下图的最下面三行中。

验算结果在最底一行(转十进制)中,0.7179……,由于精度不足所以有误差。

通过第三方工具交叉检验,https://www.inchcalculator.com/decimal-to-binary-converter/,如下图所示与上述Excel工具的结果一致。

2. 公式

自行制作这个Excel的步骤很简单。

模仿课本里的手动方法,乘2、取整两步。

乘2 这一行,除第1个数即输入的十进制小数,
其余每个单元格的公式都类似“=IF(D2<1,D2,D2-1)*2”。

其中,D2是当前单元格左侧的那个单元格。

这个公式的含义是 把左侧的单元格乘2,即 乘2操作。稍微有点细节需要考虑,乘2取整法要求每次运算都舍去整数部分。在这里,考虑最大的小数为0.9,乘以2以后为1.8,因此整数部分不会大于1。进一步,整数部分只有两种可能,1或者0。如果整数部分为1,那么减1以后再乘以2;如果整数部分为0,那么把小数部分乘以2。

以上是 乘2 这一步。

取整这一步,每个单元格的公式都类似“=IF(E2<1,0,1)”。

其中,E2是当前单元格同一列上一行的那个单元格,即乘2以后的结果。

这个公式的含义是 如果乘2的结果小于1,那么整数部分为0;否则整数部分为1。

复制这一列的两个公式,粘贴到右边的每一列。粘贴列数的多少,取决于你希望有转换时精度达到何种程度。

验算有两个公式,即 按权相加 的两步。

其一是 求每一个二进制对应的十进制权重,所谓“按权”。

其二是 对所有位求和,所谓“相加”。

这样,就可以用Excel完成十进制纯小数转换为二进制了。任意小数的整数部分,可以单独手动处理,用计算器、Excel都容易完成。

3. 开发过程及考虑

初学程序设计,对编程思路不熟悉,或者对excel不熟悉,看了上面的公式可能会有挫败感。“你怎么一下子就把这些写出来了,我做不到啊。”

有人确实能做到,你做不到也不需要焦虑,我也做不到。我并非一步写出来的,过程如下。看了步骤你就会发现,我很笨,连我这么笨也能写出来,你当然也没有问题。

第1步

这里没有任何公式,只是把架子搭起来。你可能觉得,这有啥啊。反正我每次搭完架子,写完main函数,都要反复看一会儿,自矜半晌。这个架子提示我以后哪个变量要放在什么地方。右边的那些,不是截掉了,而是最初根本就没有,反正要用公式复制粘贴算出来的,现在写上,只是影响我的注意力,降低我的自信心而已。

第2步 乘2

啥东西乘2呢?所以,我要先写个十进制纯小数,并且先验地知道它的结果。位数还不能太少,不然检测不出bug。

就0.718吧,找个工具算一下。

在运行我写的每个程序以前,我对它的结果一定是有预期的。运行的目的不是探索“会是什么结果呢”,而是要么符合我期待的结果,我的程序可能没毛病,要么与我期待的结果不同,那么程序肯定哪里错了。

我输入0.718,乘2(再取整的)结果一定是1011才对。

下图中,0.718是我输入的,待求的十进制小数。公式,就是乘2,没有最后结果那么复杂。

我扫了一眼,乘2乘得不错。你可能看出来了,我没有减1,但是当时我并不知道——而这,也没什么影响,我们不必一蹴而就。遇到问题,解决就是了,等遇到问题再说,眼下我还没看出来。

第3步 取整

如下图所示,我给了公式 对同一列上一行 取整。取整的这个函数,是我 bing 搜索到的。关键词当时用的什么不确切地记得了,大致是“excel 取整”。此时如果你不知道 floor, ceiling, round 这些区别,可能这里会纠结一会儿。无妨,即使不知道这些,如果发现问题了,换个公式就是,后面会换的。

这时,我会发现个问题,这也是程序为什么需要 调试 的原因。

这工作马上就完事了,乘2么、取整么,一共就两步,所以就完了。当任务“完成”以后,或者说每次认为完成以后,需要检验是否符合目的。我的目的是把——我跳到标题复制来的——十进制小数转二进制。目标是二进制。但是在结果里出现了2及2以外的数,按说只应该有0和1才对。

第4步 调试-修改

为什么结果里有2,那是因为同一列上一行的那个数字的整数部分就是2。
为什么结果里有5,那是因为同一列上一行的那个数字的整数部分就是5。

所以,取整 没有问题。那么问题出在 乘2里。

我可能需要查一下课本。你可能更厉害,连课本也不用查,就意识到,“乘2”不对望文生义,根据课本中的叙述,乘2这个操作的输入不是上一次的结果,而是上一次的结果取出小数部分。我漏了取出小数部分。

怎么取出小数部分呢?这是比刚才所有讨论更细节,因此也更微小的问题。你可以用完全和我不同的手段,比如求余(求模),转成字符串然后找小数点再分割……无所谓好坏,顺手就行。别忘了,这是个微小的问题。是的,我作为教师可能会PUA你,有更好的方案。然而,为什么要追求更好,什么指标才是更好,就这么十几二十几位数字有性能问题吗?可维护性好不好有那么重要吗,这个技术手段用于一个可抛弃的学习用的工具,而且已经把这个技术手段隔离在这个单元格中了,不会污染其他的部分。最关键的是,这个问题它微小,对全局的技术路线没什么影响。

我把公式改为 =IF(C2>1,C2-1,C2)*2

我还查了一下excel中的if这个函数的参数。第一个参数是逻辑判断的条件,如果为真那么返回第2个参数,如果为假那么返回第3个参数。

复制这个公式,粘贴到 乘2 这一行的其余单元格。好像又很对的样子,根据下一行 取整 的结果。

看起来对了。

你可能不放心,取整 那行公式对不对啊。不知道,而且和我的最终版本不一样。如果增加信心呢,多测几组数据。如果这些数据有代表性,那就更好了。如果有代表性,是个巨大的问题,此处无法展开。也可以“尽力而为”地测几组数据,出了问题——再说。

我测了 0.14,0.718,与交叉检验的结果都一致。

又测了0.01234,结果太糟糕了,全0。我不知道转换的结果是什么,不过肯定不是全0。

为什么呢?噢,因为精度不够。

复制最后一侧,向右粘贴。

很像对的样子,不是全0了。

交叉检验,果然很对。

你可能发现了,第一行后面的数字是错的,我复制并粘贴了“4”。后来我改了,在此不再截图。

4. 补遗

验算,不是标题“十进制小数转二进制”的一部分,因此它的公式怎么一步步改出来的,略去。

我还顺手做了个十进制整数转二进制。

二进制从右往左读。

公式1 除2

公式2 除余

公式3 费了不少步骤,只是为了练习、学习或者手痒,Excel内置了整数十进制转换为二进制的函数。

此文也发布在以下站点。
----
知乎 https://www.zhihu.com/people/yang-gui-fu-52
独立博客 https://younggift.net/
微信公众号 杨贵福
----
以下是我曾经发布博客的站点,有些旧文。
----
豆瓣 - 因为审核"我的日记",不再更新。
https://www.douban.com/people/younggift/
CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。
https://blog.csdn.net/younggift?type=blog
blogsopt – 因为从我的机器不可达,无法更新

伊通河的红嘴鸥

有一天坐校车路过伊通河,看河面上一片白点。再看,像水鸟,还有的扇动翅膀正横过空中。赶紧掏出手机拍了几张,放大看,果然是白色大鸟,翅膀张开的样子像海鸥之类的。

仓促之间拍照,没有一张清晰的,放大也很模糊,还有车窗的反光。

发到朋友圈。不一日,同事LDZ老师在群里喊我,之前我发的伊通河水鸟,可能是红嘴鸥,附了一张照片参考。

后来查到,央广网也报道了,https://jl.cnr.cn/ztgz/20241030/t20241030_526957965.shtml。提到2015年开始治理,2019年有红嘴鸥等大量野鸟栖息。印象里,隐约记得这几年见过估计是红头鸭的,不多。

以前只知道候鸟南迁要途经吉林市,因为有大湖大河。偶尔还有报道迷路到了集安、长春的。

又不多久,前辈YK老师问我,是不是去滇池越冬的红嘴鸥,附了一个链接。链接的页面里有不少清晰照片,大鸟在空中特别近距离掠过。滇池水体巨大,望不到对岸,大海一样。空中满眼都是远远近近的白鸟,蔚为壮观。

看到一段文字“在湖岸安家筑巢”,突然我就不审美不浪漫了。哪不对呢?据我所知,鸟类只有在繁殖期才会筑巢。巢是为幼雏特别提供的场所,在越冬地的是能长途跋涉的成鸟,按说不该有巢才对。

那么,需要讨论以下几个问题。1.红嘴鸥的繁殖地是哪里,会不会是滇池。2.红嘴鸥的非繁殖期会不会也筑巢。3.伊通河的红嘴鸥与滇池的是同一品种、同一批吗?顺便,它们的迁徙路线和时间是什么样的?

物种库 http://museum.ioz.ac.cn/species_detail.aspx?id=19266 没有提到这些问题。不过有别的信息。长40厘米左右,翼展1米左右,真大啊。拉丁名,回头用于去维基百科。提到第一冬鸟,后面没提。可能成熟需要不止一年。

对滇池当地和红嘴鸥的报道,还是央广网,https://china.cnr.cn/gdgg/20231119/t20231119_526491686.shtml 提到 “从2~4岁时,红嘴鸥就开始繁殖”。所以第一冬鸟时还是毛头小子小丫头。这些与主题无关,只是有趣。提到了时间和地点,“红嘴鸥每年11月下旬到次年3月下旬在昆明越冬,4月初时又飞到蒙古国西部、俄罗斯贝加尔湖地区和北极圈内等地繁殖后代。”在北方繁殖。还提到“红嘴鸥的数量从1984年的2000只,阶段性跳跃式地增长至2021年的44000只。其中,少部分红嘴鸥不再离开滇池水域进行迁徙,但也未见在滇池筑巢繁殖后代”。有的成为了留鸟,不再迁徙,但未见筑巢繁殖。提到当地政府投入力量环保。还认为未筑巢可能因为人类溺爱,似乎暗示日子过得好就不需要鸟巢了,我怀疑想多了,可能仅因为不在当地繁殖。

这里有张分布图,https://baike.baidu.com/item/%E7%BA%A2%E5%98%B4%E9%B8%A5/698557

为清晰起见,我复制过来。

可以看到,标注(原产地)的,包括东北,粗略看起来长春也在边缘。在滇池,差不多是身为旅鸟或者视作非繁殖地越冬。不仅如此,凡太平洋海岸线附近,整个中国、朝鲜、日本、东南亚,都是非繁殖地。南南亚岛屿和大洋洲的北部岛屿也有存在。所以,不难断言长春伊通河的红嘴鸥是不是就是滇池的,甚至不能断言滇池就是迁徙的最南端,也可能只是经停。

跨大西洋两岸,加拿大、格陵兰鸟、欧洲、红海、阿拉伯海沿岸、印度西岸、青藏高原以南也有分布。不过那些和滇池的,看起来不是同一批。

云南对当地的红嘴鸥做了标记,观测离开昆明以后的迁徙路线。https://www.sohu.com/a/42676719_115092 提到发现了3条路线。从这里看没有经过东北的。其中若尔盖湿地似乎就是红军长征所过草地。

http://km.bendibao.com/tour/20221012/66018.shtm 则提到“ 迁徙新路线  发现了一条往东北方向去的一条红嘴鸥的迁徙路线,从昆明出发到了黄河,然后到东北停歇,然后继续往东北方向,到达了俄罗斯,有4000多公里的直线距离,飞行比较长的一只红嘴鸥,它一共飞行了8000公里。”这一段话中提到三次“东北”,其中两次为“东北方向”,指的当是角度,另一次是“到东北停歇”指的当是“东北三省”。提到有条路线过滇池后翻越喜马拉雅山去了缅甸。

https://baijiahao.baidu.com/s?id=1783138058708100450,提到筑巢时间。“每年的4到6月是红嘴鸥的繁殖期,红嘴鸥通常在地面上筑巢”。按前文对迁徙时间和地点的资料,那么此时在北方,不在滇池。虽然在北方筑巢并不能断定在滇池就不筑巢,但是如果红嘴鸥如果和一般鸟类相同,只在繁殖期筑巢的话,那么4~6月繁殖结合迁徙时间和地点可以得出结论在滇池不筑巢。同一文章,也提到了在昆明即滇池筑巢,“昆明周边的湿地和湖岸地也为红嘴鸥提供了理想的生活居所。这些地方有大片的芦苇荡和湖中岛屿,为红嘴鸥提供了安全的筑巢环境”。

用拉丁文名在维基百科 wikipedia 查,重定向至 Black-headed_gull 黑头鸥,这是红嘴鸥的别我。有一段文字,“It breeds in colonies in large reed beds or marshes, or on islands in lakes, nesting on the ground. Like most gulls, it is highly gregarious in winter, both when feeding or in evening roosts.”在陆地筑巢。在冬天成群活动,进食或夜晚……此处用了个词 栖息。这可以作为旁证,红嘴鸥在夜晚栖息时,并不需要巢。

综上,在滇池“筑巢”的说法,我怀疑是比喻义。一般鸟类只在繁殖时才筑巢,没有找到红嘴鸥例外的说法。红嘴鸥在北方繁殖,在南方途径或越冬。所以,在滇池应该不筑巢。

红嘴鸥向南迁徙的范围非常大,整个中国的东部沿海、东南亚、大洋洲都可能是目的地。包括滇池。滇池可能部分红嘴鸥的途经地,也可能是部分红嘴鸥的目的地。长春伊通河的红嘴鸥,可能与滇池的是同一只,也可能不是同一批。

读到这里,你会不会有点遗憾?可能会想,原来红嘴鸥的故乡、娘家不是滇池啊,原来有的还会跑到国外(无论向南还是向北,无论繁殖地还是越冬地)去啊,原来欧洲也有不是特有的啊,原来……

红嘴鸥的出现,至多能一定程度上得出结论,生态环境好转。因为“我们盖上了大工厂”十有八九不会引得“燕子为啥来”。还能得出结论,市民友好有利于红嘴鸥出现。滇池距离昆明市区只有5公里,所以市民非常容易到达。如果不够友好,杀死或猎捕或虐待都会使得红嘴鸥跑远,毕竟这家伙每天可以飞150公里。滇池距离市区近,可能也是大家会关注,有那么多照片的原因。滇池距离市区,我也没有看到就相信了,而是查证了一下,用百度地图量了两个距离,作为与网上信息的交叉验证。

对红嘴鸥的进一步拟人化,在哪里筑巢、安家、当作娘家,所谓引喻失义,再发展就是数地争当红嘴鸥故乡,并作为证据表明哪里是最好的地方,近而表明我热爱这片土地,我才是真正的东北人。

再发展,就是云南的朋友骂我,“杨老师你看你这不好吧”。万一滇军来问罪,我会把最近读到的一段文字发给他。

雷海宗在《中国文化与中国的兵》说了下面一段。

----引文开始---中间有省略----

北京猿人发现之后,有些夸大习性未除的国人更欢喜欲狂,认为科学已证明中国

历史可向上拉长几十万年。殊不知这种盗谱高攀的举动极为可笑,因为北京猿人

早已断子绝孙,我们绝不会是他们的后代。由史学的立场来看,北京人的发现与

一个古龙蛋的发现处在同等的地位,与史学同样的毫不相干。据今日所知,旧石

器时代

但不见得某一地的新石器时代人类就是同地后来开化人类的祖先,某一地的新石

器文化也不见得一定与同地后来的高等文化有连带的关系。因为我们日常习用

“中国史”“英国史”“欧洲史”一类的名词,无意之间就发生误会,以为一块

地方就当然有它的历史。

由自然科学的立场来看,地方也有历史,但那是属于地质学与自然地理学的范围

的,与史学本身无关。地方与民族打成一片,在一定的时间范围以内,才有历史。

民族已变,文化的线索已断,虽是同一地方,也不是同一的历史。这个道理应当

很明显,但连史学专家也时常把它忽略,无论在中国或西洋,“上古史”的一切

不可通的赘疣都由这种忽略而发生。所以关于任何地方的上古史或所谓“史前

史”,即或民族文化都一贯相传,最早也只能由新石器时代说起,此前的事实无

论如何有趣,也不属于史学的范围。

----引文结束---

以上对于事实的讨论万一错了,你刚好知道,万望告诉我,我好纠正。多谢!

此文也发布在以下站点。

----

知乎 https://www.zhihu.com/people/yang-gui-fu-52

独立博客 https://younggift.net/

微信公众号 杨贵福

----

以下是我曾经发布博客的站点,有些旧文。

----

豆瓣 - 因为审核"我的日记",不再更新。

https://www.douban.com/people/younggift/?_i=0098558fqLUL9h

CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。

https://blog.csdn.net/younggift?type=blog

blogsopt – 因为从我的机器不可达,无法更新

好工具 | 词源

最迟在大学入学以后,老师就告诉我们背单词需要看字根。更早,老师可能也说过。弟子不肖,没记住,除了 -ful, -ness 几个简单的。一想到 -ly 既可能是形容词,又可能是副词,我就绝望地想,这有啥用啊。更何况,词性,在阅读的时候根据上下文做简单地语法分析就可以猜出来了,为什么要特别记住呢,一点儿也不提供更多的信息。写作时,如果有word或 grammarly 之类的工具,会自动更正。更难的,像 German 和 Germany,哪个是德国人,哪个是德国,我都分辨困难,这事儿词根有啥用。

有用。不过,有用的不是字根,而是词源。

网上有人提到,德国Germany,很可能源于Germania日尔曼尼亚。以下是我瞎发挥的。所以你看,什么什么尼亚,是地名。例如 坦桑尼亚、罗马尼亚。说不定Germany就是Germania日尔曼尼亚的亚字去掉了,读作“日尔曼尼”。这是地名。另一个就是那个地区的人了,German。

词源到哪里去查呢?

1. 高山字根 APP

有个 高山字根 APP

http://www.dicts.cn/dictword20181/download.html 下载。

输入一个单词,可以给出这个单词 根据词源,能拆成哪几个词根。如果仅止步于此,与-ful, -ness 这种词缀的区别还不大。还会给出词干部分的来源,以前我的困难是,这些词干我大多不认识。不认识,就像文章中的某个词,并无定义,或者用法与定义无关——例如,赋能、抽象——读起来可真是困难。

2. 童哥说单词

刚好,就某个单词的词源,我有过困惑请教作者。他告诉我,那个单词的词源是有所本的,来自《童哥说单词》。这本书将近2000页,可当词典用。例如,有一条是这样的。

如果我要查的是 leechcraft,分解为 leech-craft。Craft我认识,有帮助;但是leech我不认识,啥用没用,跟硬记乱码没多大区别。但是,这本书说,leech是水蛭。这我就知道了。我知道,(1)在 p2p bt 下载中,只下载不上传的人,就叫作 leech;(2)华盛顿就是被西方传统医学放血疗法治死的,地狱笑话被lecchcraft治死的;(3)湖南一带曾经有过严重的血吸虫病,蚂蝗/水蛭(确实是同一种东西?还是某种田螺)是重要的传播途径,七律《送瘟神》可与《祭鳄鱼文》对比(4)leech读作 凌迟……leechcraft顿时生动起来;

3.

上面引的这段文字中,有"PIE*leg"是什么东西?查了一下,是“基于印欧语(PIE, Proto-Indo-European)”的意思。追溯词的来源,有些词形相似,有些读音相似,有些读音经过稀奇古怪的变化以后相似。

我突然想到,英语,印欧语系,他们自己不是应该研究得很充分吗?查到一个APP,绝好。

有个网站 https://www.etymonline.com/cn。它说

这个网站有 app可以下载,名字就叫作 Etymonline。其中 etymon 是字源的意思。

应用的效果,举个例子。Inter 这个词,折成 in - ter。In就是in,大致“在里面”的意思。Ter是什么?在 etymonline中搜索一下,得到下图。

Ter 来自拉丁文,是earth地球、土地一类的意思。印欧语系的字根原始的意思是 干燥,也许是使干燥。这还是抽象。点击 ter,得到下图。

这些单词中都有 ter 这个字根。里面不少我认识的啊,问题解决了。这,不就是科幻小说里经常怀念的故土 terra 吗。在 eymonline 也可以看到汉语版本,如下图,截自网站,与app内容一致。

再举两个例子。

Welter,查到词根有 Wel,我不认识。但是由它派生的词,这些有 拧巴 意思的词,熟悉的可真不少。

我猜测,非常多的单词,它们的字根与咱们熟悉的两三千词,很可能有相当高比例有同源的字根。所以,非常多的单词,拆分以后,都能追溯到根儿,再洐生到咱们熟悉的两三千词。这样,这些非常多的陌生单词,就是老朋友引荐的了。

再来一个伏特加 vodka,字根有 wed,水、湿的意思。以下单词,很多都相当熟悉。有些令人震惊,“你也是来自这个字根啊……好像很有道理的样子。”

此文也发布在以下站点。

----

知乎 https://www.zhihu.com/people/yang-gui-fu-52

独立博客 https://younggift.net/

微信公众号 杨贵福

----

以下是我曾经发布博客的站点,有些旧文。

----

豆瓣 - 因为审核"我的日记",不再更新。

https://www.douban.com/people/younggift/?_i=0098558fqLUL9h

CSDN – 因为要求我登记手机号码的原因是“为了您的安全”,不再更新。

https://blog.csdn.net/younggift?type=blog

blogsopt – 因为从我的机器不可达,无法更新

朋友圈里的杨打油

我,朋友圈里的打油诗人,目前贴了19首。

最初,发朋友圈。有几位朋友说,你这连韵也不押啊。我说:不押韵的多啦,你看王维,再看苏东坡。几位朋友说,人家那是古声古韵,当时是押韵的啊。

后来,徒夫先生说,平仄不通;四声八病,你这太典型了啊。推荐我看王力。我草草翻完几本,又找规律讲解和格律判定。再写,徒夫先生说,对仗还得看词性。前途漫长,此路绵绵无绝期。

刚好攒了十九首,“结集”一下,再接再厉。

(1)

(2)

我困牢笼短

君游四海长

隔墙频网聚

片语诉衷肠

2024年8月28日

(3)

(4)

(5)

(6)

(7)

(8)

(9)

(10)

(11)

(12)

(13)

(14)

(15)

(16)

(17)

(18)

(19)