4 #ifndef STARFORM_HINCLUDED
5 #define STARFORM_HINCLUDED
7 #include "parameters.h"
27 double dMinSpawnStarMass;
30 #ifdef COOLING_MOLECULARH
31 double dStarFormEfficiencyH2;
41 double dDeltaStarForm;
44 bool isStarFormRung(
int aRung) {
return aRung <= iStarFormRung;}
46 double dDelta,
double dCosmoFac,
double *T,
double *H2Fraction);
47 inline void pup(PUP::er &p);
50 inline void Stfm::pup(PUP::er &p) {
69 #ifdef COOLING_MOLECULARH
70 p|dStarFormEfficiencyH2;
84 Vector3D<double> rForm;
85 Vector3D<double> vForm;
89 #ifdef COOLING_MOLECULARH
92 #ifdef COOLING_MOLECULARH
93 StarLogEvent() : iOrdGas(-1), timeForm(0),rForm(0),vForm(0),
94 massForm(0),rhoForm(0),TForm(0),H2FracForm(0){}
97 StarLogEvent() : iOrdGas(-1), timeForm(0),rForm(0),vForm(0),
98 massForm(0),rhoForm(0),TForm(0){}
103 timeForm = p->fTimeForm();
106 massForm = p->fMassForm();
107 rhoForm = p->fDensity/dCosmoFac;
109 #ifdef COOLING_MOLECULARH
110 H2FracForm = H2FractionForm;
113 void pup(PUP::er& p) {
122 #ifdef COOLING_MOLECULARH
135 std::string fileName;
136 std::vector<StarLogEvent> seTab;
137 StarLog() : nOrdered(0),fileName(
"starlog") {}
139 static void logMetaData(std::ofstream &ofsLog);
141 StarLog(CkMigrateMessage *m) : PUP::able(m) {}
142 void pup(PUP::er& p) {
Parameters and methods to implement star formation.
Definition: starform.h:10
void AddParams(PRM prm)
initialize parameters for star formation
Definition: starform.cpp:20
Holds statistics of the star formation event.
Definition: starform.h:78
Hold parameters of the run.
Definition: parameters.h:14
int64_t iOrder
Input order of particles; unique particle ID.
Definition: GravityParticle.h:328
Object containing the parameter information.
Definition: param.h:38
Heating/Cooling context: parameters and tables.
Definition: cooling_boley.h:83
Fundamental type for a particle.
Definition: GravityParticle.h:316
Log of star formation events to be written out to a file.
Definition: starform.h:129