@@ -60,6 +60,11 @@ std::vector<arma_cube> calc_electron_neutral_elastic_collisions(Ions &ions, Neut
60
60
// / @return vector<Qencp, Qencm, Qenc_v>
61
61
std::vector<arma_cube> calc_electron_neutral_inelastic_collisions (Ions &ions, Neutrals &neutrals);
62
62
63
+ // / @brief Calculate the thermoelectric current
64
+ // / @param ions
65
+ // / @param grid
66
+ // / @return arma_cube JParaAlt
67
+ std::vector<arma_cube> calc_thermoelectric_current (Ions &ions, Grid &grid);
63
68
64
69
65
70
// --------------------------------------------------------------------------
@@ -99,6 +104,9 @@ void Ions::calc_electron_temperature(Neutrals neutrals, Grid grid) {
99
104
std::vector<arma_cube> Qenc_inelastic;
100
105
arma_cube Qrotm, Qrotp, Qf, Qexc, Qvib_O2, Qvib_N2;
101
106
107
+ // Thermoelectric Current
108
+ arma_cube JParaAlt;
109
+
102
110
// Initialize everything to zero!
103
111
104
112
epsilon.set_size (grid.get_nLons (), grid.get_nLats (), grid.get_nAlts ());
@@ -165,6 +173,9 @@ void Ions::calc_electron_temperature(Neutrals neutrals, Grid grid) {
165
173
Qvib_N2 = Qenc_inelastic[5 ];
166
174
}
167
175
176
+ // Thermoelectric current
177
+
178
+
168
179
electron_temperature_scgc = neutrals.temperature_scgc ;
169
180
170
181
report.exit (function);
@@ -575,3 +586,18 @@ std::vector<arma_cube> calc_electron_neutral_inelastic_collisions(Ions &ions, Ne
575
586
576
587
return std::vector<arma_cube> {Qrotm, Qrotp, Qf, Qexc, Qvib_O2, Qvib_N2};
577
588
}
589
+
590
+ arma_cube calc_thermoelectric_current (Ions ions, Grid grid){
591
+
592
+ std::string function = " calc_thermoelectric_current" ;
593
+ static int iFunction = -1 ;
594
+ report.enter (function, iFunction);
595
+
596
+ arma_cube JuTotal = ions.density_scgc * cE;
597
+
598
+ report.exit (function);
599
+
600
+ return JuTotal;
601
+
602
+
603
+ }
0 commit comments