function [INPUT] = write_fort90(OUTPUTS,GRID,MODEL,INITIAL,TIME_INTEGRATION,BASIC) % Write the input script "fort.90" with desired parameters INPUT = '../wk/fort.90'; fid = fopen(INPUT,'wt'); fprintf(fid,'&BASIC\n'); fprintf(fid,[' nrun=', num2str(BASIC.nrun),'\n']); fprintf(fid,[' dt=', num2str(BASIC.dt),'\n']); fprintf(fid,[' tmax=', num2str(BASIC.tmax),' ! time normalized to 1/omega_pe\n']); fprintf(fid,'/\n'); fprintf(fid,'&GRID\n'); fprintf(fid,[' pmaxe =', num2str(GRID.pmaxe),' ! Electron Hermite moments \n']); fprintf(fid,[' jmaxe = ', num2str(GRID.jmaxe),' ! Electron Laguerre moments \n']); fprintf(fid,[' pmaxi = ', num2str(GRID.pmaxi),' ! Ion Hermite moments \n']); fprintf(fid,[' jmaxi = ', num2str(GRID.jmaxi),' ! Ion Laguerre moments\n']); fprintf(fid,[' nkr = ', num2str(GRID.nkr),'\n']); fprintf(fid,[' krmin = ', num2str(GRID.krmin),'\n']); fprintf(fid,[' krmax = ', num2str(GRID.krmax),'\n']); fprintf(fid,[' nkz = ', num2str(GRID.nkz),'\n']); fprintf(fid,[' kzmin = ', num2str(GRID.kzmin),'\n']); fprintf(fid,[' kzmax = ', num2str(GRID.kzmax),'\n']); fprintf(fid,'/\n'); fprintf(fid,'&OUTPUT_PAR\n'); fprintf(fid,[' nsave_0d = ', num2str(OUTPUTS.nsave_0d),'\n']); fprintf(fid,[' nsave_1d = ', num2str(OUTPUTS.nsave_1d),'\n']); fprintf(fid,[' nsave_2d = ', num2str(OUTPUTS.nsave_2d),'\n']); fprintf(fid,[' nsave_5d = ', num2str(OUTPUTS.nsave_5d),'\n']); fprintf(fid,[' write_Ni00 = ', OUTPUTS.write_Ni00,'\n']); fprintf(fid,[' write_moments = ', OUTPUTS.write_moments,'\n']); fprintf(fid,[' write_phi = ', OUTPUTS.write_phi,'\n']); fprintf(fid,[' write_doubleprecision = ', OUTPUTS.write_doubleprecision,'\n']); fprintf(fid,[' resfile0 = ', OUTPUTS.resfile0,'\n']); fprintf(fid,'/\n'); fprintf(fid,'&MODEL_PAR\n'); fprintf(fid,' ! Collisionality\n'); fprintf(fid,[' CO = ', num2str(MODEL.CO),' ! Collision operator (-1:Full Coulomb, 0: Dougherty)\n']); fprintf(fid,[' nu = ', num2str(MODEL.nu),' ! Normalized collision frequency normalized to plasma frequency\n']); fprintf(fid,[' tau_e = ', num2str(MODEL.tau_e),' ! T_e/T_e\n']); fprintf(fid,[' tau_i = ', num2str(MODEL.tau_i),' ! T_i/T_e temperature ratio\n']); fprintf(fid,[' sigma_e = ', num2str(MODEL.sigma_e),' ! sqrt(m_e/m_i) mass ratio\n']); fprintf(fid,[' sigma_i = ', num2str(MODEL.sigma_i),' ! sqrt(m_i/m_i)\n']); fprintf(fid,[' q_e = ', num2str(MODEL.q_e),' ! Electrons charge\n']); fprintf(fid,[' q_i = ', num2str(MODEL.q_i),' ! Ions charge\n']); fprintf(fid,[' eta_n = ', num2str(MODEL.eta_n),' ! L_perp / L_n Density gradient\n']); fprintf(fid,[' eta_T = ', num2str(MODEL.eta_T),' ! L_perp / L_T Temperature gradient\n']); fprintf(fid,[' eta_B = ', num2str(MODEL.eta_B),' ! L_perp / L_B Magnetic gradient and curvature\n']); fprintf(fid,[' lambdaD = ', num2str(MODEL.lambdaD),' ! Debye length\n']); fprintf(fid,'/\n'); fprintf(fid,'&INITIAL_CON\n'); fprintf(fid,' ! Background value\n'); fprintf(fid,[' initback_moments=', num2str(INITIAL.initback_moments),' ! x 1e-3\n']); fprintf(fid,' ! Noise amplitude\n'); fprintf(fid,[' initnoise_moments=', num2str(INITIAL.initnoise_moments),'\n']); fprintf(fid,[' iseed=', num2str(INITIAL.iseed),'\n']); fprintf(fid,'/\n'); fprintf(fid,'&TIME_INTEGRATION_PAR\n'); fprintf(fid,[' numerical_scheme=', TIME_INTEGRATION.numerical_scheme,'\n']); fprintf(fid,'/'); fclose(fid); end