How do I draw zero level set of a function in matlab? (Based on my knowledge, it would be a sphere)

7 次查看(过去 30 天)
I attached my script here.
clear
N=4; k=[0:N/2-1 0 -N/2+1:-1]; l=[0:N/2-1 0 -N/2+1:-1]; m=[0:N/2-1 0 -N/2+1:-1];
t=0; dt=.01; T=200; eps=.01; % epsilon in the equation; Meps=1/eps; Mv=100; Ma=100; r0=1;
phi0=zeros(N,N,N);
for i=1:N for j=1:N for n=1:N
fun1 = @(x,y,z) [cos(pi*(k(i)*x+l(j)*y+m(n)*z))-1i*sin(pi*(k(i)*x+l(j)*y+m(n)*z))].*tanh((r0-sqrt(x.^2 +y.^2 +z.^2 ))/eps);
phi0(i,j,n)=integral3(fun1,-1,1,-1,1,-1,1);
end
end
end

采纳的回答

Steven Lord
Steven Lord 2017-8-2
Use an isosurface as shown on this documentation page.

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by