c7538,IBM 46C7538内存条有多少内存

IBM 46C7538内存条有多少内存

c7538,IBM 46C7538内存条有多少内存

文章插图
IBM 46C7538服务器内存条有多少内存的解答如下:
内存为8G,双通道2 X DDR2 667MHZ 4G内存 。这个服务器属于几年前应该被淘汰的服务器,目前的服务器均采用英特尔至强处理器,内存架构已升级为DDR4 ECC内存,性能更加稳定,纠错率更高,处理速度也更加快速 。
龙贝格积分公式的Fortran程序代码
c7538,IBM 46C7538内存条有多少内存

文章插图
C++的行么?
Romberg.h:文件
// Romberg.h: interface for the Romberg class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ROMBERG_H__3DC3390F_E15E_4BB7_98E5_64C7538BF4DD__INCLUDED_)
#define AFX_ROMBERG_H__3DC3390F_E15E_4BB7_98E5_64C7538BF4DD__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "afxtempl.h" //包含数组CArray模板
#include "math.h"
typedef double (*Fun)(double);
//Romberg算法
//方法取自《计算方法引论》(第二版)徐萃薇、孙绳武著 高等教育出版社 第119页
//但有改动,只使用了两个一维数组
//fun--被积函数的地址,[a,b]--积分区间,error--误差;
//count--计算次数,达到次数即使不满足精度也返回积分值,默认count=0--以误差为准
class CRomberg
{
public:
static double Romberg(Fun fun,double a,double b,double error,int count=0);
CRomberg();
virtual ~CRomberg();
};
#endif // !defined(AFX_ROMBERG_H__3DC3390F_E15E_4BB7_98E5_64C7538BF4DD__INCLUDED_)
Romberg.cpp:文件
// Romberg.cpp: implementation of the Romberg class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
//#include "NumericalMethods.h"
#include "Romberg.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
typedefCArray CDoubleArray;
//在C++中可以直接使用fun(a)来表示C中的(*fun)(a)
//而不必定义下面的这个宏,这里只是明确一下:)
#define fun(a) (*fun)(a)
#define array1(a) (*array1)[a]
#define array0(a) (*array0)[a]
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CRomberg::CRomberg()
{
}
CRomberg::~CRomberg()
{
}
//方法取自《计算方法引论》(第二版)徐萃薇、孙绳武著 高等教育出版社 第119页
//但有改动,只使用了两个一维数组
//fun--被积函数的地址,[a,b]--积分区间,error--误差;
//count--计算次数,达到次数即使不满足精度也返回积分值,默认count<=0--以误差为准
double CRomberg::Romberg(Fun fun, double a, double b, double error,int count)
{
double h=(b-a)/2,F=0.0f;
int i,w,m=0,n=1;
CDoubleArray * array0=new CDoubleArray();
CDoubleArray * array1=new CDoubleArray();
CDoubleArray * arraytemp;
array0->Add(h*(fun(a)+fun(b)));
do
{
F=0.0f,m++;//注意m初值为0
for(i=1;i<=n;i++)
F+=fun(a+(2*i-1)*h);
array1->SetAtGrow(0,h*F+array0(0)/2);
w=4;
for(i=0;i {
array1->SetAtGrow(i+1,(w*array1(i)-array0(i))/(w-1));
w<<=1;
}
h/=2,n<<=1;
arraytemp=array0,array0=array1,array1=arraytemp;
F=fabs(array0(m)-array1(m-1));
if(F if (count>0)
if(m>count) break;
}while(true);
F=array0(m);
delete array0;
delete array1;
return F;
}