Pangkat Inverse

download Pangkat Inverse

of 14

Transcript of Pangkat Inverse

  • 5/27/2018 Pangkat Inverse

    1/14

    Pangkat Inverse

    #include

    #include

    #include

    main()

    {

    float a[3][3], b[3][3], c[3][3], d[3][3], x[3][3], inv[3][3],

    kf[3][3], kft[3][3], g[3][3];

    float ep, e, f, mg, er, eigen, det;

    int i, j, k, it, itmax;

    for(i=1;i

  • 5/27/2018 Pangkat Inverse

    2/14

    printf("\n determinan = %f\n", det);

    if(det ==0)

    printf("tidak ada invers\n");

    else

    {

    kf[1][1] = a[2][2]*a[3][3] - a[2][3]*a[3][2];

    kf[1][2] = a[2][3]*a[3][1] - a[2][1]*a[3][3];

    kf[1][3] = a[2][1]*a[3][2] - a[2][2]*a[3][1];

    kf[2][1] = a[1][3]*a[3][2] - a[1][2]*a[3][3];

    kf[2][2] = a[1][1]*a[3][3] - a[1][3]*a[3][1];

    kf[2][3] = a[1][2]*a[3][1] - a[1][1]*a[3][2];

    kf[3][1] = a[1][2]*a[2][3] - a[1][3]*a[2][2];

    kf[3][2] = a[1][3]*a[2][1] - a[1][1]*a[2][3];

    kf[3][3] = a[1][1]*a[2][2] - a[1][2]*a[2][1];

    printf("\nkofaktor = \n");

    for(i=1; i

  • 5/27/2018 Pangkat Inverse

    3/14

    for (j=1; j

  • 5/27/2018 Pangkat Inverse

    4/14

    do

    {

    for(i=1;i

  • 5/27/2018 Pangkat Inverse

    5/14

    eigen = e;

    it++;

    }

    while(er > ep || mg > f);

    printf("\n\nNilai eigen terkecil = %f\n",eigen);

    printf("vektor eigennya =

    \n%f\n%f\n%f\n",x[1][1],x[2][1],x[3][1]);

    getch();

    }

    Tampilan

  • 5/27/2018 Pangkat Inverse

    6/14

  • 5/27/2018 Pangkat Inverse

    7/14

    Dalam program inverse power method ini, kita dapat mencari nilai eigen terkecil

    dari suatu matriks. Mula-mula setelah memasukkan nilai dari komponen-

    komponen matriks, kita melakukan inversi pada matriks tersebut, baru invers

    matriks tersebut kita cari nilai eigennya beserta vektor eigennya. Langkahnya

    sama dengan power method, hanya berbeda pada matriks yang digunakan pada

    proses iterasi.

  • 5/27/2018 Pangkat Inverse

    8/14

    Spektral Radius

    #include

    #include

    #include

    main()

    {

    float a[3][3], b[3][3], c[3][3], d[3][3], x[3][3], g[3][3];

    float ep, e, f, mg, er, eigen, egm;

    int i, j, k, it, itmax;

    for(i=1;i

  • 5/27/2018 Pangkat Inverse

    9/14

    printf(Masukkan galat : );

    scanf(%f, &f);

    printf(Masukkan iterasi maksimum : );

    scanf(%d, &itmax);

    it=1;

    do

    {

    for(i=1;i

  • 5/27/2018 Pangkat Inverse

    10/14

    }

    er = fabs(e-eigen);

    for(i=1; i ep || mg > f);

    printf(\n\nNilai eigen = %f\n,eigen);

    printf(vektor eigennya =

    \n%f\n%f\n%f\n,x[1][1],x[2][1],x[3][1]);

    egm = x[1][1];

    for(i=1; i

  • 5/27/2018 Pangkat Inverse

    11/14

  • 5/27/2018 Pangkat Inverse

    12/14

    Program untuk mencari spektral radius ini cukup sederhana. Bila kita sudah

    menemukan nilai dan vektor eigen yang diperoleh baik dari power method

    maupun inverse power method, kita tinggal mencari nilai maksimum dari

    komponen-komponen vektor eigen yang dalam program ini adalah nilai

    maksimum dari komponen vektor x. Mula-mula kita menginput matriks, epsilon,

    galat, iterasi maksimum, kemudian program akan memproses nilai eigen beserta

    vektornya, kemudian barulah dicari nilai komponen maksimumnya.

  • 5/27/2018 Pangkat Inverse

    13/14

    Analisa Umum

    Dalam rangkaian program ini, kita hendak mencari nilai beserta vektor

    eigen, juga mencari nilai spektral radius. Dalam mencari nilai eigen dan vektor

    eigen, dapat digunakan dua metode yaitu power method dan inverse power

    method. Kedua metode ini sebenarnya pengerjaannya sama, bedanya hanya power

    method digunakan untuk mencari nilai dan vektor eigen terbesar, sementara

    inverse power method adalah sebaliknya dan inverse power method ini

    menggunakan invers dari suatu matriks dalam prosesnya.

    Dalam metode pangkat/power method ini, kita memasukkan nilai epsilon,

    galat, serta iterasi maksimum yang kemudian akan digunakan sebagai pembatas

    dalam iterasi yang dilakukan. Epsilon digunakan untuk mendapatkan nilai eigen

    dan vektor eigen yang teliti dan diharapkan akurat, sementara galat digunakan

    untuk menyatakan kesalahan nilai atau error. Semakin kecil kedua nilai ini, maka

    program akan melakukan lebih banyak iterasi.

    Dalam pencarian nilai dan vektor eigen, mula-mula kita memberi nilai

    awal pada kedua variabel tersebut. Nilai yang diberikan bisa berapa saja, namun

    untuk mudahnya dalam program ini kita mengawali nilai eigen dengan [1], dan

    semua komponen vektor eigen dengan [1]. Kemudian program akan melakukan

    iterasi sampai batas yang telah kita tentukan.

    Sementara untuk spektral radius, di sini penghitungan nilai eigen maupun

    vektor eigen bisa kita gunakan kedia metode. Spektral radius merupakan nilai

    maksimum dari harga mutlak komponen-komponen vektor eigen. Dalam program,

    hanya digunakan metode pangkat untuk spektral radius ini.

  • 5/27/2018 Pangkat Inverse

    14/14

    Kesimpulan

    Nilai eigen dan vektor eigen merupakan karateristik dari suatu matriks,

    yang bila dikalikan hasilnya akan sama dengan matriks tersebut dikalikan dengan

    vektor eigennya. Sebuah matriks dapat memiliki beberapa nilai dan vektor eigen.

    Dalam mencari nilai eigen dan vektor eigen dapat digunakan cara analitik maupun

    numerik. Dalam metode numeriknya, dapat digunakan dua metode, yaitu power

    method dan inverse power method.

    Power method dan inverse power method pada dasarnya proses

    penghitungannya sama saja, yang membedakan adalah hasil akhir yang akan

    didapat. Pada power method, kita langsung saja menggunakan matriks yang kita

    inputkan dalam penghitungan untuk mencari nilai dan vektor eigen terbesar.

    Sebaliknya, inverse power method digunakan untuk mencari nilai dan vektor

    eigen terkecil, dan dalam metode ini kita menggunakan invers matriks.