2016-09-11 3 views
-2

Я пытаюсь построить эту сферу функцию http://www.sfu.ca/~ssurjano/spheref.htmlЯ не могу построить функцию сферы в Matlab, что я могу сделать?

Авторы: Sonja Surjanovic, Simon Fraser University

%   Derek Bingham, Simon Fraser University 

INPUT: 
% 
% xx = [x1, x2, ..., xd] 
% 


d = length(xx); 
sum = 0; 
for ii = 1:d 
    xi = xx(ii); 
    sum = sum + xi^2; 
end 

y = sum; 

end 

, но я не понимаю, что мне нужно сделать, потому что функция возвращает сумму, это всего лишь одно число, но для построения в 3d нам нужны 3 аргумента. И какой тип аргументов описывается?

+0

уже сделал, но не отвечает –

ответ

0

Эта функция f(x) используется только для определения только одной точки в n-мерном пространстве. Например, для определения сферы вы можете использовать уравнение f(xx)=3^2, где xx=[x1,x2,x3], 3 - радиус сферы.

Для построения сферы единичного радиуса, состоящей из 20-по-20 граней в MATLAB можно использовать

figure 
sphere 

Или если хотите построить сферу с радиусом radius с центром в (x0,y0,z0), состоящей из 100 в каждом конкретном 100 граней

[X,Y,Z] = sphere(100); % 100 is the number for faces 
x0 = 5; 
y0 = 6; 
z0 = 7; 
radius = 3; 
surf(radius*X-x0, radius*Y-y0, radius*Z-z0) 
+1

спасибо Александр Коровин –

+0

Приглашаем вас, и добро пожаловать в StackOverflow. Если ответ поможет, пожалуйста, «повысьте его» (нажмите на треугольник) и, возможно, «примите его» (нажмите на отметку ниже треугольника внизу). Вот как это работает здесь. –

Смежные вопросы