script make_wave_TScirc_LHtest Parameters for test mode LHCD calculations This function has a benchmarking purpose only Approximations: - Circular equilibrium required - The polarization is purely electrostatic: in that case, only the parallel polarization term is non-zero. - Small FLR limit: J0(z) -> 1. by J. Decker (RLE/MIT) <jodecker@mit.edu> and Y. Peysson (DRFC/DSM/CEA) <yves.peysson@cea.fr>
0001 % script make_wave_TScirc_LHtest 0002 % 0003 % Parameters for test mode LHCD calculations 0004 % This function has a benchmarking purpose only 0005 % Approximations: 0006 % - Circular equilibrium required 0007 % - The polarization is purely electrostatic: in that case, only the parallel polarization term is non-zero. 0008 % - Small FLR limit: J0(z) -> 1. 0009 % 0010 % by J. Decker (RLE/MIT) <jodecker@mit.edu> and Y. Peysson (DRFC/DSM/CEA) <yves.peysson@cea.fr> 0011 % 0012 clear all 0013 % 0014 id_wave = 'LH_karney'; 0015 % 0016 id_equil = 'TScyl';%For plasma equilibrium 0017 path_equil = '../EQUIL_files/';%if nothing is specified, the working directory is first used and then MatLab is looking in all the path 0018 % 0019 [equil] = load_structures_yp('equil',id_equil,path_equil); 0020 % 0021 omega_lh = [4]*2*pi*1e9; %(GHz -> rad/s). Wave frequency [1,1] Indicative, no effect in small FLR limit 0022 %Option parameter for cross-comparison between old LH code: 0023 % - (1): 1/vpar dependence 0024 % - (2): no 1/vpar dependence and old grid technique for Dlh calculations (Karney, Shoucri) (see rfdiff_dke_jd) 0025 opt_lh = 2; % [1,1] 0026 % 0027 % 0028 blist_lh = [1]; %Index of selected scenarios for the LH wave. [1,n_scenario_lh] 0029 % 0030 % Choose (vparmin_lh,vparmax_lh) or (Nparmin_lh,Nparmax_lh) for square n// LH wave power spectrum, 0031 % or (Npar_lh,dNpar_lh) for Gaussian shape 0032 % 0033 norm_ref = 1;%Normalization procedure for the LH quasilinear diffusion coefficient and spectrum boundaries 0034 % (0) from local values Te and ne, (1) from central values Te0 and ne0 0035 yvparmin_lh = [4];%LH wave square N// Spectrum: Lower limit of the plateau (vth_ref or vth) [1,n_scenario_lh] 0036 yvparmax_lh = [7];%LH wave square N// Spectrum: Upper limit of the plateau (vth_ref or vth) [1,n_scenario_lh] 0037 % 0038 yNparmin_lh = [NaN];%LH wave square N// Spectrum: Lower limit [1,n_scenario_lh] 0039 yNparmax_lh = [NaN];%LH wave square N// Spectrum: Upper limit [1,n_scenario_lh] 0040 yNpar_lh = [NaN];%LH wave Gaussian N// Spectrum: peak [1,n_scenario_lh] 0041 ydNpar_lh = [NaN];%LH wave Gaussian N// Spectrum: width [1,n_scenario_lh] 0042 % 0043 % Note: this diffusion coefficient is different from the general QL D0. It has a benchmarking purpose only 0044 yD0_in_c_lh = [1];%Central LH QL diffusion coefficient (nhuth_ref*pth_ref^2 or nhuth*pth^2) [1,n_scenario_lh] 0045 % 0046 yD0_in_lh_prof = [0];%Quasilinear diffusion coefficient radial profile: (0) uniform, (1) gaussian radial profile [1,n_scenario_lh] 0047 ypeak_lh = [NaN];%Radial peak position of the LH quasi-linear diffusion coefficient (r/a on midplane) [1,n_scenario_lh] 0048 ywidth_lh = [NaN];%Radial width of the LH quasi-linear diffusion coefficient (r/a on midplane) [1,n_scenario_lh] 0049 % 0050 ythetab_lh = [0]*pi/180;%(deg -> rad). Poloidal location of LH beam [0..2pi] [1,n_scenario_lh] 0051 % 0052 % ------------------------------------------------------------------------- 0053 % 0054 wavestruct.omega_lh = omega_lh; 0055 wavestruct.opt_lh = opt_lh; 0056 wavestruct.norm_ref = norm_ref; 0057 wavestruct.yvparmin_lh = yvparmin_lh(blist_lh); 0058 wavestruct.yvparmax_lh = yvparmax_lh(blist_lh); 0059 wavestruct.yNparmin_lh = yNparmin_lh(blist_lh); 0060 wavestruct.yNparmax_lh = yNparmax_lh(blist_lh); 0061 wavestruct.yNpar_lh = yNpar_lh(blist_lh); 0062 wavestruct.ydNpar_lh = ydNpar_lh(blist_lh); 0063 wavestruct.yD0_in_c_lh = yD0_in_c_lh(blist_lh); 0064 wavestruct.yD0_in_lh_prof = yD0_in_lh_prof(blist_lh); 0065 wavestruct.ypeak_lh = ypeak_lh(blist_lh); 0066 wavestruct.ywidth_lh = ywidth_lh(blist_lh); 0067 wavestruct.ythetab_lh = ythetab_lh(blist_lh); 0068 % 0069 wave = make_idealLHwave_jd(equil,wavestruct); 0070 % 0071 save_str = ['WAVE_',id_equil,'_',id_wave,'.mat']; 0072 eval(['save ',save_str,' wave']);