artikel / persamaan numerik newton rhapson

Persamaan Numerik Newton Rhapson

Persamaan Numerik Newton Rhapson

Persamaan Numerik Newton-Rhapson merupakan salah satu metode numerik yang digunakan untuk mencari akar suatu fungsi matematika. Metode ini ditemukan oleh Sir Isaac Newton dan Joseph Raphson pada abad ke-17. Metode Newton-Rhapson telah digunakan secara luas dalam berbagai bidang, seperti ilmu teknik, sains, dan finansial.

Metode ini juga digunakan dalam pemrograman komputer dan aplikasi terkait dengan matematika dan analisis data. Dalam aplikasi sehari-hari, Persamaan Numerik Newton-Rhapson dapat digunakan untuk mencari akar persamaan matematika yang rumit dan menghitung solusi numerik dari persamaan diferensial.

algoritma

  1. Tentukan tebakan awal x0 dan toleransi error ε
  2. Hitung nilai f(x0) dan f'(x0)
  3. Hitung delta x menggunakan rumus delta x = -f(x0)/f'(x0)
  4. Hitung nilai x1 dengan rumus x1 = x0 + delta x
  5. Ulangi langkah 2-4 hingga error |f(xn)| < ε atau iterasi mencapai batas maksimum.

pseudo-code

Input: fungsi f(x), turunan f'(x), tebakan awal x0, toleransi error ε, batas maksimum iterasi N
Output: akar fungsi x

xn = x0
fx = f(xn)
iterasi = 0

while (|fx| > ε) and (iterasi  <  N) do
    fp = f'(xn)
    if fp == 0 then
        print "Error: Turunan nol"
        return
    end if
    delta_x = -fx/fp
    xn = xn + delta_x
    fx = f(xn)
    iterasi = iterasi + 1
end while

if iterasi >= N then
    print "Error: Batas iterasi tercapai"
    return
end if

print "Akar = ", xn

kode C

Berikut adalah contoh skrip C CLI untuk menghitung metode Newton-Raphson dengan parameter:

```c
#include  <   stdio.h  >
#include  <   stdlib.h  >
#include  <   math.h  >

double f(double x); // deklarasi fungsi f(x)
double f_prime(double x); // deklarasi fungsi f'(x)

int main(int argc, char* argv[]) {
    // cek jumlah argumen yang diberikan
    if (argc != 3) {
        printf("Usage: newton_raphson [initial guess] [tolerance]\n");
        return 1;
    }

    // konversi argumen menjadi bilangan pecahan
    double x0 = atof(argv[1]); // tebakan awal
    double tol = atof(argv[2]); // toleransi error

    double x = x0;
    double fx = f(x);
    int iter = 0;

    // iterasi menggunakan metode Newton-Raphson
    while (fabs(fx) > tol &amp;&amp; iter  <  100) {
        double fp = f_prime(x);
        if (fp == 0) {
            printf("Error: derivative is zero\n");
            return 1;
        }
        double delta_x = -fx / fp;
        x = x + delta_x;
        fx = f(x);
        iter++;
    }

    // cek apakah iterasi konvergen atau divergen
    if (iter >= 100) {
        printf("Error: iteration limit reached\n");
        return 1;
    }

    // tampilkan hasil
    printf("Root = %.6f\n", x);

    return 0;
}

double f(double x) {
    // ganti dengan fungsi yang ingin dihitung akarnya
    return x*x - 2;
}

double f_prime(double x) {
    // ganti dengan turunan fungsi yang ingin dihitung akarnya
    return 2*x;
}

f(x) merupakan fungsi yang ingin dihitung akarnya menggunakan metode Newton-Raphson. Fungsi ini dapat diganti dengan fungsi lain yang ingin dihitung akarnya. f_prime(x) merupakan turunan dari fungsi f(x). Fungsi ini juga dapat diganti dengan turunan dari fungsi lain yang ingin dihitung akarnya. Skrip ini menerima 2 argumen: initial guess dan tolerance. initial guess merupakan tebakan awal yang digunakan dalam metode Newton-Raphson. tolerance merupakan toleransi error yang ditetapkan dalam metode Newton-Raphson. Skrip ini akan mengeluarkan hasil nilai akar yang dihitung menggunakan metode Newton-Raphson.

penerapan

Persamaan Numerik Newton-Rhapson biasanya digunakan untuk merancang dan mengembangkan mesin, salah satunya mesin cuci. Mesin cuci menggunakan persamaan diferensial untuk mengontrol gerakan drum pencucian.

Metode Newton-Rhapson digunakan untuk menghitung solusi numerik dari persamaan diferensial tersebut, sehingga mesin cuci dapat bekerja dengan lebih efisien dan akurat.

Selayang pandang proyek Perpustakaan Nirkabel

Perpustakaan Nirkabel (wireless library) is a 12-year-old project bringing digital technology to remote areas in Indonesia, empowering basic education and bridging the gap in education. It enables students in remote areas to access knowledge and resources previously out of reach. Witness the tech enthusiasts' brainchild with a heart for education.

detail