Суперформула является обобщением суперэллипса и впервые была выведена Йоханом Гиелисом в 2003 году. Гиелис предположил использовать формулу для описания сложных форм и кривых, которые встречаются в природе.
В полярной системе координат с радиусом и углом суперформула выглядит так:
Выбирая различные значения параметров , получаются различные формы.
Формула получена путём обобщения суперэллипса, который, в свою очередь, был выведен французским математиком Габриелем Ламе, а назван и популяризирован датским математиком Питом Хейном.
Обобщение Суперформулу можно обобщить, заменив параметр m двумя новыми параметрами y и z:
Это позволяет создавать асимметричные и вложенные структуры. В следующих примерах и равны 1:
Построения
Пример программы в GNU Octave для генерации этих фигур: function sf2d(n,a) u=[0:.001:2*pi]; raux=abs(1/a(1).*abs(cos(n(1)*u/4))).^n(3)+abs(1/a(2).*abs(sin(n(1)*u/4))).^n(4); r=abs(raux).^(-1/n(2)); x=r.*cos(u); y=r.*sin(u); plot(x,y); end3 мерная суперформула: a = b = 1; m, n1, n2 И n3 , показаны на изображениях.
Пример программы в GNU Octave для генерации этих фигур: function sf3d(n, a) u=[-pi:.05:pi]; v=[-pi/2:.05:pi/2]; nu=length(u); nv=length(v); for i=1:nu for j=1:nv raux1=abs(1/a(1)*abs(cos(n(1).*u(i)/4))).^n(3)+abs(1/a(2)*abs(sin(n(1)*u(i)/4))).^n(4); r1=abs(raux1).^(-1/n(2)); raux2=abs(1/a(1)*abs(cos(n(1)*v(j)/4))).^n(3)+abs(1/a(2)*abs(sin(n(1)*v(j)/4))).^n(4); r2=abs(raux2).^(-1/n(2)); x(i,j)=r1*cos(u(i))*r2*cos(v(j)); y(i,j)=r1*sin(u(i))*r2*cos(v(j)); z(i,j)=r2*sin(v(j)); endfor; endfor; mesh(x,y,z); endfunction;
Примечания
Ссылки Сайт о суперформуле и её создателе Джоне Гиелисе http://genicap.com/
Категория:Кривые Категория:Геометрические фигуры Категория:Поверхности