资源简介
用有限差分方法求解波动方程,画出波场快照,模拟波在地下传播
代码片段和文件信息
# include
# include
# include
# include
# define pi 3.1415926535898
union Head{
int h4[60];
short int h2[120];
};
int main()
{
int n=2;
//short int ddt=400; // ddt=400us=0.4ms
float dt=0.0005;
int tmax=3000;
float h=5;
float dz=h;
float dx=h;
int nx=801;
int nz=801;
int trace_itrace_btrace_etrace_step;
trace_b=0;
trace_e=1;
trace_step=40;
int trace_s[10]={680760800880920960600640720840};
int sx=200;
int sz=100;
int source_type=3;
int rec_Depth=sz;
int f0=30;
float omiga0=f0*2*pi;
float alpha=2.0;
float tdelay=0.1;
for (trace_i=trace_b;trace_i {
//sx=sx+trace_i*trace_step;
sx=200;
printf(“trace_i=%d nx=%d nz=%d tmax=%d dt=%f\n“trace_inxnztmaxdt);
printf(“******************************** \n FD_PML is running!\n“);
float *vp;
vp=(float *)malloc(sizeof(float)*nx*nz);
float *vs;
vs=(float *)malloc(sizeof(float)*nx*nz);
// float *vp_a;
// vp_a=(float *)malloc(sizeof(float)*nx*nz);
// float *vs_a;
// vs_a=(float *)malloc(sizeof(float)*nx*nz);
float *od_a;
od_a=(float *)malloc(sizeof(float)*nx*nz);
float *od;
od=(float *)malloc(sizeof(float)*nx*nz);
// float od_a[100][100];
int pml_thickness=40;
// float d0[2][101];
float *d0;
d0=(float *)malloc(sizeof(float)*2*(nz+1));
float alphax0=pi*f0;
int L=2;
float *tau_1_e_1;
tau_1_e_1=(float *)malloc(sizeof(float)*nx*nz);
float *tau_1_e_2;
tau_1_e_2=(float *)malloc(sizeof(float)*nx*nz);
float *tau_1_s_1;
tau_1_s_1=(float *)malloc(sizeof(float)*nx*nz);
float *tau_1_s_2;
tau_1_s_2=(float *)malloc(sizeof(float)*nx*nz);
float *tau_2_e_1;
tau_2_e_1=(float *)malloc(sizeof(float)*nx*nz);
float *tau_2_e_2;
tau_2_e_2=(float *)malloc(sizeof(float)*nx*nz);
float *tau_2_s_1;
tau_2_s_1=(float *)malloc(sizeof(float)*nx*nz);
float *tau_2_s_2;
tau_2_s_2=(float *)malloc(sizeof(float)*nx*nz);
float *tau_1_e_1_t;
tau_1_e_1_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_1_e_2_t;
tau_1_e_2_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_1_s_1_t;
tau_1_s_1_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_1_s_2_t;
tau_1_s_2_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_2_e_1_t;
tau_2_e_1_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_2_e_2_t;
tau_2_e_2_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_2_s_1_t;
tau_2_s_1_t=(float *)malloc(sizeof(float)*(nx+1)*(nz+1));
float *tau_2_s_2_t;
tau_2_s_2_t=(float *)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 53800 2013-05-19 09:51 有限差分程序\FDM_600.c
文件 201936 2014-07-10 22:25 有限差分程序\FDM_bodywave\Debug\FDM_bodywave.pch
文件 33792 2014-07-10 22:26 有限差分程序\FDM_bodywave\Debug\vc60.idb
文件 36864 2014-07-10 22:25 有限差分程序\FDM_bodywave\Debug\vc60.pdb
文件 2566404 2013-05-19 10:09 有限差分程序\FDM_bodywave\dwtc1200
文件 2566404 2013-05-19 10:13 有限差分程序\FDM_bodywave\dwtc1500
文件 2566404 2013-05-19 10:17 有限差分程序\FDM_bodywave\dwtc1800
文件 2566404 2013-05-19 10:20 有限差分程序\FDM_bodywave\dwtc2100
文件 2566404 2013-05-19 10:24 有限差分程序\FDM_bodywave\dwtc2400
文件 2566404 2013-05-19 10:27 有限差分程序\FDM_bodywave\dwtc2700
文件 2566404 2013-05-19 09:58 有限差分程序\FDM_bodywave\dwtc300
文件 2566404 2013-05-19 10:30 有限差分程序\FDM_bodywave\dwtc3000
文件 2566404 2013-05-19 10:02 有限差分程序\FDM_bodywave\dwtc600
文件 2566404 2013-05-19 10:06 有限差分程序\FDM_bodywave\dwtc900
文件 48980 2013-05-19 11:45 有限差分程序\FDM_bodywave\FDM_bodywave.c
文件 532 2014-07-10 22:26 有限差分程序\FDM_bodywave\FDM_bodywave.dsw
文件 63540 2013-05-19 11:45 有限差分程序\FDM_bodywave\FDM_bodywave.exe
文件 33792 2014-07-10 22:26 有限差分程序\FDM_bodywave\FDM_bodywave.ncb
文件 51560 2013-05-19 11:45 有限差分程序\FDM_bodywave\FDM_bodywave.o
文件 2635 2014-07-15 10:03 有限差分程序\FDM_bodywave\FDM_INSTALL_bodywave.m
文件 7075244 2014-07-10 22:24 有限差分程序\FDM_bodywave\install
文件 5001840 2013-05-19 10:30 有限差分程序\FDM_bodywave\rec_u200.sgy
文件 5001840 2013-05-19 10:30 有限差分程序\FDM_bodywave\rec_w2001.sgy
文件 2566404 2014-07-10 22:26 有限差分程序\FDM_bodywave\vp
文件 706 2013-04-25 11:24 有限差分程序\FDM_bodywave\程序说明.txt
文件 535 2013-04-25 10:54 有限差分程序\FDM_Rayleighwave\display_c.m
文件 2636 2013-04-25 08:57 有限差分程序\FDM_Rayleighwave\FDM_INSTALL_Rayleighwave.m
文件 48621 2013-04-25 08:58 有限差分程序\FDM_Rayleighwave\FDM_Rayleigh.c
文件 829 2013-04-25 11:22 有限差分程序\FDM_Rayleighwave\程序说明.txt
目录 0 2014-07-10 22:25 有限差分程序\FDM_bodywave\Debug
............此处省略6个文件信息
评论
共有 条评论