我初学到matlab . 还在学习它 . 最近我被要求计算三个速度分量的卷曲并绘制其轮廓w.r.t沿x轴的圆周角和沿y轴的半径 . 数据u,v和w由我预先计算如下
u = V * Cos(beta)* cos(alpha); %V是以m / s为单位的速度,α是β,β是以弧度表示的角度
同样
v = V * cos(beta)* sin(alpha);
w = V * sin(alpha)
有人最近评论说要启用mat实验室的卷曲功能,我的u,v和w数据应该是笛卡尔坐标 . 我依旧说虽然我的初始数据是球面坐标(V,alpha,beta),但我使用u,v和w的坐标转换并将我的数据转换为笛卡尔坐标 .
他进一步回答说“不仅你,v,w应该是笛卡儿,但它的相对数据x,y,z也应该是笛卡尔坐标”
我得到它 . 谁能说出他想说的话,或者我是否可以在matlab中使用curl功能
我会对你的帮助和回答感到满意
1 回答
我没有尝试过这个函数,但就它而言,它涉及坐标
u
,v
,w
从x
,y
,z
定义每个网格空间的力 . 但是,help on mathworks homepage表示x
,y
,z
当转换为笛卡儿时,这可能是球坐标的麻烦 . 我认为任何坐标(但不是所有坐标)的弱单调都可行,但球面坐标不适用于此 . 您可以尝试的是转换坐标,但要确保网格是单调的 . 我的意思是,你确保笛卡尔坐标系中的网格保持单调而不是球形 .
因此,更明确的答案是,在需要增加的时候至少有1个坐标需要不减小,但每个点的力可以将球面坐标的值变换为相应的笛卡尔值 .
除此之外,我建议您使用球面坐标的正式定义,它将alpha定义为从
z
到xy
-plane的角度(alpha = 0
是z
-axis) . 我还建议您使用更常见的坐标名称 .r
,phi
和theta
.