ABLATE Source Documentation  0.12.33
volumeRadiation.hpp
1 #ifndef ABLATELIBRARY_VOLUMERADIATION_HPP
2 #define ABLATELIBRARY_VOLUMERADIATION_HPP
3 
4 #include "domain/dynamicRange.hpp"
5 #include "io/interval/interval.hpp"
6 #include "radiation.hpp"
7 
8 namespace ablate::radiation {
9 
11  public:
21  PetscErrorCode ComputeRHSFunction(PetscReal time, Vec locXVec, Vec locFVec) override;
22 
23  void Initialize() override;
24  void Setup() override;
25  void Register(std::shared_ptr<ablate::domain::SubDomain> subDomain) override;
26 
33  VolumeRadiation(const std::string& solverId1, const std::shared_ptr<io::interval::Interval>& interval, std::shared_ptr<radiation::Radiation> radiation,
34  const std::shared_ptr<parameters::Parameters>& options1, const std::shared_ptr<monitors::logs::Log>& unnamed1);
35 
36  ~VolumeRadiation() override;
37 
44  PetscErrorCode PreRHSFunction(TS ts, PetscReal time, bool initialStage, Vec locX) override;
45 
46  private:
47  const std::shared_ptr<io::interval::Interval> interval;
48  std::shared_ptr<ablate::radiation::Radiation> radiation;
49  ablate::domain::DynamicRange radiationCellRange;
50 
52  eos::ThermodynamicTemperatureFunction absorptivityFunction;
53  eos::ThermodynamicTemperatureFunction emissivityFunction;
54 };
55 } // namespace ablate::radiation
56 #endif // ABLATELIBRARY_VOLUMERADIATION_HPP
Definition: dynamicRange.hpp:12
Definition: volumeRadiation.hpp:10
PetscErrorCode ComputeRHSFunction(PetscReal time, Vec locXVec, Vec locFVec) override
Definition: volumeRadiation.cpp:56
void Initialize() override
Definition: volumeRadiation.cpp:39
void Setup() override
Definition: volumeRadiation.cpp:10
VolumeRadiation(const std::string &solverId1, const std::shared_ptr< io::interval::Interval > &interval, std::shared_ptr< radiation::Radiation > radiation, const std::shared_ptr< parameters::Parameters > &options1, const std::shared_ptr< monitors::logs::Log > &unnamed1)
Definition: volumeRadiation.cpp:5
PetscErrorCode PreRHSFunction(TS ts, PetscReal time, bool initialStage, Vec locX) override
Definition: volumeRadiation.cpp:43
void Register(std::shared_ptr< ablate::domain::SubDomain > subDomain) override
Definition: volumeRadiation.cpp:37
Definition: cellSolver.hpp:11
Definition: rhsFunction.hpp:7