Others attractors...
Various types of attractors with trigonometric functions
Pickover
default values
3D attractors are point clouds generate from sequences of numbers pn{xn,yn,zn} ⇒ pn ∈ R3, n ∈ N,
where n0→∞ denotes the step of the iteration process starting from a initial p0{x0,y0,z0} point.
In the cloud each next point is function of the previous one:
\[ \eqalign { x_{i+1} = \xi(x_i, y_i, z_i) & \\ y_{i+1} = \phi(x_i, y_i, z_i) & \\ z_{i+1} = \psi(x_i, y_i, z_i) & } \qquad \Bigg\{ \eqalign { & x, y, z \in R \\ & [0, i, n_{\rightarrow\infty}[ \text{ } \Rightarrow i,n \in N \\ } \]
In the computational code:
p(x,y,z) represent the i-th point pi{xi,yi,zi}
kj→m are constant values characteristic of any single attractor, where k ∈ R and [0,j,m] ⇒ j,m ∈ N
pNew ∈ R3 is the new point: pi+1{xi+1,yi+1,zi+1} that will calculated
In the ATTRACTORS window of glChAoS.P:
left side panel contains starting point coordinates p0{x0,y0,z0}
right side panel contains constant values used in the expression of the current attractor, where: kj = k[j]
kj values can also be generated randomly between [min, kj, max] interval.
Colors are indicative of point speed: distance between pi and pi+1
You can to start wglChAoS.P with a specific attractor directly from explore button.
Select lowResources for low resources devices (e.g. mobile devices)
Resolution:
X
render in new window
|
\begin{align} x_{i+1} & = sin(k_0 \centerdot y_i) + z_i \centerdot cos(k_1 \centerdot x_i) \\ y_{i+1} & = z_i \centerdot sin(k_2 \centerdot x_i) - cos(k_3 \centerdot y_i) \\ z_{i+1} & = sin( x_i)\\ \end{align}
explore
pNew.x = sin(kVal[0]*p.y) - p.z*cos(kVal[1]*p.x); pNew.y = p.z*sin(kVal[2]*p.x) - cos(kVal[3]*p.y); pNew.z = sin(p.x) ;
\begin{align} x_{i+1} & = & cos(k_0 \centerdot x_i) + sin(k_1 \centerdot y_i) - sin(k_2 \centerdot z) \\ y_{i+1} & = & sin(k_3 \centerdot x_i) - cos(k_4 \centerdot y_i) + sin(k_5 \centerdot z) \\ z_{i+1} & = & -cos(k_6 \centerdot x_i) + cos(k_7 \centerdot y_i) + cos(k_8 \centerdot z) \\ \end{align}
explore
pNew.x = cos(kVal[0]*p.x) + sin(kVal[1]*p.y) - sin(kVal[2]*p.z); pNew.y = sin(kVal[3]*p.x) - cos(kVal[4]*p.y) + sin(kVal[5]*p.z); pNew.z = -cos(kVal[6]*p.x) + cos(kVal[7]*p.y) + cos(kVal[8]*p.z);
\begin{align} x_{i+1} & = sin(z_i \centerdot k_0) + k_3 \centerdot sin(x_i \centerdot k_0) \\ y_{i+1} & = sin(x_i \centerdot k_1) + k_4 \centerdot sin(y_i \centerdot k_1) \\ z_{i+1} & = sin(y_i \centerdot k_2) + k_5 \centerdot sin(z_i \centerdot k_2) \\ \end{align}
explore
pNew.x = sin(p.z * kVal[0]) + kVal[3] * sin(p.x * kVal[0]); pNew.y = sin(p.x * kVal[1]) + kVal[4] * sin(p.y * kVal[1]); pNew.z = sin(p.y * kVal[2]) + kVal[5] * sin(p.z * kVal[2]);