% @(#)createart_.hlq 17.1.1.1 (ESO-IPG) 01/25/02 17:14:49 %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %.COPYRIGHT (c) 1990 European Southern Observatory %.IDENT createart_.hlq %.AUTHOR KB, IPG/ESO %.KEYWORDS MIDAS, help files, CREATE/ART_IMAGE %.PURPOSE On-line help file for the command: CREATE/ART_IMAGE %.VERSION 1.0 07-NOV-1990 : Creation, KB %---------------------------------------------------------------- \se SECTION./ART_ \es\co CREATE/ART_IMAGE 26-FEB-1992 PB \oc\su CREATE/ART_IMAGE frame frame dims [starts,steps] [func_type] [coefs] CREATE/ART_IMAGE frame = ref_frame [func_type] [coefs] create artificial image \us\pu Purpose: Create a new artifical image frame. \up\sub Subject: Artificial frames, models, fractals. \bus\sy Syntax: CREATE/ART_IMAGE frame [dims] [starts,steps] [func_type] [coefs]\\ or\\ CREATE/ART_IMAGE frame = ref_frame [func_type] [coefs] \ys\pa frame = name of new frame \ap\pa ref_frame = reference frame, i.e. take all descriptors from that frame \ap\pa dims = NAXIS,NPIX(1),...,NPIX(NAXIS); default: 2,512,512 \ap\pa starts,steps = START(1),...,START(NAXIS),STEP(1),...,STEP(NAXIS)\\ default: = -1.3 for START(i), = 0.005 for STEP(i)\\ Start and step may have to be adapted depending on the chosen function and coefficients. \ap\pa func_type = type of function used to define the content of the created image:\\ MANDEL for creation of Mandelbrot set \\ JULIA for creation of Julia set\\ LORENZ for creation of Lorenz attractors \\ ELFLY for simulation of a chaotic system (electronic fly)\\ COLWHEEL for creation of a colour wheel\\ Default: LORENZ \ap\pa coefs = coefficients for the function which is used to create the image, number and meaning depends on the parameter func_type:\\ MANDEL zx,zy,uplimit default: .31,.04,100\\ JULIA zx,zy,uplimit default: .31,.04,100\\ LORENZ x0,y0,z0,h,a,b,n_iter \\ default: 1,1,1,.01,28,0.1,10000\\ ELFLY a,b,c,d,e,f,n_iter \\ default: 2.24,.43,-.65,-2.43,1.,300000 \ap\no Note: For MANDEL and JULIA, the coefficients represent zx,zy,uplimit where zx and zy are the real and imaginary part of a complex number zz, which serves as the initial value for z in the formula:\\ z <- z*z + c \\ the real and imaginary parts of c are the x,y coords \\ If after 256 iterations z <= uplimit, the pixel at (x,y) is set to 0.0, else pixel <- iteration_no . \\ For ELFLY, the coefficients represent a,b,c,d,e,f,no_iter where a,b,c,d,e,f are control parameters and no_iter the number of loops for evaluation of the formulaes:\\ xx = sin(a*y) - z*cos(b*x)\\ yy = z*sin(c*x) - cos(d*y)\\ zz = e*sin(x)\\ x = xx, y = yy, z = zz.\\ the pixel value at resulting x,y coords (z is discarded) is increased by 1.0 . \\ For LORENZ, the coefficients represent x0,y0,z0,h,a,b,no_iter where x0,y0,z0 are the inital value for a point in space, h,a,b are coefficients and no_iter the number of loops for evaluating the formulae:\\ xx = x + 10.*h*(y-x)\\ yy = y = h*((-x*z)+a*x-y)\\ zz = z + h*(x*y-b*z)\\ x = xx, y = yy, z = zz.\\ the pixel value at resulting x,y coords (z is discarded) is set to 1.0 . \on\exs Examples: \ex CREATE/ART mandel ? -1.6,-1.3,0.05,0.05 MANDEL \xe\ex CREATE/ART julia P4=JULIA \xe\ex CREATE/ART lorenz ? -25,-25,0.1,0.1 LO .1,.1,.1,.01,28,2.66,4000 \xe\ex CREATE/ART elfly ? -2.5,-2.5,0.01,0.01 ELFLY 2.24,.43,-.65,-2.43,1,300000 \xe\sxe