c语言二次函数拟合,二次函数拟合算法
生活随笔
收集整理的這篇文章主要介紹了
c语言二次函数拟合,二次函数拟合算法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
二次函數擬合算法
原理:
在給定一組數據序列(x i,y i),i=0,1,2…m,用二次多項式擬合這組數據時,設
p(x)=a0+a1x+a2x2,則根據擬合函數與數據序列的均方誤差最小原則,可以得到二次多項式函數擬合的矩陣計算方程如下所示:
(
m x i
m
i=1
x i2
m
i=1
x i
m
i=1
x i2
m
i=1
x i3
m
i=1
x i2
m
i=1
x i3
m
i=1
x i4
m
i=1
)(
a0
a1
a2
)= (
y i
m
i=1
x i y i
m
i=1
x i2y i
m
i=1
)
在我們的計算庫倫效應實例中,Y即為每個Cycle對應的DischargeC/ChargeC的比值,X即
為每個Cycle對應的數字。
代碼中定義的三個矩陣XX,AA,YY則分別對應原理公式中等式左邊X系數矩陣,A系數矩陣
以及等式右邊包含Y系數的矩陣。
具體步驟:
1:先將矩陣中需要的所有量計算出來,并且存放在XX,AA,YY三個矩陣中。
2:為了求得系數矩陣AA,我們需要先把XX矩陣求逆,然后與YY矩陣相乘。函數MRinv
即為矩陣求逆的函數,返回時存放其逆矩陣。
3:得到系數矩陣AA之后,即得到了擬合好的二次函數,將此二次函數輸出在Excel表中。具體代碼實現:
步驟1對應代碼:
總結
以上是生活随笔為你收集整理的c语言二次函数拟合,二次函数拟合算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言 链表 删除节点,C语言实现单链表
- 下一篇: c语言整数检验,C程序整数缺陷的检测与修