integralgaussmd.cpp
来自「是《计算机常用数值计算算法与程序 C++版》一书的配套C++程序源代码文件」· C++ 代码 · 共 56 行
CPP
56 行
//IntegralGaussMD.cpp 多重高斯法求积
#include <iostream> //输入输出流头文件
#include "Integral.h" //积分头文件
using namespace std; //名字空间
void main(void)
{
long double js[3]={4,4,4};
valarray<long double> vjs(js, 3);
long double dValue = IntegralGaussMD(vjs);
cout << "IntegralGaussMD()" << endl << endl;
cout << "dValue = " << dValue << endl << endl;
}
//计算各层积分上、下限值
template <class _Ty>
void FunctionBoundaryGMD(int j, valarray<_Ty>& x, valarray<_Ty>& y)
{
switch(j)
{
case 0: {
y[0] = 0.0;
y[1] = 1.0;
break;
}
case 1: {
y[0] = 0.0;
y[1] = sqrt(1.0-x[0]*x[0]);
break;
}
case 2: {
_Ty q = x[0]*x[0]+x[1]*x[1];
y[0] = sqrt(q);
y[1] = sqrt(2.0-q);
break;
}
}
}
//计算被积函数值
template <class _Ty>
_Ty FunctionValueGMD(valarray<_Ty>& x)
{
_Ty dValue;
dValue = x[2] * x[2];
return(dValue);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?