Gunakan kaedah kuasa dua terkecil untuk memuatkan fungsi kuasa y=a*x^b dan fungsi eksponen y=b*exp(a)

WBOY
Lepaskan: 2024-01-16 16:51:11
ke hadapan
1172 orang telah melayarinya

运用最小二乘法分别进行乘幂函数 y a x^b指数函数y b expa

Gunakan kaedah kuasa dua terkecil untuk mendarab fungsi kuasa y a x^b fungsi eksponen y b expa x

x=[0.34 0.35 0.36 0.37 0.38 0.39 0.40 0.41 0.42 0.43];

y=[0.211 0.313 0.466 0.692 1.03 1.532 2.190 3.250 4.823 7.158];

Muat yang pertama:

fungsi f = pertama(c, x, y)

f = y - c(1) .* x .^ c(2);

Simpan sebagai fail first.m.

Jalankan dari baris arahan:

c = lsqnonlin('first', [0 0], [], [], [], x, y);

a = c(1)

b = c(2)

Muat yang kedua:

fungsi f = pertama2(c, x, y)

f = y - c(2) .* exp(c(1) .* x);

Simpan sebagai fail first2.m.

Jalankan dari baris arahan:

c2 = lsqnonlin('first2', [0 0], [], [], [], x, y);

a2 = c2(1)

b2 = c2(2)

Cara menggunakan matlab untuk pemasangan petak terkecil

Gunakan fungsi polyfit (untuk pemasangan polinomial, kaedah kuasa dua terkecil digunakan)

Beri saya contoh

x=[90 91 92 93 94 95 96];

z=[70 122 144 152 174 196 202];

a=polyfit(x,z,1)

Hasil:

a =

1.0e+03 *

0.0205 -1.7551

1 mewakili polinomial darjah 1 (ia adalah garis lurus apabila darjah 1, terpakai untuk situasi anda)

a ialah vektor pekali polinomial, yang disusun daripada sebutan tertib tinggi kepada sebutan tertib rendah,

Jika anda ingin menggunakan keputusan, sebagai contoh, anda ingin tahu apa yang sama dengan z apabila x=97

Kemudian ada dua kaedah,

Gunakan pekali secara terus

>>a(1)*97+a(2)

ans =

233.4286

Atau gunakan fungsi polyval

>>polival(a,97)

ans =

233.4286

Aplikasi kaedah kuasa dua terkecil? ?

Kaedah kuasa dua terkecil ialah teknik pengoptimuman matematik yang mencari padanan fungsi terbaik untuk set data dengan meminimumkan jumlah ralat kuasa dua.

Kaedah kuasa dua terkecil ialah menggunakan kaedah paling mudah untuk mendapatkan beberapa nilai sebenar yang tidak dapat diketahui, sambil meminimumkan jumlah ralat kuasa dua.

Kaedah kuasa dua terkecil biasanya digunakan untuk pemasangan lengkung. Banyak masalah pengoptimuman lain juga boleh dinyatakan dalam bentuk kuasa dua terkecil dengan meminimumkan tenaga atau memaksimumkan entropi.

Sebagai contoh, mari kita mulakan dengan fungsi linear termudah y=kx+b

Diketahui bahawa terdapat beberapa titik (1.1, 2.0), (2.1, 3.2), (3, 4.0), (4, 6), (5.1, 6.0) pada paksi koordinat, dan ungkapan hubungan fungsi linear bagi imej yang melalui titik ini

Sudah tentu, garis lurus ini tidak boleh melalui setiap titik Kita hanya perlu meminimumkan jumlah kuasa dua jarak dari 5 titik ke garis lurus Ini memerlukan penggunaan kaedah kuasa dua terkecil on. Banyak yang perlu dibincangkan Memandangkan anda hanya bertanya tentang kaedah kuasa dua terkecil, saya hanya akan bercakap tentang ini.

Ini adalah sesuatu yang hanya dipelajari di kolej, dan biasanya digunakan untuk pemodelan.

Atas ialah kandungan terperinci Gunakan kaedah kuasa dua terkecil untuk memuatkan fungsi kuasa y=a*x^b dan fungsi eksponen y=b*exp(a). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:docexcel.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!