1 #ifndef ABLATELIBRARY_RADIATIONPROPERTIESCONSTANT_H
2 #define ABLATELIBRARY_RADIATIONPROPERTIESCONSTANT_H
4 #include "radiation/radiation.hpp"
5 #include "radiationProperties.hpp"
7 namespace ablate::eos::radiationProperties {
11 struct FunctionContext {
12 const PetscReal absorptivity;
13 const PetscReal emissivity;
16 PetscReal absorptivityIn;
17 PetscReal emissivityIn;
23 static inline constexpr PetscReal GetRefractiveIndex() {
return 1; }
31 static PetscErrorCode ConstantAbsorptionTemperatureFunction(
const PetscReal conserved[], PetscReal temperature, PetscReal* property,
void* ctx);
41 static PetscErrorCode ConstantEmissionTemperatureFunction(
const PetscReal conserved[], PetscReal temperature, PetscReal* property,
void* ctx);
44 explicit Constant(
double absorptivity,
double emissivity);
46 void operator=(
const Constant&) =
delete;
Definition: constant.hpp:9
ThermodynamicTemperatureFunction GetRadiationPropertiesTemperatureFunction(RadiationProperty property, const std::vector< domain::Field > &fields) const override
Definition: constant.cpp:19
Definition: radiationProperties.hpp:11