Dosya:Color complex plot.jpg - Vikipedi
İçeriğe atla
Ana menü
Gezinti
  • Anasayfa
  • Hakkımızda
  • İçindekiler
  • Rastgele madde
  • Seçkin içerik
  • Yakınımdakiler
Katılım
  • Deneme tahtası
  • Köy çeşmesi
  • Son değişiklikler
  • Dosya yükle
  • Topluluk portalı
  • Wikimedia dükkânı
  • Yardım
  • Özel sayfalar
Vikipedi Özgür Ansiklopedi
Ara
  • Bağış yapın
  • Hesap oluştur
  • Oturum aç
  • Bağış yapın
  • Hesap oluştur
  • Oturum aç

Dosya:Color complex plot.jpg

Sayfa içeriği diğer dillerde desteklenmemektedir.
  • Dosya
  • Tartışma
  • Oku
  • Wikimedia Commons üzerinde gör
  • Yerel açıklama ekle
  • Yerel açıklama kaynağı ekle
Araçlar
Eylemler
  • Oku
  • Wikimedia Commons üzerinde gör
  • Yerel açıklama ekle
  • Yerel açıklama kaynağı ekle
Genel
  • Sayfaya bağlantılar
  • Basılmaya uygun görünüm
  • Sayfa bilgisi
  • Kısaltılmış URL'yi al
  • Karekodu indir
Diğer projelerde
Görünüm
Vikipedi, özgür ansiklopedi
  • Dosya
  • Dosya geçmişi
  • Dosya kullanımı
  • Küresel dosya kullanımı
Dosya:Color complex plot.jpg
Bu önizlemenin boyutu: 600 × 600 piksel. Diğer çözünürlükler: 240 × 240 piksel | 480 × 480 piksel.
Tam çözünürlük ((800 × 800 piksel, dosya boyutu: 203 KB, MIME tipi: image/jpeg))
Bu dosya Wikimedia Commons'ta bulunmaktadır. Dosyanın açıklaması aşağıda gösterilmiştir.
Commons, serbest/özgür telifli medya dosyalarının bulundurulduğu depodur. Siz de yardım edebilirsiniz.
Bu dosya Wikimedia Commons'ta bulunmaktadır.

Özet

AçıklamaColor complex plot.jpg Color plot of complex function (x^2-1) * (x-2-I)^2 / (x^2+2+2I), hue represents the argument, sat and value represents the modulus
Tarih 7 Ağustos 2007
Kaynak Yükleyenin kendi çalışması
Yazar Claudio Rocchini
İzin
(Bu dosyanın tekrar kullanımı)
CC-BY 2.5
Diğer sürümler

Source Code

C++

This is the complete C++ source code for image generation (you must change the fun funcion to plot another one). You need some complex class implementation.

#include <complex>
#include <fstream>

using namespace std;
 
const double PI = 3.1415926535897932384626433832795;
const double E  = 2.7182818284590452353602874713527;
 
void SetHSV(double h, double s, double v, unsigned char color[3]) {
    double r, g, b;
    if(s==0)
        r = g = b = v;

    else {
        if(h==1) h = 0;
        double z = floor(h*6); int i = int(z);
        double f = double(h*6 - z);
        double p = v*(1-s);
        double q = v*(1-s*f);
        double t = v*(1-s*(1-f));

        switch(i){
        case 0: r=v; g=t; b=p; break;
        case 1: r=q; g=v; b=p; break;
        case 2: r=p; g=v; b=t; break;
        case 3: r=p; g=q; b=v; break;
        case 4: r=t; g=p; b=v; break;
        case 5: r=v; g=p; b=q; break;
        }
    }
    int c;
    c = int(256*r); if(c>255) c = 255; color[0] = c;
    c = int(256*g); if(c>255) c = 255; color[1] = c;
    c = int(256*b); if(c>255) c = 255; color[2] = c;
}
 
complex<double> fun(complex<double>& c ){
    const complex<double> i(0., 1.);
    return (pow(c,2) -1.) *pow(c -2. -i, 2) /(pow(c,2) +2. +2. *i);
}
 
int main(){
    const int dimx = 800; const int dimy = 800;
    const double rmi = -3; const double rma =  3;
    const double imi = -3; const double ima =  3;
 
    ofstream f("complex.ppm", ios::binary);
    f << "P6" << endl
      << dimx << " " << dimy << endl
      << "255" << endl;
 
    for(int j=0; j < dimy; ++j){
        double im = ima - (ima -imi) *j /(dimy -1);
        for(int i=0; i < dimx; ++i){		
            double re = rma -(rma -rmi) *i /(dimx -1);
            complex<double> c(re, im);
            complex<double> v = fun(c);	
            double a = arg(v);

            while(a<0) a += 2*PI; a /= 2*PI;
            double m = abs(v);
            double ranges = 0;
            double rangee = 1;

            while(m>rangee){
                ranges = rangee;
                rangee *= E;
            }

            double k   = (m-ranges)/(rangee-ranges);
            double sat = k < 0.5 ? k *2: 1 -(k -0.5) *2;
            sat = 1 - pow(1-sat, 3); sat = 0.4 + sat*0.6;

            double val = k < 0.5 ? k *2: 1 -(k -0.5) *2; val = 1 - val;
            val = 1 - pow(1-val, 3); val = 0.6 + val*0.4;

            unsigned char color[3];
            SetHSV(a,sat,val,color);
            f.write((const char*)color,3);
        }
    }
    return 0;
}

C

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <complex.h>// floor 

/* 
based on 
c++ program from :
[[:File:Color_complex_plot.jpg]]
by  	Claudio Rocchini

gcc d.c -lm -Wall

http://en.wikipedia.org/wiki/Domain_coloring



*/
 
const double PI = 3.1415926535897932384626433832795;
const double E  = 2.7182818284590452353602874713527;
 

/*

complex domain coloring 
Given a complex number z=re^{ i \theta}, 


hue represents the argument ( phase, theta ), 

sat and value represents the modulus

*/
int GiveHSV( double complex z, double HSVcolor[3] )
{
 //The HSV, or HSB, model describes colors in terms of hue, saturation, and value (brightness).
 
 // hue = f(argument(z))
 //hue values range from .. to ..
 double a = carg(z); //
 while(a<0) a += 2*PI; a /= 2*PI;


 // radius of z
 double m = cabs(z); // 
 double ranges = 0;
 double rangee = 1;
 while(m>rangee){
   ranges = rangee;
   rangee *= E;
      }
 double k = (m-ranges)/(rangee-ranges);

 // saturation = g(abs(z))
 double sat = k<0.5 ? k*2: 1 - (k-0.5)*2;
 sat = 1 - pow( (1-sat), 3); 
 sat = 0.4 + sat*0.6;

 // value = h(abs(z))
 double val = k<0.5 ? k*2: 1 - (k-0.5)*2; 
   val = 1 - val;
   val = 1 - pow( (1-val), 3); 
   val = 0.6 + val*0.4;
 
 HSVcolor[0]= a;
 HSVcolor[1]= sat;
 HSVcolor[2]= val;
return 0;
}
  
 
int GiveRGBfromHSV( double HSVcolor[3], unsigned char RGBcolor[3] ) {
        double r,g,b;
        double h; double s; double v;
        h=HSVcolor[0]; // hue 
        s=HSVcolor[1]; //  saturation;
        v = HSVcolor[2]; // = value;

        if(s==0)
                r = g = b = v;
        else {
                if(h==1) h = 0;
                double z = floor(h*6); 
                int i = (int)z;
                double f = (h*6 - z);
                double p = v*(1-s);
                double q = v*(1-s*f);
                double t = v*(1-s*(1-f));
                switch(i){
                        case 0: r=v; g=t; b=p; break;
                        case 1: r=q; g=v; b=p; break;
                        case 2: r=p; g=v; b=t; break;
                        case 3: r=p; g=q; b=v; break;
                        case 4: r=t; g=p; b=v; break;
                        case 5: r=v; g=p; b=q; break;
                }
        }
        int c;
        c = (int)(256*r); if(c>255) c = 255; RGBcolor[0] = c;
        c = (int)(256*g); if(c>255) c = 255; RGBcolor[1] = c;
        c = (int)(256*b); if(c>255) c = 255; RGBcolor[2] = c;
  return 0;
}

int GiveRGBColor( double complex z, unsigned char RGBcolor[3])
{
  static double HSVcolor[3];
  GiveHSV( z, HSVcolor );
  GiveRGBfromHSV(HSVcolor,RGBcolor);
  return 0;
}

//  
double complex fun(double complex c ){
  return (cpow(c,2)-1)*cpow(c-2.0- I,2)/(cpow(c,2)+2+2*I);} // 
 
int main(){
        // screen (integer ) coordinate
        const int dimx = 800; const int dimy = 800;
        // world ( double) coordinate
        const double reMin = -2; const double reMax =  2;
        const double imMin = -2; const double imMax =  2;
        
        static unsigned char RGBcolor[3];
        FILE * fp;
        char *filename ="complex.ppm";
        fp = fopen(filename,"wb");
        fprintf(fp,"P6\n%d %d\n255\n",dimx,dimy);
 


        int i,j;
        for(j=0;j<dimy;++j){
                double im = imMax - (imMax-imMin)*j/(dimy-1);
                for(i=0;i<dimx;++i){            
                        double re = reMax - (reMax-reMin)*i/(dimx-1);
                        double complex z= re + im*I; // 
                        double complex v = fun(z); //     
                        GiveRGBColor( v, RGBcolor);
                        
                        fwrite(RGBcolor,1,3,fp);
                }
        }
        fclose(fp);
        printf("OK - file %s saved\n", filename);

        return 0;
}

Lisanslama

Ben, bu işin telif sahibi, burada işi aşağıdaki lisanslar altında yayımlıyorum:
GNU head Bu belgenin GNU Özgür Belgeleme Lisansı, Sürüm 1.2 veya Özgür Yazılım Vakfı tarafından yayımlanan sonraki herhangi bir sürüm şartları altında bu belgenin kopyalanması, dağıtılması ve/veya değiştirilmesi için izin verilmiştir;

Değişmeyen Bölümler, Ön Kapak Metinleri ve Arka Kapak Metinleri yoktur. Lisansın bir kopyası GNU Özgür Belgeleme Lisansı sayfasında yer almaktadır.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue

w:tr:Creative Commons
atıf benzer paylaşım
Bu dosya, Creative Commons Atıf-Benzer Paylaşım 3.0 Taşınmamış lisansı ile lisanslanmıştır
Şu seçeneklerde özgürsünüz:
  • paylaşım – eser paylaşımı, dağıtımı ve iletimi
  • içeriği değiştirip uyarlama – eser adaptasyonu
Aşağıdaki koşullar geçerli olacaktır:
  • atıf – Esere yazar veya lisans sahibi tarafından belirtilen (ancak sizi ya da eseri kullanımınızı desteklediklerini ileri sürmeyecek bir) şekilde atıfta bulunmalısınız.
  • benzer paylaşım – Maddeyi yeniden düzenler, dönüştürür veya inşa ederseniz, katkılarınızı özgünüyle aynı veya uyumlu lisans altında dağıtmanız gerekir.
Bu lisanslama etiketi, dosyaya GFDL lisanslama güncelleştirmenin bir parçası olarak eklenmiştir.http://creativecommons.org/licenses/by-sa/3.0/CC BY-SA 3.0Creative Commons Attribution-Share Alike 3.0truetrue
w:tr:Creative Commons
atıf
Bu dosya, Creative Commons Atıf 2.5 Genel lisansı ile lisanslanmıştır
Şu seçeneklerde özgürsünüz:
  • paylaşım – eser paylaşımı, dağıtımı ve iletimi
  • içeriği değiştirip uyarlama – eser adaptasyonu
Aşağıdaki koşullar geçerli olacaktır:
  • atıf – Esere yazar veya lisans sahibi tarafından belirtilen (ancak sizi ya da eseri kullanımınızı desteklediklerini ileri sürmeyecek bir) şekilde atıfta bulunmalısınız.
https://creativecommons.org/licenses/by/2.5CC BY 2.5 Creative Commons Attribution 2.5 truetrue
İstediğiniz lisansı seçebilirsiniz.

Altyazılar

Bu dosyanın temsil ettiği şeyin tek satırlık açıklamasını ekleyin.
Color wheel graph of the function f(x) = (x^2 − 1)(x + 2 − i)2 / (x^2 + 2 - 2i).

Bu dosyada gösterilen öğeler

betimlenen

yaratıcı

Vikiveri ögesi olmayan bir değer

bağlantısı olmayan yazarı: Claudio Rocchini
URL: https://commons.wikimedia.org/wiki/user:Rocchini
Wikimedia kullanıcı adı: Rocchini

telif hakkı durumu

telif hakkı alınmış

telif hakkı lisansı

GNU Free Documentation License, version 1.2 or later İngilizce

Creative Commons Atıf-AynıLisanslaPaylaş 3.0 Yerelleştirilmemiş

Creative Commons Attribution 2.5 Generic İngilizce

kuruluşu

7 Ağustos 2007

dosya kaynağı

yükleyicinin orijinal eseri

ortam türü

image/jpeg

sağlama toplamı

c0f2c797263ef24ef3cb2d39a22f86ee3e4ca071

tespit yöntemi: SHA-1

dosya boyutu

208.178 bayt

boyu

800 piksel

genişliği

800 piksel

Dosya geçmişi

Dosyanın herhangi bir zamandaki hâli için ilgili tarih/saat kısmına tıklayın.

Tarih/SaatKüçük resimBoyutlarKullanıcıYorum
güncel23.06, 22 Mart 201323.06, 22 Mart 2013 tarihindeki sürümün küçültülmüş hâli800 × 800 (203 KB)YourmomblahHigher quality
09.46, 7 Ağustos 200709.46, 7 Ağustos 2007 tarihindeki sürümün küçültülmüş hâli800 × 800 (59 KB)Rocchini{{Information |Description=Color plot of complex function (x^2-1) * (x-2-I)^2 / (x^2+2+2I), hue represents the argument, sat and value represents the modulo |Source=Own work |Date=2007-08-07 |Author=Claudio Rocchini |Permission=CC-BY 2.5 }}

Dosya kullanımı

Bu görüntü dosyasına bağlantısı olan sayfalar:

  • Karmaşık analiz
  • Karmaşık sayı

Küresel dosya kullanımı

Aşağıdaki diğer vikiler bu dosyayı kullanmaktadır:

  • ar.wikipedia.org üzerinde kullanımı
    • تحليل مركب
  • ast.wikipedia.org üzerinde kullanımı
    • Analís complexu
  • az.wikipedia.org üzerinde kullanımı
    • Kompleks analiz
  • be.wikipedia.org üzerinde kullanımı
    • Камплексны аналіз
  • bn.wikipedia.org üzerinde kullanımı
    • জটিল সংখ্যা
  • ckb.wikipedia.org üzerinde kullanımı
    • شیکاریی ئاوێتە
  • cs.wikipedia.org üzerinde kullanımı
    • Komplexní analýza
  • cy.wikipedia.org üzerinde kullanımı
    • Dadansoddiad cymhlyg
  • da.wikipedia.org üzerinde kullanımı
    • Kompleks analyse
  • en.wikipedia.org üzerinde kullanımı
    • User:Rocchini
    • User talk:Rocchini
  • en.wikibooks.org üzerinde kullanımı
    • Color Theory/Color gradient
  • en.wikiversity.org üzerinde kullanımı
    • User:Jtneill/Gallery
  • es.wikipedia.org üzerinde kullanımı
    • Análisis complejo
  • eu.wikipedia.org üzerinde kullanımı
    • Analisi konplexu
  • fa.wikipedia.org üzerinde kullanımı
    • آنالیز مختلط
  • gl.wikipedia.org üzerinde kullanımı
    • Análise complexa
  • hi.wikipedia.org üzerinde kullanımı
    • गणितीय विश्लेषण
    • सम्मिश्र विश्लेषण
  • incubator.wikimedia.org üzerinde kullanımı
    • Wp/mag/गणितीय विश्लेषण
    • Wp/mag/सम्मिश्र विश्लेषण
  • it.wikipedia.org üzerinde kullanımı
    • Analisi complessa
    • Mappa conforme
    • Analisi matematica
    • Colorazione del dominio
  • it.wikibooks.org üzerinde kullanımı
    • Analisi complessa/Copertina
  • ja.wikipedia.org üzerinde kullanımı
    • 複素解析
  • lv.wikipedia.org üzerinde kullanımı
    • Komplekss skaitlis
  • mk.wikipedia.org üzerinde kullanımı
    • Комплексна анализа
  • mn.wikipedia.org üzerinde kullanımı
    • Хэрэглэгч:Timur/Ноорог/Комплекс анализ
  • mt.wikipedia.org üzerinde kullanımı
    • Analisi komplessa
  • nl.wikipedia.org üzerinde kullanımı
    • Functietheorie
  • pl.wikipedia.org üzerinde kullanımı
    • Liczby zespolone
    • Wikipedysta:Jcubic/knowledge
  • pl.wikibooks.org üzerinde kullanımı
    • C/Czytanie i pisanie do plików
    • C/Wersja do druku
    • Programowanie w systemie UNIX/c grafika
  • si.wikipedia.org üzerinde kullanımı
    • සංකීර්ණ විශ්ලේෂණය
    • සංකීර්ණ සංඛ්‍යා
  • sk.wikipedia.org üzerinde kullanımı
    • Komplexná analýza
    • Portál:Matematika/Odporúčané články/2011
    • Portál:Matematika/Odporúčaný článok/17 2011
    • Portál:Matematika/Odporúčaný článok/52 2011
    • Portál:Matematika/Obrázky týždňa/Univerzálne
    • Portál:Matematika/Obrázok týždňa/53
  • sq.wikipedia.org üzerinde kullanımı
    • Analiza komplekse
  • sr.wikipedia.org üzerinde kullanımı
    • Комплексна анализа
  • sv.wikipedia.org üzerinde kullanımı
    • Komplex analys
  • th.wikipedia.org üzerinde kullanımı
    • การวิเคราะห์เชิงซ้อน
  • uk.wikipedia.org üzerinde kullanımı
    • Комплексний аналіз

Bu dosyanın daha fazla küresel kullanımını görüntüle.

"https://tr.wikipedia.org/wiki/Dosya:Color_complex_plot.jpg" sayfasından alınmıştır
  • Gizlilik politikası
  • Vikipedi hakkında
  • Sorumluluk reddi
  • Davranış Kuralları
  • Geliştiriciler
  • İstatistikler
  • Çerez politikası
  • Mobil görünüm
  • Wikimedia Foundation
  • Powered by MediaWiki
Dosya:Color complex plot.jpg
Konu ekle