make_wave_TScyl_LH_karney

PURPOSE ^

script make_wave_TScirc_LHtest

SYNOPSIS ^

This is a script file.

DESCRIPTION ^

 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>

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

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']);

Community support and wiki are available on Redmine. Last update: 18-Apr-2019.