求助:在Desmos中实现函数f(x,y)对应3D流形上测地线近似追踪的关键步骤
求助:在Desmos中实现函数f(x,y)对应3D流形上测地线近似追踪的关键步骤
各位大佬好!我之前发过相关的帖子,这次做了更深入的研究,觉得这个问题足够具体,值得单独开帖求助——我最近一直在用Desmos计算器,想实现3D流形M(由函数f(x,y)定义)上测地线的近似追踪,目前已经梳理出了一个「步进式」的思路,但卡在了关键环节,想请教大家怎么解决。
先提前说明下我用到的符号定义(不确定这些是不是Desmos专属的写法,先列出来避免歧义):
L[n]:表示列表L的第n个元素A.c:表示坐标点A在c轴(x/y/z)上的坐标值
我的整体实现思路
我打算用Desmos里的**迭代动作(action命令)**来实现近似追踪,核心逻辑是从起点P和初始速度向量V出发,一步步迭代更新:
- 起点P是流形M上的点:
(x₁, y₁, f(x₁, y₁)) - 初始速度向量V定义为:
(Vₓ, Vᵧ, f(Vₓ, Vᵧ)) - 迭代步骤:
- 先让P沿着V的方向移动(用Desmos的
n → [action]格式,类似P → P + V这样的动作) - 找到流形M上离这个新P最近的点,记为N
- 初始化一个空列表
L = [],然后迭代更新列表:L → [P, N] - 把P迭代更新为N:
P → N,让P回到流形上的点 - 计算速度变化向量C:C的各分量为
C.x = L[1].x - L[2].x、C.y = L[1].y - L[2].y、C.z = L[1].z - L[2].z - 迭代更新速度向量V:
V → C,作为下一次步进的方向 - 重复上述迭代过程,就能近似画出测地线的路径
- 先让P沿着V的方向移动(用Desmos的
卡住的关键问题
目前整个框架的逻辑我都想清楚了,但唯独不知道怎么在Desmos里完成这两个操作:
- 找到流形M上离给定点P最近的点N
- 计算线段$\overline{NP}$的长度
有没有熟悉Desmos的大佬能指点一下怎么实现这两个步骤呀?感激不尽!
备注:内容来源于stack exchange,提问作者Ivy
相关产品推荐
相关产品推荐

