⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d9r10.cpp

📁 vc++常用数值算法集合
💻 CPP
字号:
#include "iostream.h"
#include "math.h"
#include "stdlib.h"

void main()
{
    //program d9r10
    //driver for routine medfit
    int i,npt = 100;
    double a,b,siga,sigb,chi2,q,abdev,spread = 0.1;
    double x[101], y[101], sig[101];
    long idum = -1984;
    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;
    }
    int mwt = 1;
    fit(x, y, npt, sig, mwt, a, b, siga, sigb, chi2, q);
	cout.setf(ios::fixed|ios::left);
	cout.precision(4);
    cout<<"According to routine fit the result is:"<<endl;
    cout<<endl;
    cout<<"a = ";
	cout.width(12);
	cout<<a;
	cout<<"Uncertainty: ";
	cout.width(12);
    cout<<siga<<endl;
	cout<<endl;
    cout<<"b = ";
	cout.width(12);
	cout<<b;
	cout<<"Uncertainty: ";
    cout<<sigb<<endl;
    cout<<endl;
    cout<<"Chi-squared: ";
	cout.width(12);
	cout<<chi2<<" for   ";
	cout.width(5);
	cout<<npt<<"points";
    cout<<endl;cout<<endl;
    cout<<"Goodness-of-fit: ";
	cout.width(12);
	cout<<q;
    cout<<endl;cout<<endl;
    cout<<"According to routine medfit the result is:";
    cout<<endl;cout<<endl;
    medfit(x, y, npt, a, b, abdev);
    cout<<"a = ";
	cout.width(12);
	cout<<a;
    cout<<"b = ";
	cout.width(12);
	cout<<b;
    cout<<endl;cout<<endl;
    cout<<"Absolute deviation (per data point): ";
	cout.width(12);
	cout<<abdev;
    cout<<endl;cout<<endl;
    cout<<"(note: Gaussian spread is  ";
	cout<<spread;
	cout<<")";
	cout<<endl;cout<<endl;
}

⌨️ 快捷键说明

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