“KALKULATOR DIFERENSIASI NUMERIK MENGGUNAKAN METODE TAYLOR

                 TUJUAN

           Tujuan dari pembuatan program ini adalah :

1.     Untuk memenuhi tugas akhir mata kuliah Komputasi Numerik

2.     Untuk mendalami pengetahuan dan metode diferensial numerik

3.     Untuk mengimplementasikan penerapan materi diferensial numerik pada program

DASAR TEORI

1.   Diferensial

Turunan atau Derivatif dalam ilmu kalkulus merupakan pengukuran terhadap bagaimana fungsi berubah seiring perubahan nilai input. Secara umum, turunan menyatakan bagaimana suatu besaran berubah akibat perubahan besaran lainnya; contohnya, turunan dari posisi sebuah benda bergerak terhadap waktu adalah kecepatan sesaat objek tersebut. Proses dalam menemukan turunan disebut diferensiasi. Kebalikan dari turunan disebut dengan antiturunanTeorema fundamental kalkulus mengatakan bahwa antiturunan sama dengan integrasi. Turunan dan integral adalah 2 fungsi penting dalam kalkulus.

2.   Persoalan Diferensial Numerik

Persoalan turunan numerik ialah menentukan metode nilai turunan fungsi f yang diberikan dalam bentuk tabel. Meskipun metode numerik untuk menghitung turunan fungsi tersedia, tetapi perhitungan turunan sedapat mungkin dihindari. Alasannya, nilai turunan numerik umumnya kurang teliti dibandingkan dengan nilai fungsinya. Dalam kenyataannya, turunan adalah limit dari hasil bagi selisih: yaitu pengurangan dua buah nilai yang besar ( f(x+h) - f(x) ) dan membaginya dengan bilangan yang kecil (h). Pembagian ini dapat menghasilkan turunan dengan galat yang besar. Lagi pula, jika fungsi f dihampiri oleh polinom interpolasi p, selisih nilai fungsi mungkin kecil tetapi turunannya boleh jadi sangat berbeda dengan nilai turunan sejatinya. Hal ini masuk akal sebab turunan numerik bersifat "halus", dan ini berlawanan dengan integrasi numerik, yang tidak banyak dipengaruhi oleh ketidaktelitian nilai fungsi, karena integrasi pada dasarnya adalah proses penghalusan.


3.   Tiga Pendekatan dalam Menghitung Diferensial Numerik Numerik

Misal diberikan nilai-nilai x di x0 - h, x0, dan x0 + h, serta nilai fungsi untuk nilai-nilai x tersebut. Titik-titik yang diperoleh adalah (x-1, f-1), (x0, f0), dan (x1, f1), yang dalam hal ini x-1 = x0 - h dan x1 = x0 + h. Terdapat tiga pendekatan dalam menghitung nilai f '(x0):


Rumus-rumus turunan numerik untuk ketiga pendekatan tersebut dapat diturunkan dengan bantuan deret taylor.

4.   Deret Taylor

Deret Taylor dalam matematika adalah representasi fungsi matematika sebagai jumlahan tak hingga dari suku-suku yang nilainya dihitung dari turunan fungsi tersebut di suatu titik. Deret taylor dari sebuah fungsi rill atau fungsi kompleks f(x) yang terdiferensialkan tak hingga dalam sebuah pemetaan sebuah bilangan rill atau kompleks a adalah deret pangkat

yang dalam bentuk lebih ringkas dapat dituliskan sebagai

dengan n! melambangkan faktorial n dan f (n)(a) melambangkan nilai dari turunan ke-n dari f pada titik a. Turunan kenol dari f didefinisikan sebagai f itu sendiri, dan (x − a)0 dan 0! didefinisikan sebagai 1.

Dalam kasus khusus di mana a = 0, deret ini disebut juga sebagai Deret Maclaurin.


IMPLEMENTASI

1.     SCRIPT

·     Taylor.cpp

#include <iostream>

#include <stdlib.h>

#include <conio.h>

#include <stdio.h>

#include <math.h>

#include "faktorial.cpp"

#define MaksData 100

using namespace std;

main()

{

    FILE *taylor;

    double y[MaksData],

        xm, x0, yn1, ytemp,

        h;

    int i, m;

    char lagi;

    do

    {

        system("cls");

        taylor = fopen("taylor.cpp""w+");

        cout << "\n\nKalkulator Diferensiasi Numerik dengan Metode Taylor\n";

        cout << "========================================\n\n";

        cout << "Persamaan Diferensial : f(x,y) = dy/dx = x + y\n";

        cout << "----------------------------------------------\n\n";

        /***************************************************/

        cout << "\nTitik x yang dicari (xm) ? ";

        cin >> xm;

        cout << "\nTitik x awal (x0) ? ";

        cin >> x0;

        cout << "\nJumlah Deret yang diperlukan (m) ? ";

        cin >> m;

        ytemp = 0.0;

        h = xm - x0; /* Interval */

        printf("\n\nh = %.2f\n\n", h);

        /* Pemasukan Nilai Deret hasil Diferensiasi */

        for (i = 0; i < m; i++)

        {

            printf("\ny(%d) = ", i + 1);

            cin >> y[i]; /* Pemasukan Data */

        }

        /* Cetak y[i] serta penghitungan Taylor */

        printf("\n\n\t-----------------------\n");

        printf("\tdata ke-\ty[i]\n");

        printf("\t-----------------------\n");

        fprintf(taylor, "\n\t-----------------------\n");

        fprintf(taylor, "\tData ke-\ty[i]\n");

        fprintf(taylor, "\t-----------------------\n");

        /* Penghitungan Data */

        for (i = 0; i < m; i++)

        {

            /* Rumus Diferensiasi Taylor */

            ytemp += (pow(h, i + 1) * y[i]) / factorial(i + 1);

            yn1 = y[i - i] + ytemp;

            printf("\t %d\t\t%.5f\n", i + 1y[i]);

            fprintf(taylor, "\t %d\t\t%.5f\n", i + 1y[i]);

        }

        printf("\t-----------------------\n");

        fprintf(taylor, "\t-----------------------\n");

        printf("\n\nMaka y[%.1f] = %.7f", xm, yn1);

        fprintf(taylor, "\nMaka y[%.1f] = %.7f", xm, yn1);

        fclose(taylor);

        cout << "\n\n\nCoba lagi dengan data awal yang berbeda (y/t) ? ";

        cin >> lagi;

    } while (lagi != 't');

    return 0;

}

 

·     Faktorial,cpp

int factorial(int);

int faktorial(int x)

{

 int i, p=1;

 for(i=1; i<=x; i++)

 {

 p*=i;

 }

 return(p);

}

 

2.     HASIL


KESIMPULAN

Diferensial banyak digunakan dalam perhitungan kalkulus untuk keperluan perhitungan geometrik dan perubahan – perubahan nilai persatuan waktu atau jarak. Mengapa perlu metode numerik? Karena terkadang terdapat suatu fungsi yang sulit dihitung secara manual dengan begini kita bisa mengotomatiskan, tanpa harus menghitung manualnya. Terdapat 3 jenis diferensiasi dalam metode numerik yaitu : Metode Selisih Maju, metode selisih mundur, dan metode selisih pusat. Pada program ini, rumus-rumus untuk menghitung diferensial numerik diperoleh dari deret Taylor.

DAFTAR RUJUKAN

Murjana, Angga. 2020. Diferensial Matematika – Pengertian, Rumus, Contoh Soal. Diakses pada 28 November 2020, dari https://rumusrumus.com/diferensial/

Setiowati,  Yuliana. 2007. Differensiasi Numerik. Diakses pada 29 November 2020, dari https://docplayer.info/39678952-Differensiasi-numerik.html

Syafwan,  Mahdhivan. 2018. Metode Numerik Bab 7 Persamaan Diferensial Biasa. Diakses pada 29 November 2020, dari https://docplayer.info/110898970-Pam-252-metode-numerik-bab-7-persamaan-diferensial-biasa.h

Muntohar, Agus S, 2012. AnalisaTerapan:Metode Numerik Deret Taylor. Diakses pada 29 November 2020, dari https://muntohar.files.wordpress.com/2012/10/lect-1-deret-taylor.pdf



 

Komentar

Posting Komentar

Postingan populer dari blog ini

KONSTITUSI