1 #include "../communicator/communicator.hpp"
2 #include "../coordinates/coordinates.hpp"
3 #include "../debugger/debugger.hpp"
4 #include "../eos/eos.hpp"
5 #include "../hydro/hydro.hpp"
6 #include "../mesh/mesh.hpp"
7 #include "../thermodynamics/thermodynamics.hpp"
14 NeighborBlock
const *pbot = pmb->pcomm->findBotNeighbor();
15 if (pbot !=
nullptr)
return TaskStatus::success;
17 pmb->pdebug->Call(
"Physics::RelaxBotTemperature");
29 Real gamma = pmb->peos->GetGamma();
33 for (
int k = ks; k <= ke; ++k)
34 for (
int j = js;
j <= je; ++
j) {
35 cv = pthermo->getSpecificCv(w.at(k,
j, ie));
36 tem = pthermo->
GetTemp(w.at(k,
j, js));
40 for (
int k = ks; k <= ke; ++k)
41 for (
int j = js;
j <= je; ++
j) {
42 cv = pthermo->getSpecificCv(w.at(k,
j, ie));
43 tem = pthermo->
GetTemp(w.at(k,
j, js));
49 pmb->pdebug->CheckConservation(
"du", du, is, ie, js, je, ks, ke);
52 return TaskStatus::success;
TaskStatus RelaxBotTemperature(AthenaArray< Real > &du, AthenaArray< Real > const &w, Real time, Real dt)
AthenaArray< Real > tem_bot_
Real GetTemp(MeshBlock const *pmb, int k, int j, int i) const
Calculate temperature from primitive variable.