1 #ifndef ABLATELIBRARY_TCHEM_SOURCECALCULATORSOOT_HPP
2 #define ABLATELIBRARY_TCHEM_SOURCECALCULATORSOOT_HPP
3 #include <Kokkos_Macros.hpp>
4 #ifndef KOKKOS_ENABLE_CUDA
6 #include <TChem_KineticModelGasConstData.hpp>
7 #include "eos/chemistryModel.hpp"
8 #include "eos/tChem/sourceCalculator.hpp"
10 namespace tChemLib = TChem;
12 namespace ablate::eos {
49 std::shared_ptr<eos::TChemSoot> eos;
50 const size_t numberSpecies;
59 PetscInt densityProgressId;
60 PetscInt sootNumberDensityIndex;
63 real_type_2d_view stateDevice;
64 real_type_2d_view_host stateHost;
67 real_type_2d_view endStateDevice;
70 time_advance_type_1d_view timeAdvanceDevice;
71 time_advance_type timeAdvanceDefault{};
74 real_type_1d_view internalEnergyRefDevice;
75 real_type_1d_view_host internalEnergyRefHost;
76 real_type_1d_view totInternalEnergyRefDevice;
77 real_type_1d_view_host totInternalEnergyRefHost;
78 real_type_2d_view perSpeciesScratchDevice;
79 real_type_2d_view perGasSpeciesScratchDevice;
82 real_type_2d_view_host sourceTermsHost;
83 real_type_2d_view sourceTermsDevice;
86 real_type_2d_view tolTimeDevice;
87 real_type_1d_view tolNewtonDevice;
88 real_type_2d_view facDevice;
91 real_type_1d_view timeViewDevice;
92 real_type_1d_view dtViewDevice;
95 tChemLib::KineticModelConstData<typename Tines::UseThisDevice<exec_space>::type> kineticModelGasConstDataDevice;
96 kmd_type_1d_view_host kineticModelDataClone;
97 Kokkos::View<KineticModelGasConstData<typename Tines::UseThisDevice<exec_space>::type>*,
typename Tines::UseThisDevice<exec_space>::type> kineticModelGasConstDataDevices;
Definition: chemistryModel.hpp:30
Definition: sourceCalculatorSoot.hpp:21
SourceCalculatorSoot(const std::vector< domain::Field > &fields, const std::shared_ptr< TChemSoot > &tChemEos, ablate::eos::tChem::SourceCalculator::ChemistryConstraints constraints, const ablate::domain::Range &cellRange)
Definition: sourceCalculatorSoot.cpp:11
void AddSource(const ablate::domain::Range &cellRange, Vec localXVec, Vec localFVec) override
Definition: sourceCalculatorSoot.cpp:341
void ComputeSource(const ablate::domain::Range &cellRange, PetscReal time, PetscReal dt, Vec globalSolution) override
Definition: sourceCalculatorSoot.cpp:113
Definition: loggable.hpp:9
Definition: densityFcn.hpp:11
hold a struct that can be used for chemistry constraints
Definition: sourceCalculator.hpp:26