Mathematical Art and Visualisation

January 27, 2015     Major update. New algorithms and old projects.

November 16, 2014     Domino building and computation.
March 19, 2014     New design study.

parametric fractals                                    

 

  


Orbit Trap blog     HiRes: 7680x5760x36MB
 

fractals                              

 

       

glass                                          



plasma                                                            


simple algorithms for 2D      

  Simple Explicit
 
Chessboard pattern

z = sin(2*x+y)*cos(2*y-x);
if z>0
  RGB(i,j,1:2) = 0.9-y/10;
  RGB(i,j,3) = 1;
else
  RGB(i,j,1) = 0.3+(x-3)/20;
end
 
Archimedean spirals

phi = atan2(y,x)+sqrt(x^2+y^2);
T = (1+cos(6*phi+pi));

RGB(i,j,1) = T/2*mod(phi/pi,1);
RGB(i,j,2) = T/3*mod(phi/pi+1/3,1);
RGB(i,j,3) = T/4*mod(phi/pi+2/3,1);


 
Isoline pattern

z = sin(x) + cos(y) + cos(x/3);

RGB(i,j,1) = 30*sin(7*z)-28;
RGB(i,j,2) = RGB(i,j,1)/1.5;
RGB(i,j,3) = -30*sin(7*z)-29.2;
  Advanced Explicit
 
Chladni Plate Patterns

u = [0.5-rand 0.5-rand]';
u = u/norm(u)/2;
v = rand;

U = u(1)*x-u(2)*y + v;
f = cos(N*pi*x/L)*cos(M*pi*y/L);
f = f - cos(M*pi*x/L)*cos(N*pi*y/L);
f = 1.3/(1+(5.25+4.75*sin(U))*100*f*f)-rand/2;

RGB(i,j,:) = f;
 
Mandelbrot Fractal

x0 = x;
y0 = y;
n  = 0;
rho = x^2 + y^2;
while rho < 16 && n < 21
  phi = 2*atan2(y,x);
  x = rho*cos(phi) + x0;
  y = rho*sin(phi) + y0;
  n = n+1;
  rho = x^2 + y^2;
end

if n<21
  RGB(i,j,1) = (n-2)/18;
  RGB(i,j,2) = (n-5)/15;
  RGB(i,j,3) = (n-10)/10;
end


  Plasma Helix - crosseye stereoscopic
z = -3; T = 0; t = 0; t0 = 0; w = x; istep = 0;
while z<3
  S = sqrt(y*y+z*z)-2+0.5*sin(3*x+atan2(y,z)-2*sqrt(y*y+z*z))
  t0 = t; t = 3/(1+exp(100*(abs(S)-0.02)));
  T = T + (t0+t)/2*istep;
  istep = max(0.001,abs(S)/5-0.01);
  z = z + istep;
  x = x + w*istep*0.05;
end
T = 2/pi*atan(T);
RGB(i,j,:) = [T^2 T^3 T];

 

Rotating view 400x400 28 MB

Threshold variation 640x640 14 MB
 
Plasma Gyroid

z = -2;
T = 0; t = 0; t0 = 0;
istep = 0;

while z<0
  rho = 3 + 50/(1+(sqrt(x*x+y*y+z*z)+1)^2);
  S = -(cos(x*rho)*sin(y*rho) + cos(y*rho)*sin(z*rho) + cos(z*rho)*sin(x*rho) + 2 - 16/(16+x^4+y^4+z^4));
  t0 = t; t = 15/(1+exp(200*(abs(S)-0.02)));
  T = T + (t0+t)/2*istep;
  istep = max(0.001,abs(S)/55-0.01);
  z = z + istep;
end
T = 2/pi*atan(T);

RGB(i,j,:) = [T^2.5 T^3 T];

download m-file
  Parametric 1D


 
Harmonograph

for k = 0:pi/500:200*pi
  x =  cos(k/200*3)*sin(2*k) + sin(k/200*3)*sin(1*k) + 5.5*cos(k/100);
  y = -sin(k/200*3)*sin(2*k) + cos(k/200*3)*sin(1*k) + 2.5*sin(k/100);
end

Defocused, background [0.9 0.9 0.7]
  Parametric 2D


 
Water caustics

30 random wave functions
Snell's law
Calculated from 85 million points on the water surface

science and engineering      

  Beam bending in perfect plasticity
  Pressure Vessel - assembly and pressurization
  Elastic wire simulation study



domino building and computation      

  Theory

coming soon
 
  Logic AND gates
 
 
 

  Logic OR gates
 

  Dry domino structures - beechwood 50258 mm
  Tower of Pi, 750 pieces




 






miscellaneous

Merkur Airgun (2001)





Spaghetti bridge (2001)



 
Merkur Airgun (2005)





Hotel fork hanger hack

    links

Fractal Forums


Paul Nylander


Torolf Sauermann


Michael Hansmeyer


Brady Haran: Nottingham Science



Feel free to contact the author[at]math-art.cz