Суперформула (уравнение)

Суперформула является обобщением суперэллипса и впервые была выведена Йоханом Гиелисом в 2003 году.[1] Гиелис предположил использовать формулу для описания сложных форм и кривых, которые встречаются в природе.

Некоторые примеры суперформулы: a = b = 1; m, n1,n2 и n3 , указаны под изображениями

В полярной системе координат с радиусом и углом суперформула выглядит так:

Выбирая различные значения параметров , получаются различные формы.

Формула получена путём обобщения суперэллипса, который, в свою очередь, был выведен французским математиком Габриелем Ламе, а назван и популяризирован датским математиком Питом Хейном.

Обобщение

Суперформулу можно обобщить, заменив параметр m двумя новыми параметрами y и z:[2]

Это позволяет создавать асимметричные и вложенные структуры. В следующих примерах и равны 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);
  end

3 мерная суперформула: 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/
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.