我想绘制一个心形线框,如下图所示(来源):

我试图通过使用这个MATLAB程序来实现它:
n=100;
x=linspace(-3,3,n);
y=linspace(-3,3,n);
z=linspace(-3,3,n);
[X,Y,Z]=ndgrid(x,y,z);
F=((-(X.^2) .* (Z.^3) -(9/80).*(Y.^2).*(Z.^3)) + ((X.^2) + (9/4).* (Y.^2) + (Z.^2)-1).^3);
isosurface(F,0)
lighting phong
caxis
axis equal
colormap('flag');
view([55 34]);
Run Code Online (Sandbox Code Playgroud)
但是我没有得到所需的框架形状,如图所示.
我已经确定了问题:创建线框我们通常使用命令mesh().但是这个绘图工具只允许我们绘制两个变量的函数,如z=f(x,y).但是我的程序使用了三个变量:F(x,y,z).
我该如何解决这个问题?
鉴于矩阵:
A = [1 2 3; 4 5 6; 7 8 9];
Run Code Online (Sandbox Code Playgroud)
sum对矩阵元素求和A.1)
for j=1:3,
for i=j:3,
A(i,:) = A(i,:)+A(j+1,:)+A(j+2,:)
end
end
Run Code Online (Sandbox Code Playgroud)
2)
sum(A)
Run Code Online (Sandbox Code Playgroud)
这些是正确答案吗?我不知道怎么用if,while而且for.有谁可以向我解释一下?
我希望除p(x)以下q(x):
p(x)=-5x^4+3x^2-6x
q(x)=x^2+1
Run Code Online (Sandbox Code Playgroud)
我试过了:
p=inline('-5*(x^4)+3*(x^2)','x')
p =
Inline function:
p(x) = -5*(x^4)+3*(x^2)
q=inline('x^2+1','x')
q =
Inline function:
q(x) = x^2+1
deconv(p,q)
Run Code Online (Sandbox Code Playgroud)
但得到了错误:
??? Undefined function or method 'filter' for input arguments of type 'inline'.
Error in ==> deconv at 32
[q,zf] = filter(b, a, [1 zeros(1,nb-na)]);
Run Code Online (Sandbox Code Playgroud)
为什么?
我想y(t)从等式中计算函数:
y(t) = -3t^2+5, t>=0
y(t) = 3t^2+5, t<0
for -9 <= t <= with the step-size 0.5
Run Code Online (Sandbox Code Playgroud)
我想用MATLAB绘制它.我以两种方式处理这个问题:
t=0:0.5:9
y=-3*t^2+5
t1=-0.00000000001:0.5:-9
y1=3*t^2+5
plot(t,y,t1,y1)
Run Code Online (Sandbox Code Playgroud)
t=-9:0.5:9
if(t>=0)
y=-3*(t.^2)+5
else
y=3.*(t.^2)+5
end
plot(t,y)
Run Code Online (Sandbox Code Playgroud)
我的问题是上面的两种方式似乎没有给出相同的答案......哪一个是正确的答案?