【论文阅读公式推导1】连续体机器人的哈密尔顿动力学推导

news2024/12/23 6:16:44

推导了一下论文哈密尔顿原理的表达,原论文的计算公式是对的,记录一下。

Gravagne I A, Rahn C D, Walker I D. Good vibrations: a vibration damping setpoint controller for continuum robots[C]//Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No. 01CH37164). IEEE, 2001, 4: 3877-3884.

在这里插入图片描述

哈密尔顿原理的公式:

δ ∫ t 0 t 1 ( K E − P E + W e ) d t = 0 \delta\int_{t_0}^{t_1} (KE-PE+W_e)dt=0 δt0t1(KEPE+We)dt=0

其中 K E KE KE是动能, P E PE PE是势能, W e W_e We是非保守力的功。

如果按照达朗贝尔原理可以把势能 P E PE PE转换为保守力做的功 W c W_c Wc。其中势能 P E PE PE变换为功要加个负号。

− P E = W c -PE=W_c PE=Wc

这样和非保守力做的功 W e W_e We合并为外力的功 W W W

W = W c + W e W=W_c+W_e W=Wc+We

δ ∫ t 0 t 1 ( K E + W ) d t = 0 \delta\int_{t_0}^{t_1} (KE+W)dt=0 δt0t1(KE+W)dt=0

其中势能 P E PE PE变换为功要加个负号。

在这里插入图片描述
在这里插入图片描述

求解的过程使用了变分法,参考了叶敏《分析力学》134页关于连续体在哈密顿动力学的应用的例5-5。

求解过程的思路:

  1. 要不断分离出变分负号,利用边值条件都为0(等时变分):
  • δ y ( x , t 0 ) = δ y ( x , t 1 ) = 0 \delta{y(x,t_0)}=\delta y(x,t_1)=0 δy(x,t0)=δy(x,t1)=0
  • 其导数也是一样的为0。
  1. 分离的方法是分部积分法,将变分负号的求导阶数不断降低。如

y ˙ ∂ ∂ t ( δ y ) = ∂ ∂ t ( y ˙ δ y ) − y ¨ δ y \dot{y}\frac{\partial}{\partial t}({\delta y})=\frac{\partial}{\partial t}(\dot{y}\delta y)-\ddot{y}\delta y y˙t(δy)=t(y˙δy)y¨δy

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

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

相关文章

[网站分享]

Element-ui Element - The worlds most popular Vue UI frameworkElement,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库https://element.eleme.cn/#/zh-CN Vant Weapp Vant Weapp - 轻量、可靠的小程序 UI 组件库轻量、可靠的小程序 UI 组件…

没有数学基础可以学编程吗?

一、为什么学编程 这里我并不是问大家,是因为兴趣啊还是就业学编程。 而是,我想要学Python为了量化交易,或者我要处理表格。我想要学Java我就想自己建站。是否有这种非常明确的目标,有目标才能明确学习路线。 如果在这里&#…

大数据:HDFS操作的客户端big data tools和NFS

大数据:HDFS操作的客户端 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤…

Vue--》Vue3打造可扩展的项目管理系统后台的完整指南(三)

今天开始使用 vue3 ts 搭建一个项目管理的后台,因为文章会将项目的每一个地方代码的书写都会讲解到,所以本项目会分成好几篇文章进行讲解,我会在最后一篇文章中会将项目代码开源到我的GithHub上,大家可以自行去进行下载运行&…

Pytorch入门(二)神经网络的搭建

torch.nn中的nn全称为neural network,意思是神经网络,是torch中构建神经网络的模块。 文章目录 一、神经网络基本骨架二、认识卷积操作三、认识最大池化操作四、非线性激活五、线性层及其它层介绍六、简单的神经网络搭建七、简单的认识神经网络中的数值计算八、损失…

mmdetection训练coco数据集(继跑通后的一些工具使用)

(仅做个人过程记录的笔记) 1、生成中间件 可以选择评估方式 --eval ,对于 COCO 数据集,可选 bbox 、segm、proposal 。可以得到result.bbox.json文件 生成pkl文件:faster_rcnn.pkl python tools/test.py config.py …

利用栈和队列共同解决迷宫问题

文章目录 什么是迷宫问题?如何解决迷宫问题?DFS(深度优先搜索)BFS(广度优先搜索) 总结 什么是迷宫问题? 迷宫问题是一道经典的算法问题,旨在寻找一条从起点到终点的最短路径。通常迷…

games101作业6

作业要求 Render() in Renderer.cpp: 将你的光线生成过程粘贴到此处,并且按照新框 架更新相应调用的格式。Triangle::getIntersection in Triangle.hpp: 将你的光线-三角形相交函数 粘贴到此处,并且按照新框架更新相应相交信息的格式。 在本次编程练习中…

删除排序链表中的重复元素(java)

删除链表中的重复元素 leetcode 83 题 删除链表中的重复元素解题思路代码链表专题 leetcode 83 题 删除链表中的重复元素 leetcode 83 题 – 跳转链接 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。…

Python numpy - 数组与矩阵的创建&运算

数组array 一 数组的创建 (至少两个数组)创建随机整数数组 a 和 b import numpy as np a np.random.randint(10,size20).reshape(4,5) b np.random.randint(10,size20).reshape(4,5) 二 数组常用函数 数组常用函数 函数作用unique(&…

Transformer part2

(179条消息) Transformer模型入门详解及代码实现_transformer模型代码-CSDN博客 transformer的encoder和decoder的差别 1. decoder包含两个 Multi-Head Attention 层。 decoder第一个 Multi-Head Attention 层采用了 Masked 操作。 为什么需要Mask处理 如何进行Mask处理 de…

【C#图解教程】第五章 类的基本概念

程序和类 类是一个能储存数据并执行代码的经过封装的数据结构,包含数据成员和函数成员,类内通常会包含逻辑上相关的数据和函数,所以类通常会代表真实世界或概念上的事物。 运行中的C#程序实质上是许多实例之间相互作用: 类的声…

ThingsBoard 前端项目内置部件开发

ThingsBoard 是目前 Github 上最流行的开源物联网平台(12.8k Star),可以实现物联网项目的快速开发、管理和扩展,是中小微企业物联网平台的不二之选。 本文介绍如何在 ThingsBoard 前端项目中开发内置的菜单导航部件。 内置相关部…

clickhouse简介

文章目录 1:简介1.1:CH是什么?1.2:CH优势1.3:架构设计 2:CH接口3:CH引擎1:数据库引擎3.1.1:mysql引擎 2:表引擎3.2.1:MergeTree3.2.2:集成引擎1&a…

电子合同签署协议开源版系统开发

电子合同签署协议开源版系统开发 H5TP6mysqlphp 源码开源不加密 以下是电子合同系统可能包含的功能列表: 用户注册和登录:用户可以注册并登录系统,以便创建、签署和管理合同。合同创建:用户可以创建新合同,包括填写合…

Web的基本漏洞--SQL注入漏洞

目录 一、SQL注入介绍 1.SQL注入漏洞原理 2.SQL注入漏洞的类型 3.SQL注入漏洞识别 4.攻击方式 5.SQL盲注 时间盲注 布尔盲注 报错盲注 6.SQL注入漏洞的危害 7.SQL注入漏洞的防范措施 8.SQL注入漏洞的绕过 一、SQL注入介绍 1.SQL注入漏洞原理 Web程序输入的数据传…

使用git rebase合并多次commit

目录 rebase的作用简要概括为:命令:解决冲突:遗留问题: rebase的作用简要概括为: 可以对某一段线性提交历史进行编辑、删除、复制、粘贴;因此,合理使用rebase命令可以使我们的提交历史干净、简…

docker安装php

在安装 php 之前,我们可以先查看一下我们的镜像: docker images 我这里是已经存在 php 镜像了,版本就是 TAG 显示的 8.1.16 如果没有镜像,则执行下面的命令,拉取 php 镜像: docker pull php:latest 请注…

MAYLAND HOME官网上线 | LTD家居家装行业案例分享

​一、公司介绍 在MAYLAND HOME,我们为我们对质量和服务的承诺感到自豪。我们相信我们的成功与客户的满意度直接相关,这就是为什么我们努力超越您的期望,我们承担的每一个项目。无论您是想升级您的家庭还是企业,我们都会在这里帮助…

SpringBoot3 CORS跨域访问

目录 Credentials 问题一 问题二 解决方法一 CrossOrigin,最优的方法 解决方法二 通过Filter 设置HTTP 解决方法三 通过实现WebMvcConfigurer设置HTTP HTTP 协议,需要认真的学习每个细节。 allowCredentials(true) 和 allowed-origins: "*&qu…