0

在此处输入图像描述 在此处输入图像描述

假设你有f(x)=x-floor(x).

在此处输入图像描述

通过这种方式,您可以通过将顶部和底部粘合在一起然后将左侧挤压为零来生成凹槽 - 现在您有一个锥形螺旋:线围绕锥形旋转直到它碰到底部。你已经有了圆锥螺旋方程的一种形式,即x=a*cos(a); y=a*sin(a); z=a。现在像 这里

你如何在 Matlab 中将锥形螺旋投影到圆锥上?

4

1 回答 1

4

我会在不使用的情况下解决您的问题plot3,而是使用meshgridand sinc。请注意,这sinc是一个 matlab 内置的函数,sin(x)./x例如:

在此处输入图像描述

所以在一维中,如果我理解正确,你想sinc(x)sqrt(x.^2). 你的问题的问题是你提到了点积的投影,但是点积会降低维度,所以两个向量的点积给出一个标量,两个二维表面的一个向量,所以我不明白什么你的意思是。从您添加的二维图中,我将问题解释为将一个功能与另一个功能“搭配”,例如...

这是实现:

N=64;
[x y]=meshgrid(linspace(-3*pi,3*pi,N),linspace(-3*pi,3*pi,N));
t=sqrt(x.^2+y.^2);
f=t+2*sinc(t);

subplot(1,2,1)
mesh(x,y,f) ;      axis vis3d

subplot(1,2,2)
mesh(x,y,f)
view(0,0) ;  axis square
colormap bone

在此处输入图像描述

中的因素2sinc为了更好地可视化 的波动sinc

于 2013-01-28T06:17:03.420 回答