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...
 
nucleationModel * nucl
 pointer to nucleation mechanism More...
 
growthModel * grow
 pointer to growth mechanism More...
 
oxidationModel * oxid
 pointer to oxidation mechanism More...
 
coagulationModel * coag
 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: