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

📄 fdtd_3d_pml.cpp

📁 采用UMPL边界的FDTD编程
💻 CPP
📖 第 1 页 / 共 5 页
字号:
#include "FDTD_3D_PML.h"

#include "FDTD_3D_PML_Ex.h"
#include "FDTD_3D_PML_Ey.h"
#include "FDTD_3D_PML_Ez.h"
#include "FDTD_3D_PML_Hx.h"
#include "FDTD_3D_PML_Hy.h"
#include "FDTD_3D_PML_Hz.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CFDTD_3D_PML::CFDTD_3D_PML(void)
{
	Allocate_FGE_x = NULL; Allocate_FGE_y = NULL; Allocate_FGE_z = NULL;
	Allocate_BH_x  = NULL; Allocate_BH_y  = NULL; Allocate_BH_z  = NULL;

	//The field components
	Ex = NULL;
	Fx_1  = NULL;  Fx_2  = NULL;  Fx_3  = NULL;  
	Fx_4  = NULL;  Fx_5  = NULL;  Fx_6  = NULL;
	Fx_7  = NULL;  Fx_8  = NULL;  Fx_9  = NULL;
	Fx_10 = NULL;  Fx_11 = NULL;  Fx_12 = NULL;
	Fx_13 = NULL;                 Fx_15 = NULL;  
	Fx_16 = NULL;  Fx_17 = NULL;  Fx_18 = NULL;  
	Fx_19 = NULL;  Fx_20 = NULL;  Fx_21 = NULL;  
	Fx_22 = NULL;  Fx_23 = NULL;  Fx_24 = NULL;
	Fx_25 = NULL;  Fx_26 = NULL;  Fx_27 = NULL;
	Gx_1  = NULL;  Gx_2  = NULL;  Gx_3  = NULL; 
	Gx_7  = NULL;  Gx_8  = NULL;  Gx_9  = NULL;
	Gx_10 = NULL;  Gx_12 = NULL;  Gx_16 = NULL;  Gx_18 = NULL;  
	Gx_19 = NULL;  Gx_20 = NULL;  Gx_21 = NULL;
	Gx_25 = NULL;  Gx_26 = NULL;  Gx_27 = NULL;

	 
	Ey = NULL;
	Fy_1  = NULL;  Fy_2  = NULL;  Fy_3  = NULL; 
	Fy_4  = NULL;  Fy_5  = NULL;  Fy_6  = NULL;
	Fy_7  = NULL;  Fy_8  = NULL;  Fy_9  = NULL;
	Fy_10 = NULL;  Fy_11 = NULL;  Fy_12 = NULL;
	Fy_13 = NULL;                 Fy_15 = NULL;  
	Fy_16 = NULL;  Fy_17 = NULL;  Fy_18 = NULL;  
	Fy_19 = NULL;  Fy_20 = NULL;  Fy_21 = NULL;  
	Fy_22 = NULL;  Fy_23 = NULL;  Fy_24 = NULL;
	Fy_25 = NULL;  Fy_26 = NULL;  Fy_27 = NULL;
	Gy_1  = NULL;  Gy_2  = NULL;  Gy_3  = NULL;
	Gy_4  = NULL;  Gy_6  = NULL;  Gy_7  = NULL;
	Gy_8  = NULL;  Gy_9  = NULL;
	Gy_19 = NULL;  Gy_20 = NULL;  Gy_21 = NULL;
	Gy_22 = NULL;  Gy_24 = NULL;  Gy_25 = NULL;
	Gy_26 = NULL;  Gy_27 = NULL;

	Ez = NULL; 
	Fz_1  = NULL;  Fz_2  = NULL;  Fz_3  = NULL; 
	Fz_4  = NULL;  Fz_5  = NULL;  Fz_6  = NULL;
	Fz_7  = NULL;  Fz_8  = NULL;  Fz_9  = NULL;
	Fz_10 = NULL;  Fz_11 = NULL;  Fz_12 = NULL;
	Fz_13 = NULL;                 Fz_15 = NULL;  
	Fz_16 = NULL;  Fz_17 = NULL;  Fz_18 = NULL;  
	Fz_19 = NULL;  Fz_20 = NULL;  Fz_21 = NULL;  
	Fz_22 = NULL;  Fz_23 = NULL;  Fz_24 = NULL;
	Fz_25 = NULL;  Fz_26 = NULL;  Fz_27 = NULL;
	Gz_1  = NULL;  Gz_3  = NULL;  Gz_4  = NULL; 
	Gz_6  = NULL;  Gz_7  = NULL;  Gz_9  = NULL;
	Gz_10 = NULL;  Gz_12 = NULL;  Gz_16 = NULL;  
	Gz_18 = NULL;  Gz_19 = NULL;  Gz_21 = NULL; 
	Gz_22 = NULL;  Gz_24 = NULL;  Gz_25 = NULL; 
	Gz_27 = NULL;
		
	Hx = NULL; 
	Bx_1  = NULL;  Bx_2  = NULL;  Bx_3  = NULL;  
	Bx_4  = NULL;                 Bx_6  = NULL;
	Bx_7  = NULL;  Bx_8  = NULL;  Bx_9  = NULL;
	Bx_10 = NULL;                 Bx_12 = NULL;
	Bx_13 = NULL;                 Bx_15 = NULL;  
	Bx_16 = NULL;                 Bx_18 = NULL;  
	Bx_19 = NULL;  Bx_20 = NULL;  Bx_21 = NULL;  
	Bx_22 = NULL;                 Bx_24 = NULL;
	Bx_25 = NULL;  Bx_26 = NULL;  Bx_27 = NULL;

	Hy = NULL; 
	By_1  = NULL;  By_2  = NULL;  By_3  = NULL; 
	By_4  = NULL;                 By_6  = NULL;
	By_7  = NULL;  By_8  = NULL;  By_9  = NULL;
	By_10 = NULL;  By_11 = NULL;  By_12 = NULL;
	By_16 = NULL;  By_17 = NULL;  By_18 = NULL;
	By_19 = NULL;  By_20 = NULL;  By_21 = NULL; 
	By_22 = NULL;                 By_24 = NULL;
	By_25 = NULL;  By_26 = NULL;  By_27 = NULL;

	Hz = NULL;
	Bz_1  = NULL;  Bz_2  = NULL;  Bz_3  = NULL;  
	Bz_4  = NULL;  Bz_5  = NULL;  Bz_6  = NULL;
	Bz_7  = NULL;  Bz_8  = NULL;  Bz_9  = NULL;
	Bz_10 = NULL;                 Bz_12 = NULL;
	Bz_16 = NULL;                 Bz_18 = NULL;
	Bz_19 = NULL;  Bz_20 = NULL;  Bz_21 = NULL;  
	Bz_22 = NULL;  Bz_23 = NULL;  Bz_24 = NULL;
	Bz_25 = NULL;  Bz_26 = NULL;  Bz_27 = NULL;
	
	//Coefficients containing the PML boundary parameters
	K_Gx_a_1 = NULL; K_Gx_b_1 = NULL; 
	K_Ex_a_1 = NULL; K_Ex_b_1 = NULL; K_Ex_c_1 = NULL; K_Ex_d_1 = NULL; 
	K_Gx_a_2 = NULL; K_Gx_b_2 = NULL; 
	K_Ex_a_2 = NULL; K_Ex_b_2 = NULL; K_Ex_c_2 = NULL; K_Ex_d_2 = NULL; 

	K_Gy_a_1 = NULL; K_Gy_b_1 = NULL; 
	K_Ey_a_1 = NULL; K_Ey_b_1 = NULL; K_Ey_c_1 = NULL; K_Ey_d_1 = NULL; 
	K_Gy_a_2 = NULL; K_Gy_b_2 = NULL; 
	K_Ey_a_2 = NULL; K_Ey_b_2 = NULL; K_Ey_c_2 = NULL; K_Ey_d_2 = NULL; 

	K_Gz_a_1 = NULL; K_Gz_b_1 = NULL; 
	K_Ez_a_1 = NULL; K_Ez_b_1 = NULL; K_Ez_c_1 = NULL; K_Ez_d_1 = NULL; 
	K_Gz_a_2 = NULL; K_Gz_b_2 = NULL; 
	K_Ez_a_2 = NULL; K_Ez_b_2 = NULL; K_Ez_c_2 = NULL; K_Ez_d_2 = NULL; 

	K_Bx_a_1 = NULL; K_Bx_b_1 = NULL; 
	K_Hx_a_1 = NULL; K_Hx_b_1 = NULL; K_Hx_c_1 = NULL; K_Hx_d_1 = NULL; 
	K_Bx_a_2 = NULL; K_Bx_b_2 = NULL; 
	K_Hx_a_2 = NULL; K_Hx_b_2 = NULL; K_Hx_c_2 = NULL; K_Hx_d_2 = NULL; 

	K_By_a_1 = NULL; K_By_b_1 = NULL; 
	K_Hy_a_1 = NULL; K_Hy_b_1 = NULL; K_Hy_c_1 = NULL; K_Hy_d_1 = NULL; 
	K_By_a_2 = NULL; K_By_b_2 = NULL; 
	K_Hy_a_2 = NULL; K_Hy_b_2 = NULL; K_Hy_c_2 = NULL; K_Hy_d_2 = NULL; 

	K_Bz_a_1 = NULL; K_Bz_b_1 = NULL; 
	K_Hz_a_1 = NULL; K_Hz_b_1 = NULL; K_Hz_c_1 = NULL; K_Hz_d_1 = NULL; 
	K_Bz_a_2 = NULL; K_Bz_b_2 = NULL; 
	K_Hz_a_2 = NULL; K_Hz_b_2 = NULL; K_Hz_c_2 = NULL; K_Hz_d_2 = NULL;

	K_a = NULL; K_b = NULL;

	//Contains the followed field components
	Ex_Foll = NULL;	 Ey_Foll = NULL;	 Ez_Foll = NULL;
	Hx_Foll = NULL;	 Hy_Foll = NULL;	 Hz_Foll = NULL;

	//to save the field components
	path_name_Ex = NULL;
	path_name_Ey = NULL;
	path_name_Ez = NULL;
	path_name_Hx = NULL;
	path_name_Hy = NULL;
	path_name_Hz = NULL; 

	//by default there are no Symmetric boundaries 
	jel_Symmetric_ia = 0; jel_Symmetric_ib = 0; jel_Symmetric_ja = 0;
	jel_Symmetric_jb = 0; jel_Symmetric_ka = 0; jel_Symmetric_kb = 0;

	//by default there are no Anti-Symmetric boundaries
	jel_Anti_Symmetric_ia = 0; jel_Anti_Symmetric_ib = 0; jel_Anti_Symmetric_ja = 0;
	jel_Anti_Symmetric_jb = 0; jel_Anti_Symmetric_ka = 0; jel_Anti_Symmetric_kb = 0;

	jel_TS = 0;

	//the incident field for total field scattered field formulation
	jel_TS_planes = NULL;

	E_1D = NULL; H_1D = NULL; 
	ll_1D_E = NULL; ll_1D_H = NULL;

	//the recuired incident magnetic fields to compute the electric field components
	Hz_i0 = NULL; Hy_i0 = NULL; Hz_i1 = NULL; Hy_i1 = NULL;
	Hz_j0 = NULL; Hx_j0 = NULL; Hz_j1 = NULL; Hx_j1 = NULL;
	Hy_k0 = NULL; Hx_k0 = NULL; Hy_k1 = NULL; Hx_k1 = NULL;
	face_Hz_i0 = NULL; face_Hy_i0 = NULL; face_Hz_i1 = NULL; face_Hy_i1 = NULL;
	face_Hz_j0 = NULL; face_Hx_j0 = NULL; face_Hz_j1 = NULL; face_Hx_j1 = NULL;
	face_Hy_k0 = NULL; face_Hx_k0 = NULL; face_Hy_k1 = NULL; face_Hx_k1 = NULL;

	//the recuired incident electric fields to compute the magnetic field components
	Ey_i0 = NULL; Ez_i0 = NULL; Ey_i1 = NULL; Ez_i1 = NULL;
	Ex_j0 = NULL; Ez_j0 = NULL; Ex_j1 = NULL; Ez_j1 = NULL;
	Ex_k0 = NULL; Ey_k0 = NULL; Ex_k1 = NULL; Ey_k1 = NULL;
	face_Ey_i0 = NULL; face_Ez_i0 = NULL; face_Ey_i1 = NULL; face_Ez_i1 = NULL;
	face_Ex_j0 = NULL; face_Ez_j0 = NULL; face_Ex_j1 = NULL; face_Ez_j1 = NULL;
	face_Ex_k0 = NULL; face_Ey_k0 = NULL; face_Ex_k1 = NULL; face_Ey_k1 = NULL;
}

CFDTD_3D_PML::~CFDTD_3D_PML(void)
{
	Free_Mem();
	//Free the containers
	free(Allocate_FGE_x);
	free(Allocate_FGE_y);
	free(Allocate_FGE_z);
	free(Allocate_BH_x);
	free(Allocate_BH_y);
	free(Allocate_BH_z);
}

////////////////////////////////////////////////////////////////////
//Collect the information - Ex field
////////////////////////////////////////////////////////////////////
void CFDTD_3D_PML::Init_Alloc_FxGxEx()
{
	long nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2 = nx - 1 - nPML_x_1 - nPML_x_2;
	long ny_MIN_nPML_y_1_MIN_nPML_y_2 = ny - nPML_y_1 - nPML_y_2;
	long nz_MIN_nPML_z_1_MIN_nPML_z_2 = nz - nPML_z_1 - nPML_z_2;

	Allocate_FGE_x->A[0]  = &Fx_1;  Allocate_FGE_x->A[1]  = &Gx_1;  Allocate_FGE_x->A[2]  = &Fx_2;  
	Allocate_FGE_x->A[3]  = &Gx_2;  Allocate_FGE_x->A[4]  = &Fx_3;  Allocate_FGE_x->A[5]  = &Gx_3;
	Allocate_FGE_x->A[6]  = &Fx_4;  Allocate_FGE_x->A[7]  = &Fx_5;  Allocate_FGE_x->A[8]  = &Fx_6;
	Allocate_FGE_x->A[9]  = &Fx_7;  Allocate_FGE_x->A[10] = &Gx_7;  Allocate_FGE_x->A[11] = &Fx_8; 
	Allocate_FGE_x->A[12] = &Gx_8;  Allocate_FGE_x->A[13] = &Fx_9;  Allocate_FGE_x->A[14] = &Gx_9;  
	Allocate_FGE_x->A[15] = &Fx_10; Allocate_FGE_x->A[16] = &Gx_10; Allocate_FGE_x->A[17] = &Fx_11; 
	Allocate_FGE_x->A[18] = &Fx_12; Allocate_FGE_x->A[19] = &Gx_12; Allocate_FGE_x->A[20] = &Fx_13; 
	Allocate_FGE_x->A[21] = &Fx_15; Allocate_FGE_x->A[22] = &Fx_16; Allocate_FGE_x->A[23] = &Gx_16;
	Allocate_FGE_x->A[24] = &Fx_17; Allocate_FGE_x->A[25] = &Fx_18; Allocate_FGE_x->A[26] = &Gx_18; 
	Allocate_FGE_x->A[27] = &Fx_19; Allocate_FGE_x->A[28] = &Gx_19; Allocate_FGE_x->A[29] = &Fx_20; 
	Allocate_FGE_x->A[30] = &Gx_20; Allocate_FGE_x->A[31] = &Fx_21; Allocate_FGE_x->A[32] = &Gx_21; 
	Allocate_FGE_x->A[33] = &Fx_22; Allocate_FGE_x->A[34] = &Fx_23; Allocate_FGE_x->A[35] = &Fx_24;
	Allocate_FGE_x->A[36] = &Fx_25; Allocate_FGE_x->A[37] = &Gx_25; Allocate_FGE_x->A[38] = &Fx_26; 
	Allocate_FGE_x->A[39] = &Gx_26; Allocate_FGE_x->A[40] = &Fx_27; Allocate_FGE_x->A[41] = &Gx_27; 
	Allocate_FGE_x->A[42] = &Ex;    
	
	Allocate_FGE_x->er = 0;

	strcpy(&Allocate_FGE_x->name[0][0],"Fx_1");   strcpy(&Allocate_FGE_x->name[1][0],"Gx_1");  
	strcpy(&Allocate_FGE_x->name[2][0],"Fx_2");   strcpy(&Allocate_FGE_x->name[3][0],"Gx_2");  
	strcpy(&Allocate_FGE_x->name[4][0],"Fx_3");   strcpy(&Allocate_FGE_x->name[5][0],"Gx_3");
	strcpy(&Allocate_FGE_x->name[6][0],"Fx_4");   strcpy(&Allocate_FGE_x->name[7][0],"Fx_5");  
	strcpy(&Allocate_FGE_x->name[8][0],"Fx_6");   strcpy(&Allocate_FGE_x->name[9][0],"Fx_7");  
	strcpy(&Allocate_FGE_x->name[10][0],"Gx_7");  strcpy(&Allocate_FGE_x->name[11][0],"Fx_8"); 
	strcpy(&Allocate_FGE_x->name[12][0],"Gx_8");  strcpy(&Allocate_FGE_x->name[13][0],"Fx_9");  
	strcpy(&Allocate_FGE_x->name[14][0],"Gx_9");  strcpy(&Allocate_FGE_x->name[15][0],"Fx_10"); 
	strcpy(&Allocate_FGE_x->name[16][0],"Gx_10"); strcpy(&Allocate_FGE_x->name[17][0],"Fx_11"); 
	strcpy(&Allocate_FGE_x->name[18][0],"Fx_12"); strcpy(&Allocate_FGE_x->name[19][0],"Gx_12"); 
	strcpy(&Allocate_FGE_x->name[20][0],"Fx_13"); strcpy(&Allocate_FGE_x->name[21][0],"Fx_15"); 
	strcpy(&Allocate_FGE_x->name[22][0],"Fx_16"); strcpy(&Allocate_FGE_x->name[23][0],"Gx_16");
	strcpy(&Allocate_FGE_x->name[24][0],"Fx_17"); strcpy(&Allocate_FGE_x->name[25][0],"Fx_18");
	strcpy(&Allocate_FGE_x->name[26][0],"Gx_18"); strcpy(&Allocate_FGE_x->name[27][0],"Fx_19"); 
	strcpy(&Allocate_FGE_x->name[28][0],"Gx_19"); strcpy(&Allocate_FGE_x->name[29][0],"Fx_20"); 
	strcpy(&Allocate_FGE_x->name[30][0],"Gx_20"); strcpy(&Allocate_FGE_x->name[31][0],"Fx_21"); 
	strcpy(&Allocate_FGE_x->name[32][0],"Gx_21"); strcpy(&Allocate_FGE_x->name[33][0],"Fx_22"); 
	strcpy(&Allocate_FGE_x->name[34][0],"Fx_23"); strcpy(&Allocate_FGE_x->name[35][0],"Fx_24");
	strcpy(&Allocate_FGE_x->name[36][0],"Fx_25"); strcpy(&Allocate_FGE_x->name[37][0],"Gx_25");
	strcpy(&Allocate_FGE_x->name[38][0],"Fx_26"); strcpy(&Allocate_FGE_x->name[39][0],"Gx_26");
	strcpy(&Allocate_FGE_x->name[40][0],"Fx_27"); strcpy(&Allocate_FGE_x->name[41][0],"Gx_27"); 
	strcpy(&Allocate_FGE_x->name[42][0],"Ex");  
	
	//Fx_1
	Allocate_FGE_x->size[0][0] = nPML_x_1; 
	Allocate_FGE_x->size[0][1] = nPML_y_1; 
	Allocate_FGE_x->size[0][2] = nPML_z_1;
	//Gx_1
	Allocate_FGE_x->size[1][0] = nPML_x_1; 
	Allocate_FGE_x->size[1][1] = nPML_y_1; 
	Allocate_FGE_x->size[1][2] = nPML_z_1;
	//Fx_2
	Allocate_FGE_x->size[2][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2;
	Allocate_FGE_x->size[2][1] = nPML_y_1; 
	Allocate_FGE_x->size[2][2] = nPML_z_1;
	//Gx_2
	Allocate_FGE_x->size[3][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2;
	Allocate_FGE_x->size[3][1] = nPML_y_1; 
	Allocate_FGE_x->size[3][2] = nPML_z_1;
	//Fx_3
	Allocate_FGE_x->size[4][0] = nPML_x_2; 
	Allocate_FGE_x->size[4][1] = nPML_y_1; 
	Allocate_FGE_x->size[4][2] = nPML_z_1;
	//Gx_3
	Allocate_FGE_x->size[5][0] = nPML_x_2; 
	Allocate_FGE_x->size[5][1] = nPML_y_1; 
	Allocate_FGE_x->size[5][2] = nPML_z_1;
	//Fx_4
	Allocate_FGE_x->size[6][0] = nPML_x_1;
	Allocate_FGE_x->size[6][1] = ny_MIN_nPML_y_1_MIN_nPML_y_2; 
	Allocate_FGE_x->size[6][2] = nPML_z_1;
	//Fx_5
	Allocate_FGE_x->size[7][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2; 
	Allocate_FGE_x->size[7][1] = ny_MIN_nPML_y_1_MIN_nPML_y_2; 
	Allocate_FGE_x->size[7][2] = nPML_z_1;
	//Fx_6
	Allocate_FGE_x->size[8][0] = nPML_x_2; 
	Allocate_FGE_x->size[8][1] = ny_MIN_nPML_y_1_MIN_nPML_y_2; 
	Allocate_FGE_x->size[8][2] = nPML_z_1;
	//Fx_7
	Allocate_FGE_x->size[9][0] = nPML_x_1;
	Allocate_FGE_x->size[9][1] = nPML_y_2; 
	Allocate_FGE_x->size[9][2] = nPML_z_1;
	//Gx_7
	Allocate_FGE_x->size[10][0] = nPML_x_1; 
	Allocate_FGE_x->size[10][1] = nPML_y_2; 
	Allocate_FGE_x->size[10][2] = nPML_z_1;
	//Fx_8
	Allocate_FGE_x->size[11][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2; 
	Allocate_FGE_x->size[11][1] = nPML_y_2; 
	Allocate_FGE_x->size[11][2] = nPML_z_1;
	//Gx_8
	Allocate_FGE_x->size[12][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2;
	Allocate_FGE_x->size[12][1] = nPML_y_2; 
	Allocate_FGE_x->size[12][2] = nPML_z_1;
	//Fx_9
	Allocate_FGE_x->size[13][0] = nPML_x_2;
	Allocate_FGE_x->size[13][1] = nPML_y_2; 
	Allocate_FGE_x->size[13][2] = nPML_z_1;
	//Gx_9
	Allocate_FGE_x->size[14][0] = nPML_x_2;
	Allocate_FGE_x->size[14][1] = nPML_y_2;
	Allocate_FGE_x->size[14][2] = nPML_z_1;
	//Fx_10
	Allocate_FGE_x->size[15][0] = nPML_x_1; 
	Allocate_FGE_x->size[15][1] = nPML_y_1;
	Allocate_FGE_x->size[15][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Gx_10
	Allocate_FGE_x->size[16][0] = nPML_x_1; 
	Allocate_FGE_x->size[16][1] = nPML_y_1; 
	Allocate_FGE_x->size[16][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Fx_11
	Allocate_FGE_x->size[17][0] = nx_MIN_1_MIN_nPML_x_1_MIN_nPML_x_2;
	Allocate_FGE_x->size[17][1] = nPML_y_1; 
	Allocate_FGE_x->size[17][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Fx_12
	Allocate_FGE_x->size[18][0] = nPML_x_2; 
	Allocate_FGE_x->size[18][1] = nPML_y_1; 
	Allocate_FGE_x->size[18][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Gx_12
	Allocate_FGE_x->size[19][0] = nPML_x_2; 
	Allocate_FGE_x->size[19][1] = nPML_y_1; 
	Allocate_FGE_x->size[19][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Fx_13
	Allocate_FGE_x->size[20][0] = nPML_x_1; 
	Allocate_FGE_x->size[20][1] = ny_MIN_nPML_y_1_MIN_nPML_y_2;
	Allocate_FGE_x->size[20][2] = nz_MIN_nPML_z_1_MIN_nPML_z_2;
	//Fx_15
	Allocate_FGE_x->size[21][0] = nPML_x_2;

⌨️ 快捷键说明

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