资源简介
最小二乘法拟合 用高斯牛顿法
一个指数函数 一个抛物线拟合 能运行 有结果
代码片段和文件信息
#include
#include
#include
#include
#include
#include
using namespace std;
void about();
void Gauss(double * matrixint widthint height);
void showMatrix(double ** tempint widthint height);
void DrawPlots(double *xdouble *yint num_xint num_y);
const int N=15M=2M2=1;
void main(){
double x[15]={1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8}
y[15]={33.4 79.5 122.65 159.05 189.15 214.15 238.65 252.5 267.55 280.5 296.65 301.4 310.4 318.15 325.15};
/*x[]={12345678910111213141516}
y[]={4 6.4 8 8.8 9.22 9.5 9.7 9.86 10 10.2 10.32 10.42 10.5 10.55 10.58 10.6};*/
int ijkl;
cout<<“\n\n实验5 第1题 抛物线拟合\n“< double matrix[M+1][M+2]={0};matrix[0][0]=N;
for(i=0;i k=1;matrix[0][M+1]+=y[i];
for(j=1;j<2*M+1;j++){
k*=x[i];
for(l=0;l<(j>M?2*M+1-j:j+1);l++)
matrix[ j>M?j-M+l:l][ j>M?M-l:j-l]+=k;
if(j }
}
double *p=(double *)&matrix;
Gauss(pM+2M+1);
cout<<“\n\n指数拟合\n“< double matrix2[M2+1][M2+2]={0};matrix2[0][0]=N;
for(i=0;i k=1;
matrix2[0][M2+1]+=y[i];
for(j=1;j<2*M2+1;j++){
k*=x[i];
for(l=0;l<(j>M2?2*M2+1-j:j+1);l++)
matrix2[ j>M2?j-M2+l:l][ j>M2?M
相关资源
- 最小二乘法曲线拟合C语言可执行代码
- 空间平面的最小二乘拟合
- 非线性最小二乘法C语言代码
- 由离散数据内插出规则格网数据的程
- opencv椭圆拟合长短轴比
- 用c编写的最小二次方程序
- 激光雷达数据读取、显示、分割、直
- c++ 最小二乘算法拟合球心 使用Vs200
- C++实现最小二乘法一元回归和多项式
- 曲线最小二乘法多项式拟合C++Qt实现界
- 正交函数作最小二乘拟合(C语言)
- 《基于递推最小二乘的三轴磁强计在
- c++ 椭圆拟合算法
- c++ 三次样条曲线拟合
- 最小二乘法曲线拟合C++
- VC写的B样条曲线拟合程序
- 多个三维空间点拟合平面
- C++曲线拟合源代码
- B样条曲线数据拟合代码,c\\c++
- 基于c+++Opencv的图像边缘提取及拟合
- Irls算法-权值最小二乘算法C++opencv2.
- 最小二乘法数值分析作业
- 最小二乘法参数估计,c语言实现
- 多项式模型参数辨识
评论
共有 条评论