GİRİŞ Uygulamadaki genel amac Mandelbrot setinin MPI kutuphanesini kullanarak paralel olarak hesaplanmasıdır. Hesaplama esnasında yuk dengelemesinin dinamik olarak yapılması istenmiştir.MANDEBROT SETİ Mandelbrot seti karmaşık duzlemde bir fraktalı bicimlendiren noktalar kumesidir. Mandelbrot seti z2+c formulune gore (0,0) noktasının yorungesinde kalan ve belirli bir uzaklığı aşmayan c karmaşık sayılar kumesidir.
Mandelbrot seti, estetik gorunumu ve kolay bir formulden hesaplanabilen karmaşık goruntusuyle matematik dışındaki alanlarda da populer olmuştur. Aşağıdaki basit formulden hesaplanmaktadır.
, z ve c karmaşık sayıdır.
f fonksiyonunun surekli olarak yeni z değerleri icin hesaplanmasıyla bir c noktasının mandelbrot seti icerisinde yer alıp almadığı belirlenir. f fonksiyonunun hesaplanması esnasında eğer bir c noktası belirlenen aralıkta kalıyorsa, c noktası mandebrot seti icerisindedir.
Mandelbrot seti hesaplanırken herhangi bir c sayısının hesaplanması sonsuza kadar gidebileceği icin hesaplamanın bitmesi icin maksimum iterasyon sayısı belirlenir. Eğer c noktasının belirlenen aralıktan cıkması maksimum iterasyon sayısından daha az sayıda iterasyonda gercekleşiyorsa hesaplama durdurulur. Aksi durumda c noktası icin iterasyon sayısı, maksimum iterasyon sayısı olur.MANDELBROT SETİNİN RESME AKTARILMASI Mandelbrot setinin guzel yanı iki boyutlu bir resme aktarıldığında ortaya cıkmasıdır. Bunun icin resim icerisindeki x,y koordinatları belirli bir aralığa izduşurulur. İzduşurulen bu değerler hesaplama icin gerekli c sayısını oluştururlar. c sayısı icin hesaplanan iterasyon sayısı mevcut piksel icin parlaklık seviyesini oluşturur.

Mandelbrot setini [-2,-2] , [2,2] aralığına izduşurursek set icerisindeki tum noktaları gorebiliriz. Ayrıca belirlenen aralıktan cıkma sayısı (kacış sayısı) sıfırdan farklı noktaları da tamamıyla gorebiliriz.
İzduşurme sırasında 800x600 cozunurluklu bir resim oluşturmak isteyelim. Bunun icin resim piksellerinden (0,0), (-2,-2) noktasına izduşurulur. (800,600) noktası ise (2,2) noktasına izduşurulur. Kalan pikseller icin de aşağıdaki şekilde hesaplanabilir.

a=minimum_x + piksel_x / sutun_sayisi * (maksimum_x – minimum_x)
b= minimum_y + piksel_y / satır_sayisi * (maksimum_y – minimum_y)
Ustteki formulde C iterasyon sayısını hesaplayacağımız karmaşık sayıdır. a, C sayısının gercek kısmı; b ise imajiner kısmıdır. minimum_x ve maksimum_x değerleri sırasıyla izduşureceğimiz aralığın x ve y eksenindeki minimum değerleridir. Aynı şekilde maksimum_x ve maksimum_y de izduşum alanının maksimum koordinat değerleridir. satır_sayısı ve sutun_sayısı değerleri ise resmimizin cozunurluğunu belirleyen değerlerdir. Resim uzerindeki her nokta icin f fonksiyonunun değeri hesaplanırsa, noktalar icin hesaplanan iterasyon sayıları o noktanın rengi (parlaklık seviyesi) olarak belirlenebilir.
Mandelbrot setinin hesaplanması icin aşağıdaki kod kullanılmıştır.

Kod:
int pixelHesapla(double x,double y) while(sayi