#include #include #include #define EPS0 8.8542e-12 /* (F/m) */ #define NperTORR 8.3221e20 #define NSMAX 7 #define HISTMAX 512 /* upper bound on histories */ #ifndef max #define max(x, y) (((x) > (y)) ? (x) : (y)) #endif #ifndef min #define min(x, y) (((x) < (y)) ? (x) : (y)) #endif #ifndef DBL_MIN #define DBL_MIN 1E-200 #endif #ifndef True #define True 1 #endif #ifndef False #define False 0 #endif #ifndef M_PI #define M_PI 3.14159265358979323846 #endif /* PG, attempt to read the gas type from input deck */ #define HELIUM 1 #define ARGON 2 #define NEON 3 #define OXYGEN 4 /*******************************************************************/ float nc2p, length, area, rhoback, backj, dde, epsilon, b, extr, extl, extc, w0, dcbias, acbias, extq, extq_1, extq_2, extq_3, exti, sigma, oldsigma, dx, dt, vxscale, vscale, xnc, pressure, gtemp, df, ramp, theta0, risetime, seec[NSMAX], jwall[NSMAX], q[NSMAX], m[NSMAX], qm[NSMAX], jj0[NSMAX][2], v0[NSMAX][2], vt[NSMAX][2], vc[NSMAX][2], vperpt[NSMAX], vperp0[NSMAX], tx[NSMAX], tz[NSMAX], sx[NSMAX], sz[NSMAX], emin[NSMAX], de[NSMAX], dtheta[NSMAX], enter[NSMAX][2], emin_mid[NSMAX], de_mid[NSMAX], xs_mid[NSMAX], xf_mid[NSMAX], a_scale[NSMAX], sp_chi_scale[NSMAX], Escale[NSMAX], jdote_scale[NSMAX], u_scale[NSMAX], j_scale[NSMAX]; int nsp, nc, ng, secondary, ionspecies, ecollisional, icollisional, hist_hi, thist_hi, freq_hi, interval, nsmoothing, ntimestep, nfft, dcramped, reflux, np[NSMAX], Index[1024], nbin[NSMAX], inject[NSMAX], nbin_mid[NSMAX], sp_k[NSMAX], it[NSMAX], maxnp[NSMAX], k_count[NSMAX], ndiag, gas, psource, nstrt; long int seed; double t; char src, **rate_title; float **x, **vx, **vy, **vz, **sp_n, *rho, *e, *phi, *a, *x_grid, *t_array, **np_hist, **jwall_hist, **phi_hist, *wall_sigma_hist, *ese_hist, **kes_hist, *cur_hist, *com_cur_hist, *pow_hist, *com_pow_hist, **com_phi_hist, *f_array, *cur_fft, *phi_fft, *pow_fft, *mphi_fft, *Local_t_array, **fe, **ftheta, **e_array, **th_array, **fe_mid, **fe_mid_show, **e_mid_array, *e_ave, *e_ave_show, *phi_ave, *phi_ave_show, **sp_n_ave, **sp_n_ave_show, **sp_u_ave, **sp_u_ave_show, **sp_j_ave, **sp_j_ave_show, **sp_ke_ave, **sp_ke_ave_show, **sp_n_0, **sp_n_k, **sp_n_mcc, *chi, **sp_j, **sp_j_show, **sp_ke, **sp_ke_show, **sp_u_show, **jdote, **jdote_show, **mccrate, **rate_show; float frand(void), tstrt; double revers_base(int, int), frandbase2(void); void imp_move(int), exp_move(int), (*moveptr)(),(*mccptr)(); void heliummcc(int), argonmcc(int), neonmcc(int), oxygenmcc(int); // Modeline for ViM {{{1 // vim:set ts=4: // vim600:fdm=marker fdl=0 fdc=3: // 1}}}