diff --git a/qlgyro/src/qlgyro_cgyro_map.f90 b/qlgyro/src/qlgyro_cgyro_map.f90 index 9820aa722..240aaf07a 100644 --- a/qlgyro/src/qlgyro_cgyro_map.f90 +++ b/qlgyro/src/qlgyro_cgyro_map.f90 @@ -67,16 +67,28 @@ subroutine qlgyro_cgyro_map dzmag = cgyro_dzmag_in zeta = cgyro_zeta_in s_zeta = cgyro_s_zeta_in - shape_sin3 = cgyro_shape_sin3_in + shape_sin3 = cgyro_shape_sin3_in shape_ssin3 = cgyro_shape_s_sin3_in - shape_cos0 = cgyro_shape_cos0_in + shape_sin4 = cgyro_shape_sin4_in + shape_ssin4 = cgyro_shape_s_sin4_in + shape_sin5 = cgyro_shape_sin5_in + shape_ssin5 = cgyro_shape_s_sin5_in + shape_sin6 = cgyro_shape_sin6_in + shape_ssin6 = cgyro_shape_s_sin6_in + shape_cos0 = cgyro_shape_cos0_in shape_scos0 = cgyro_shape_s_cos0_in - shape_cos1 = cgyro_shape_cos1_in + shape_cos1 = cgyro_shape_cos1_in shape_scos1 = cgyro_shape_s_cos1_in - shape_cos2 = cgyro_shape_cos2_in + shape_cos2 = cgyro_shape_cos2_in shape_scos2 = cgyro_shape_s_cos2_in - shape_cos3 = cgyro_shape_cos3_in + shape_cos3 = cgyro_shape_cos3_in shape_scos3 = cgyro_shape_s_cos3_in + shape_cos4 = cgyro_shape_cos4_in + shape_scos4 = cgyro_shape_s_cos4_in + shape_cos5 = cgyro_shape_cos5_in + shape_scos5 = cgyro_shape_s_cos5_in + shape_cos6 = cgyro_shape_cos6_in + shape_scos6 = cgyro_shape_s_cos6_in ! General geometry Fourier coefficients @@ -192,16 +204,28 @@ subroutine cgyro_qlgyro_map cgyro_s_zeta_in = s_zeta cgyro_q_in = q cgyro_s_in = s - cgyro_shape_sin3_in = shape_sin3 + cgyro_shape_sin3_in = shape_sin3 cgyro_shape_s_sin3_in = shape_ssin3 - cgyro_shape_cos0_in = shape_cos0 + cgyro_shape_sin4_in = shape_sin4 + cgyro_shape_s_sin4_in = shape_ssin4 + cgyro_shape_sin5_in = shape_sin5 + cgyro_shape_s_sin5_in = shape_ssin5 + cgyro_shape_sin6_in = shape_sin6 + cgyro_shape_s_sin6_in = shape_ssin6 + cgyro_shape_cos0_in = shape_cos0 cgyro_shape_s_cos0_in = shape_scos0 - cgyro_shape_cos1_in = shape_cos1 + cgyro_shape_cos1_in = shape_cos1 cgyro_shape_s_cos1_in = shape_scos1 - cgyro_shape_cos2_in = shape_cos2 + cgyro_shape_cos2_in = shape_cos2 cgyro_shape_s_cos2_in = shape_scos2 - cgyro_shape_cos3_in = shape_cos3 + cgyro_shape_cos3_in = shape_cos3 cgyro_shape_s_cos3_in = shape_scos3 + cgyro_shape_cos4_in = shape_cos4 + cgyro_shape_s_cos4_in = shape_scos4 + cgyro_shape_cos5_in = shape_cos5 + cgyro_shape_s_cos5_in = shape_scos5 + cgyro_shape_cos6_in = shape_cos6 + cgyro_shape_s_cos6_in = shape_scos6 ! What should this be? cgyro_beta_star_scale_in = 1.0 diff --git a/qlgyro/src/qlgyro_globals.f90 b/qlgyro/src/qlgyro_globals.f90 index d1a68217c..f80f2f9d5 100644 --- a/qlgyro/src/qlgyro_globals.f90 +++ b/qlgyro/src/qlgyro_globals.f90 @@ -191,6 +191,12 @@ module qlgyro_globals real :: s_zeta real :: shape_sin3 real :: shape_ssin3 + real :: shape_sin4 + real :: shape_ssin4 + real :: shape_sin5 + real :: shape_ssin5 + real :: shape_sin6 + real :: shape_ssin6 real :: shape_cos0 real :: shape_scos0 real :: shape_cos1 @@ -199,6 +205,12 @@ module qlgyro_globals real :: shape_scos2 real :: shape_cos3 real :: shape_scos3 + real :: shape_cos4 + real :: shape_scos4 + real :: shape_cos5 + real :: shape_scos5 + real :: shape_cos6 + real :: shape_scos6 real :: bunit real :: bgs2 diff --git a/qlgyro/src/qlgyro_tglf_map.f90 b/qlgyro/src/qlgyro_tglf_map.f90 index 93b684898..50d3345cc 100644 --- a/qlgyro/src/qlgyro_tglf_map.f90 +++ b/qlgyro/src/qlgyro_tglf_map.f90 @@ -156,6 +156,29 @@ subroutine qlgyro_tglf_map tglf_p_prime_loc_in = p_prime tglf_beta_loc_in = betae_unit + tglf_shape_sin3_loc_in = shape_sin3 + tglf_shape_s_sin3_loc_in = shape_ssin3 + tglf_shape_sin4_loc_in = shape_sin4 + tglf_shape_s_sin4_loc_in = shape_ssin4 + tglf_shape_sin5_loc_in = shape_sin5 + tglf_shape_s_sin5_loc_in = shape_ssin5 + tglf_shape_sin6_loc_in = shape_sin6 + tglf_shape_s_sin6_loc_in = shape_ssin6 + tglf_shape_cos0_loc_in = shape_cos0 + tglf_shape_s_cos0_loc_in = shape_scos0 + tglf_shape_cos1_loc_in = shape_cos1 + tglf_shape_s_cos1_loc_in = shape_scos1 + tglf_shape_cos2_loc_in = shape_cos2 + tglf_shape_s_cos2_loc_in = shape_scos2 + tglf_shape_cos3_loc_in = shape_cos3 + tglf_shape_s_cos3_loc_in = shape_scos3 + tglf_shape_cos4_loc_in = shape_cos4 + tglf_shape_s_cos4_loc_in = shape_scos4 + tglf_shape_cos5_loc_in = shape_cos5 + tglf_shape_s_cos5_loc_in = shape_scos5 + tglf_shape_cos6_loc_in = shape_cos6 + tglf_shape_s_cos6_loc_in = shape_scos6 + endif !---------------------------------------------------------------- @@ -195,7 +218,7 @@ subroutine qlgyro_tglf_map ! nky=0 (low-k only) ! tglf_nky_in = 12 !----------------------------------- - + !---------------------------------------------------------------- ! Linear mode selection ! @@ -325,7 +348,7 @@ subroutine qlgyro_tglf_map tglf_mass_in) call put_kys(tglf_ky_in) - + call put_gaussian_width(tglf_width_in, & tglf_width_min_in, & tglf_nwidth_in, & @@ -346,7 +369,7 @@ subroutine qlgyro_tglf_map tglf_xnue_in, & tglf_zeff_in, & tglf_debye_in) - + call put_switches(tglf_iflux_in, & tglf_use_bper_in, & tglf_use_bpar_in, & @@ -372,7 +395,8 @@ subroutine qlgyro_tglf_map tglf_filter_in, & tglf_damp_psi_in, & tglf_damp_sig_in) - + + call put_model_parameters(tglf_adiabatic_elec_in, & tglf_alpha_e_in, & tglf_alpha_p_in, & @@ -390,9 +414,9 @@ subroutine qlgyro_tglf_map tglf_vpar_shear_model_in) tglf_kygrid_model_in = kygrid_model - + if (tglf_geometry_flag_in == 1 ) then - + call put_miller_geometry(tglf_rmin_loc_in, & tglf_rmaj_loc_in, & tglf_zmaj_loc_in, & @@ -405,12 +429,34 @@ subroutine qlgyro_tglf_map tglf_s_delta_loc_in, & tglf_zeta_loc_in, & tglf_s_zeta_loc_in, & + tglf_shape_sin3_loc_in, & + tglf_shape_s_sin3_loc_in, & + tglf_shape_sin4_loc_in, & + tglf_shape_s_sin4_loc_in, & + tglf_shape_sin5_loc_in, & + tglf_shape_s_sin5_loc_in, & + tglf_shape_sin6_loc_in, & + tglf_shape_s_sin6_loc_in, & + tglf_shape_cos0_loc_in, & + tglf_shape_s_cos0_loc_in, & + tglf_shape_cos1_loc_in, & + tglf_shape_s_cos1_loc_in, & + tglf_shape_cos2_loc_in, & + tglf_shape_s_cos2_loc_in, & + tglf_shape_cos3_loc_in, & + tglf_shape_s_cos3_loc_in, & + tglf_shape_cos4_loc_in, & + tglf_shape_s_cos4_loc_in, & + tglf_shape_cos5_loc_in, & + tglf_shape_s_cos5_loc_in, & + tglf_shape_cos6_loc_in, & + tglf_shape_s_cos6_loc_in, & tglf_q_loc_in, & tglf_q_prime_loc_in, & tglf_p_prime_loc_in, & tglf_beta_loc_in, & tglf_kx0_loc_in) - + elseif (tglf_geometry_flag_in == 2)then call put_fourier_geometry(tglf_q_fourier_in, &