第31章 拉格朗日的编译器

    第十一年的春季,废土没怎么下雨。
    往年这个时候,乾涸的河床多多少少会渗出一点浑浊的地下水,沿著岩缝慢慢流进江临提前挖好的蓄水坑里。
    但今年,整整一个月过去,蓄水坑底部只剩下一层乾巴巴的泥皮。
    皮被风吹得发硬,裂出细碎纹路,像无数张嘲笑他的嘴。
    江临蹲在坑边,用手指抠了一块泥皮下来。
    泥皮很薄,一捏就碎,完全没有湿意。
    旱季提前来了,而且不是普通意义上的少雨。
    地下水位明显下降。
    这比粮食减產更危险。
    在废土,缺水比缺食物更要命。
    食物不足,还能靠储备,靠压缩体力硬撑一段时间。
    水一旦断掉,人体很快就会出问题。
    脱水,电解质紊乱,幻觉,器官衰竭,这些词不是医学教材里的远方名词,而是会在废土里一步一步走到面前的东西。
    江临倒不至於立刻渴死。
    营地北侧几百米外,有一处地下岩隙。
    那是他第六年时探出来的备用水源。
    问题是,那地方取水太费劲。
    他得把水桶系在尼龙绳上,顺著岩缝放下去,等桶口没入水里,再一点一点往上拔。
    几百米外,来回一趟。
    一桶水,往上拔一次。
    要满足自己一天最低饮水、做饭、最基本清洗,再给两百平方米农田吊住一口保苗水,他每天得重复几十次。
    这不是劳动。
    而是把卡路里往井里扔。
    在废土,每一焦耳能量都要算著花。
    可现在,他每天花在提水上的体力,像一条看不见的裂缝,把这些年辛辛苦苦抠出来的余量一点点吞回去。
    春末的一个上午,江临提完第十七桶水,手臂已经开始发酸。
    而田边的黄豆苗有些发蔫。
    土豆叶片边缘捲起,像被火燎过一样。
    “得利用风。”
    废土什么都缺,唯独风不缺。
    江临以前试过做小风轮,失败得很惨。
    叶片飞出去那一次,差点让他把记性长在脸上。
    从那之后,他对风力发电四个字敬而远之。
    但提水不一样。
    他不需要稳定电压,不需要高速转子,不需要漂亮的动平衡。
    只需要一套粗糙低效,能反覆把水桶从岩隙里拉上来的装置。
    江临回到石屋,把手洗乾净,打开【废土工程_暂存方案】文件夹,新建文档。
    【风力提水装置_第一版】
    然后盘点手头里的家当。
    营地废墟里砸出来的几根粗钢筋,一卷用来做单摆实验的尼龙绳,一块挡窗户用的旧防雨布,一些薄金属片,几根木桿子,以及满地的红土和石块。
    要在地球上,这点破烂连收废品的都嫌弃。
    但在废土,这是他拼凑重型设备的全部底牌。
    江临很快画出第一张草图。
    用石头垒一个支点,把最长的一根钢筋架在上面当槓桿。
    槓桿的一头掛水桶,另一头连著尼龙绳。
    伞绳的另一端,绑在另一根垂直竖立掛著防雨布的迎风杆上。
    风吹动防雨布,迎风杆后倾,拉动绳子。
    绳子扯动槓桿,槓桿把水桶提起来。
    风小的时候,靠配重和水桶自重回落,完成一个往復循环。
    原理很简单,简单到透著一种石器时代的美。
    但江临没有立刻去搬钢筋。
    这些年废土已经教会他,越是看起来简单的东西,动起来越可能要命。
    防雨布受风不是一个稳定的力。
    废土的风也不是教科书里那个温顺的箭头。
    它是忽强忽弱的乱流。
    尼龙软绳只能拉不能推,鬆弛后再绷紧会產生暴烈的衝击。
    钢筋不是理想刚体,石头支点表面不平,水桶在岩缝里会上下晃荡。
    桶里的水也会晃。
    如果只凭感觉硬做,第一版很可能不是提水装置,而是自动砸脸装置。
    江临盯著草图看了一会儿,在旁边写。
    【干活之前,先算帐。】
    这句话曾经出现在太阳能系统里。
    现在又出现了。
    他有微积分,有普通物理,有线性代数,有概率统计和误差分析。
    第十年,他刚用最小二乘法把农田那堆乱七八糟的数据做过一次粗糙擬合。
    虽然结果很丑,但至少让他知道,在噪声里找趋势,不是完全不可能。
    既然能在一堆脏数据里摸规律,算一个看得见摸得著的粗糙槓桿,应该不至於太难。
    江临稳如老狗,拿起墨水手写板,画出提水系统的三维简图之后,开始走最熟悉的流程
    牛顿受力分析。
    他把系统拆开。
    部件a是迎风杆。
    受到风力,底座摩擦力,自重和尼龙绳拉力。
    部件b是尼龙绳。
    两端拉力,可能鬆弛,可能绷紧。
    部件c是槓桿。
    受到绳子拉力,水桶重力,支点支持力,摩擦力。
    部件d水桶。
    重力,绳子拉力,岩壁可能碰撞,水的晃动。
    江临咬著笔头,在每个部件上画出长长短短的受力箭头。
    没画几下,他的眉头就皱成了一个川字。
    “太乱了。”
    他盯著那根尼龙绳。
    绳子是软约束,这意味著它只能提供拉力,不能提供压力。
    当风力变小,迎风杆回弹的时候,绳子会瞬间失去张力,槓桿就会砸下来。
    等下一阵风再把防雨布吹满,绳子又会突然绷紧,產生衝击。
    这种时紧时松的东西,最麻烦。
    然后是支点。
    槓桿不是用轴承装在金属架上的。
    它只是架在两块巨石之间,靠凹槽和限位块勉强定位。
    支点会摩擦,会磨损,会因为震动发生微小偏移。
    支点一偏,力臂就变。
    力臂一变,刚才所有方程都要跟著变。
    再看风力。
    风不是常数,大小隨时间变,方向也在变。
    防雨布的受力面积还会隨布面形状改变。
    这不是一个静態问题。
    而是一个带有非稳定外力,连接,衝击和摩擦的动態系统。
    江临硬著头皮继续写。
    迎风杆绕底部支点转动,需要力矩方程。
    槓桿绕石支点转动,也需要力矩方程。
    水桶上下运动,需要平动方程。
    绳子约束长度要写。
    如果绳子鬆弛,约束又暂时失效。
    风力项要写成f_w(t)。
    绳张力要写成t(t)。
    支点反力有两个方向,摩擦力还要判断方向。
    没过二十分钟,墨水屏上已经堆满了三角函数,下標,未知约束力和耦合方程。
    江临盯著这一团东西,整个人愣在那里。
    他列出的方程太多。
    绳子的瞬时张力,石块支点的支持力,支点摩擦,迎风杆底座挤压力。
    槓桿和限位块之间的衝击力,水桶碰岩壁时的瞬时反作用力。
    这些东西,在物理学里有一个共同的名字。
    约束力。
    它们当然真实存在。
    但江临並不关心它们每一秒的精確数值。
    他关心的是这套装置能不能把水提上来,升程够不够,会不会散架,哪个参数最该改?
    可牛顿方程逼著他去追查每一个细节。
    要求他把系统切得七零八落,然后追问每一个零件之间到底怎么互相推搡。
    这就像想管理几万人的大工厂,却非要去查每个流水线工人喘了几口气。
    “老牛啊老牛!”
    江临往后靠到石壁上,闭了闭眼。
    他没有骂牛顿,因为牛顿定律並没有错。
    经典范围內,那三条定律仍然牢固得像废土上的岩层。
    真正的问题是这种语言太底层。
    拿它去解复杂的约束系统,就像拿机器码写作业系统,能写,但人会死。
    江临睁开眼,重新坐直。
    打开电脑,点开理论力学文件夹。
    他先前翻过这个文件夹,但只粗略看过目录。
    在很多物理系培养体系里,理论力学是专业课的第一道门槛,开始用另一种语言重新表述整个经典世界。
    不像普通物理那样亲切,也不像高数那样只是工具。
    理论力学前面是运动学、动力学、刚体运动。
    他往下拖,停在下半册。
    【分析力学】
    第一章开头,没有小方块,没有斜面,没有满屏受力箭头。
    只有一段安静的陈述。
    在牛顿力学中,我们通常以力为核心描述运动。
    但对含有复杂约束的多体系统,显式求出所有约束力往往既困难,也不必要。
    分析力学提供了一种更高层的描述方式:选择合適的广义坐標,从系统的动能、势能和虚功出发,得到运动方程。
    江临的目光停在不必要三个字上。
    我刚才追著那些绳张力,支点反力,摩擦力折腾了半天,你告诉我不必要?
    他继续往下看。
    很多约束力,在理想约束下,对允许的虚位移不做功。
    既然它们不做虚功,就可以不显式出现在方程里。
    也就是说,你不必把每一个支持力,张力,约束反力都算出来。
    只要选对描述系统自由度的广义坐標,把动能t和势能v写出来,再把非保守外力写成广义力,方程会自动生成。
    这不是力消失了。
    力还在那里,风还会推防雨布,绳子还会拉钢筋,支点还会磨损,水桶还会晃。
    但分析力学告诉他,你不必用最笨的方式追著每一个约束力跑。
    你可以先问一个更高层的问题。
    这个系统真正的自由度是什么?
    江临把这句话抄下来,像握住了一把刀。
    他盯著自己的风力提水装置草图,重新开始看。
    这个系统確实很脏,有摩擦,有乱流,有衝击。
    不能幻想一个方程五分钟给出最终答案。
    但如果先建立一个理想模型呢?
    假设尼龙绳始终绷紧,假设钢筋刚性足够,假设支点暂时不滑,假设水桶不撞岩壁……
    整个系统的主运动,至少可以先由迎风杆的倾角θ来描述。
    θ確定了,绳长、槓桿、水桶高度就全確定了。
    然后,他写动能和势能。
    风和摩擦不是保守力,所以他用上了带广义非保守力的拉格朗日方程形式。
    d/dt(?l/?q?) - ?l/?q = q
    江临盯著右边那个q。
    它提醒著拉格朗日不是魔法,脏东西没有凭空消失,只是被更好地收纳了。
    推导並不漂亮,但顺畅得多。
    那些让他头疼的支点反力,绳端约束力全都不见了。
    推到最后,他得到了一条粗糙的一自由度运动方程。
    这方程没有给他最终答案,却清晰地告诉他该改哪里。
    升程不够可能是槓桿力臂比不对,启动困难可能是转动惯量过大,运动狂躁是阻尼不足。
    江临看著那条方程,头皮还是有些发麻。
    不过拉格朗日方程虽然没有替他造出提水机,却也替他找到了提水机的骨架。
    这一刻,江临第一次在理论力学里感到一种近乎冒犯的震撼。
    不是因为它神奇到无所不能。
    而是因为它明明承认现实复杂,却依然能从复杂里抽出自由度。
    牛顿力学像在写机器码。
    你必须亲自管理每一个寄存器,每一次跳转,每一条指令。
    你要算每一根绳子的张力,每一块石头的摩擦,每一个支点的反作用。
    拉格朗日力学则更像高级语言。
    你写系统的自由度,写动能,写势能,写非保守广义力,然后让方程替你生成底层运动。
    这个编译器,就是拉格朗日方程。
    但江临没有忘记加一句。
    【编译器不是神。】
    【垃圾模型输入,只会得到垃圾结果。】
    接下来的半个月,江临一边学分析力学,一边做风力提水装置。
    白天,他在废墟里砸钢筋,搬石块,削限位槽,用红泥和碎石压实底座。
    晚上,他在露营灯下啃《理论力学》里那些更冷更高的词。
    广义坐標,广义速度,广义力,虚位移……
    理论力学不再高高在上,和一台丑陋的提水机牢牢绑在了一起。
    第一版装置,失败得毫不意外。
    风灌满防雨布,迎风杆猛地后倾,尼龙绳瞬间绷直,槓桿抬起水桶。
    水桶確实上升了。
    可上升不到一半,风力一弱,绳子突然鬆弛。
    下一阵风再来时,绳子猛地绷紧,整个系统发出一声让人牙酸的撞击。
    水桶砸在岩壁边缘,半桶水全洒了不说,桶还被砸出了一个凹坑。
    江临站在旁边,脸色很难看。
    但还是不忘记录。
    【第一版失败。】
    【问题:绳索鬆弛导致衝击,回落速度过大,阻尼不足。】
    第二版,他加了配重。
    配重让水桶回落不再那么凶,系统有了更稳定的往復趋势。
    但新问题来了。
    启动困难。
    风小的时候,配重和水桶形成的等效惯量太大,防雨布被吹得哗哗响,装置却只是像一头倔驴一样抖。
    又记录。
    【第二版失败一半。】
    【问题:启动风速提高,低风状態下无效。】
    第三版,他调整槓桿支点位置。
    把力臂比改小一点,牺牲一部分升程,换取更容易启动。
    这一次,水桶能被拉起来了。
    但升程不够。
    水桶刚刚离水面没多久就停住,上不来。
    还是记录。
    【第三版:启动改善,升程不足。】
    第四版,他改变水桶容积。
    不用大桶一次提满,改用小桶多次提。
    这让单次提升所需能量下降。
    效率不高。
    但系统终於能工作一段时间。
    问题是往復太快,水桶出水时晃得厉害,洒水严重。
    他用旧布条和一段磨损绳索做了简陋阻尼,让槓桿回落时有一点摩擦耗能。
    第五版。
    江临给水桶加了一个偏心吊点。
    桶满水时重心靠下,能保持竖直。
    升到顶端撞上限位块后,桶口被迫翻转,水倒进接水槽。
    水一倒空,配重又把空桶拉回岩隙底部。
    限位块负责让它倒水,旧布条负责让它別砸得太狠,配重负责让它重新下去。
    这三样东西加起来,才勉强让它从会动变成能循环。
    一个风很大的下午。
    江临站在营地北侧的岩隙旁,繫紧最后一段尼龙伞绳。
    三米高的迎风杆由两根钢筋绑成,上面绷著旧防雨布。
    另一端,一根粗钢筋架在两块巨石之间,像一个野兽派风格的蹺蹺板。
    水桶掛在另一头,桶身被石头磕得凹凸不平。
    江临鬆开固定防雨布的绳套。
    “呼——”
    风灌满了防雨布,迎风杆后倾,尼龙绳绷紧,槓桿抬起。
    水桶从岩隙深处一点点升上来。
    支点发出低沉摩擦声。
    旧布阻尼轻轻抖动,压住了那种危险的狂躁。
    水桶升到顶端,撞上限位块,倾斜。
    “哗啦——”
    浑浊冰凉的地下水倒进旁边的蓄水坑里,水花溅到江临脚踝上。
    他站在风里,低头看著那些浑浊的水,许久不愿意走。
    它很破,也不省心,完全称不上真正自动化。
    但它替他省下了最折磨身体的劳动。
    更重要的是,它让理论力学拉格朗日方程第一次在废土里落了地。
    江临拿起隨身的电子记录板。
    【第十一年,旱季。】
    【简易风力提水系统第五版,间歇运转。】
    【可在中等以上稳定风下完成提水。】
    【低风不启动,乱风易衝击,夜间必须锁死。】
    【拉格朗日方程没有替我造机器。】
    【它替我找到自由度。】
    【不用追每一根绳子的张力,先抓住系统真正会动的那个方向。】
    这句话,他晚上抄进了纸质时间胶囊。
    纸很珍贵,但这一句值得。
    接下来几天,江临继续学下去。
    他翻到哈密顿原理。
    教材上写:真实路径使作用量取驻值。
    作用量s=∫ldt
    δs=0
    江临第一次看到最小作用量这个俗称时,差点被它迷住。
    最小,省,不浪费。
    这几个词,天然就能打动废土求生者的神经。
    可教材很快提醒他,更准確地说,不是总是最小,而是驻值。
    一阶变分为零,可能是最小,可能是最大,也可能是鞍点。
    自然不是简单地在省钱。
    它选择的是让作用量在可允许路径附近不发生一阶变化的那条路径。
    哪怕最省这个说法不严谨,他还是在里面看见了某种和自己相似的东西。
    这些年,他在废土里学会了不乱跑,不乱烧燃料,不乱开电脑,不做无意义的情绪发泄,把每一升水,每一克黄豆,每一瓦时电,每一张纸都用在刀刃上。
    他能理解那种整条路径都要算帐的视角。
    那天晚上,石屋里很安静。
    南墙小窗封著挡板。
    风力提水装置的绳子被他收好,防雨布也捲起来压在石块下面。
    江临坐在石桌前,打开【理论力学_分析力学】文档,写下阶段总结。
    【牛顿:追每一个力。】
    【拉格朗日:找真正的自由度,用能量写结构。】
    【非保守系统:加入广义力q,不要把现实脏东西偽装成理想模型。】
    【哈密顿原理:作用量取驻值,不是简单最小。】
    【核心改变:从微观管理每个约束力,到抓住系统的自由度和路径结构。】
    写完之后,他想了想,又补了一句。
    【牛顿是底层指令。】
    【拉格朗日是编译器。】
    【但编译器只对正確建模负责。】
    他看著最后一句,轻轻吐出一口气。
    理论力学没有让他变成天才,也没有让废土变得温柔。
    它甚至没有让那颱风力提水机变得多可靠。
    可是,它让江临第一次真正感到,物理学高级的地方,不是把公式写得更复杂。
    而是换一种语言以后,世界突然安静了一点。
    不过明天,他还是要检查提水装置的绳结,还是要测水质,还是要给农田补水。
    还要继续学理论力学下一章。
    废土不会因为他看见了分析力学的门,就少出一道题。
    但至少从今天开始,他不再只是趴在地上追每一粒沙子的人。
    偶尔,他能站高一点,看见风沙背后的地形。
本站所有小说均来源于会员自主上传,如侵犯你的权益请联系我们,我们会尽快删除。

腐文书,免费小说,免费全本小说,好看的小说,热门小说,小说阅读网
版权所有 https://www.fuwenshu1.com All Rights Reserved, 联系邮箱:ad#taorouwen.com