即当 = 0.01, =0.04 时,
L2 误差为 0.052853 阶数为
附 C 程序
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
#define N 25 //沿 x y 方向的等分数
#define ND 3 //一个元素的节点个数
#define LEE 2*N*N //元素总数
#define NG (N+1)*(N+1) //节点总数
#define TSTP 0.01 //时间步长
#define TN 100 //时间迭代步数
#define J 1.0/(N*N) //雅可比行列式的绝对值
double u0(double x,double y) //初值函数 u0
{
double z;
z=100*x*y*(x-1)*(y-1);
return z;
}
double f(double x,double y,double t)//右端函数 f
{
double z;
z=100*x*y*(x-1)*(y-1)-200*(t+1)*y*(y-1)-200*(t+1)*x*(x-1)+10000*(t+1)*(t+1)*x*x*y*y*(x-
1)*(x-1)*(y-1)*(y-1);
return z;
}
double u(double x,double y,double t)//方程的准确解
{
double z;
z=100*(t+1)*x*y*(x-1)*(y-1);
return z;
}
void II(int **a) //节点的局部编码与总体编码
{
int i;
for(i=1;i<LEE+1;i++)
{ if(i%2==1)
{
评论0
最新资源