diff --git a/local/dirs.inc b/local/dirs.inc index e5bbdfc75f93f2b2910bf68ab12fa81814cccdde..322f9cc956b0b0d6d9ae43f0acb0c74175497361 100644 --- a/local/dirs.inc +++ b/local/dirs.inc @@ -4,18 +4,29 @@ SRCDIR = $(PREFIX)/src BINDIR = $(PREFIX)/bin OBJDIR = $(PREFIX)/obj LIBDIR = $(HOME)/lib -#LIBDIR = $(HOME)/lib_gnu MODDIR = $(PREFIX)/mod -FMDIR = $(LIBDIR)/FM -FUTILS_DIR = $(LIBDIR)/futils/src -# For local install : -HDF5_LIB = $(HDF5_ROOT)/lib -#HDF5_LIB = /usr/local/hdf5-1.8.22/lib -FFTW3DIR = $(LIBDIR)/fftw-3.3.10 -#LAPACKDIR = $(LIBDIR)/lapack-3.10.0 -# For marconi (use of modules): -# -comment HDF5_LIB, FFTW3DIR and LAPACKDIR -# -uncomment the following lines if the module are loaded -#FFTW3DIR = $(FFTW_HOME)#mandatory -#LAPACKDIR = $(LAPACK_HOME)#optional +#OS environment: Linux, Marconi or MacOS +ENVTYPE = Linux + +ifeq ($(ENVTYPE), Linux) #Linux env. + FMDIR = $(LIBDIR)/FM + FUTILS_DIR = $(LIBDIR)/futils/src + FFTW3DIR = $(LIBDIR)/fftw-3.3.10 + LAPACKDIR = $(HOME)/lib/lapack-3.10.0 + HDF5_LIB = $(HDF5_ROOT)/lib +endif +ifeq ($(ENVTYPE), Marconi) #Marconi env. + FMDIR = $(LIBDIR)/FM + FUTILS_DIR = $(LIBDIR)/futils/src + FFTW3DIR = $(FFTW_HOME) + LAPACKDIR = $(LAPACK_HOME) + HDF5_LIB = $(HDF5_ROOT)/lib +endif +ifeq ($(ENVTYPE), MacOS) #MacOS + FMDIR = $(LIBDIR)/FM + FUTILS_DIR = $(LIBDIR)/futils/src + FFTW3DIR = $(LIBDIR)/fftw-3.3.10 + LAPACKDIR = /opt/homebrew/opt/lapack + HDF5_LIB = /usr/local/hdf5-1.8.22/lib +endif diff --git a/local/make.inc b/local/make.inc index 890dcc78771ae5abbb58a70e63ca8262f8603429..5dd59b655fd3e1b68c8c90c45d4c52ae4e9fa508 100644 --- a/local/make.inc +++ b/local/make.inc @@ -107,7 +107,15 @@ ifeq ($(COMPTYPE), c) #cray endif #Flag for finding external libraries in LDIR -EXTLIBS = $(LDIRS) -Wl,--start-group $(LIBS) -Wl,--end-group +ifeq ($(ENVTYPE), Linux) #Linux env. + EXTLIBS = $(LDIRS) -Wl,--start-group $(LIBS) -Wl,--end-group +endif +ifeq ($(ENVTYPE), Marconi) #Linux env. + EXTLIBS = $(LDIRS) -Wl,--start-group $(LIBS) -Wl,--end-group +endif +ifeq ($(ENVTYPE), MacOS) #Linux env. + EXTLIBS = $(LDIRS) $(LIBS) +endif #Flag for finding external include files EXTINC = $(IDIRS) diff --git a/matlab/plot/plot_metric.m b/matlab/plot/plot_metric.m index 5fb56042ae281f23a85fa54d7cc09f79419810fd..28e9b1c87cec3c969e6904bc1d3c52a4cf4e3d02 100644 --- a/matlab/plot/plot_metric.m +++ b/matlab/plot/plot_metric.m @@ -11,7 +11,13 @@ for i_ = 1:numel(names) namae = names{i_}; geo_arrays(:,i_) = h5read(data.outfilenames{end},['/data/metric/',namae])'; end -NPLOT = options.SHOW_FLUXSURF + options.SHOW_METRICS; +try + NPLOT = options.SHOW_FLUXSURF + options.SHOW_METRICS; +catch + NPLOT = 2; + options.SHOW_FLUXSURF = 1; + options.SHOW_METRICS = 1; +end if NPLOT > 0 fig = figure; if options.SHOW_METRICS diff --git a/src/diagnose.F90 b/src/diagnose.F90 index 351acccdfe1a92ebe847baf848d60892c757ca9a..8807f076fa17bd74169421b4f7907081bc8b3e26 100644 --- a/src/diagnose.F90 +++ b/src/diagnose.F90 @@ -47,6 +47,7 @@ SUBROUTINE init_outfile(comm,file0,file,fid) USE collision, ONLY: coll_outputinputs USE initial_par, ONLY: initial_outputinputs USE time_integration,ONLY: time_integration_outputinputs + USE parallel, ONLY: parallel_outputinputs USE futils, ONLY: creatf, creatg, creatd, attach, putfile IMPLICIT NONE !input @@ -89,6 +90,7 @@ SUBROUTINE init_outfile(comm,file0,file,fid) CALL coll_outputinputs(fid) CALL initial_outputinputs(fid) CALL time_integration_outputinputs(fid) + CALL parallel_outputinputs(fid) ! Save STDIN (input file) of this run IF(jobnum .LE. 99) THEN WRITE(str,'(a,i2.2)') "/files/STDIN.",jobnum diff --git a/src/parallel_mod.F90 b/src/parallel_mod.F90 index 2d40944195d62f199e85eb36579feb47e5c86010..5f7e921db212195142d449fb9457dd6f8b24b6f6 100644 --- a/src/parallel_mod.F90 +++ b/src/parallel_mod.F90 @@ -37,7 +37,8 @@ MODULE parallel INTEGER, DIMENSION(:), ALLOCATABLE :: rcv_zyp, dsp_zyp PUBLIC :: ppinit, manual_0D_bcast, manual_3D_bcast, init_parallel_var, & - gather_xyz, gather_xyz_real, gather_pjz, gather_pjxyz, exchange_ghosts_1D + gather_xyz, gather_xyz_real, gather_pjz, gather_pjxyz, exchange_ghosts_1D, & + parallel_outputinputs CONTAINS @@ -463,4 +464,19 @@ CONTAINS ENDDO END SUBROUTINE exchange_ghosts_1D + + SUBROUTINE parallel_outputinputs(fid) + ! Write the input parameters to the results_xx.h5 file + USE futils, ONLY: attach, creatd + IMPLICIT NONE + INTEGER, INTENT(in) :: fid + CHARACTER(len=256) :: str + WRITE(str,'(a)') '/data/input/parallel' + CALL creatd(fid, 0,(/0/),TRIM(str),'MPI parallelization') + CALL attach(fid, TRIM(str), "num_procs", num_procs) + CALL attach(fid, TRIM(str), "num_procs_p", num_procs_p) + CALL attach(fid, TRIM(str), "num_procs_ky", num_procs_ky) + CALL attach(fid, TRIM(str), "num_procs_z", num_procs_z) + END SUBROUTINE parallel_outputinputs + END MODULE parallel diff --git a/wk/benchmark_and_scan_scripts/Parisi_2020_JET_miller_eq.txt b/wk/benchmark_and_scan_scripts/Parisi_2020_JET_miller_eq.txt new file mode 100644 index 0000000000000000000000000000000000000000..ac742f38bcb8fbe3404b6d344361ed22aace68c2 --- /dev/null +++ b/wk/benchmark_and_scan_scripts/Parisi_2020_JET_miller_eq.txt @@ -0,0 +1,89 @@ +2.0089285714285716, 0.08115169144580903 +2.0089285714285716, 0.3164458090928679 +2.022321428571429, 0.5245502046972632 +2.0401785714285716, 0.6873922645981467 +2.053571428571429, 0.8140486964016374 +2.0803571428571432, 0.9270900667959489 +2.1205357142857144, 1.07629013143719 +2.169642857142857, 1.2254632622279678 +2.2232142857142856, 1.3338989441930615 +2.2767857142857144, 1.419710191769015 +2.334821428571429, 1.4783586511527682 +2.3794642857142856, 1.5279977375565608 +2.4419642857142856, 1.5640082956259422 +2.5, 1.6000323206205553 +2.575892857142857, 1.626952704158586 +2.65625, 1.6357600732600728 +2.7142857142857144, 1.6355850032320616 +2.78125, 1.6308581124757588 +2.84375, 1.6125700280112039 +2.915178571428571, 1.5852052359405295 +2.9821428571428568, 1.5578539107950866 +3.0446428571428568, 1.5214662788192193 +3.1205357142857144, 1.4895631329454853 +3.1874999999999996, 1.430537599655246 +3.2499999999999996, 1.3896250808015507 +3.2946428571428568, 1.3397166558931257 +3.3660714285714284, 1.2897274294333112 +3.410714285714285, 1.23076923076923 +3.455357142857143, 1.1853856927386333 +3.504464285714285, 1.1218891402714926 +3.5535714285714284, 1.06291747468218 +3.5848214285714284, 1.0175743374272779 +3.6249999999999996, 0.9586296056884285 +3.6562499999999996, 0.8861371471665582 +3.7053571428571423, 0.790966386554621 +3.741071428571428, 0.7003609135962068 +3.7633928571428568, 0.623370502046972 +3.7857142857142856, 0.5644796380090489 +3.7991071428571423, 0.47846638655462126 +3.8080357142857135, 0.42866569704804913 +3.8169642857142856, 0.3743401206636492 +3.8258928571428568, 0.292865223012281 +3.8258928571428568, 0.22046703296703218 +3.8258928571428568, 0.16616839043309573 +3.821428571428571, 0.10283344106873438 +3.8169642857142856, 0.05307315233785759 +3.803571428571428, -0.010234863176040276 +3.7946428571428568, -0.07355634561516977 +3.7589285714285707, -0.1865707821590179 +3.741071428571428, -0.24534044386985632 +3.7187499999999996, -0.3131464124111185 +3.7053571428571423, -0.35382999353587663 +3.6696428571428568, -0.41707067442361656 +3.6339285714285707, -0.4893611290670121 +3.589285714285714, -0.5616246498599444 +3.5178571428571423, -0.6700064641241121 +3.464285714285714, -0.7377181641887531 +3.3883928571428568, -0.8189371902607199 +3.339285714285714, -0.868562809739281 +3.227678571428571, -0.9677736479207069 +3.15625, -1.0218568196509377 +3.0446428571428568, -1.0803436759319112 +2.9642857142857144, -1.1208252531781946 +2.8705357142857144, -1.1522166558931268 +2.790178571428571, -1.174598685628098 +2.7098214285714284, -1.1834060547295844 +2.633928571428571, -1.1831771170006464 +2.5625, -1.1648620986856282 +2.5, -1.1465740142210732 +2.4330357142857144, -1.1146978021978022 +2.383928571428571, -1.0693007972419737 +2.3080357142857144, -1.0011985563456152 +2.267857142857143, -0.9467787114845942 +2.2455357142857144, -0.9195620555914676 +2.21875, -0.865182611506141 +2.1875, -0.8062648136177553 +2.1651785714285716, -0.756423723335488 +2.147321428571429, -0.7111209868562811 +2.1294642857142856, -0.6522435897435896 +2.107142857142857, -0.6024024994613233 +2.09375, -0.5390136823960356 +2.075892857142857, -0.47561139840551614 +2.0625, -0.41222258134022893 +2.049107142857143, -0.3443088773971128 +2.0401785714285716, -0.28093352725705656 +2.0401785714285716, -0.22210999784529206 +2.03125, -0.14063510019392367 +2.022321428571429, -0.032010881275587266 +2.013392857142857, 0.031364468864468975 diff --git a/wk/fast_analysis.m b/wk/fast_analysis.m index 9dcf610fc9eef151688a87fd9964da13fbaeffc5..e7c14fd1e1bd85c049d1d305e97fc81568f5b002 100644 --- a/wk/fast_analysis.m +++ b/wk/fast_analysis.m @@ -5,13 +5,15 @@ addpath(genpath([gyacomodir,'matlab/compute'])) % ... add addpath(genpath([gyacomodir,'matlab/load'])) % ... add default_plots_options % Partition of the computer where the data have to be searched -PARTITION=''; - +% PARTITION='/Users/ahoffmann/gyacomo/results/paper_3/'; +PARTITION='/misc/gyacomo23_outputs/paper_3/'; %% Paper 3 -resdir = '/Users/ahoffmann/gyacomxlio/results/paper_3/DTT_rho85/3x2x192x48x32'; -% resdir = '/Users/ahoffmann/gyacomo/results/paper_3/DTT_rho85/3x2x192x48x32_NT'; -% resdir = '/Users/ahoffmann/gyacomo/results/paper_3/DTT_rho98/3x2x192x48x32'; -resdir = '/Users/ahoffmann/gyacomo/results/paper_3/DTT_rho98/3x2x192x48x32_0.25grad'; +% resdir = 'DTT_rho85/3x2x192x48x32'; +% resdir = 'DTT_rho85/3x2x192x48x32_NT'; +% resdir = 'DTT_rho98/3x2x192x48x32'; +% resdir = 'DTT_rho98/3x2x192x48x32_0.25grad'; +% resdir = 'LM_DIIID_rho95/5x3x512x92x32'; +resdir = 'LM_DIIID_rho95/3x2x512x92x32'; %% J0 = 00; J1 = 02; diff --git a/wk/lin_scan_script.m b/wk/lin_scan_script.m index fa4b35099767dab82ff7919e44ed34954d95d511..8831740be18598ee3c075df149aef21272dbafd6 100644 --- a/wk/lin_scan_script.m +++ b/wk/lin_scan_script.m @@ -19,7 +19,7 @@ RUN = 1; % To run or just to load RERUN = 0; % rerun if the data does not exist default_plots_options EXECNAME = 'gyacomo23_sp'; % single precision -% EXECNAME = 'gyacomo23_dp'; % double precision +%EXECNAME = 'gyacomo23_dp'; % double precision %% Setup parameters % run lin_DTT_AB_rho85 @@ -30,11 +30,12 @@ run lin_JET_rho97 %% Change parameters NY = 2; -% SIGMA_E = 0.023; %% Scan parameters SIMID = [SIMID,'_scan']; P_a = [2 4 6 8]; +% P_a = 2; ky_a = logspace(-1.5,1.5,30); +CO = 'SG'; %% Scan loop % arrays for the result g_ky = zeros(numel(ky_a),numel(P_a)); @@ -47,8 +48,8 @@ for PMAX = P_a i = 1; for ky = ky_a LY = 2*pi/ky; - DT = 1e-4;%min(1e-2,1e-3/ky); - TMAX = 10;%min(10,1.5/ky); + DT = 1e-5;%/(1+log(ky/0.05));%min(1e-2,1e-3/ky); + TMAX = 20;%min(10,1.5/ky); DTSAVE0D = 0.1; DTSAVE3D = 0.1; %% RUN @@ -64,10 +65,15 @@ for PMAX = P_a catch data_.outfilenames = []; end - if RUN && (RERUN || isempty(data_.outfilenames) || Ntime < 10) - % system(['cd ../results/',SIMID,'/',PARAMS,'/; mpirun -np 2 ',gyacomodir,'bin/',EXECNAME,' 1 2 1 0; cd ../../../wk']) - system(['cd ../results/',SIMID,'/',PARAMS,'/; mpirun -np 4 ',gyacomodir,'bin/',EXECNAME,' 1 2 2 0; cd ../../../wk']) - % system(['cd ../results/',SIMID,'/',PARAMS,'/; mpirun -np 6 ',gyacomodir,'bin/',EXECNAME,' 3 2 1 0; cd ../../../wk']) + if RUN && (RERUN || isempty(data_.outfilenames) || (Ntime < 10)) + MVIN =['cd ../results/',SIMID,'/',PARAMS,'/;']; + % RUNG =['time ',mpirun,' -np 2 ',gyacomodir,'bin/',EXECNAME,' 1 2 1 0;']; + RUNG =['time ',mpirun,' -np 4 ',gyacomodir,'bin/',EXECNAME,' 1 2 2 0;']; + % RUNG =['time ',mpirun,' -np 8 ',gyacomodir,'bin/',EXECNAME,' 2 2 2 0;']; + % RUNG =['time ',mpirun,' -np 1 ',gyacomodir,'bin/',EXECNAME,' 1 1 1 0;']; + % RUNG = ['./../../../bin/gyacomo23_sp 0;']; + MVOUT='cd ../../../wk;'; + system([MVIN,RUNG,MVOUT]); end data_ = compile_results_low_mem(data_,LOCALDIR,00,00); [data_.PHI, data_.Ts3D] = compile_results_3D(LOCALDIR,00,00,'phi'); diff --git a/wk/load_metadata_scan.m b/wk/load_metadata_scan.m index 6615ee538fe728c08f16c6b2eb8c78a7c284ff74..f107d4afec12cbd35cd8844c282d73a5cc056d90 100644 --- a/wk/load_metadata_scan.m +++ b/wk/load_metadata_scan.m @@ -15,13 +15,9 @@ addpath(genpath([gyacomodir,'matlab/load'])) % ... add% EXECNAME = 'gyacomo_1.0' % datafname = 'lin_DTT_AB_rho85_PT_scan/16x24_ky_0.1_1_P_2_8_DGGK_0.05_be_0.0039.mat'; % datafname = 'lin_DTT_AB_rho85_PT_scan/16x24_ky_0.1_0.9_P_2_8_kN_1.33_DGGK_0.56901_be_0.0039.mat'; % datafname = 'lin_DTT_AB_rho85_PT_scan/8x24_ky_0.05_1.5_P_2_8_kN_1.33_DGGK_0.1_be_0.0039.mat'; -% datafname = 'lin_JET_rho97_scan/4x32_ky_0.01_10_P_2_8_kN_10_DGGK_0.1_be_0.0031.mat'; -% datafname = 'lin_JET_rho97_scan/4x32_ky_0.01_10_P_2_8_kN_10_DGGK_0.05_be_0.0031.mat'; -% datafname = 'lin_JET_rho97_scan/8x32_ky_0.01_10_P_2_8_kN_10_DGGK_0.05_be_0.0031.mat'; -% datafname = 'lin_JET_rho97_scan/8x32_ky_0.01_10_P_2_2_kN_10_DGGK_0.05_be_0.0031.mat'; -datafname = 'lin_JET_rho97_scan/8x32_ky_0.031623_31.6228_P_2_2_kN_10_DGGK_0.1_be_0.0031.mat'; +datafname = 'lin_JET_rho97_scan/8x32_ky_0.031623_31.6228_P_1_1_kN_31.4286_DGGK_0.1_be_0.0031.mat'; %% Chose if we filter gamma>0.05 -FILTERGAMMA = 0; +FILTERGAMMA = 1; %% Load data fname = ['../results/',datafname]; @@ -29,7 +25,7 @@ d = load(fname); gamma = real(d.data); g_err = real(d.err); omega = imag(d.data); w_err = imag(d.err); if FILTERGAMMA - d.data = real(gamma).*(real(gamma)>0.025) + imag(gamma); + gamma = gamma.*(gamma>0.025); end if 0 %% Pcolor of the peak @@ -46,7 +42,7 @@ set(gca,'YTick',1:numel(d.s2),'YTicklabel',d.s2) colormap(jet) colormap(bluewhitered) clb=colorbar; -clb.Label.String = '$\gamma c_s/R$'; +clb.Label.String = '$\gamma R/c_s$'; clb.Label.Interpreter = 'latex'; clb.Label.FontSize= 18; end @@ -83,7 +79,7 @@ for i = 1:numel(d.s2) 'color',colors_(i,:)); hold on; end -xlabel(d.s1name); ylabel('$\omega c_s/R$');title(d.title); +xlabel(d.s1name); ylabel('$\omega R/c_s$');title(d.title); xlim([d.s1(1) d.s1(end)]); colormap(colors_); diff --git a/wk/parameters/lin_JET_rho97.m b/wk/parameters/lin_JET_rho97.m index b9f1041d170ad8d688a05a05b22427e0f80285ab..72ae55cd2c30d02fa89b8a09e4f8b8cec5816c2a 100644 --- a/wk/parameters/lin_JET_rho97.m +++ b/wk/parameters/lin_JET_rho97.m @@ -1,45 +1,68 @@ -% Parameters found in Parisi et al. 2020 -% Jet shot 92174 +%% Parameters found in Parisi et al. 2020 +% Jet shot 92174 parameters +BT0 = 1.9; %[T] Toroidal field @ 2.96m +Ip = 1.4; %[MA] Plasma current @ 2.96m +PNBI = 17.4; %[MW] NBI power +rhoi = 0.27; %[cm] Ion gyroradius +R0 = 2.86; %[m] Major radius +a = 0.91; %[m] F-T minor radius +Rc = 2.91; %[m] ?? +rc = 0.89; %[m] ?? +m_e = 5.49e-4; %[amu] electron mass +m_i = 2.014; %[amu] deuterium mass +% Dimless flux-tube parameters +nuee = 0.83; %[vti/a] e-e collision frequ. +wTe = 42; %[a/L] e-temp. gradient length +wTi = 11; %[a/L] i-temp. gradient length +wNe = 10; %[a/L] dens. gradient length +tau = 1/0.56; %Ti/Te i-e temperature ratio +gE = 0.56; %[vti/a] ExB shearing rate +roa = 0.9743; % r/a Flux surface position +beta = 0.0031; % [8pi*ptot/B^2] with B = 1.99T +% Normalization +% v0 = vth_i = sqrt(2*Ti/mi) +% rho0 = rho_i = vti/omegai +% Conversion factors from GYAC to paper results +freq_conv = a/R0 * sqrt(tau/2); % from R/c_s to a/vti +wave_conv = sqrt(2/tau); % from rho_i to rho_s +grad_conv = a/R0; % from R/LT to a/LT + %% Set simulation parameters SIMID = 'lin_JET_rho97'; % Name of the simulation %% Set up physical parameters -CLUSTER.TIME = '99:00:00'; % Allocation time hh:mm:ss NU = 0.1; % Not the true value -TAU = 1/0.56; % e/i temperature ratio -K_Ne = 10; % ele Density ''' -K_Te = 42; % ele Temperature ''' -K_Ni = 10; % ion Density gradient drive -K_Ti = 11; % ion Temperature ''' -SIGMA_E = 0.0233380; % mass ratio sqrt(m_a/m_i) (correct = 0.0233380) +TAU = tau; % i/e temperature ratio +K_Ne = wNe/grad_conv; % ele Density ''' +K_Te = wTe/grad_conv; % ele Temperature ''' +K_Ni = wNe/grad_conv; % ion Density gradient drive +K_Ti = wTi/grad_conv; % ion Temperature ''' +SIGMA_E = sqrt(m_e/m_i); % mass ratio sqrt(m_e/m_i) (e-H = 0.0233380) NA = 2; % number of kinetic species -ADIAB_E = (NA==1); % adiabatic electron model -BETA = 0.0031; % electron plasma beta -MHD_PD = 0; +BETA = beta; % electron plasma beta +MHD_PD = 1; +CO = 'DG'; % Collision operator (LB:L.Bernstein, DG:Dougherty, SG:Sugama, LR: Lorentz, LD: Landau) +GKCO = 1; % Gyrokinetic operator +ABCO = 1; % INTERSPECIES collisions +COLL_KCUT= 100; % Cutoff for collision operator %% GEOMETRY % GEOMETRY= 's-alpha'; GEOMETRY= 'miller'; -EPS = 0.9753*0.91/2.91; % inverse aspect ratio -Q0 = 5.10; % safety factor -SHEAR = 3.36; % magnetic shear -KAPPA = 1.55; % elongation -S_KAPPA = 0.95; -DELTA = 0.26; % triangularity -S_DELTA = 0.74; -ZETA = 0; % squareness -S_ZETA = 0; -PARALLEL_BC = 'dirichlet'; % Boundary condition for parallel direction ('dirichlet','periodic','shearless','disconnected') -SHIFT_Y = 0.0; % Shift in the periodic BC in z -NPOL = 1; % Number of poloidal turns -PB_PHASE = 0; +EPS = a/R0; % inverse aspect ratio +Q0 = 5.100; % safety factor +SHEAR = 3.360; % magnetic shear +KAPPA = 1.550; % elongation +S_KAPPA = 0.949; +DELTA = 0.263; % triangularity +S_DELTA = 0.737; %% Set up grid parameters P = 4; J = P/2;%P/2; PMAX = P; % Hermite basis size JMAX = J; % Laguerre basis size -NX = 8; % real space x-gridpoints -NY = 8; % real space y-gridpoints +NX = 16; % real space x-gridpoints +NY = 2; % real space y-gridpoints LX = 2*pi/0.1; % Size of the squared frequency domain in x direction LY = 2*pi/0.2; % Size of the squared frequency domain in y direction NZ = 32; % number of perpendicular planes (parallel grid) @@ -55,11 +78,15 @@ DTSAVE3D = 0.5; % Sampling time for 3D arrays DTSAVE5D = 100; % Sampling time for 5D arrays JOB2LOAD = -1; % Start a new simulation serie + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% UNUSED PARAMETERS +% These parameters are usually not to play with in linear runs + %% OPTIONS +CLUSTER.TIME = '99:00:00'; % Allocation time hh:mm:ss LINEARITY = 'linear'; % activate non-linearity (is cancelled if KXEQ0 = 1) -CO = 'DG'; % Collision operator (LB:L.Bernstein, DG:Dougherty, SG:Sugama, LR: Lorentz, LD: Landau) -GKCO = 1; % Gyrokinetic operator -ABCO = 1; % INTERSPECIES collisions INIT_ZF = 0; % Initialize zero-field quantities HRCY_CLOS = 'truncation'; % Closure model for higher order moments DMAX = -1; @@ -67,6 +94,8 @@ NLIN_CLOS = 'truncation'; % Nonlinear closure model for higher order moments NMAX = 0; KERN = 0; % Kernel model (0 : GK) INIT_OPT = 'phi'; % Start simulation with a noisy mom00/phi/allmom +NOISE0 = 1.0e-5; % Initial noise amplitude +BCKGD0 = 0.0e-5; % Initial background NUMERICAL_SCHEME = 'RK4'; % Numerical integration scheme (RK2,SSPx_RK2,RK3,SSP_RK3,SSPx_RK3,IMEX_SSP2,ARK2,RK4,DOPRI5) %% OUTPUTS @@ -80,22 +109,25 @@ W_TEMP = 1; % Output flag for temperature W_NAPJ = 1; % Output flag for nalphaparallel (parallel momentum of species alpha) W_SAPJ = 0; % Output flag for saparallel (parallel current of species alpha) -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% UNUSED PARAMETERS -% These parameters are usually not to play with in linear runs +%% Unused geometry +ZETA = 0; % squareness +S_ZETA = 0; +PARALLEL_BC = 'dirichlet'; % Boundary condition for parallel direction ('dirichlet','periodic','shearless','disconnected') +SHIFT_Y = 0.0; % Shift in the periodic BC in z +NPOL = 1; % Number of poloidal turns +PB_PHASE = 0; + +%% Diffusions MU = 0.0; % Hyperdiffusivity coefficient MU_X = MU; % Hyperdiffusivity coefficient in x direction MU_Y = MU; % Hyperdiffusivity coefficient in y direction N_HD = 4; % Degree of spatial-hyperdiffusivity -MU_Z = 2.0; % Hyperdiffusivity coefficient in z direction +MU_Z = 5.0; % Hyperdiffusivity coefficient in z direction HYP_V = 'hypcoll'; % Kinetic-hyperdiffusivity model MU_P = 0.0; % Hyperdiffusivity coefficient for Hermite MU_J = 0.0; % Hyperdiffusivity coefficient for Laguerre LAMBDAD = 0.0; % Lambda Debye -NOISE0 = 1.0e-5; % Initial noise amplitude -BCKGD0 = 0.0e-5; % Initial background k_gB = 1.0; % Magnetic gradient strength k_cB = 1.0; % Magnetic curvature strength -COLL_KCUT = 1; % Cutoff for collision operator -ADIAB_I = 0; % adiabatic ion model \ No newline at end of file +ADIAB_I = 0; % adiabatic ion model +ADIAB_E = (NA==1); % adiabatic electron model \ No newline at end of file