首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >雅可比行列式标度因子的理解与推导

雅可比行列式标度因子的理解与推导
EN

Stack Overflow用户
提问于 2016-12-04 10:26:56
回答 1查看 1.5K关注 0票数 0

我一直在努力理解雅可比行列式。我希望有人能给我一个指针。

我在互联网上找到的大多数资料都没有给出雅可比行列式的推导。

其中一个网站是:http://tutorial.math.lamar.edu (否则,我觉得它相当不错)。

我花了很多时间来加深对雅可比行列式的理解。

我使用定义uv轴的转换,以及区域/区域上的函数集成如何与转换一起工作。

例如,当我从以下简单转换开始时:

代码语言:javascript
复制
u = ( x - y )/√2
v = ( x + y )/2√2

它是离笛卡儿xy轴-45°的uv轴,v轴是标度的2倍,即v=1映射到xy-弦长度的2个单位。

因此,我认为uscale = 1,vscale = 2,用于上述转换。

有了这个uv轴,我可以简化一个从x轴45°旋转的10x20矩形区域,使x轴45°处的较长维点。

通过这样的例子,我开始发展雅可比行列式工作的直觉。

我理解雅可比行列式是一个标度因子,用来将uv轴上的面积测量转换成xy维。

用公式Δu xΔv,其中Δu = 10,Δv = 10,因为v比例尺=2,给出了uv轴的面积测量。

Jacobian行列式标度因子= uscale x vscale (相当直观)。

面积x-维=Δu xΔv x (uscale X vscale) = 10 x 10 x1 x2= 200。

在这样一个简单的uv平方上,体积的积分可能比在相同的xy区域上更容易,出现在一个角度上。

有了以上的初步理解,我试图找出雅可比行列式是如何导出的。

源自上述转换公式:

代码语言:javascript
复制
dx/du = √2 / 2
dx/dv = √2
dy/du = -√2 / 2
dy/dv = √2

我还可以从几何学中得出以下结论:

代码语言:javascript
复制
dx/du = uscale cos Θ
dy/du = uscale sin Θ
dx/dv = vscale cos (90° - Θ)
dy/dv = vscale sin (90° - Θ)

我可以得到:

代码语言:javascript
复制
areaInXY / areaInUV = uscale x vscale

这符合我的理解。

然而,雅可比行列式公式是:

代码语言:javascript
复制
∂(x, y) / ∂(u, v) = ∂x/∂u ∂y/∂v - ∂x/∂v ∂y/∂u
  = uscale * vscale * cos 2Θ

这让我非常困惑为什么我有额外的cos 2Θ因子,这是不直观的--为什么面积缩放因子将取决于矩形是如何旋转的,从而如何旋转uv轴?!

有人能看出我的推理在上面哪里出错了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-04 12:23:55

让我来解释一下雅可比行列式的基本作用。对于从R^n到R^n的光滑函数,这通常是正确的,但为了简单起见,假设我们正在处理R^2,设F(x,y)是光滑的R^2到R^2函数。然后我们可以说,F(x,y)将x坐标发送给f1(x,y),y坐标在点(x,y)处发送给f2(x,y)。然后考虑一个由点(x,y),(x+dx,y),(x,y+dy)和(x+dx,y+dy)定义的无穷小矩形区域。现在,这个无穷小矩形的面积是dxdy。当这个矩形经过F(x,y)变换时会发生什么?我们将F(x,y)应用于这四个坐标中的每一个,并得到以下几点:

代码语言:javascript
复制
A:(x,y)->(f1(x,y),f2(x,y))
B:(x+dx,y) -> (f1(x+dx,y),f2(x+dx,y)) (approx.)= (f1(x,y) + (∂f1/∂x)dx,f2(x,y) + (∂f2/∂x)dx)
C:(x,y+dy) -> (f1(x,y+dy),f2(x,y+dy)) (approx.)= (f1(x,y) + (∂f1/∂y)dy,f2(x,y) + (∂f2/∂y)dy)
D:(x+dx,y+dy) -> (f1(x+dx,y+dy),f2(x+dx,y+dy)) (approx.)=(f1(x,y) + (∂f1/∂x)dx + (∂f1/∂y)dy,f2(x,y) + (∂f2/∂x)dx + (∂f2/∂y)dy)

等式近似相等,在dx和dy = 0的极限下,它们是函数F在新点上的最佳线性逼近。(我们从函数f1和f2的泰勒逼近的一阶部分得到这些结果)。

如果我们查看变换F(x,y)下的新(近似)区域,我们会看到转换点a之间的新距离向量:

代码语言:javascript
复制
B-A:((∂f1/∂x)dx,(∂f2/∂x)dx)
C-A:((∂f1/∂y)dy,(∂f2/∂y)dy)
D-C:((∂f1/∂x)dx,(∂f2/∂x)dx)
D-B:((∂f1/∂y)dy,(∂f2/∂y)dy)

正如你所看到的,新转换的无穷小区域是一个平行四边形。让:

代码语言:javascript
复制
u=((∂f1/∂x)dx,(∂f2/∂x)dx)
v=((∂f1/∂y)dy,(∂f2/∂y)dy)

这些向量构成了我们平行四边形的边。借助于u和v之间的交叉积,可以看出平行四边形的面积是:

代码语言:javascript
复制
area^2 = (u1v2 - u2v1)^2 = ((∂f1/∂x)(∂f2/∂y)dxdy - (∂f2/∂x)(∂f1/∂y)dxdy)^2
area^2 = ((∂f1/∂x)(∂f2/∂y) - (∂f2/∂x)(∂f1/∂y))^2 (dxdy)^2
area = |(∂f1/∂x)(∂f2/∂y) - (∂f2/∂x)(∂f1/∂y)|dxdy (dx and dy are positive)
area = |det([∂f1/∂x, ∂f1/∂y],[∂f2/∂x, ∂f2/∂y])|dxdy

所以,我们要取的矩阵就是Jacobian矩阵的行列式。就像我一开始说的,这个导子可以推广到n的任意维数,如果坐标变换函数F是光滑的,雅可比矩阵是可逆的,具有非零行列式。

对此有一个很好的直观解释,请参见:introduction

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40957639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档