@@ -48,7 +48,7 @@ void NeutralModel::neutral_rates(
4848 const Field3D &Vi, // Plasma quantities
4949 const Field3D &Nn, const Field3D &Tn, const Field3D &Vnpar, // Neutral gas
5050 Field3D &S, Field3D &F, Field3D &Qi, Field3D &R, // Transfer rates
51- Field3D &Riz, Field3D &Rrc, Field3D &Rcx) { // Rates
51+ Field3D &Riz, Field3D &Rrc, Field3D &Rcx, Field3D &Rex ) { // Rates
5252
5353 // Allocate output fields
5454 S = 0.0 ;
@@ -184,6 +184,27 @@ void NeutralModel::neutral_rates(
184184 BoutReal R_iz_R =
185185 Ne_R * Nn_R * hydrogen.ionisation (Te_R * Tnorm) * Nnorm / Fnorm;
186186
187+ // Excitation
188+ if (excitation) {
189+ // ///////////////////////////////////////////////////////
190+ // Electron-neutral excitation
191+ // Note: Rates need checking
192+ // Currently assuming that quantity calculated is in [eV m^3/s]
193+
194+ BoutReal R_ex_L = Ne_L * Nn_L *
195+ hydrogen.excitation (Te_L * Tnorm) * Nnorm /
196+ Fnorm / Tnorm;
197+ BoutReal R_ex_C = Ne_C * Nn_C *
198+ hydrogen.excitation (Te_C * Tnorm) * Nnorm /
199+ Fnorm / Tnorm;
200+ BoutReal R_ex_R = Ne_R * Nn_R *
201+ hydrogen.excitation (Te_R * Tnorm) * Nnorm /
202+ Fnorm / Tnorm;
203+
204+ Rex (i, j, k) = (J_L * R_ex_L + 4 . * J_C * R_ex_C + J_R * R_ex_R) /
205+ (6 . * J_C);
206+ }
207+
187208 // Neutral sink, plasma source
188209 S (i, j, k) -=
189210 (J_L * R_iz_L + 4 . * J_C * R_iz_C + J_R * R_iz_R) / (6 . * J_C);
@@ -200,6 +221,8 @@ void NeutralModel::neutral_rates(
200221 (6 . * J_C);
201222
202223 // Ionisation and electron excitation energy
224+
225+
203226 R (i, j, k) += (Eionize / Tnorm) *
204227 (J_L * R_iz_L + 4 . * J_C * R_iz_C + J_R * R_iz_R) /
205228 (6 . * J_C);
0 commit comments