Selesaikan persamaan nonlinier menggunakan metode Newton secara online. Tugas mata kuliah: Metode Newton untuk menyelesaikan persamaan nonlinier



Kata kunci:

Tujuan pekerjaan: mempelajari metode untuk menyelesaikan persamaan nonlinier dengan satu hal yang tidak diketahui dan mengujinya dalam pekerjaan eksperimental.

Tujuan pekerjaan:

  1. Analisis literatur khusus dan pilih metode paling rasional untuk menyelesaikan persamaan nonlinier, yang memungkinkan semua lulusan sekolah menengah mempelajari dan mengasimilasi topik ini secara mendalam.
  2. Mengembangkan beberapa aspek metodologi untuk menyelesaikan persamaan nonlinier menggunakan TIK.
  3. Jelajahi metode untuk menyelesaikan persamaan nonlinier:

‒ Metode langkah

‒ Metode pengurangan separuh

‒ Metode Newton

Perkenalan.

Tanpa literasi matematika, mustahil seseorang berhasil menguasai metode penyelesaian masalah fisika, kimia, biologi, dan mata pelajaran lainnya. Seluruh kompleks ilmu pengetahuan alam dibangun dan dikembangkan atas dasar pengetahuan matematika. Misalnya, studi tentang sejumlah masalah topikal dalam fisika matematika mengarah pada kebutuhan untuk menyelesaikan persamaan nonlinier. Penyelesaian persamaan nonlinier diperlukan dalam optik nonlinier, fisika plasma, teori superkonduktivitas, dan fisika suhu rendah. Terdapat cukup banyak literatur tentang topik ini, tetapi banyak buku teks dan artikel yang sulit dipahami oleh siswa sekolah menengah. Makalah ini membahas tentang metode penyelesaian persamaan nonlinier yang dapat digunakan untuk menyelesaikan permasalahan terapan dalam fisika dan kimia. Aspek yang menarik adalah penerapan teknologi informasi untuk menyelesaikan persamaan dan masalah matematika.

Metode langkah.

Misalkan persamaan nonlinier berbentuk F(x)=0 perlu diselesaikan. Mari kita asumsikan juga bahwa kita diberi interval pencarian tertentu. Kita perlu mencari interval [a,b] dengan panjang h, yang memuat akar pertama persamaan, dimulai dari batas kiri interval pencarian.

Beras. 1. Metode langkah

Ada beberapa cara untuk mengatasi masalah ini. Metode langkah adalah metode numerik yang paling sederhana untuk menyelesaikan pertidaksamaan, tetapi untuk mencapai akurasi yang tinggi, langkah perlu dikurangi secara signifikan, dan ini sangat meningkatkan waktu penghitungan. Algoritma penyelesaian persamaan menggunakan metode ini terdiri dari dua tahap.

SAYApanggung. Pemisahan akar.

Pada tahap ini ditentukan bagian-bagian yang masing-masing hanya berisi satu akar persamaan. Ada beberapa opsi untuk mengimplementasikan tahap ini:

  • Kami mengganti nilai X (sebaiknya dengan beberapa langkah yang cukup kecil) dan melihat di mana fungsinya berubah tanda. Jika fungsi tersebut telah berubah tandanya, berarti terdapat akar pada daerah antara nilai X sebelumnya dan saat ini (jika fungsi tersebut tidak mengubah sifat kenaikan/penurunannya, maka dapat dikatakan hanya ada satu. akar dalam interval ini).
  • Metode grafis. Kami membuat grafik dan mengevaluasi pada interval mana letak satu akar.
  • Mari kita jelajahi properti dari fungsi tertentu.

IIpanggung. Penyempurnaan akar.

Pada tahap ini, makna dari akar-akar persamaan yang ditentukan sebelumnya diperjelas. Biasanya, metode berulang digunakan pada tahap ini. Misalnya metode separuh (dikotomi) atau metode Newton.

Metode setengah pembagian

Metode numerik yang cepat dan cukup sederhana untuk menyelesaikan persamaan, berdasarkan penyempitan interval yang mengandung satu-satunya akar persamaan F(x) = 0 hingga akurasi yang ditentukan E tercapai persamaan derajat yang lebih tinggi. Namun metode ini memiliki kelemahan yang signifikan - jika segmen [a,b] berisi lebih dari satu root, maka tidak akan dapat mencapai hasil yang baik.

Beras. 2. Metode dikotomi

Algoritma untuk metode ini adalah sebagai berikut:

‒ Tentukan aproksimasi baru dari akar x di tengah ruas [a;b]: x=(a+b)/2.

‒ Tentukan nilai fungsi di titik a dan x: F(a) dan F(x).

‒ Periksa kondisi F(a)*F(x)

‒ Lanjutkan ke langkah 1 dan bagi lagi segmen menjadi dua. Lanjutkan algoritma hingga kondisi |F(x)|

metode Newton

Metode penyelesaian numerik yang paling akurat; cocok untuk menyelesaikan persamaan yang sangat kompleks, namun rumit karena kebutuhan untuk menghitung turunan pada setiap langkah. adalah jika x n adalah suatu perkiraan terhadap akar persamaan , maka pendekatan selanjutnya didefinisikan sebagai akar garis singgung fungsi f(x) yang ditarik di titik x n.

Persamaan tangen fungsi f(x) di titik x n berbentuk:

Dalam persamaan tangen kita masukkan y = 0 dan x = x n +1.

Maka algoritma perhitungan sekuensial pada metode Newton adalah sebagai berikut:

Konvergensi metode tangen adalah kuadrat, orde konvergensinya adalah 2.

Dengan demikian, konvergensi metode tangen Newton sangat cepat.

Tanpa perubahan apa pun, metode ini digeneralisasikan ke kasus yang kompleks. Jika akar x i adalah akar dari multiplisitas kedua atau lebih tinggi, maka orde konvergensi turun dan menjadi linier.

Kerugian dari metode Newton termasuk lokalitasnya, karena metode ini dijamin konvergen untuk perkiraan awal yang berubah-ubah hanya jika kondisinya terpenuhi di semua tempat. , sebaliknya, konvergensi hanya terjadi pada lingkungan akar tertentu.

Metode Newton (metode tangen) biasanya digunakan ketika persamaan f(x) = 0 memiliki root dan kondisi berikut terpenuhi:

1) fungsi kamu=f(x) didefinisikan dan berkelanjutan di ;

2) f(a) f(b) (fungsi mengambil nilai dari tanda yang berbeda di ujung segmen [ a;b]);

3) turunan f"(x) Dan f""(x) pertahankan tanda pada interval [ a;b] (yaitu fungsinya f(x) baik bertambah atau berkurang pada ruas [ a;b], dengan tetap mempertahankan arah konveksitas);

Arti dari metode tersebut adalah sebagai berikut: pada ruas [ a;b] nomor tersebut dipilih x 0 , di mana f(x 0) memiliki tanda yang sama dengan f""(x 0), yaitu kondisi terpenuhi f(x 0) f""(x) > 0. Dengan demikian, titik dengan absis dipilih x 0, yang bersinggungan dengan kurva kamu=f(x) di segmen [ a;b] memotong sumbu Sapi. Per poin x 0 Pertama, akan lebih mudah untuk memilih salah satu ujung segmen.

Mari kita pertimbangkan algoritma ini menggunakan contoh spesifik.

Mari kita diberi fungsi yang meningkat kamu = f(x) =x 2– 2, kontinu pada segmen (0;2), dan memiliki f "(x) =2x>0 Dan f ""(x) = 2> 0.

Dalam kasus kami, persamaan tangen berbentuk: y-y 0 =2x 0 ·(x-x 0). DI DALAM sebagai titik x 0 kita pilih titik B 1 (b; f(b)) = (2,2). Gambarlah garis singgung fungsi tersebut kamu = f(x) di titik B 1, dan menunjukkan titik potong garis singgung dan sumbu Sapi dot x 1. Kita mendapatkan persamaan garis singgung pertama: y-2=2·2(x-2), y=4x-6. Sapi: x 1 =

Beras. 3. Konstruksi garis singgung pertama grafik fungsi f(x)

kamu=f(x) Sapi melalui titik tersebut x 1, kami mengerti maksudnya B 2 =(1,5; 0,25). Gambarlah garis singgung fungsi tersebut lagi kamu = f(x) di titik B 2, dan menunjukkan titik potong garis singgung dan Sapi dot x 2.

Persamaan garis singgung kedua: y-2,25=2*1,5(x-1,5), y = 3x - 4,25. Titik potong garis singgung dan sumbu Sapi: x 2 =.

Kemudian kita mencari titik potong fungsi tersebut kamu=f(x) dan garis tegak lurus terhadap sumbunya Sapi melalui titik x 2 kita mendapatkan titik B 3 dan seterusnya.

Beras. 4. Konstruksi garis singgung kedua grafik fungsi f(x)

Perkiraan pertama dari akar ditentukan oleh rumus:

= 1.5.

Perkiraan kedua dari akar ditentukan oleh rumus:

=

Perkiraan ketiga dari akar ditentukan oleh rumus:

Dengan demikian ,Saya Perkiraan akar ditentukan oleh rumus:

Perhitungan dilakukan sampai tempat desimal yang diperlukan dalam jawaban cocok, atau presisi e yang ditentukan tercapai - sampai pertidaksamaan terpenuhi |xi-xi-1|

Dalam kasus kita, mari kita bandingkan perkiraan yang diperoleh pada langkah ketiga dengan jawaban sebenarnya. Seperti yang Anda lihat, pada langkah ketiga kami menerima kesalahan kurang dari 0,000002.

Menyelesaikan persamaan menggunakan CADMatematikaCAD

Untuk persamaan bentuk yang paling sederhana F(X) = 0 solusi di MathCAD ditemukan menggunakan fungsi akar.

akar(F (X 1 , X 2 , … ) , X 1 , a, b ) - mengembalikan nilai X 1 , milik segmen tersebut [ a, b ] , di mana ekspresi atau fungsi F (X ) menjadi 0. Kedua argumen pada fungsi ini harus berupa skalar. Fungsi ini mengembalikan skalar.

Beras. 5. Menyelesaikan persamaan nonlinier di MathCAD (fungsi root)

Jika terjadi kesalahan akibat penerapan fungsi ini, ini mungkin berarti persamaan tersebut tidak memiliki akar, atau akar persamaan terletak jauh dari perkiraan awal, ekspresi tersebut memiliki lokal maks Dan menit antara perkiraan awal dan akar.

Untuk mengetahui penyebab kesalahan, perlu diperiksa grafik fungsinya F(X). Ini akan membantu untuk mengetahui keberadaan akar persamaan F(X) = 0 dan, jika ada, tentukan kira-kira nilainya. Semakin akurat perkiraan awal akar dipilih, semakin cepat nilai pastinya ditemukan.

Jika perkiraan awal tidak diketahui, maka disarankan untuk menggunakan fungsi tersebut menyelesaikan . Selain itu, jika persamaan berisi beberapa variabel, Anda perlu menentukan setelah kata kunci solve daftar variabel yang berkaitan dengan penyelesaian persamaan tersebut.

Beras. 6. Menyelesaikan persamaan nonlinier di MathCAD (fungsi penyelesaian)

Kesimpulan

Studi ini mengkaji metode matematika dan penyelesaian persamaan menggunakan pemrograman dalam sistem CAD MathCAD. Metode yang berbeda mempunyai kelebihan dan kekurangan masing-masing. Perlu diperhatikan bahwa penggunaan metode tertentu bergantung pada kondisi awal persamaan yang diberikan. Persamaan yang dapat diselesaikan dengan baik dengan metode faktorisasi, dll., yang dikenal di sekolah, tidak masuk akal untuk diselesaikan dengan menggunakan metode yang lebih kompleks. Masalah matematika terapan yang penting bagi fisika dan kimia serta memerlukan operasi komputasi yang kompleks ketika penyelesaian persamaan berhasil diselesaikan, misalnya menggunakan pemrograman. Ada baiknya menyelesaikannya menggunakan metode Newton.

Untuk memperjelas akar-akarnya, Anda dapat menggunakan beberapa metode untuk menyelesaikan persamaan yang sama. Penelitian inilah yang menjadi dasar pekerjaan ini. Pada saat yang sama, mudah untuk melihat metode mana yang paling berhasil dalam menyelesaikan setiap tahap persamaan, dan metode mana yang lebih baik tidak digunakan pada tahap ini.

Materi yang dipelajari di satu sisi membantu memperluas dan memperdalam pengetahuan matematika serta menanamkan minat terhadap matematika. Di sisi lain, penting untuk mampu memecahkan masalah matematika nyata bagi mereka yang berencana memperoleh profesi teknik dan teknik. Oleh karena itu, pekerjaan ini penting untuk pendidikan selanjutnya (misalnya di perguruan tinggi).

Literatur:

  1. Mityakov S. N. Informatika. Satu set materi pendidikan dan metodologi. - N.Novgorod: Nizhny Novgorod. negara teknologi. universitas., 2006
  2. Vainberg M. M., Trenogin V. A. Teori solusi percabangan persamaan nonlinier. M.: Nauka, 1969. - 527 hal.
  3. Bronshtein I. N., Semendyaev K. A. Buku pegangan matematika untuk insinyur dan mahasiswa perguruan tinggi teknik - M.: Nauka, 1986.
  4. Omelchenko V.P., Kurbatova E.V. Matematika: buku teks. -Rostov tidak ada.: Phoenix, 2005.
  5. Savin A.P. Kamus ensiklopedis seorang matematikawan muda. - M.: Pedagogi, 1989.
  6. Korn G., Korn T. Buku pegangan matematika untuk ilmuwan dan insinyur. - M.: Nauka, 1973.
  7. Kiryanov D. Mathcad 15/MathcadPrime 1.0. - Sankt Peterburg: BHV-Petersburg, 2012.
  8. Chernyak A., Chernyak Zh., Domanova Yu.Matematika yang lebih tinggi berdasarkan Mathcad. Kursus umum. - Sankt Peterburg: BHV-Petersburg, 2004.
  9. Porshnev S., Belenkova I. Metode numerik berdasarkan Mathcad. - Sankt Peterburg: BHV-Petersburg, 2012.

Kata kunci: persamaan nonlinier, matematika terapan, CAD MathCAD, metode Newton, metode langkah, metode dikotomi..

Anotasi: Artikel ini dikhususkan untuk mempelajari metode penyelesaian persamaan nonlinier, termasuk menggunakan sistem desain berbantuan komputer MathCAD. Metode langkah, metode separuh dan metode Newton dipertimbangkan, algoritma terperinci untuk menerapkan metode ini diberikan, dan analisis komparatif dari metode ini dilakukan.

Misalnya:

Mari kita atur tugas untuk menemukannya sah akar persamaan ini.

Dan pasti ada! - dari artikel tentang grafik fungsi Dan persamaan matematika yang lebih tinggi Anda tahu betul apa jadwalnya fungsi polinomial derajat ganjil memotong sumbu setidaknya satu kali, oleh karena itu persamaan kita adalah setidaknya satu akar nyata. Satu. Atau dua. Atau tiga.

Pertama, ia meminta untuk memeriksa ketersediaan rasional akar Menurut teorema yang sesuai, hanya angka 1, –1, 3, –3 yang dapat mengklaim “gelar” ini, dan dengan substitusi langsung, mudah untuk memastikan bahwa tidak ada satupun yang “cocok”. Dengan demikian, nilai-nilai irasional tetap ada. Akar irasional dari polinomial berderajat 3 dapat ditemukan tepat (diekspresikan melalui radikal) menggunakan apa yang disebut Rumus Cardano Namun, metode ini cukup rumit. Namun untuk polinomial derajat 5 ke atas tidak ada metode analisis umum sama sekali, dan selain itu, dalam praktiknya terdapat banyak persamaan lain yang nilai yang tepat tidak mungkin mendapatkan akar yang sebenarnya (walaupun ada).

Namun dalam penerapannya (misalnya, teknik) masalah, lebih dari dapat diterima untuk menggunakan nilai perkiraan yang dihitung dengan akurasi tertentu.

Mari kita atur keakuratannya pada contoh kita. Apa maksudnya? Artinya, kita perlu mencari nilai perkiraan akarnya (akar) di mana kita Kami dijamin salah tidak lebih dari 0,001 (seperseribu) .

Sangat jelas bahwa solusinya tidak dapat dimulai “secara acak” dan oleh karena itu pada langkah pertama akarnya memisahkan. Memisahkan suatu akar berarti menemukan segmen yang cukup kecil (biasanya tunggal) yang menjadi tempat akar tersebut berada dan tidak terdapat akar lainnya. Yang paling sederhana dan paling mudah diakses metode grafis pemisahan akar. Mari kita membangun poin demi poin grafik suatu fungsi :

Dari gambar tersebut terlihat bahwa persamaan tersebut tampaknya memiliki satu akar real tunggal yang termasuk dalam segmen tersebut. Di akhir interval ini fungsinya mengambil nilai dari tanda yang berbeda: , dan dari fakta kontinuitas fungsi pada segmen tersebut Cara dasar untuk memperjelas akar segera terlihat: kita membagi interval menjadi dua dan memilih segmen di ujungnya yang fungsinya mengambil tanda berbeda. Dalam hal ini, ini jelas merupakan sebuah segmen. Kami membagi interval yang dihasilkan menjadi dua dan sekali lagi memilih segmen "tanda berbeda". Dan sebagainya. Tindakan berurutan seperti itu disebut iterasi. Dalam hal ini, hal tersebut harus dilakukan sampai panjang segmen menjadi kurang dari dua kali akurasi perhitungan, dan bagian tengah segmen “berbeda tanda” terakhir harus dipilih sebagai nilai perkiraan akar.

Skema yang dipertimbangkan menerima nama alami - metode setengah pembagian. Dan kelemahan dari cara ini adalah kecepatan. Perlahan-lahan. Sangat lambat. Akan ada terlalu banyak iterasi sebelum kita mencapai akurasi yang dibutuhkan. Dengan berkembangnya teknologi komputer, hal ini tentu saja tidak menjadi masalah, namun matematika itulah gunanya matematika, untuk mencari solusi yang paling rasional.

Dan salah satu cara yang lebih efektif untuk menemukan perkiraan nilai akar adalah dengan tepat metode tangen. Intisari geometrik singkat dari metode ini adalah sebagai berikut: pertama, menggunakan kriteria khusus (lebih lanjut tentang itu nanti) salah satu ujung segmen dipilih. Akhir ini disebut awal perkiraan akar, dalam contoh kita: . Sekarang kita menggambar garis singgung grafik fungsi tersebut di absis (titik biru dan garis singgung ungu):

Garis singgung ini memotong sumbu x di titik kuning, dan perhatikan bahwa pada langkah pertama kita hampir “mencapai akar”! Itu akan terjadi Pertama pendekatan akar. Selanjutnya, kita turunkan garis tegak lurus kuning ke grafik fungsi dan “sampai” ke titik oranye. Kita kembali menggambar garis singgung melalui titik oranye, yang akan memotong sumbu lebih dekat ke akar! Dan sebagainya. Tidak sulit untuk memahami bahwa dengan menggunakan metode tangen, kita mendekati tujuan dengan pesat, dan dibutuhkan beberapa kali pengulangan untuk mencapai akurasi.

Karena garis singgung didefinisikan melalui turunan dari fungsi tersebut, maka pelajaran ini berakhir di bagian “Derivatif” sebagai salah satu penerapannya. Dan tanpa menjelaskan secara detail pembenaran teoretis dari metode ini, saya akan mempertimbangkan sisi teknis dari masalah ini. Dalam prakteknya, permasalahan yang diuraikan di atas kira-kira terjadi pada rumusan sebagai berikut:

Contoh 1

Dengan menggunakan metode grafis, carilah interval di mana akar persamaan sebenarnya berada. Dengan menggunakan metode Newton, dapatkan nilai perkiraan akar dengan akurasi 0,001

Berikut adalah “versi hemat” dari tugas tersebut, yang langsung menyatakan keberadaan satu root yang valid.

Larutan: pada langkah pertama root harus dipisahkan secara grafis. Hal ini dapat dilakukan dengan membuat plot (lihat ilustrasi di atas), namun pendekatan ini memiliki sejumlah kelemahan. Pertama, grafiknya bukanlah fakta yang sederhana (kami tidak tahu sebelumnya), dan perangkat lunak tidak selalu tersedia. Dan kedua (akibat wajar dari tanggal 1), dengan kemungkinan besar hasilnya bukan gambar skema, melainkan gambar kasar, yang tentu saja tidak bagus.

Nah, mengapa kita memerlukan kesulitan yang tidak perlu? Mari kita bayangkan persamaan dalam formulir, gambarlah grafik dengan HATI-HATI dan tandai akar pada gambar tersebut (“X” koordinat titik potong grafik):

Keuntungan yang jelas metode ini adalah grafik fungsi-fungsi ini dibuat dengan tangan dengan lebih akurat dan lebih cepat. Ngomong-ngomong, perhatikan itu lurus menyeberang parabola kubik pada satu titik, artinya persamaan yang diajukan sebenarnya hanya mempunyai satu akar real. Percaya, tapi verifikasi ;-)

Jadi, "klien" kami termasuk dalam segmen tersebut dan "dengan mata" kira-kira sama dengan 0,65-0,7.

Pada langkah kedua perlu memilih perkiraan awal akar Biasanya ini adalah salah satu ujung ruas. Perkiraan awal harus memenuhi kondisi berikut:

Ayo temukan Pertama Dan Kedua fungsi turunan :

dan periksa ujung kiri segmen:

Jadi, angka nol “tidak cocok”.

Memeriksa ujung kanan segmen:

- Semuanya baik-baik saja! Kami memilih sebagai perkiraan awal.

Pada langkah ketiga Jalan menuju akar menanti kita. Setiap perkiraan akar berikutnya dihitung dari data sebelumnya menggunakan yang berikut ini berulang rumus:

Proses berakhir ketika kondisi terpenuhi, dimana ketelitian perhitungan telah ditentukan. Akibatnya, perkiraan “n” diambil sebagai nilai perkiraan akar: .

Selanjutnya adalah perhitungan rutin:

(pembulatan biasanya dilakukan hingga 5-6 angka desimal)

Karena nilai yang diperoleh lebih besar dari , kita lanjutkan ke pendekatan akar pertama:

Kami menghitung:

, jadi ada kebutuhan untuk beralih ke perkiraan ke-2:

Mari kita lanjutkan ke babak berikutnya:

, dengan demikian, iterasi selesai, dan perkiraan ke-2 harus diambil sebagai nilai perkiraan akar, yang, sesuai dengan akurasi yang diberikan, harus dibulatkan menjadi seperseribu:

Dalam praktiknya, akan lebih mudah untuk memasukkan hasil perhitungan ke dalam tabel; untuk mempersingkat entri, pecahan sering dilambangkan dengan:

Jika memungkinkan, lebih baik melakukan penghitungan sendiri di Excel - jauh lebih nyaman dan cepat:

Menjawab: akurat hingga 0,001

Izinkan saya mengingatkan Anda bahwa frasa ini menyiratkan fakta bahwa kami melakukan kesalahan dalam penilaian kami arti sebenarnya root tidak lebih dari 0,001. Mereka yang ragu dapat mengambil mikrokalkulator dan sekali lagi mengganti nilai perkiraan 0,674 di sisi kiri persamaan.

Sekarang mari kita “memindai” kolom kanan tabel dari atas ke bawah dan memperhatikan bahwa nilainya terus menurun dalam nilai absolut. Efek ini disebut konvergensi sebuah metode yang memungkinkan kita menghitung akar dengan akurasi tinggi. Namun konvergensi tidak selalu terjadi - konvergensi terjamin sejumlah kondisi, yang tentangnya saya diam saja. Khususnya, harus ada segmen di mana akar diisolasi cukup kecil– jika tidak, nilainya akan berubah secara acak dan kami tidak akan dapat menyelesaikan algoritme.

Apa yang harus dilakukan dalam kasus seperti itu? Periksa apakah kondisi yang ditentukan terpenuhi (lihat tautan di atas), dan, jika perlu, kurangi segmennya. Jadi, secara relatif, jika dalam contoh yang dianalisis intervalnya tidak sesuai untuk kita, maka kita harus mempertimbangkan, misalnya, segmennya. Dalam praktiknya, saya pernah menemui kasus seperti itu, dan teknik ini sangat membantu! Hal yang sama harus dilakukan jika kedua ujung segmen “lebar” tidak memenuhi kondisi (yaitu, tidak ada satupun yang cocok sebagai perkiraan awal).

Namun biasanya semuanya berjalan seperti jam, meskipun bukan tanpa kendala:

Contoh 2

Tentukan secara grafis jumlah akar real persamaan, pisahkan akar-akar ini dan, dengan menggunakan metode Newton, temukan nilai perkiraan akar-akar tersebut dengan akurat

Kondisi masalahnya menjadi lebih ketat: pertama, berisi petunjuk kuat bahwa persamaan tidak memiliki akar tunggal, kedua, persyaratan akurasi meningkat, dan ketiga, dengan grafik fungsi. jauh lebih sulit untuk diatasi.

Dan karena itu larutan Mari kita mulai dengan trik menabung: bayangkan persamaannya dalam bentuk dan gambar grafiknya:


Dari gambar tersebut dapat disimpulkan bahwa persamaan kita memiliki dua akar real:

Algoritmanya, seperti yang Anda pahami, perlu "diputar" dua kali. Tapi ini bahkan dalam kasus yang paling parah; terkadang Anda harus memeriksa 3-4 akar.

1) Menggunakan kriteria Mari kita cari tahu ujung segmen mana yang harus dipilih sebagai perkiraan awal dari akar pertama. Menemukan turunan fungsi :

Menguji ujung kiri segmen:

- muncul!

Jadi, ini adalah perkiraan awal.

Kami akan menyempurnakan akar menggunakan metode Newton menggunakan rumus berulang:
- sampai pecahan modulo tidak akan kurang dari akurasi yang disyaratkan:

Dan di sini kata "modul" menjadi tidak ilusi, karena nilainya negatif:


Untuk alasan yang sama, perhatian khusus harus diberikan saat berpindah ke setiap perkiraan berikutnya:

Meskipun persyaratan akurasinya cukup tinggi, prosesnya kembali berakhir pada perkiraan ke-2: , oleh karena itu:

Akurat hingga 0,0001

2) Mari kita cari nilai perkiraan akarnya.

Kami memeriksa ujung kiri segmen untuk mencari kutu:

, oleh karena itu, ini tidak cocok sebagai perkiraan awal.

Masalah mencari solusi sistem n persamaan aljabar nonlinier atau transendental dengan n bentuk yang tidak diketahui

f 1(x 1, x 2, … x n) = 0,

f 2(x 1, x 2, … x n) = 0,

……………………

f n (x 1 ,x 2 ,… x n ) = 0,

banyak dipertimbangkan dalam praktik komputasi. Sistem persamaan serupa dapat muncul, misalnya, selama pemodelan numerik sistem fisik nonlinier pada tahap pencarian keadaan stasionernya. Dalam beberapa kasus, sistem seperti (6.1) diperoleh secara tidak langsung, dalam proses penyelesaian beberapa masalah komputasi lainnya. Misalnya, ketika mencoba meminimalkan suatu fungsi dari beberapa variabel, Anda dapat mencari titik-titik dalam ruang multidimensi yang gradien fungsinya adalah nol. Dalam hal ini, perlu untuk menyelesaikan sistem persamaan (6.1) dengan sisi kiri - proyeksi gradien ke sumbu koordinat.

Dalam notasi vektor, sistem (6.1) dapat ditulis dalam bentuk yang lebih ringkas

kolom fungsi vektor, simbol () T menunjukkan operasi transponisi

Menemukan solusi sistem persamaan nonlinier adalah tugas yang jauh lebih kompleks daripada menyelesaikan persamaan nonlinier tunggal. Namun demikian, sejumlah metode berulang untuk menyelesaikan persamaan nonlinier dapat diperluas ke sistem persamaan nonlinier.

Metode iterasi sederhana

Metode iterasi sederhana untuk sistem persamaan nonlinier pada hakikatnya merupakan generalisasi dari metode bernama sama untuk satu persamaan. Hal ini didasarkan pada kenyataan bahwa sistem persamaan (6.1) direduksi menjadi bentuk

x 1= g 1(x 1, x 2, … , xn) , x 2= g 2(x 1, x 2, … , xn) ,

……………………

x n= g n(x 1 , x 2 , … , xn) ,

dan iterasi dilakukan sesuai rumus

x 1 (k + 1 )= g 1 (x 1 (k ), x 2 (k ), ... , x n (k )), x 2 (k + 1 )= g 2 (x 1 (k ), x 2 (k ), … , x n (k )) ,

……………………………

x n (k + 1)= g n (x 1 (k), x 2 (k), ..., x n (k)).

Di sini superskrip menunjukkan angka perkiraan. Proses berulang (6.3) dimulai dengan beberapa perkiraan awal

(x 1 (0) ,x 2 (0) ,… ,x n (0) ) dan lanjutkan hingga modul pertambahan

semua argumen setelah satu k-iterasi tidak akan kurang dari nilai tertentu ε : x i (k + 1 ) − x i (k )< ε дляi = 1,2,… ,n .

Meskipun metode iterasi sederhana mengarah langsung ke solusi dan mudah diprogram, metode ini memiliki dua kelemahan signifikan. Salah satunya adalah konvergensi lambat. Hal lainnya adalah jika pendekatan awal yang dipilih jauh dari solusi sebenarnya (X 1,X 2,…,X n), maka konvergensi

metode ini tidak dijamin. Jelas bahwa masalah pemilihan pendekatan awal, yang tidak sederhana bahkan untuk satu persamaan, menjadi sangat kompleks untuk sistem nonlinier.

Memecahkan sistem persamaan nonlinier:

(X...

) =0

F n (x 1 ...

xn) = 0 .

Tidak ada metode langsung untuk menyelesaikan sistem nonlinier bentuk umum. Hanya dalam beberapa kasus sistem (4.1) dapat diselesaikan secara langsung. Misalnya, dalam kasus dua persamaan, terkadang dimungkinkan untuk menyatakan satu persamaan yang tidak diketahui ke dalam persamaan yang lain sehingga permasalahannya menjadi penyelesaian satu persamaan nonlinier terhadap satu persamaan yang tidak diketahui.

Metode iteratif biasanya digunakan untuk menyelesaikan sistem persamaan nonlinier.

metode Newton

Dalam kasus satu persamaan F(x) = 0, algoritma metode Newton mudah diperoleh dengan menuliskan persamaan tangen pada kurva y = F(x). Metode Newton untuk sistem persamaan didasarkan pada penggunaan perluasan fungsi F 1 (x 1 ...x n) dalam deret Taylor, dan suku-suku yang mengandung

Turunan kedua (dan orde lebih tinggi) yang ada dibuang. Biarkan nilai perkiraan sistem yang tidak diketahui (4.1) sama dengan

bertanggung jawab a 1 ,a 2 ,....,an . Tugasnya adalah menemukan pertambahan (oleh

suntingan) ke nilai-nilai ini

x 1 ,x 2 ,...,

x n , berkat solusi sistemnya

topik akan ditulis sebagai:

x 1= sebuah 1+ x 1,

x 2= sebuah 2+

x 2, .... ,x n = an + x n.

Mari kita perluas ruas kiri persamaan (4.1) dengan mempertimbangkan pemuaian deret Taylor, membatasi diri kita hanya pada suku linier relatif

persisnya bertambah:

F1 (x1 ... xn ) ≈ F1 (a1 ... sebuah ) +

∂ F 1

x 1+

+ ∂ F 1

xn,

∂x

∂x

F2 (x1 ... xn ) ≈ F2 (a1 ... sebuah ) +

∂ F 2

x 1+

∂ F 2

xn,

∂x

∂x

...................................

F n(x 1 ... x n) ≈ F n(a 1 ... a n) +

∂Fn

x 1+

∂Fn

xn.

∂x

∂x

Mengganti ke dalam sistem (4.1), kita memperoleh sistem persamaan aljabar linier untuk kenaikan berikut:

∂ F 1

∂ F 1

+ ∂ F 1

= −F ,

∂x

∂x

∂x

∂ F 2

∂ F 2

∂ F 2

= −F ,

∂x

∂x

∂x

..............................

∂Fn

∂Fn

∂Fn

= −F .

∂x

∂x

∂x

Nilai F 1 ...

turunan

dihitung pada

x 2 = a 2, …x n = an.

Penentu sistem (4.3) adalah Jacobian:

∂ F 1

∂ F 1

∂x

∂x

∂ F 2

∂ F 2

J = ∂x

∂x.

… … … …

∂ F n… … ∂ F n∂ x 1 ∂ x n

x 1= sebuah 1,

Agar solusi unik pada sistem ada, Jacobian harus bernilai bukan nol pada setiap iterasi.

Jadi, proses iteratif penyelesaian sistem persamaan dengan metode Newton terdiri dari menentukan kenaikan x 1 , x 2 , ..., x n terhadap nilai-nilai yang tidak diketahui pada setiap iterasi dengan menyelesaikan sistem persamaan aljabar linier ( 4.3). Penghitungan berhenti jika semua kenaikan menjadi kecil dalam nilai absolut: maxx i< ε . В ме-

Dalam metode Newton, pemilihan pendekatan awal yang berhasil juga penting untuk memastikan konvergensi yang baik. Konvergensi memburuk seiring bertambahnya jumlah persamaan dalam sistem.

Sebagai contoh, pertimbangkan penggunaan metode Newton untuk menyelesaikan sistem dua persamaan:

∂ ∂ F 1.x

Besaran pada ruas kanan dihitung pada x = a,y = b.

Jika syaratnya terpenuhi

kamu−b

< εи

x−a

untuk M tertentu, maka

nilai x dan y ditampilkan,

jika tidak

keluaran terjadi

x ,y ,M .

LEMBAGA PENDIDIKAN NEGARA

"Universitas Negeri Transnistrian dinamai demikian. TG. Shevchenko"

Cabang Rybnitsa

Departemen Fisika, Matematika dan Informatika

Kursus

dalam disiplin ilmu: “Workshop pemecahan masalah pada komputer”

"Metode Newton untuk menyelesaikan persamaan nonlinier"

Selesai:

siswa tahun ke-3;

kelompok ke-330

spesialisasi: "Informatika"

dengan tambahan mengambil jurusan bahasa Inggris

Nistor A.G.

Diperiksa:

guru Panchenko T.A.


Pengenalan komputer ke dalam semua bidang aktivitas manusia memerlukan spesialis dari berbagai profil untuk menguasai keterampilan menggunakan teknologi komputer. Tingkat kepelatihan mahasiswa semakin meningkat, yang sejak tahun pertama sudah dikenalkan dengan penggunaan komputer dan metode numerik yang paling sederhana, belum lagi pelaksanaan tugas kuliah dan proyek diploma, penggunaan teknologi komputer menjadi hal yang biasa. di sebagian besar universitas.

Teknologi komputer sekarang digunakan tidak hanya dalam perhitungan teknik dan ilmu ekonomi, tetapi juga dalam spesialisasi tradisional non-matematika seperti kedokteran, linguistik, dan psikologi. Berkaitan dengan hal tersebut, dapat dikatakan bahwa penggunaan komputer sudah meluas. Sejumlah besar spesialis telah muncul - pengguna komputer yang membutuhkan pengetahuan tentang penggunaan komputer di industri mereka - keterampilan dalam bekerja dengan perangkat lunak yang ada, serta membuat perangkat lunak mereka sendiri yang disesuaikan untuk memecahkan masalah tertentu. Dan di sini deskripsi bahasa pemrograman tingkat tinggi dan metode numerik membantu pengguna.

Metode numerik biasanya dikembangkan dan diteliti oleh ahli matematika berkualifikasi tinggi. Bagi sebagian besar pengguna, tugas utamanya adalah memahami ide dasar dan metode, fitur dan aplikasi. Namun, pengguna ingin bekerja dengan komputer tidak hanya sebagai kalkulator yang sangat cerdas, tetapi juga sebagai asisten dalam pekerjaan sehari-hari, gudang informasi dengan akses cepat dan teratur, serta sumber dan pemroses informasi grafis. Saya bermaksud untuk mendemonstrasikan semua fungsi komputer modern dalam tugas kursus ini.

Tujuan dan sasaran.

Tujuan dari tugas mata kuliah ini adalah untuk mempelajari dan mengimplementasikan dalam produk perangkat lunak penyelesaian persamaan nonlinier dengan menggunakan metode Newton. Karya ini terdiri dari tiga bagian, kesimpulan dan lampiran. Bagian pertama bersifat teoritis dan berisi informasi umum tentang metode Newton. Yang kedua adalah bagian praktis. Di sini kami menjelaskan metode Newton, dianalisis dengan contoh-contoh spesifik. Yang ketiga dikhususkan untuk menguji program dan menganalisis hasilnya. Akhirnya, kesimpulan tentang pekerjaan yang dilakukan disajikan.

Tujuan dari tugas mata kuliah ini adalah implementasi perangkat lunak metode Newton untuk menyelesaikan persamaan nonlinier.

Untuk melakukannya, Anda harus menyelesaikan tugas berikut:

1. Pelajari literatur yang diperlukan.

2. Tinjau metode yang ada untuk menyelesaikan persamaan nonlinier.

3. Pelajari metode Newton untuk menyelesaikan persamaan nonlinier.

4. Perhatikan penyelesaian persamaan nonlinier dengan metode Newton dengan menggunakan contoh spesifik.

5. Mengembangkan program penyelesaian persamaan nonlinier dengan metode Newton.

6. Analisis hasilnya.

Perhatikan masalah mencari akar-akar persamaan nonlinier

Akar persamaan (1) adalah nilai x yang jika disubstitusikan menjadi identitas. Hanya persamaan yang paling sederhana yang dapat dicari penyelesaiannya dalam bentuk rumus, yaitu. bentuk analitis. Seringkali perlu untuk menyelesaikan persamaan menggunakan metode perkiraan, yang paling luas, karena munculnya komputer, adalah metode numerik.

Algoritma pencarian akar menggunakan metode perkiraan dapat dibagi menjadi dua tahap. Pada tahap pertama, letak akar dipelajari dan dilakukan pemisahan. Ditemukan daerah yang terdapat akar persamaan atau perkiraan awal terhadap akar x 0. Cara paling sederhana untuk menyelesaikan soal ini adalah dengan memeriksa grafik fungsi f(x) . Secara umum, untuk menyelesaikannya perlu menggunakan semua cara analisis matematis.

Keberadaan paling sedikit satu akar persamaan (1) pada segmen yang ditemukan mengikuti kondisi Bolzano:

f(a)*f(b)<0 (2)

Artinya fungsi f(x) kontinu pada interval ini. Namun kondisi ini tidak menjawab pertanyaan tentang jumlah akar persamaan pada interval tertentu. Jika syarat kontinuitas suatu fungsi dilengkapi dengan syarat monotonisitasnya, dan hal ini mengikuti keteguhan tanda turunan pertama, maka kita dapat menyatakan adanya akar tunggal pada suatu ruas tertentu.

Saat melokalisasi akar, penting juga untuk mengetahui sifat dasar persamaan jenis ini. Sebagai contoh, mari kita ingat beberapa sifat persamaan aljabar:

di mana koefisien sebenarnya.

a) Persamaan derajat n memiliki n akar, di antaranya ada akar nyata dan kompleks. Akar kompleks membentuk pasangan konjugasi kompleks dan oleh karena itu, persamaan tersebut memiliki jumlah akar yang genap. Jika n ganjil, paling sedikit terdapat satu akar real.

b) Banyaknya akar real positif lebih kecil atau sama dengan banyaknya tanda variabel pada barisan koefisien. Mengganti x dengan –x pada persamaan (3) memungkinkan kita memperkirakan jumlah akar negatif dengan cara yang sama.

Pada tahap kedua penyelesaian persamaan (1), dengan menggunakan pendekatan awal yang diperoleh, dibangun proses iteratif yang memungkinkan untuk menyempurnakan nilai akar dengan akurasi tertentu yang telah ditentukan. Proses berulang terdiri dari penyempurnaan berurutan dari perkiraan awal. Setiap langkah tersebut disebut iterasi. Sebagai hasil dari proses iterasi, ditemukan barisan nilai perkiraan akar-akar persamaan. Jika barisan ini mendekati nilai sebenarnya dari akar x seiring bertambahnya n, maka proses iteratif akan konvergen. Suatu proses iteratif dikatakan konvergen hingga setidaknya orde m jika kondisi berikut terpenuhi:

, (4)


dimana C>0 adalah suatu konstanta. Jika m=1, maka kita berbicara tentang konvergensi orde pertama; m=2 - tentang kuadrat, m=3 - tentang konvergensi kubik.

Siklus berulang berakhir jika, untuk kesalahan yang diizinkan tertentu, kriteria deviasi absolut atau relatif terpenuhi:

atau perbedaan kecil:

Karya ini dikhususkan untuk mempelajari algoritma penyelesaian persamaan nonlinier menggunakan metode Newton.

1.1 Tinjauan metode yang ada untuk menyelesaikan persamaan nonlinier

Ada banyak metode berbeda untuk menyelesaikan persamaan nonlinier, beberapa di antaranya disajikan di bawah ini:

1)Metode iterasi. Saat menyelesaikan persamaan nonlinier dengan metode iterasi, kita akan menggunakan persamaan yang ditulis dalam bentuk x=f(x). Nilai awal argumen x 0 dan akurasi ε ditentukan. Perkiraan pertama dari solusi x 1 ditemukan dari ekspresi x 1 =f(x 0), yang kedua - x 2 =f(x 1), dst. Dalam kasus umum, kita mencari pendekatan i+1 menggunakan rumus xi+1 =f(xi). Kami ulangi prosedur ini sampai |f(xi)|>ε. Kondisi konvergensi metode iterasi |f"(x)|<1.

2)metode Newton. Saat menyelesaikan persamaan nonlinier dengan metode Newton, nilai awal argumen x 0 dan akurasi ε ditentukan. Kemudian di titik (x 0 ,F(x 0)) kita tarik garis singgung grafik F(x) dan tentukan titik potong garis singgung tersebut dengan sumbu x 1. Pada titik (x 1 ,F(x 1)) kita kembali membuat garis singgung, mencari perkiraan berikutnya dari solusi yang diinginkan x 2, dan seterusnya. Kami ulangi prosedur ini sampai |F(xi)| > ε. Untuk menentukan titik potong (i+1) garis singgung dengan sumbu absis, kita menggunakan rumus berikut x i+1 =x i -F(x i)\ F’(x i). Syarat konvergensi metode tangen F(x 0)∙F""(x)>0, dst.

3). Metode dikotomi. Teknik penyelesaiannya adalah dengan membagi interval ketidakpastian awal secara bertahap menjadi dua sesuai dengan rumus C k = a k + b k /2.

Untuk memilih salah satu yang diperlukan dari dua segmen yang dihasilkan, perlu untuk menemukan nilai fungsi di ujung segmen yang dihasilkan dan mempertimbangkan fungsi yang tandanya akan berubah, yaitu kondisi f ( ak) * f (dalam k) harus dipenuhi<0.

Proses pembagian segmen dilakukan hingga panjang interval ketidakpastian arus kurang dari ketelitian yang ditentukan, yaitu

ke - ke< E. Тогда в качестве приближенного решения уравнения будет точка, соответствующая середине интервала неопределённости.

4). Metode akord. Ide dari metode ini adalah bahwa sebuah tali busur dibuat pada segmen tersebut, yang menyuplai ujung-ujung busur dari grafik fungsi y=f(x), dan titik c, perpotongan tali busur dengan x- sumbu, dianggap sebagai nilai perkiraan akar

c = a - (f(a)Х (a-b)) / (f(a) - f(b)),

c = b - (f(b)Х (a-b)) / (f(a) - f(b)).

Perkiraan selanjutnya dicari pada interval atau tergantung pada tanda-tanda nilai fungsi di titik a, b, c

x* O, jika f(c)H f(a) > 0;

x* HAI jika f(c)Х f(b)< 0 .


Jika f"(x) tidak berubah tanda menjadi , kemudian menyatakan c=x 1 dan mempertimbangkan a atau b sebagai perkiraan awal, kita memperoleh rumus iteratif metode tali busur dengan titik kanan atau kiri tetap.

x 0 =a, x i+1 = x i - f(x i)(b-x i) / (f(b)-f(x i), dengan f "(x)Х f "(x) > 0;

x 0 =b, x i+1 = x i - f(x i)(x i -a) / (f(x i)-f(a), dengan f "(x)Х f "(x)< 0 .

Konvergensi metode akord bersifat linier.

1.2 Algoritma metode Newton

Mari kita buat algoritma yang efektif untuk menghitung akar persamaan. Biarkan perkiraan awal diberikan. Mari kita hitung nilai fungsi dan turunannya pada titik ini. Mari kita lihat ilustrasi grafis dari metode ini:

.


(8)

Melanjutkan proses ini, kita memperoleh rumus Newton yang terkenal:

(9)

Berikut adalah fungsi subrutin rekursif yang paling sederhana:

fungsi X_Newt(x,eps:nyata):nyata;

y:=x-f(x)/f1(x);

jika abs(f(x)) > eps

lalu X_Baru:=X_Baru(y,eps)

Metode Newton (garis singgung) dicirikan oleh tingkat konvergensi kuadrat, yaitu. Pada setiap iterasi, jumlah tanda yang benar menjadi dua kali lipat. Namun, metode ini tidak selalu memberikan hasil yang diinginkan. Mari kita pertimbangkan masalah ini lebih terinci.

Mari kita ubah persamaan (1) menjadi persamaan ekuivalen berbentuk:

Dalam hal metode tangen . Jika aproksimasi awal terhadap akar x=x 0 diketahui, maka kita akan mencari aproksimasi selanjutnya dari persamaan x 1 =g(x 0), maka x 2 =g(x 1),... Melanjutkan proses ini, kita memperoleh rumus berulang dari metode iterasi sederhana

xk+1 =g(xk) (11)

Proses berulang berlanjut hingga kondisi (5-7) terpenuhi.

Apakah proses komputasi yang dijelaskan selalu mengarah pada solusi yang diinginkan? Dalam kondisi apa ia akan bertemu? Untuk menjawab pertanyaan-pertanyaan ini, mari kita kembali ke ilustrasi geometri metode ini.

Akar persamaan diwakili oleh titik potong fungsi y=x dan y=g(x). Seperti yang dapat dilihat dari Gambar. 3(a), jika kondisi terpenuhi, maka proses konvergen, jika tidak maka proses divergen (Gbr. 3(b)).


Jadi, agar proses iteratif menjadi konvergen dan menghasilkan hasil yang diinginkan, kondisi berikut harus dipenuhi:

Peralihan dari persamaan f(x)=0 ke persamaan x=g(x) dapat dilakukan dengan berbagai cara. Dalam hal ini, penting agar fungsi yang dipilih g(x) memenuhi kondisi (12). Misalnya, jika fungsi f(x) dikalikan dengan konstanta sembarang q dan variabel x ditambahkan ke kedua ruas persamaan (1), maka g(x)=q*f(x)+x. Mari kita pilih konstanta q sehingga tingkat konvergensi algoritma menjadi yang tertinggi. Jika 1

Metode Newton mempunyai tingkat konvergensi yang tinggi, namun tidak selalu konvergen. Kondisi konvergensi, dimana g(x) = x – f(x)/ f’(x), direduksi menjadi persyaratan.

Dalam perhitungan praktis, penting untuk memilih nilai awal sedekat mungkin dengan nilai yang diinginkan, dan memasang “penjaga perulangan” dalam program.

Kerugian dari metode ini adalah pada setiap langkah perlu dihitung tidak hanya fungsinya, tetapi juga turunannya. Hal ini tidak selalu nyaman. Salah satu modifikasi metode Newton adalah menghitung turunannya hanya pada iterasi pertama:

(13)

Cara modifikasi lainnya adalah dengan mengganti turunan dengan selisih hingga

(14)

Kemudian (15)

Arti geometri dari perubahan algoritma Newton ini adalah dari garis singgung kita sampai pada garis potong. Metode garis potong lebih rendah dari metode Newton dalam hal kecepatan konvergensi, tetapi tidak memerlukan perhitungan turunannya. Perhatikan bahwa perkiraan awal dalam metode garis potong dapat ditempatkan pada sisi akar yang berbeda atau pada sisi yang sama.

Mari kita tuliskan algoritma metode Newton dalam bentuk umum.

1. Tetapkan perkiraan awal x (0) agar kondisi terpenuhi

f(x (0))*f''(x (0))>0. (16)

Tetapkan angka positif kecil ε sebagai keakuratan perhitungan. Tetapkan k = 0.

2. Hitung x (k+1) menggunakan rumus (9):


.

3. Jika | x (k+1) - x (k) |< ε, то процесс вычисления прекратить и положить х* = x (k+1) . Jika tidak, tambah k sebanyak 1 (k = k + 1) dan lanjutkan ke langkah 2.

Mari kita selesaikan beberapa persamaan nonlinier secara manual menggunakan metode Newton, lalu bandingkan hasilnya dengan yang diperoleh saat mengimplementasikan produk perangkat lunak.

Contoh 1

dosa x 2 + cosx 2 - 10x. = 0.

F’(x)=2x cosx 2 - 2x sinx 2 - 10.

F’’(x)=2cosx 2 - 4x 2 sinx 2 - 2sinx 2 - 4x 2 cosx 2 = cosx 2 (2-4x 2) - sinx 2 (2+4x 2).


Sekarang, berdasarkan grafik, mari kita ambil perkiraan akar pertama dan periksa kondisi (16): f(x (0)) * f’’(x (0)) > 0.

Misalkan x (0) = 0,565, maka f(0,565)*f’’(0,565) = -4. 387 * (-0,342) = 1,5 > 0,

Syaratnya terpenuhi, jadi kita ambil x (0) = 0,565.

k x(k) f(x(k)) f'(x(k)) | x(k+1) - x(k) |
0 0. 565 -4. 387 -9. 982 0. 473
1 0. 092 0. 088 -9. 818 0. 009
2 0. 101 0. 000 -9. 800 0. 000
3 0. 101

Oleh karena itu akar persamaannya adalah x = 0,101.

Contoh 2

Selesaikan persamaan menggunakan metode Newton.

karena x – e -x2/2 + x - 1 = 0

Perhitungan harus dilakukan dengan ketelitian = 0,001.

Mari kita hitung turunan pertama dari fungsi tersebut.

F'(x) = 1 – dosa x + x*e -x2/2 .

Sekarang mari kita hitung turunan kedua dari fungsi tersebut.

F''(x) = e -x2/2 *(1-x 2) – cos x.

Mari kita buat grafik perkiraan fungsi ini.

Sekarang, berdasarkan grafik, mari kita ambil perkiraan akar pertama dan periksa kondisi (16): f(x (0)) * f’’(x (0)) > 0.

Misalkan x (0) = 2, maka f(2)*f’’(2) = 0,449 * 0,010 = 0,05 > 0,

Syaratnya terpenuhi, jadi kita ambil x (0) = 2.

Sekarang mari kita buat tabel nilai untuk menyelesaikan persamaan ini.

k x(k) f(x(k)) f'(x(k)) | x(k+1) - x(k) |
0 2 0. 449 0. 361 1. 241
1 -0. 265 0. 881 0. 881 0. 301
2 -0. 021 0. 732 0. 732 0. 029
3 0. 000 0. 716 0. 716 0. 000
4 1. 089

Oleh karena itu akar persamaannya adalah x = 1,089.

Contoh 3

Selesaikan persamaan menggunakan metode Newton.

Perhitungan harus dilakukan dengan ketelitian = 0,001.

Mari kita hitung turunan pertama dari fungsi tersebut.

F'(x) = 2*x + e -x .

Sekarang mari kita hitung turunan kedua dari fungsi tersebut.

F''(x) = 2 - e -x .

Mari kita buat grafik perkiraan fungsi ini.


Sekarang, berdasarkan grafik, mari kita ambil perkiraan akar pertama dan periksa kondisi (16): f(x (0)) * f’’(x (0)) > 0.

Misal x (0) = 1, maka f(2)*f’’(2) = 0. 632 * 1, 632 = 1, 031 > 0,

Sekarang mari kita buat tabel nilai untuk menyelesaikan persamaan ini.

k x(k) f(x(k)) f'(x(k)) | x(k+1) - x(k) |
0 1, 000 0, 632 2, 368 0, 267
1 0, 733 0, 057 1, 946 0, 029
2 0, 704 0, 001 1, 903 0, 001
3 0, 703

Oleh karena itu akar persamaannya adalah x = 0,703.

Selesaikan persamaan menggunakan metode Newton.

karena x –e -x/2 +x-1=0.

Mari kita hitung turunan pertama dari fungsi tersebut.


F'(x) = -sin x + e -x/2 /2+1.

Sekarang mari kita hitung turunan kedua dari fungsi tersebut.

F''(x) = -cos x - e -x/2/4.

Mari kita buat grafik perkiraan fungsi ini.

Sekarang, berdasarkan grafik, mari kita ambil perkiraan akar pertama dan periksa kondisi (16): f(x (0)) * f’’(x (0)) > 0.

Misalkan x (0) = 1, maka f(2)*f’’(2) = -0. 066*(-0,692) = 0,046 > 0,

Syaratnya terpenuhi, jadi kita ambil x (0) = 1.

Sekarang mari kita buat tabel nilai untuk menyelesaikan persamaan ini.

k x(k) f(x(k)) f'(x(k)) | x(k+1) - x(k) |
0 1, 000 -0. 066 0. 462 0. 143
1 1. 161 -0. 007 0. 372 0. 018
2 1. 162 0. 0001. 0. 363 0. 001
3 1. 162

Oleh karena itu akar persamaannya adalah x = 1,162.

Contoh 5

Selesaikan persamaan menggunakan metode Newton.

2+ex - e -x =0.

Mari kita hitung turunan pertama dari fungsi tersebut.

F'(x) = e x +e -x .

Sekarang mari kita hitung turunan kedua dari fungsi tersebut.

F''(x) = e x -e -x .

Mari kita buat grafik perkiraan fungsi ini.

Sekarang, berdasarkan grafik, mari kita ambil perkiraan akar pertama dan periksa kondisi (16): f(x (0)) * f’’(x (0)) > 0.

Misalkan x (0) = 1, maka f(2)*f’’(2) = 0. 350 * 2, 350 = 0. 823 > 0,

Syaratnya terpenuhi, jadi kita ambil x (0) = 1.

Sekarang mari kita buat tabel nilai untuk menyelesaikan persamaan ini.

k x(k) f(x(k)) f'(x(k)) | x(k+1) - x(k) |
0 1, 000 0, 350 3, 086 0, 114
1 0, 886 0, 013 2, 838 0, 005
2 0, 881 0, 001 2, 828 0, 000
3 0, 881

Oleh karena itu akar persamaannya adalah x = 0,881.

3.1 Deskripsi program

Program ini dirancang untuk bekerja dalam mode teks dan grafik. Ini terdiri dari modul Grafik, Crt, tiga fungsi dan tiga prosedur.

1. Modul Crt dirancang untuk memberikan kontrol atas mode teks layar, kode keyboard tambahan, warna, jendela, dan suara;

2. Modul Grafik dirancang untuk memberikan kontrol atas objek grafik;

3. prosedur GrafInit - menginisialisasi mode grafis;

4. fungsi VF – menghitung nilai fungsi;

5. fungsi f1 – menghitung nilai turunan pertama fungsi tersebut;

6. fungsi X_Newt – mengimplementasikan algoritma untuk menyelesaikan persamaan menggunakan metode Newton.

7. prosedur FGraf – mengimplementasikan konstruksi grafik fungsi tertentu f(x);

Ots=35 - konstanta yang menentukan jumlah titik lekukan dari batas monitor;

fmin, fmax – nilai maksimum dan minimum dari fungsi;

SetColor(4) – prosedur yang menetapkan warna objek grafis saat ini menggunakan palet, dalam hal ini merah;

SetBkColor(9) adalah prosedur yang mengatur warna latar belakang saat ini menggunakan palet, dalam hal ini warna biru muda.

8. Prosedur MaxMinF – akan menghitung nilai maksimum dan minimum dari fungsi f(x).

Garis – prosedur menggambar garis dari suatu titik dengan koordinat (x1, y1) ke suatu titik dengan koordinat (x2, y2);

MoveTo – prosedur yang memindahkan pointer (CP) ke suatu titik dengan koordinat (x, y);

TextColor(5) – prosedur yang menetapkan warna karakter saat ini, dalam hal ini merah muda;

Outtexty(x, y, 'string') – prosedur yang mengeluarkan string yang dimulai dari posisi (x, y)

CloseGraph adalah prosedur yang menutup sistem grafis.

3.2 Menguji program

Untuk menguji program, kami akan mengambil contoh yang diselesaikan pada bagian praktis pekerjaan untuk membandingkan hasil dan memeriksa kebenaran pengoperasian program.

1) dosa x 2 + cosx 2 - 10x. = 0.

Masukkan a = -1

Masukkan b=1

= [-1, 1]

(keluaran grafik fungsi)


Kita mendapatkan: x=0,0000002

2) karena x – e -x2/2 + x - 1 = 0.

Program ini menghitung akar persamaan nonlinier menggunakan metode Newton dengan akurasi eps dan menggambar grafik perkiraan fungsi pada segmen tersebut.

Masukkan a = -3

Masukkan b=3

= [-3, 3]

(keluaran grafik fungsi)

Akar persamaan ditemukan dengan metode Newton:

Mari kita periksa dengan mensubstitusikan jawaban yang dihasilkan ke dalam persamaan.

Kita mendapatkan: x=-0,0000000

3) x 2 - e -x = 0.

Program ini menghitung akar persamaan nonlinier menggunakan metode Newton dengan akurasi eps dan menggambar grafik perkiraan fungsi pada segmen tersebut.

Masukkan a = -1

Masukkan b=1

= [-1, 1]

Masukkan presisi penghitungan eps=0. 01

(keluaran grafik fungsi)

Akar persamaan ditemukan dengan metode Newton:

Mari kita periksa dengan mensubstitusikan jawaban yang dihasilkan ke dalam persamaan.

Kita mendapatkan: x=0,0000000

4) karena x –e -x/2 +x-1=0.

Program ini menghitung akar persamaan nonlinier menggunakan metode Newton dengan akurasi eps dan menggambar grafik perkiraan fungsi pada segmen tersebut.

Masukkan a = -1,5

Masukkan b=1,5

= [-1,5, 1,5 ]

Masukkan presisi penghitungan eps=0. 001

(keluaran grafik fungsi)

Akar persamaan ditemukan dengan metode Newton:


Mari kita periksa dengan mensubstitusikan jawaban yang dihasilkan ke dalam persamaan.

Kita mendapatkan: x=0,0008180

5) -2+ex - e -x =0.

Program ini menghitung akar persamaan nonlinier menggunakan metode Newton dengan akurasi eps dan menggambar grafik perkiraan fungsi pada segmen tersebut.

Masukkan a = -0,9

Masukkan b=0,9

= [-0,9, 0,9]

Masukkan presisi penghitungan eps=0. 001

(keluaran grafik fungsi)

Akar persamaan ditemukan dengan metode Newton:

Mari kita periksa dengan mensubstitusikan jawaban yang dihasilkan ke dalam persamaan.

Tujuan dari pekerjaan ini adalah untuk membuat program yang menghitung akar persamaan nonlinier menggunakan metode Newton. Berdasarkan hal ini, kita dapat menyimpulkan bahwa tujuan telah tercapai, karena tugas-tugas berikut telah diselesaikan untuk pelaksanaannya:

1. Literatur yang diperlukan telah dipelajari.

2. Metode penyelesaian persamaan nonlinier yang ada ditinjau.

3. Metode Newton untuk menyelesaikan persamaan nonlinier dipelajari.

4. Penyelesaian persamaan nonlinier dengan metode Newton dibahas dengan menggunakan sebuah contoh.

5. Program telah diuji dan di-debug.

Daftar literatur bekas

1. BP Demidovich, I.A.Maron. Dasar-dasar matematika komputasi. – Moskow, ed. "Sains"; 1970.

2. V.M. Verzhbitsky. Metode numerik (aljabar linier dan persamaan nonlinier). – Moskow, “Sekolah Tinggi”; 2000.

3. N.S.Bakhvalov, A.V.Lapin, E.V.Chizhonkov. Metode numerik dalam soal dan latihan. – Moskow, “Sekolah Tinggi”; 2000.

4. Matthews, John, G., Fink, Curtis, D. Metode numerik MATLAB, edisi ke-3 - Moskow, “Villas”; 2001.

Metode Newton (metode tangen)

Misalkan akar persamaan f(x)=0 dipisahkan pada ruas , dengan turunan pertama dan kedua f’(x) dan f""(x) kontinu dan bertanda konstan untuk xÎ.

Biarkan pada beberapa langkah penyempurnaan akar, perkiraan berikutnya ke akar x n diperoleh (dipilih) . Maka misalkan perkiraan selanjutnya diperoleh dengan menggunakan koreksi h n , mengarah ke nilai pasti dari akar

x = xn + hn. (1.2.3-6)

Perhitungan h n nilai kecil, kita nyatakan f(х n + h n) dalam bentuk deret Taylor, membatasi diri pada suku linier

f(x n + h n) »f(x n) + h n f’(x n). (1.2.3-7)

Mengingat f(x) = f(x n + h n) = 0, kita peroleh f(x n) + h n f ’(x n) » 0.

Oleh karena itu h n » - f(x n)/ f’(x n). Mari kita substitusikan nilainya h n di (1.2.3-6) dan sebagai ganti nilai pasti dari akarnya X kita mendapatkan perkiraan lain

Rumus (1.2.3-8) memungkinkan kita memperoleh barisan perkiraan x 1, x 2, x 3 ..., yang, dalam kondisi tertentu, konvergen ke nilai eksak akar X, yaitu

Interpretasi geometris metode Newton adalah sebagai berikut
(Gbr.1.2.3-6). Mari kita ambil ujung kanan segmen b sebagai perkiraan awal x 0 dan buatlah garis singgung di titik yang bersesuaian B 0 pada grafik fungsi y = f(x). Titik perpotongan garis singgung dengan sumbu x diambil sebagai pendekatan baru yang lebih akurat x 1. Mengulangi prosedur ini berkali-kali memungkinkan kita memperoleh barisan perkiraan x 0, x 1, x 2 , . . ., yang cenderung pada nilai eksak dari akarnya X.

Rumus perhitungan metode Newton (1.2.3-8) dapat diperoleh dari konstruksi geometri. Jadi pada segitiga siku-siku x 0 B 0 x 1 kaki
x 0 x 1 = x 0 V 0 /tga. Mengingat titik B 0 berada pada grafik fungsi f(x), dan sisi miringnya dibentuk oleh garis singgung grafik f(x) di titik B 0, kita peroleh

(1.2.3-9)

(1.2.3-10)

Rumus ini bertepatan dengan (1.2.3-8) untuk pendekatan ke-n.

Dari Gambar 1.2.3-6 jelas bahwa pemilihan titik a sebagai perkiraan awal dapat mengarah pada fakta bahwa perkiraan berikutnya x 1 akan berada di luar segmen di mana akar dipisahkan X. Dalam hal ini, konvergensi proses tidak dijamin. Dalam kasus umum, pemilihan aproksimasi awal dilakukan sesuai dengan aturan berikut: aproksimasi awal harus diambil sebagai titik x 0 , di mana f(x 0)×f''(x 0)>0 , yaitu tanda-tanda fungsi dan turunan keduanya cocok.

Syarat konvergensi metode Newton dirumuskan dalam teorema berikut.

Jika akar persamaan dipisahkan menjadi segmen, Dan f'(x 0) dan f''(x) berbeda dari nol dan mempertahankan tandanya ketika, lalu jika kita memilih titik tersebut sebagai perkiraan awal x 0 О , Apa f(x 0).f¢¢(x 0)>0 , maka akar persamaannya f(x)=0 dapat dihitung dengan tingkat akurasi apa pun.

Estimasi kesalahan metode Newton ditentukan oleh ekspresi berikut:

(1.2.3-11)

dimana nilai terkecilnya pada

Nilai tertinggi pada

Proses perhitungan berhenti jika ,

di mana akurasi yang ditentukan.

Selain itu, ekspresi berikut dapat berfungsi sebagai syarat untuk mencapai akurasi tertentu saat menyempurnakan akar menggunakan metode Newton:

Diagram algoritma metode Newton ditunjukkan pada Gambar. 1.2.3-7.

Sisi kiri persamaan asli f(x) dan turunannya f’(x) dalam algoritma dirancang sebagai modul perangkat lunak terpisah.

Beras. 1.2.3-7. Diagram algoritma metode Newton

Contoh 1.2.3-3. Sempurnakan akar-akar persamaan x-ln(x+2) = 0 menggunakan metode Newton, asalkan akar-akar persamaan ini dipisahkan pada ruas-ruas x 1 О[-1.9;-1.1] dan x 2 tentang [-0,9;2 ].

Turunan pertama f’(x) = 1 – 1/(x+2) mempertahankan tandanya pada setiap segmen:

f'(x)<0 при хÎ [-1.9; -1.1],

f'(x)>0 pada xО [-0.9; 2].

Turunan kedua f"(x) = 1/(x+2) 2 > 0 untuk sembarang x.

Dengan demikian, kondisi konvergensi terpenuhi. Karena f""(x)>0 pada seluruh rentang nilai yang diizinkan, maka untuk memperjelas akar dari perkiraan awal x 1 pilih x 0 = -1.9 (karena f(-1.9)×f”(-1.9)>0). Kami memperoleh urutan perkiraan:

Melanjutkan perhitungan, kita memperoleh urutan empat perkiraan pertama berikut: -1.9; –1.8552, -1.8421; -1.8414 . Nilai fungsi f(x) di titik x=-1,8414 sama dengan f(-1,8414)=-0,00003 .

Untuk memperjelas akar x 2 О[-0.9;2] kita memilih 0 =2 (f(2)×f”(2)>0) sebagai perkiraan awal. Berdasarkan x 0 = 2, kita memperoleh barisan aproksimasi: 2.0;1.1817; 1,1462; 1.1461. Nilai fungsi f(x) di titik x=1,1461 sama dengan f(1,1461)= -0,00006.

Metode Newton memiliki tingkat konvergensi yang tinggi, namun pada setiap langkahnya memerlukan penghitungan tidak hanya nilai fungsi, tetapi juga turunannya.

Metode akord

Interpretasi geometris dari metode akord adalah sebagai berikut
(Gbr.1.2.3-8).

Mari kita menggambar ruas garis yang melalui titik A dan B. Perkiraan selanjutnya x 1 adalah absis titik potong tali busur dengan sumbu 0x. Mari kita buat persamaan ruas garis lurus:

Mari kita atur y=0 dan temukan nilainya x=x 1 (perkiraan berikutnya):

Mari kita ulangi proses perhitungan untuk mendapatkan perkiraan akar berikutnya - x 2 :

Dalam kasus kami (Gbr. 1.2.11) dan rumus perhitungan metode chord akan berbentuk

Rumus ini berlaku jika titik b diambil sebagai titik tetap, dan titik a bertindak sebagai perkiraan awal.

Mari kita pertimbangkan kasus lain (Gbr. 1.2.3-9), kapan .

Persamaan garis lurus untuk kasus ini mempunyai bentuk

Perkiraan selanjutnya x 1 pada y = 0

Maka rumus berulang metode chord untuk kasus ini berbentuk

Perlu dicatat bahwa titik tetap dalam metode tali busur dipilih menjadi ujung segmen yang kondisi f (x)∙f¢¢ (x)>0 terpenuhi.

Jadi, jika titik a diambil sebagai titik tetap , maka x 0 = b bertindak sebagai perkiraan awal, dan sebaliknya.

Kondisi cukup yang menjamin perhitungan akar persamaan f(x) = 0 menggunakan rumus tali busur akan sama dengan metode tangen (metode Newton), hanya saja sebagai pengganti pendekatan awal, yang dipilih adalah titik tetap. Metode akord merupakan modifikasi dari metode Newton. Bedanya, aproksimasi selanjutnya pada metode Newton adalah titik potong garis singgung dengan sumbu 0X, dan pada metode tali busur - titik potong tali busur dengan sumbu 0X - aproksimasinya menyatu ke akar dari sisi yang berbeda. .

Estimasi kesalahan untuk metode chord diberikan oleh ekspresi

(1.2.3-15)

Kondisi untuk mengakhiri proses iterasi menggunakan metode chord

(1.2.3-16)

Dalam kasus M 1<2m 1 , то для оценки погрешности метода может быть использована формула | x n -x n -1 |£e.

Contoh 1.2.3-4. Perjelas akar persamaan e x – 3x = 0 yang dipisahkan pada ruas dengan ketelitian 10 -4.

Mari kita periksa kondisi konvergensinya:

Akibatnya, a=0 harus dipilih sebagai titik tetap, dan x 0 =1 harus diambil sebagai perkiraan awal, karena f(0)=1>0 dan f(0)*f"(0)>0.



Apakah Anda menyukai artikelnya? Bagikan dengan teman Anda!