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

📄 pdc1.h

📁 XPDC1是针对静电模型中的等离子体模拟程序!通过INP文件输入参数有较好的通用性
💻 H
字号:
#include <stdio.h>#include <math.h>#include <unistd.h>#include <stdlib.h>#ifndef MPI_1D#include <time.h>#endif#ifdef MPI_1D#include "mpi.h" /* MPI Include file */#endif#define TWOPI		6.28318530717959#define PI		3.141592653589793323846#define EPS0		8.854e-12       /* (F/m)*/#define NperTORR	8.3221e20#define ECHARGE		1.602e-19   /* electron mass */#define EMASS		9.110e-31   /* electron charge */#define NSMAX 		4#define HISTMAX 	4096 	  /* upper bound on histories */#define HISTMAX2        256 #define max_loss        2000      /* maximum particle loss per cycle *//* #define R2              1       */  /* turns on volume weighting */#ifndef DBL_MIN#define DBL_MIN         1E-200#endif#ifndef max#define max(x, y)       (((x) > (y)) ? (x) : (y))#endif#ifndef min#define min(x, y)       (((x) < (y)) ? (x) : (y))#endif#ifndef True#define True            1#endif#ifndef False#define False           0#endif#define SWAP(a, b) tempr=(a); (a)=(b); (b)=tempr#define ARGON_LK 1#define ARGON 2/*******************************************************************/float nc2p, height, r0, r1, area0, reactor_vol, rhoback, backgrnd_i, dde, epsilon,	     extr, extl, extc, w0, dcbias, acbias, dc_ramp, ac_ramp, theta0, 	     q_0, q_1, q_2, q_3, I_rf, E_z, I_z, mu_e, i_conv, sigma, oldsigma, dr, dt, df, me_e,	     vrscale, vscale, rhon, ptopn, dntod, entoe, gas_den, pressure, T_gas, nu_iz, nu_el, nu_ex,	     selsmax, elsengy0, elsengy1, alpha0, alpha1, alpha2, alpha3, alpha4,	     seec[NSMAX], iwall[NSMAX], qm[NSMAX], charge[NSMAX], Escale[NSMAX],	     q_ratio[NSMAX], mass[NSMAX], wc[NSMAX], intoi[NSMAX], a_scale[NSMAX],              v0[NSMAX][2], vt[NSMAX][2], vc[NSMAX][2], v0_th[NSMAX], vt_th[NSMAX], v0_z[NSMAX], vt_z[NSMAX],              vr_l[NSMAX], vr_u[NSMAX], vt_l[NSMAX], vt_u[NSMAX], vz_l[NSMAX], vz_u[NSMAX],             emin[NSMAX], de[NSMAX], emin_mid[NSMAX], de_mid[NSMAX], dtheta[NSMAX],              rs_mid[NSMAX], rf_mid[NSMAX], risetime, enter[NSMAX][2], ke_sp[NSMAX];int nsp, nc, ng, ntri, ncolls, ionspecies, secondary, cycle, ftt, max_ft,           ecollisional, icollisional, hist_hi, thist_hi, freq_hi, vel_dist_accum,	   nfft, nsmoothing, ramped, reflux, min_np, rescale_on, gas,	   it[NSMAX], k_count[NSMAX], nbin[NSMAX], nbin_mid[NSMAX],            nvrbin[NSMAX], nvtbin[NSMAX], nvzbin[NSMAX], sp_k[NSMAX],            n_lost[NSMAX], np[NSMAX], inject[NSMAX], maxnp[NSMAX], lost_index[NSMAX][max_loss];float dcbias2, dc_ramp2, acbias2, ac_ramp2, f02, theta02, w02, risetime2;int ramped2;char src, **rate_title;double atime, Trf; float  **r, **v_r, **v_theta, **v_z, **angular_mtm,       **sp_n, **sp_n_k, **sp_n_0, **sp_n_mcc, *rho, *rho_unfilt, *efield, *phi, *efield2, *phi2,      *vol, *r_array, *t_array, *f_array, **np_hist, **np_hist2,       **phi_hist, *sigma_hist, *ese_hist, *ke_tot, *te_hist, **kes_hist,       *cur_hist, *com_cur_hist, **com_phi_hist, *Ez_hist, *cur_fft, *phi_fft, *z_fft,       *Iz_hist, *Iz_hist2, *mu_hist, *mu_hist2, *mu_hist3,      *pow_fft, **sheath, **esheath, **jdote, **jzdotez, *nu_iz_hist, *nu_el_hist, *nu_ex_hist,      *mphi_fft, *Local_t_array, *iontemp, *r_grid, *dr_n, **rate_show,      **fe, **ftheta, **fe_mid, **fe_mid_show, **e_array, **th_array, **emid_array,       **mccrate, **j_r, **jr_unfilt, **j_z, **jr_prof, **jz_prof, **mu_prof, **ke_r,  **ker_r, **ket_r, **kez_r,       **ke_avg, **ker_avg, **ket_avg, **kez_avg,      *com_power_hist, *avg_pow_hist, *pow_hist, *e_sum, *e_ave, **flux,      *phi_sum, *phi_ave, **den_sum, **den_ave, **density, *rho_ave, *rho_sum,      *Pel, *Pcx, *Pie, *Pel_show, *Pcx_show, *Pie_show;/* velocity distribution function */float ***vr_dist, ***vth_dist, ***vz_dist, **vr_array, **vth_array, **vz_array;/* Typing the function calls */float frand(void), J_0(float);float maxwellian(void), maxwellian_flux(void); float distribution(int, int), distribution_flux(int,int);void maxwellv(float *, float *, float *, float);void history(void), start(void), wall(int), move(int), gather(int), fields(void);void mccdiag_init(void), (*mccptr)(int);float (*sigmaMptr)(float), (*sigmaTptr)(float), (*mueFacPtr)(void);void init_rho(void), field_init(void);void argonmcc(int), argonmccLK(int);float asigma1(float), asigma1a(float), asigma1b(float), asigma2(float), asigma3(float), asigma4(float), asigma5(float), asigmaT(float);float LK_asigma1(float), LK_asigma1a(float), LK_asigma1b(float), LK_asigma2(float), LK_asigma3(float), LK_asigma4(float), LK_asigmaT(float);int unif_grid(int, int), const_vol_grid(int,int), linear_grid(int, int), split_grid(int, int);int (*j_pointer)(int,int);float mue_factor(void), mue_factorLK(void);void swap (float v[], int, int);/*-------- LEEHJ ---------*/float   *sp_ex, **AA, **A, *prod, *r_grid2, *x_array, *t_array2, **st_nex,        **st_I_lhs, *intensity_lhs, *I_ave_lhs, *I_ave_lhs_show, *L_array,        **st_I_rhs, *intensity_rhs, *I_ave_rhs, *I_ave_rhs_show, *ex_ave,        *ex_ave_show, I_factor, k0, tau, xmin, xmax, Cx, *ng_array, *sp_exm,        **st_nexm, *exm_ave, *exm_ave_show, lambda0, A_ki, delta_nu,        *eden_ave, Dr, vg_therm, **C_hist, *prodm;float 	*emission_coeff, *radiation_flux, F_factor, **ex_rate_show, *vol2,        **ex_mccrate, *error, *error_sum, *t_array3, *tot_intensity, **E_prod;int     ex_count, sp_k_ex, lineshape, xbin, interval2, hist_hi2, calc_flag,        unif, nc_RT, nc_ratio, RT_flag, it_rate, hist_hi3;char    Lineshape;void    start_rad(), excited_evolution();#define LORENTZIAN      1#define DOPPLER         2#define VOIGT           3#define N_norm          1e18float   (*k_function)(float);float 	(*GE)(int, float);float   lorentz(float), doppler(float), voigt(float);float   asigma6(float), asigma7(float);void    newvel(float, float, float *, float *, float *, int),        newvelLK(float, float, float *, float *, float *, int);/* MPI variables */#ifdef MPI_1D#define ROOT 0 /* CPU which dumps, and restores data */float iwall_tot[NSMAX];    /* total wall current  */int   np_tot[NSMAX],       /* total number of particles */      num_procs, my_rank,      *counts, *displs;float **r_tot, **vr_tot, **vtheta_tot, **vz_tot,       **sp_n_tot;           /* total densities */      double startwtime, endwtime, time0;  /* For time info. */#elseclock_t startwtime, endwtime, time0;  /* For time info. */#endif float els_loss, cx_loss, en_loss, e_lost[NSMAX];int ecolsp, icolsp, ionsp;float eion, eexc, e_me, e_miz;

⌨️ 快捷键说明

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