隐式曲面的切平面与法线
自从R2021b
这个例子展示了如何找到隐式曲面的切平面和法线。此示例使用符号矩阵变量(带有symmatrix
数据类型)用于紧凑的数学符号。
曲面可以隐式地定义,如球面 .一般来说,隐式曲面由方程表示 .这个例子求出了一个有半径的球的切平面和法线 .
创建一个符号矩阵变量 表示 坐标。定义球面函数为 .
清晰;关闭所有;clc信谊r3 [1]矩阵F = r*r。”
f =
隐式方程
表示一个球体。将方程转化为信谊
使用数据类型symmatrix2sym
.用fimplicit3
函数。
Feqn = symmatrix2sym(f == 14)
feqn =
fimplicit3 (feqn)轴平等的轴([-6 6 -6 6 -6 6])
接下来,求出该点的切平面和法线 .
回忆一下梯度向量 是 .这一点的切平面方程 然后由 .在简洁的数学符号中,切平面方程可以写成 .
求的梯度
使用梯度
函数。注意,结果是一个3乘1的符号矩阵变量。
Fgrad =梯度(f,r)
fgrad =
大小(fgrad)
ans =1×23个1
定义切平面的方程。使用潜艇
函数求该点的梯度值
.
R0 = [-2,1,3];Fplane = (r-r0)*subs(fgrad,r,r0)
fplane =
画出点
使用plot3
的切线平面fimplicit3
.
持有在plot3 (r0(1)、r0(2)、r0 (3),“罗”,MarkerSize = 10,MarkerFaceColor =“r”) fimplicit3(symmatrix2sym(fplane == 0))
这一点的法线方程 是由 .在简洁的数学符号中,方程可以写成 .
定义法线方程。
信谊tN = r0 + t*子(fgrad,r,r0)。'
n =
将法线方程转化为信谊
使用数据类型symmatrix2sym
.提取参数曲线
,
,
对于法线,下标到n
.绘制法线fplot3
.
N = symmatrix2sym(N)
n =
fplot3 (n(1),(2)、n (3), (0 - 1),的r - >)