SootLib
Loading...
Searching...
No Matches
soot::sootModel_SECT Class Reference

Detailed Description

Sectional model (SECT)

Definition at line 15 of file sootModel_SECT.h.

#include <sootModel_SECT.h>

Public Member Functions

virtual void setSourceTerms (state &state)
 
virtual double pahSootCollisionRatePerDimer (const state &state, const double mDimer)
 
virtual double get_M0_sectional (const state &state)
 
virtual double get_M1_sectional (const state &state)
 
 sootModel_SECT (size_t nsoot_, nucleationModel *nucl_, growthModel *grow_, oxidationModel *oxid_, coagulationModel *coag_, double binGrowthFactor_=2.0, int cMin_=100)
 
 sootModel_SECT (size_t nsoot_, nucleationMech Nmech, growthMech Gmech, oxidationMech Omech, coagulationMech Cmech, double binGrowthFactor_=2.0, int cMin_=100)
 
virtual ~sootModel_SECT ()
 
- Public Member Functions inherited from soot::sootModel
virtual void setSourceTerms (state &state)=0
 
void checkSpec ()
 
virtual double pahSootCollisionRatePerDimer (const double mDimer) const
 
virtual double get_M0_sectional (const state &state)
 
virtual double get_M1_sectional (const state &state)
 
 sootModel (size_t nsoot_, nucleationModel *nucl_, growthModel *grow_, oxidationModel *oxid_, coagulationModel *coag_)
 
 sootModel (size_t nsoot_, nucleationMech Nmech, growthMech Gmech, oxidationMech Omech, coagulationMech Cmech)
 
virtual ~sootModel ()
 

Private Member Functions

void set_mBins (const int cMin_)
 

Private Attributes

double binGrowthFactor
 F^0, F^1, F^2, ... (set F here, F=2, say) More...
 
std::vector< double > beta_DSi
 store beta_dimer_soot_i for PAH nuc to avoid double computing More...
 

Additional Inherited Members

- Public Attributes inherited from soot::sootModel
size_t nsoot
 # of soot variables: moments or sections More...
 
nucleationModelnucl
 pointer to nucleation mechanism More...
 
growthModelgrow
 pointer to growth mechanism More...
 
oxidationModeloxid
 pointer to oxidation mechanism More...
 
coagulationModelcoag
 pointer to coagulation mechanism More...
 
bool mechsNewedHere
 flag to delete "new" objects More...
 
psdMech psdMechType
 one of MONO, LOGN, QMOM, MOMIC, SECT, etc. More...
 
std::vector< double > mBins
 mass in sections for the sectional model More...
 
sourceTerms sources
 struct containing soot, gas, and pah source terms vectors More...
 

Constructor & Destructor Documentation

◆ sootModel_SECT() [1/2]

sootModel_SECT::sootModel_SECT ( size_t  nsoot_,
nucleationModel nucl_,
growthModel grow_,
oxidationModel oxid_,
coagulationModel coag_,
double  binGrowthFactor_ = 2.0,
int  cMin_ = 100 
)

Constructor taking pointers to chemistry models as input. User creates these pointers nominally by "new-ing" them.

Parameters
nsoot_input: number of soot sections
nucl_input: pointer to nucleation model.
grow_input: pointer to growth model.
oxid_input: pointer to oxidation model.
coag_input: pointer to coagulation model.
binGrowthFactor_input: geometric growth factor = F --> m[0]*(F^0, F^1, F^2...)
cMin_input: number of carbon atoms in the smallest bin

Definition at line 21 of file sootModel_SECT.cc.

◆ sootModel_SECT() [2/2]

sootModel_SECT::sootModel_SECT ( size_t  nsoot_,
nucleationMech  Nmech,
growthMech  Gmech,
oxidationMech  Omech,
coagulationMech  Cmech,
double  binGrowthFactor_ = 2.0,
int  cMin_ = 100 
)

Constructor taking enumerations names as input. Chemistry pointers are created (new-ed) here based on those enumerations.

Parameters
nsoot_input: number of soot sections
Nmechinput: one of enum class nucleationMech in sootDefs.h
Gmechinput: one of enum class growthMech in sootDefs.h
Omechinput: one of enum class oxidationMech in sootDefs.h
Cmechinput: one of enum class coagulationMech in sootDefs.h
binGrowthFactor_input: geometric growth factor = F --> m[0]*(F^0, F^1, F^2...)
cMin_input: number of carbon atoms in the smallest bin

Definition at line 57 of file sootModel_SECT.cc.

◆ ~sootModel_SECT()

virtual soot::sootModel_SECT::~sootModel_SECT ( )
inlinevirtual

Definition at line 53 of file sootModel_SECT.h.

Member Function Documentation

◆ set_mBins()

void sootModel_SECT::set_mBins ( const int  cMin_)
private

Set the sectional mass coordinate locations: mass per particle at each size location.

Parameters
cMin_input: smallest bin size.

Definition at line 86 of file sootModel_SECT.cc.

◆ setSourceTerms()

void sootModel_SECT::setSourceTerms ( state state)
virtual

Primary user interface.

Parameters
stateinput: gas and soot state, set by user.

sets sources.sootSources vector sets sources.gasSources vector sets sources.pahSources vector

Implements soot::sootModel.

Definition at line 152 of file sootModel_SECT.cc.

◆ pahSootCollisionRatePerDimer()

double sootModel_SECT::pahSootCollisionRatePerDimer ( const state state,
const double  mDimer 
)
virtual

Compute PAH condensation terms for SECT model. Function split out from setSourceTerms so that it can be called in nucleationModel_PAH for computing the pah dimer concentration.

Function only called if nucleationMech::PAH. Function called by nucleationModel_PAH::getNucleationSootRate

Parameters
stateinput: gas and soot state, set by user.
mDimerinput: dimer mass (kg)
Returns
pah/soot sollision rate per dimer. Call it I. I*mDimer*nDimer = Cnd1 (=) kg/m3*s

Definition at line 108 of file sootModel_SECT.cc.

◆ get_M0_sectional()

double sootModel_SECT::get_M0_sectional ( const state state)
virtual
Returns
M0

Reimplemented from soot::sootModel.

Definition at line 317 of file sootModel_SECT.cc.

◆ get_M1_sectional()

double sootModel_SECT::get_M1_sectional ( const state state)
virtual
Returns
M1

Reimplemented from soot::sootModel.

Definition at line 331 of file sootModel_SECT.cc.

Member Data Documentation

◆ binGrowthFactor

double soot::sootModel_SECT::binGrowthFactor
private

F^0, F^1, F^2, ... (set F here, F=2, say)

Definition at line 19 of file sootModel_SECT.h.

◆ beta_DSi

std::vector<double> soot::sootModel_SECT::beta_DSi
private

store beta_dimer_soot_i for PAH nuc to avoid double computing

Definition at line 20 of file sootModel_SECT.h.


The documentation for this class was generated from the following files: