Below is a note Bill put together on the slowing-down distribution model in GS2, based on info Kotschenreuther gave him. Bill thinks it would be fairly easy to upgrade le_grids.f90 to implement a better model, maybe only 1-2 hours. For now, my suggestion is that people just treat the beam as a hot-Maxwellian model, because the precise beam model is often not very important. In this hot-Maxwellian model, 3/2*T_beam is equal to the average beam ion energy, which is reported by TRANSP or other transport codes. When that is not available, one can roughly approximate T_beam from the slowing down model: f_beam(E) = K/(E**1.5 + E_crit**1.5) for E> E_crit). For E_inj << E_E_crit, you get T_beam=(2/5)*E_inj (and in this limit the beam temperature gradient parameter in GS2, tprim, should be be zero, though variations in the penetration of the full, half, and third-energy beam components might affect this some). For alpha particles born at 3.5 MeV, my recollection is that T_alpha is approximately 800 keV. The reason that the form of the beam model is often not very important is that the main physics of an energetic ion species is that they don't interact with the drift waves much, and their adiabatic e*Phi/T_beam response can be neglected because T_beam >> T_i usually. There are cases where there is little T separation, like supershots. But then it is probably better to treat the beam as a slightly hotter Maxwellian instead of a slowing-down model which cuts off exactly at E_injection. Eventually, one might need to consider anisotropies in the beam f0. ######################################################################### Date: Wed, 20 Oct 1999 16:17:18 -0400 From: Bill Dorland To: hammett@pppl.gov Subject: Beam distribution Reply-to: bdorland@ipr.umd.edu Greg, Mike just called me to talk over something, and I asked him about the slowing-down distribution. He said that he used a very crude model based only on a slowing down time that goes like 1/nu, so that: f_0 ~ v**3 with a cutoff at E = E_inj. This avoids the low-velocity divergence, but should be replaced with something better. The variable "anon" ~ -1/f df/dE, so that f_0 ~ v**3 ~ E**1.5 ==> anon = -1.5 / E. This is what is used in the code, so his memory seems correct. I haven't worked through the definition of w recently, so I haven't checked that, but it should be chosen so that the integral of f_0 is unity. Putting in an f that goes like f ~ 1/(E**1.5 + E_crit**1.5) up to E_inj seems straightforward. I guess an extra input variable would be needed to define a normalized E_crit, and anon and w would have to be redefined. That would be it, I think. The only changes would occur in le_grids, in the egridset subroutine, in the read_parameters subroutine, and in the declaration of variables for the le_grids module. Talk to you later, --Bill ######################################################################### Here are a few comments I could add to le_grids.f90, in subroutine egridset, just before the first "do is = 1, nspec" loop: ! GWH: this is the section where the equilibrium f0(E) is set up, for a ! Maxwellian f0 or for a rough model of a neutral beam "slowing down" ! distribution. ! e is the energy grid points (e=Energy/T_s) for Gaussian integration ! w is the weights for Gaussian integration ! w is related to exp(-e) for a Maxwellian ! anon=-(df0/dE)/f0. anon=1 for a Maxwellian.