能量函数和能量守恒

在之前的文章1中讨论了与循环坐标相对应的动量守恒定律和动量矩守恒定律,本文将由拉格朗日方程中导出能量函数,进一步讨论能量守恒定律,并给出耗散系统的处理方法,这其中用到的一个关键数学定理是欧拉定理(描述如何将一个齐次函数分解的定理)。

从如下拉格朗日量开始我们的讨论:
L ( q i , q ˙ i , t ) L(q_i,\dot{q}_i,t) L(qi,q˙i,t)

它对时间的全微分是:
d L d t = ∂ L ∂ t + ∑ i ∂ L ∂ q ˙ i d q ˙ i d t + ∑ i ∂ L ∂ q i d q i d t ( 2.49 ) \frac{{\rm d} L}{{\rm d} t} = \frac{\partial L}{\partial t} + \sum_i \frac{\partial L}{\partial \dot{q}_i} \frac{{\rm d} \dot{q}_i}{{\rm d} t} + \sum_i \frac{\partial L}{\partial q_i} \frac{{\rm d} q_i}{{\rm d} t} \qquad (2.49) dtdL=tL+iq˙iLdtdq˙i+iqiLdtdqi(2.49)

结合拉格朗日方程:
∑ i ( d d t ∂ L ∂ q ˙ i − ∂ L ∂ q i ) = 0 ( 2.50 ) \sum_i \left( \frac{{\rm d} }{{\rm d} t} \frac{\partial L}{\partial {\dot q}_i} - \frac{\partial L}{\partial q_i} \right) =0 \qquad (2.50) i(dtdq˙iLqiL)=0(2.50)

由拉格朗日方程(2.50)可知:
∂ L ∂ q i = d d t ∂ L ∂ q ˙ i ( 2.5 0 ′ ) \frac{\partial L}{\partial q_i} = \frac{{\rm d} }{{\rm d} t} \frac{\partial L}{\partial {\dot q}_i} \qquad (2.50') qiL=dtdq˙iL(2.50)

代入(2.49):
d L d t = ∂ L ∂ t + ∑ i ∂ L ∂ q ˙ i d q ˙ i d t + ∑ i q ˙ i d d t ∂ L ∂ q ˙ i ( 2.51 ) \frac{{\rm d} L}{{\rm d} t} = \frac{\partial L}{\partial t} + \sum_i \frac{\partial L}{\partial \dot{q}_i} \frac{{\rm d} \dot{q}_i}{{\rm d} t} + \sum_i \dot{q}_i \frac{{\rm d} }{{\rm d} t} \frac{\partial L}{\partial {\dot q}_i} \qquad (2.51) dtdL=tL+iq˙iLdtdq˙i+iq˙idtdq˙iL(2.51)

(2.51)也可写为:
d L d t = ∂ L ∂ t + ∑ i d d t ( q ˙ i ∂ L ∂ q ˙ i ) ⇒ ∂ L ∂ t + ∑ i d d t ( q ˙ i ∂ L ∂ q ˙ i − L ) = 0 ( 2.5 1 ′ ) \frac{{\rm d} L}{{\rm d} t} = \frac{\partial L}{\partial t} + \sum_i \frac{{\rm d} }{{\rm d} t} \left( \dot{q}_i \frac{\partial L}{\partial {\dot q}_i} \right) \Rightarrow \\ \frac{\partial L}{\partial t} + \sum_i \frac{{\rm d} }{{\rm d} t} \left( \dot{q}_i \frac{\partial L}{\partial {\dot q}_i} - L \right) = 0 \qquad (2.51') dtdL=tL+idtd(q˙iq˙iL)tL+idtd(q˙iq˙iLL)=0(2.51)

根据(2.51’),我们引入能量函数(energy function):
h = ∑ i q ˙ i ∂ L ∂ q ˙ i − L h = \sum_i \dot{q}_i \frac{\partial L}{\partial {\dot q}_i} - L h=iq˙iq˙iLL

于是(2.51’)写为:
− ∂ L ∂ t = d h d t - \frac{\partial L}{\partial t} = \frac{{\rm d} h}{{\rm d} t} tL=dtdh

如果拉格朗日量 L L L不显含时间 t t t(即时间仅在 q i q_i qi q ˙ i \dot{q}_i q˙i中隐含),则力学系统的能量守恒:
h = c o n s t h = {\rm const} h=const

通过拉格朗日函数的齐次分解,并采用欧拉定理(Euler’s theorem,见本文附录)对 h h h进行分解,可以证明 h = T + V h=T+V h=T+V 就是总机械能。于是我们得到结论:如果势函数不显含时间(即拉格朗日量也不显含时间),则力学系统的总机械能守恒

2. 非保守系统(耗散函数为Rayleigh函数的情况)

对于非保守系统而言,摩擦力可以由耗散函数 F \mathcal{F} F导出,并且很容易看出 F \mathcal{F} F h h h的衰减有关。当存在耗散力时,我们已经讨论了拉格朗日方程(文章1的(1.70)):
d d t ∂ L ∂ q ˙ j − ∂ L ∂ q j = − ∂ F ∂ q ˙ j ( 1.70 ) \frac{{\rm d} }{{\rm d} t} \frac{\partial L}{\partial {\dot q}_j} - \frac{\partial L}{\partial q_j} = - \frac{\partial {\mathcal F}}{\partial {\dot q}_j} \qquad (1.70) dtdq˙jLqjL=q˙jF(1.70)

与之相对应的使用 h h h表述的方程为:
∂ L ∂ t + d h d t = ∑ j ∂ F ∂ q ˙ j q ˙ j ( 2.5 9 ′ ) \frac{\partial L}{\partial t} + \frac{{\rm d} h}{{\rm d} t} = \sum_j \frac{\partial {\mathcal F}}{\partial {\dot q}_j} \dot{q}_j \qquad (2.59') tL+dtdh=jq˙jFq˙j(2.59)

已知耗散函数取Rayleigh函数时(文章1(1.67’)), F \mathcal{F} F是广义速度 q ˙ j \dot{q}_j q˙j的二次函数,因此可以对上式右端应用欧拉定理,等于 2 F 2\mathcal{F} 2F,于是(2.59’)写为:
∂ L ∂ t + d h d t = − 2 F \frac{\partial L}{\partial t} + \frac{{\rm d} h}{{\rm d} t} = -2\mathcal{F} tL+dtdh=2F

如果 L L L不显含时间(即 ∂ L / ∂ t = 0 \partial L / \partial t =0 L/t=0),则耗散函数取Rayleigh函数时,机械能 h h h的耗散速率是 2 F 2\mathcal{F} 2F

附录:欧拉定理(Euler’s theorem)

欧拉定理给出了函数 f f f的分解方法,它是说:如果有函数 f = f ( x i ) f = f(x_i) f=f(xi) x i x_i xi n n n阶齐次函数,则 x i x_i xi ∂ f / ∂ x i \partial f/ \partial x_i f/xi的乘积之和可以写为 n f nf nf
∑ i x i ∂ f ∂ x i = n f \sum_i x_i \frac{\partial f}{\partial x_i} = nf ixixif=nf

参考资料

文章1:速度相关势和Rayleigh耗散势函数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/66732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF控件Grid的布局和C1FlexGrid的多选应用

使用 Grid.Column和Grid.Row布局,将多个C1FlexGrid布局其中,使用各种事件来达到所需效果,点击复选框可以加载数据到列表,移除列表的数据,自动取消复选框等 移除复选框的要注意!!!&am…

ffmpeg7.0 合并2个 aac 文件

ffmpeg7.0 将2个aac文件合并。 #include <stdio.h>// 之所以增加__cplusplus的宏定义&#xff0c;是为了同时兼容gcc编译器和g编译器 #ifdef __cplusplus extern "C" { #endif #include <libavformat/avformat.h> #include <libavcodec/avcodec.h>…

FreePBX 17 on ubuntu24 with Asterisk 20

版本配置&#xff1a; FreePBX 17&#xff08;最新&#xff09; Asterisk 20&#xff08;最新Asterisk 22&#xff0c;但是FreePBX 17最新只支持Asterisk 21&#xff0c;但是21非LTS版本&#xff0c;所以选择Asterisk 20&#xff09; PHP 8.2 Maria DB (v10.11) Node J…

2025-微服务—SpringCloud-1~3

2025-微服务—SpringCloud 第一章、从Boot和Cloud版本选型开始说起1、Springboot版本2、Springcloud版本3、Springcloud Alibaba4、本次讲解定稿版 第二章 关于Cloud各种组件的停更/升级/替换1、微服务介绍2、SpringCloud是什么&#xff1f;能干吗&#xff1f;产生背景&#xf…

php常用开发框架性能对比

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、框架简介&#xff1f;1.1 webman1.2 CodeIgniter(CI框架)1.3 ThinkPHP1.4 Laravel1.5 EasySwoole 二、压测对比1.机器配置2.webman压测2. ThinkPHP压测3. L…

新闻发布及管理系统

文末附有完整项目代码 在信息飞速传播的时代&#xff0c;新闻发布及管理系统变得愈发重要。本文将详细介绍如何设计并实现这样一个系统。 一、项目背景 随着电脑、智能手机等设备的普及&#xff0c;各种网站应运而生。而信息发布是网络的一大特点&#xff0c;人们上网主要是为…

sklearn-逻辑回归-制作评分卡

目录 数据集处理 分箱 分多少个箱子合适 分箱要达成什么样的效果 对一个特征进行分箱的步骤 分箱的实现 封装计算 WOE 值和 IV值函数 画IV曲线&#xff0c;判断最佳分箱数量 结论 pd.qcut 执行报错 功能函数封装 判断分箱个数 在银行借贷场景中&#xff0c;评分卡是…

【人工智能】自然语言生成的前沿探索:利用GPT-2和BERT实现自动文本生成与完形填空

自然语言生成&#xff08;Natural Language Generation, NLG&#xff09;是人工智能领域的重要研究方向&#xff0c;旨在通过计算机系统自动生成连贯、符合语法和语义的自然语言文本。近年来&#xff0c;预训练语言模型如GPT-2和BERT在NLG任务中取得了显著的成果。本文深入探讨…

OpenCV相机标定与3D重建(53)解决 Perspective-3-Point (P3P) 问题函数solveP3P()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 根据 3 个 3D-2D 点对应关系找到物体的姿态。 cv::solveP3P 是 OpenCV 中的一个函数&#xff0c;用于解决 Perspective-3-Point (P3P) 问题。该问…

PHP语言的软件工程

PHP语言的软件工程 引言 在当今数字化时代&#xff0c;网络应用的需求与日俱增&#xff0c;而PHP语言作为一种广泛使用的服务器端脚本语言&#xff0c;凭借其简单易学、高效灵活&#xff0c;成为了Web开发领域的重要工具之一。本文将探讨PHP语言在软件工程中的应用&#xff0…

shell脚本练习(3)

一、编写一个shell脚本&#xff0c;功能如下&#xff1a; &#xff08;1&#xff09;提示用户输入网络接口名称。 &#xff08;2&#xff09;根据接口返回IP。 [rootopenEuler-1 ~]# cat showIP.sh #!/bin/bash# 获取接口名 net_nameip a | awk -F"[ :]" /^[0-9]:/ …

Http请求响应——请求

Http概述 Http协议&#xff08;HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff09;&#xff0c;是一种用于传输网页数据的协议&#xff0c;规定了浏览器和服务器之间进行数据传输的规则&#xff0c;简单说来就是客户端与服务器端数据交互的数据格式。 客户端…

python学opencv|读取图像(三十一)缩放图像的三种方法

【1】引言 前序学习进程中&#xff0c;我们至少掌握了两种方法&#xff0c;可以实现对图像实现缩放。 第一种方法是调用cv2.resize()函数实现&#xff0c;相关学习链接为&#xff1a; python学opencv|读取图像&#xff08;三&#xff09;放大和缩小图像_python opencv 读取图…

windows中,git bash 使用conda命令

1、首先在Anaconda的安装路径如/Anaconda3/Scripts下&#xff0c;打开git bash窗口&#xff0c;然后输入下面的命令。 ./conda init bash 运行之后&#xff0c;会在用户目录下面生成.bash_profile文件&#xff0c;文件内容如下&#xff1a; # >>> conda initialize…

封装红黑树实现map和set

本博客需要红黑树和搜索树二叉树的一些知识以及熟悉map和set的相关函数和迭代器&#xff0c;如果读者还不熟悉可以看这三篇博客&#xff1a;红黑树、二叉搜索树、map、set的使用 红黑树的封装 STL30源码分析 如果想到封装&#xff0c;大家应该会直接把RBtree复制两份&#x…

关于使用FastGPT 摸索的QA

近期在通过fastGPT&#xff0c;创建一些基于特定业务场景的、相对复杂的Agent智能体应用。 工作流在AI模型的基础上&#xff0c;可以定义业务逻辑&#xff0c;满足输出对话之外的需求。 在最近3个月来的摸索和实践中&#xff0c;一些基于经验的小问题点&#xff08;自己也常常…

LeetCode 热题 100_二叉树的最近公共祖先(48_236_中等_C++)(二叉树;深度优先搜索)

LeetCode 热题 100_二叉树的最近公共祖先&#xff08;48_236&#xff09; 题目描述&#xff1a;输入输出样例&#xff1a;题解&#xff1a;解题思路&#xff1a;思路一&#xff08;深度优先搜索&#xff09;&#xff1a; 代码实现代码实现&#xff08;思路一&#xff08;深度优…

HTTP/HTTPS ②-Cookie || Session || HTTP报头

这里是Themberfue 上篇文章介绍了HTTP报头的首行信息 本篇我们将更进一步讲解HTTP报头键值对的含义~~~ ❤️❤️❤️❤️ 报头Header ✨再上一篇的学习中&#xff0c;我们了解了HTTP的报头主要是通过键值对的结构存储和表达信息的&#xff1b;我们已经了解了首行的HTTP方法和UR…

PyCharm+RobotFramework框架实现UDS自动化测试——(二)RobotFramework环境配置

从0开始学习CANoe使用 从0开始学习车载测试 相信时间的力量 星光不负赶路者&#xff0c;时光不负有心人。 文章目录 1.环境准配2.Pycharm中相关配置2.1. 安装Hyper RobotFramework Support 3.脚本执行环境3.1 执行单条的配置3.2 执行全部用例配置 4.工程运行4.1 单条用例运行4.…

git 转移文件夹

打开终端或命令行界面&#xff1a;首先&#xff0c;确保你的电脑上安装了 Git&#xff0c;并打开终端或命令行界面。 导航到你的仓库目录&#xff1a;使用 cd 命令来切换到包含你想要移动文件夹的仓库的目录。 cd /path/to/your/repository使用 git mv 命令移动文件夹&#x…