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

📄 fdtd_3d_free.cpp

📁 利用c++语言写的三维FDTD
💻 CPP
📖 第 1 页 / 共 3 页
字号:

	if (*K_Gx_a_2)
	{
		free(*K_Gx_a_2);
		*K_Gx_a_2 = NULL;
	}
	if (*K_Gx_b_2)
	{
		free(*K_Gx_b_2);
		*K_Gx_b_2 = NULL;
	}
	if (*K_Ex_a_2)
	{
		free(*K_Ex_a_2);
		*K_Ex_a_2 = NULL;
	}
	if (*K_Ex_b_2)
	{
		free(*K_Ex_b_2);
		*K_Ex_b_2 = NULL;
	}
	if (*K_Ex_c_2)
	{
		free(*K_Ex_c_2);
		*K_Ex_c_2 = NULL;
	}
	if (*K_Ex_d_2)
	{
		free(*K_Ex_d_2);
		*K_Ex_d_2 = NULL;
	}
}

void Free_PML_Ey(double **K_Gy_a_1, double **K_Gy_b_1, double **K_Ey_a_1,
				 double **K_Ey_b_1, double **K_Ey_c_1, double **K_Ey_d_1,
				 double **K_Gy_a_2, double **K_Gy_b_2, double **K_Ey_a_2,
				 double **K_Ey_b_2, double **K_Ey_c_2, double **K_Ey_d_2,
				 long  nPML_x_1, long  nPML_x_2)
{
	if (*K_Gy_a_1)
	{
		free(*K_Gy_a_1);
		*K_Gy_a_1 = NULL;
	}
	if (*K_Gy_b_1)
	{
		free(*K_Gy_b_1);
		*K_Gy_b_1 = NULL;
	}
	if (*K_Ey_a_1)
	{
		free(*K_Ey_a_1);
		*K_Ey_a_1 = NULL;
	}
	if (*K_Ey_b_1)
	{
		free(*K_Ey_b_1);
		*K_Ey_b_1 = NULL;
	}
	if (*K_Ey_c_1)
	{
		free(*K_Ey_c_1);
		*K_Ey_c_1 = NULL;
	}
	if (*K_Ey_d_1)
	{
		free(*K_Ey_d_1);
		*K_Ey_d_1 = NULL;
	}


	if (*K_Gy_a_2)
	{
		free(*K_Gy_a_2);
		*K_Gy_a_2 = NULL;
	}
	if (*K_Gy_b_2)
	{
		free(*K_Gy_b_2);
		*K_Gy_b_2 = NULL;
	}
	if (*K_Ey_a_2)
	{
		free(*K_Ey_a_2);
		*K_Ey_a_2 = NULL;
	}
	if (*K_Ey_b_2)
	{
		free(*K_Ey_b_2);
		*K_Ey_b_2 = NULL;
	}
	if (*K_Ey_c_2)
	{
		free(*K_Ey_c_2);
		*K_Ey_c_2 = NULL;
	}
	if (*K_Ey_d_2)
	{
		free(*K_Ey_d_2);
		*K_Ey_d_2 = NULL;
	}
}

void Free_PML_Ez(double **K_Gz_a_1, double **K_Gz_b_1, double **K_Ez_a_1,
				 double **K_Ez_b_1, double **K_Ez_c_1, double **K_Ez_d_1,
				 double **K_Gz_a_2, double **K_Gz_b_2, double **K_Ez_a_2,
				 double **K_Ez_b_2, double **K_Ez_c_2, double **K_Ez_d_2,
				 long  nPML_x_1, long  nPML_x_2)
{
	if (*K_Gz_a_1)
	{
		free(*K_Gz_a_1);
		*K_Gz_a_1 = NULL;
	}
	if (*K_Gz_b_1)
	{
		free(*K_Gz_b_1);
		*K_Gz_b_1 = NULL;
	}
	if (*K_Ez_a_1)
	{
		free(*K_Ez_a_1);
		*K_Ez_a_1 = NULL;
	}
	if (*K_Ez_b_1)
	{
		free(*K_Ez_b_1);
		*K_Ez_b_1 = NULL;
	}
	if (*K_Ez_c_1)
	{
		free(*K_Ez_c_1);
		*K_Ez_c_1 = NULL;
	}
	if (*K_Ez_d_1)
	{
		free(*K_Ez_d_1);
		*K_Ez_d_1 = NULL;
	}

	if (*K_Gz_a_2)
	{
		free(*K_Gz_a_2);
		*K_Gz_a_2 = NULL;
	}
	if (*K_Gz_b_2)
	{
		free(*K_Gz_b_2);
		*K_Gz_b_2 = NULL;
	}
	if (*K_Ez_a_2)
	{
		free(*K_Ez_a_2);
		*K_Ez_a_2 = NULL;
	}
	if (*K_Ez_b_2)
	{
		free(*K_Ez_b_2);
		*K_Ez_b_2 = NULL;
	}
	if (*K_Ez_c_2)
	{
		free(*K_Ez_c_2);
		*K_Ez_c_2 = NULL;
	}
	if (*K_Ez_d_2)
	{
		free(*K_Ez_d_2);
		*K_Ez_d_2 = NULL;
	}
}

void Free_PML_Hx(double **K_Bx_a_1, double **K_Bx_b_1, double **K_Hx_a_1,
				 double **K_Hx_b_1, double **K_Hx_c_1, double **K_Hx_d_1,
				 double **K_Bx_a_2, double **K_Bx_b_2, double **K_Hx_a_2,
				 double **K_Hx_b_2, double **K_Hx_c_2, double **K_Hx_d_2,
				 long  nPML_x_1, long  nPML_x_2)
{
	if (*K_Bx_a_1)
	{
		free(*K_Bx_a_1);
		*K_Bx_a_1 = NULL;
	}
	if (*K_Bx_b_1)
	{
		free(*K_Bx_b_1);
		*K_Bx_b_1 = NULL;
	}
	if (*K_Hx_a_1)
	{
		free(*K_Hx_a_1);
		*K_Hx_a_1 = NULL;
	}
	if (*K_Hx_b_1)
	{
		free(*K_Hx_b_1);
		*K_Hx_b_1 = NULL;
	}
	if (*K_Hx_c_1)
	{
		free(*K_Hx_c_1);
		*K_Hx_c_1 = NULL;
	}
	if (*K_Hx_d_1)
	{
		free(*K_Hx_d_1);
		*K_Hx_d_1 = NULL;
	}

	if (*K_Bx_a_2)
	{
		free(*K_Bx_a_2);
		*K_Bx_a_2 = NULL;
	}
	if (*K_Bx_b_2)
	{
		free(*K_Bx_b_2);
		*K_Bx_b_2 = NULL;
	}
	if (*K_Hx_a_2)
	{
		free(*K_Hx_a_2);
		*K_Hx_a_2 = NULL;
	}
	if (*K_Hx_b_2)
	{
		free(*K_Hx_b_2);
		*K_Hx_b_2 = NULL;
	}
	if (*K_Hx_c_2)
	{
		free(*K_Hx_c_2);
		*K_Hx_c_2 = NULL;
	}
	if (*K_Hx_d_2)
	{
		free(*K_Hx_d_2);
		*K_Hx_d_2 = NULL;
	}
}

void Free_PML_Hy(double **K_By_a_1, double **K_By_b_1, double **K_Hy_a_1,
				 double **K_Hy_b_1, double **K_Hy_c_1, double **K_Hy_d_1,
				 double **K_By_a_2, double **K_By_b_2, double **K_Hy_a_2,
				 double **K_Hy_b_2, double **K_Hy_c_2, double **K_Hy_d_2,
				 long  nPML_x_1, long  nPML_x_2)
{
	if (*K_By_a_1)
	{
		free(*K_By_a_1);
		*K_By_a_1 = NULL;
	}
	if (*K_By_b_1)
	{
		free(*K_By_b_1);
		*K_By_b_1 = NULL;
	}
	if (*K_Hy_a_1)
	{
		free(*K_Hy_a_1);
		*K_Hy_a_1 = NULL;
	}
	if (*K_Hy_b_1)
	{
		free(*K_Hy_b_1);
		*K_Hy_b_1 = NULL;
	}
	if (*K_Hy_c_1)
	{
		free(*K_Hy_c_1);
		*K_Hy_c_1 = NULL;
	}
	if (*K_Hy_d_1)
	{
		free(*K_Hy_d_1);
		*K_Hy_d_1 = NULL;
	}

	if (*K_By_a_2)
	{
		free(*K_By_a_2);
		*K_By_a_2 = NULL;
	}
	if (*K_By_b_2)
	{
		free(*K_By_b_2);
		*K_By_b_2 = NULL;
	}
	if (*K_Hy_a_2)
	{
		free(*K_Hy_a_2);
		*K_Hy_a_2 = NULL;
	}
	if (*K_Hy_b_2)
	{
		free(*K_Hy_b_2);
		*K_Hy_b_2 = NULL;
	}
	if (*K_Hy_c_2)
	{
		free(*K_Hy_c_2);
		*K_Hy_c_2 = NULL;
	}
	if (*K_Hy_d_2)
	{
		free(*K_Hy_d_2);
		*K_Hy_d_2 = NULL;
	}
}

void Free_PML_Hz(double **K_Bz_a_1, double **K_Bz_b_1, double **K_Hz_a_1,
				 double **K_Hz_b_1, double **K_Hz_c_1, double **K_Hz_d_1,
				 double **K_Bz_a_2, double **K_Bz_b_2, double **K_Hz_a_2,
				 double **K_Hz_b_2, double **K_Hz_c_2, double **K_Hz_d_2,
				 long  nPML_x_1, long  nPML_x_2)
{
	if (*K_Bz_a_1)
	{
		free(*K_Bz_a_1);
		*K_Bz_a_1 = NULL;
	}
	if (*K_Bz_b_1)
	{
		free(*K_Bz_b_1);
		*K_Bz_b_1 = NULL;
	}
	if (*K_Hz_a_1)
	{
		free(*K_Hz_a_1);
		*K_Hz_a_1 = NULL;
	}
	if (*K_Hz_b_1)
	{
		free(*K_Hz_b_1);
		*K_Hz_b_1 = NULL;
	}
	if (*K_Hz_c_1)
	{
		free(*K_Hz_c_1);
		*K_Hz_c_1 = NULL;
	}
	if (*K_Hz_d_1)
	{
		free(*K_Hz_d_1);
		*K_Hz_d_1 = NULL;
	}

	if (*K_Bz_a_2)
	{
		free(*K_Bz_a_2);
		*K_Bz_a_2 = NULL;
	}
	if (*K_Bz_b_2)
	{
		free(*K_Bz_b_2);
		*K_Bz_b_2 = NULL;
	}
	if (*K_Hz_a_2)
	{
		free(*K_Hz_a_2);
		*K_Hz_a_2 = NULL;
	}
	if (*K_Hz_b_2)
	{
		free(*K_Hz_b_2);
		*K_Hz_b_2 = NULL;
	}
	if (*K_Hz_c_2)
	{
		free(*K_Hz_c_2);
		*K_Hz_c_2 = NULL;
	}
	if (*K_Hz_d_2)
	{
		free(*K_Hz_d_2);
		*K_Hz_d_2 = NULL;
	}
}

void Free_K_a_K_b(double **K_a, double **K_b)
{
	if(*K_a)
	{
		free(*K_a);
		*K_a = NULL;
	}
	if(*K_b)
	{
		free(*K_b);
		*K_b = NULL;
	}
}

void Free_path_name(char **Path, char **Path_Data, char **path_name_Ex_1D, 
					char **path_name_Ex, char **path_name_Ey, char **path_name_Ez, 
					char **path_name_Hx, char **path_name_Hy, char **path_name_Hz)
{
	if (*Path)
	{
		free(*Path);
		*Path = NULL;
	}
	
	if (*Path_Data)
	{
		free(*Path_Data);
		*Path_Data = NULL;
	}
	
	if (*path_name_Ex_1D)
	{
		free(*path_name_Ex_1D);
		*path_name_Ex_1D = NULL;
	}

	if (*path_name_Ex)
	{
		free(*path_name_Ex);
		*path_name_Ex = NULL;
	}

	if (*path_name_Ey)
	{
		free(*path_name_Ey);
		*path_name_Ey = NULL;
	}

	if (*path_name_Ez)
	{
		free(*path_name_Ez);
		*path_name_Ez = NULL;
	}

	if (*path_name_Hx)
	{
		free(*path_name_Hx);
		*path_name_Hx = NULL;
	}

	if (*path_name_Hy)
	{
		free(*path_name_Hy);
		*path_name_Hy = NULL;
	}

	if (*path_name_Hz)
	{
		free(*path_name_Hz);
		*path_name_Hz = NULL;
	}
}

void Free_Foll(double ***Ex_Foll, double ***Ey_Foll, double ***Ez_Foll,
	           double ***Hx_Foll, double ***Hy_Foll, double ***Hz_Foll)
{
	//The followed field components
	if(*Hx_Foll)
		*Hx_Foll = Free_Matrix_2D<double>(*Hx_Foll);
	if(*Hy_Foll)
		*Hy_Foll = Free_Matrix_2D<double>(*Hy_Foll);
	if(*Hz_Foll)
		*Hz_Foll = Free_Matrix_2D<double>(*Hz_Foll);
	if(*Ex_Foll)
		*Ex_Foll = Free_Matrix_2D<double>(*Ex_Foll);
	if(*Ey_Foll)
		*Ey_Foll = Free_Matrix_2D<double>(*Ey_Foll);
	if(*Ez_Foll)
		*Ez_Foll = Free_Matrix_2D<double>(*Ez_Foll);
}

void Free_Foll_av(double **Ex_Foll_av, double **Ey_Foll_av, double **Ez_Foll_av,
	              double **Hx_Foll_av, double **Hy_Foll_av, double **Hz_Foll_av)
{
	//The followed field components
	if(*Hx_Foll_av)
	{
		free(*Hx_Foll_av);
		*Hx_Foll_av = NULL;
	}

	if(*Hy_Foll_av)
	{
		free(*Hy_Foll_av);
		*Hy_Foll_av = NULL;
	}

	if(*Hz_Foll_av)
	{
		free(*Hz_Foll_av);
		*Hz_Foll_av = NULL;
	}

	if(*Ex_Foll_av)
	{
		free(*Ex_Foll_av);
		*Ex_Foll_av = NULL;
	}

	if(*Ey_Foll_av)
	{
		free(*Ey_Foll_av);
		*Ey_Foll_av = NULL;
	}
	
	if(*Ez_Foll_av)
	{
		free(*Ez_Foll_av);
		*Ez_Foll_av = NULL;
	}
}

void Free_Threads_Param(pthread_t **field_threads, Data_E_comp_PML **Data_Ex_PML,
						Data_E_comp **Data_Ex, Data_E_comp_PML **Data_Ey_PML,

⌨️ 快捷键说明

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