首页/文章/ 详情

为什么对连续介质力学有抵触情绪‌——从国内外微积分教材谈起

4月前浏览1358

 

我在学习连续介质力学的时候,第一章描述运动的公式    直接翻白眼。越往后,越是麻烦不断,最后干脆劝退喽。

连续介质力学(Continuum Mechanics)——包括流体力学、固体力学/弹性力学、热力学与传质传热——本质上就是在描述三维空间中位形场、速度场、应力场、温度场等的局部变化规律,而这些场的微分运算全靠矢量分析(Vector Calculus / Tensor Calculus)。张量有“修改”矢量的能力,因此顺其自然成为连续介质力学重要的数学工具。

回过头来看大学微积分课程,在高等数学里面,矢量微积分这部分内容属于边角料,因此也常常忽略了他们的存在,久而久之对矢量微积分没有深刻的认识。可以想象,没有足够的数学工具,去学习连续介质力学。‌"It's all Greek to me"‌即无法理解,如同看天书一样。有人戏称“每年都要入门一次”。

美国大学有一门课程 Vector Calculus,核心内容是用向量工具研究空间曲线曲面、向量场的线面积分及三大定理。多元微积分与单变量最大的不同在于高维空间中方向无限多,必须用向量(有大小方向)来描述方向导数、切平面、通量、环量等概念,而非单纯增加几个变量。"Vector Calculus"强调这门课是用向量代数/分析来研究空间变化,比"Multivariable(只是多几个变量)"更能体现其几何内涵。

下面按核心物理量和方程,系统说明用固体连续介质力学到矢量分析的地方:

一、位移场 、速度场 、加速度(梯度、物质导数)

连续介质用位形场   描述,速度场   。

  • • 速度梯度张量:    

    用到了多元函数偏导 → 向量场的 Jacobian(梯度算子作用于向量场)

  • • 形变率张量与自旋张量(极分解):    
  • • 物质导数(随体导数):    

    其中        是矢量分析与方向导数的典型应用。

✅ 用到:∇ 作用于标量/向量场、点积、方向导数

二、应变与变形(梯度、散度、对称二阶张量)

小变形线性应变(Cauchy 应变):

  为位移向量场。

有限变形(Green–Lagrange 应变):

✅ 用到:向量场梯度 → 二阶张量、转置、张量运算

三、质量/动量/能量守恒 —— 控制体积方程(散度定理)

质量守恒(不可压缩特例):

Cauchy 动量方程(连续介质版牛顿第二定律):

  • •     :Cauchy 应力张量(二阶)
  • •     :散度作用于二阶张量,结果是向量

积分形式 ⇄ 微分形式 :

  • • 高斯散度定理(Divergence / Gauss Theorem)    

    对向量场(通量)和张量场均成立。

✅ 用到:散度 ∇·(向量/张量)、高斯定理、随体导数+雷诺输运定理

四、本构关系(应力–应变)中的张量代数

  • • 线弹性(各向同性):    
  • • 牛顿流体(黏性应力):    

✅ 用到:迹 tr(·)、单位张量 I、二阶对称张量运算(矢量分析的自然推广)

五、热与质量传输(梯度、散度、拉普拉斯)

Fourier 热传导:

Fick 扩散 + Navier–Stokes 能量方程同理

✅ 用到:

  • • 标量场梯度 ∇T
  • • 向量场散度 ∇·(k∇T) = k∇²T(拉普拉斯算子 ∇²)

📌 总结

连续介质力学内容      
矢量分析工具      
速度/位移场局部变化      
∇(作用于标/向量)→ 梯度、方向导      
质量/不可压缩条件      
∇·v(散度)      
动量平衡微分式      
∇·σ(张量散度)      
积分⇄微分形式守恒律      
Gauss / Stokes / Reynolds 输运定理      
热/扩散方程      
∇T、∇²T(Laplace)      
应变/应力关系      
梯度→二阶张量、tr、I      

 

来源:数值分析与有限元编程
UM控制曲面
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-06-23
最近编辑:4月前
译码当先
本科 慢慢来
获赞 14粉丝 32文章 402课程 0
点赞
收藏
作者推荐

关于Python的开发环境,我打算换个玩法

集包管理和项目管理于一身的Python工具——uv使用uv作为Python的包管理工具,快到你怀疑人生。很多情况下我以为卡住了,结果已经装完了。但我不满足于此。众所周知,在vscode中写Python代码,Python,Pylance这几个插件绑在一起,好大一坨,且默认全部安装。这一点让人不爽。最近,一款同样用Rust语言开发的Python类型检查器和语言服务器--Pyrefly 发布1.0版本,我又动心了,准备把玩一下。实操下来,对Pyrefly很满意。下面简要说说具体流程。安装Pyreflyhttps://github.com/facebook/pyrefly/releases/tag/1.0.0下载可执行文件,添加path环境变量即可。另外在vscode中也要安装Pyrefly插件。这样在uv构建任意一个虚拟环境都可使用Pyrefly初始化项目配置默认情况下,Pyrefly 在 VS Code 中只有当你打开被配置覆盖的文件时才会显示类型错误波浪线。为了获得完整的检查体验,需在项目根目录初始化配置:• 终端输入命令:pyrefly init,(若虚拟环境没有激活,则需uv run pyrefly init命令),它会自动扫描项目并生成 pyrefly.toml,或写入 pyproject.toml 的 [tool.pyrefly] 节点 。• 如果暂时不想建配置文件,也可在 VS Code 设置中将 python.pyrefly.displayTypeErrors 改为 force-on,强制全局开启错误提示。VS Code 设置打开 VS Code 的 settings.json,可根据习惯调整以下推荐设置:• 开启类型错误强制显示(若未创建配置文件):"python.pyrefly.displayTypeErrors": "force-on"• 开启悬停跳转链接(在悬浮文档中包含“跳转到定义”链接):"python.a nalysis.showHoverGoToLinks": true• 确保内联提示(Inlay Hints)开启:Pyrefly 会用内联提示显示推断的参数名和变量类型,请确保 "editor.inlayHints.enabled" 为 on。• 工作区诊断范围:默认 openFilesOnly 只检查当前打开的文件。对中型项目,可设为 "python.pyrefly.diagnosticMode": "workspace",在项目打开时全量检查所有文件。常用功能配置完成后,打开任意 Python 文件,你将获得:• 实时诊断:传参类型错误、访问不存在属性等会立刻标红。• 智能感知:悬浮查看精确类型与文档、Ctrl+点击跳转到定义、查找所有引用、自动补全等。• 内联类型:变量和返回值会自动显示推断出的类型,可双击插入为正式注解。牛刀小试 def add(a: int, b: int) -> int: return a + badd("1", 2) 终端输入命令 uv run pyrefly check 输出以下 当然,Pyrefly 更适合大项目。划重点,由于没有安装Python三件套插件,因此就没法点VS Code右上角的三角按钮运行文件,而是通过终端输入命令 uv run XXX.py来运行文件。 来源:数值分析与有限元编程

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈