d9r1.cpp

来自「VC实现的常用数值计算方法」· C++ 代码 · 共 46 行

CPP
46
字号
#include "iostream.h"
#include "stdlib.h"
#include "math.h"

void main()
{
    //program d9r1
    //driver for routine fit
    int i,mwt,npt = 100;
    double spread = 0.5;
    double x[101], y[101], sig[101];
	double a, b, siga, sigb, chi2, q;
    long idum = -117;
    for (i = 1; i<=npt; i++)
	{
        x[i] = 0.1 * i;
        y[i] = -2.0 * x[i] + 1.0 + spread * gasdev(idum);
        sig[i] = spread;
    }
    for (mwt = 0; mwt<=1; mwt++)
	{
        fit(x, y, npt, sig, mwt, a, b, siga, sigb, chi2, q);
        if (mwt == 0)
		{
            cout<<endl;
            cout<<"Ignoring standard deviation"<<endl;
            cout<<endl;
		}
        else
		{
            cout<<endl;
            cout<<"Including standard deviation"<<endl;
            cout<<endl;
        }
        cout<<"a = "<<a<<"       ";
        cout<<"Uncertainty: "<<siga<<endl;
        cout<<endl;
        cout<<"b = "<<b<<"       ";
        cout<<"Uncertainty: "<<sigb<<endl;
        cout<<endl;
        cout<<"Chi-squared: "<<chi2<<endl;
        cout<<endl;
        cout<<"Goodness-of-fit: "<<q<<endl;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?