Programa para el testeo de las funciones.Para compilar o código example_complex_fractal3.cpp:
g++ -static -o example_complex_fractal3 example_complex_fractal3.cpp -lpdsramm
Para executar o programa:
./example_complex_fractal3
Retornando por consola:
Z=Z*Z*Z+C
Código example_complex_fractal3.cpp:
#include <Pds/Ca>
#include <Pds/Ra>
int main(void)
{
unsigned int L=512;
unsigned int i;
Pds::Vector X=Pds::LinSpace(-2,2,L);
Pds::Vector Y=Pds::LinSpace(-2,2,L);
Pds::Matrix W(L,L);
for(unsigned int lin=0;lin<L;lin++)
for(unsigned int col=0;col<L;col++)
{
Z=0;
C.
Rect(X.Get(lin),Y.Get(col));
for(i=0; (i<255)&&(std::isfinite(Z.
Module())) ; i++)
{
Z=Z*Z*Z+C;
}
if(std::isfinite(Z.
Module())) W.At(lin,col)=255;
else W.At(lin,col)=i;
}
W.ExportBmpFile (Pds::Colormap::Jet,"mandelbrot3.bmp");
return 0;
}
La clase tipo Pds::Complex . Esta clase genera un objeto con dos parametros Nlin y Ncol....
void Rect(double Real, double Imag)
Carga el número complejo indicando la parte real e imaginaria.
double Module(void) const
Retorna el modulo de si mismo (A).