Skip to content

Commit

Permalink
Merge pull request enzo-project#195 from drenniks/RotatingPopIII
Browse files Browse the repository at this point in the history
Updated ionizing photon rates from rotating (and non-rotating) Pop III Stars
  • Loading branch information
bwoshea authored May 15, 2023
2 parents 1831fe1 + 993dd47 commit ca4a04c
Show file tree
Hide file tree
Showing 18 changed files with 885 additions and 25 deletions.
6 changes: 6 additions & 0 deletions doc/manual/source/parameters/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2424,6 +2424,12 @@ The parameters below are considered in ``StarParticleCreation`` method 3.
Above this density, a Pop III "color" particle forms, and it will populate the surrounding region with a color field. Units: mean density. Default: 1e6
``PopIIIColorMass`` (external)
A Pop III "color" particle will populate the surrounding region with a mass of PopIIIColorMass. Units: solar masses. Default: 1e6
``PopIIIRotating`` (external)
Updates ionizing photon rates to the rotational and non-rotational rates given by Murphy et al. (2021). Default: 0

0 - Model is off, Schaerer (2002) photon rates are used.
1 - Rotating model is on
2 - Non-rotating model is on

.. _radiative_star_cluster_formation_parameters:

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
#
# AMR PROBLEM DEFINITION FILE: TestRadiatingStarParticle
#
# define problem
#
ProblemType = 252 // TestRadiatingStarParaticle
TopGridRank = 3
TopGridDimensions = 50 50 50
StarParticleFeedback = 8 // Population III Stars
TestStarParticleDensity = 1.0
TestStarParticleEnergy = 6e-10
TestStarParticleStarPosition = .5 .5 .5
TestStarParticleStarVelocity = 0 0 0
#TestProblemInitialMetallicityFraction = 2e-3
TestStarParticleStarMass = 20.0 // Doesn't immediately work since this is a PopIII star
StarEnergyToThermalFeedback = 5.59e-6
StarMassEjectionFraction = 0.25
StarFeedbackKineticFraction = 0.3
StarMakerExplosionDelayTime = 0.5 // Lifetime of star
OutputTemperature = 1
OutputCoolingTime = 1
Initialdt = 0.0010017410642
#
# Units
#
LengthUnits = 1.2344e+21
TimeUnits = 3.15e13 // 10 Myr
DensityUnits = 1.0e-24 // 1 part/cc
#
# set I/O and stop/start parameters
#
StopTime = 1
dtDataDump = 0.1
#
# set Hydro parameters
#
HydroMethod = 0
DualEnergyFormalism = 1
CourantSafetyNumber = 0.4
PPMDiffusionParameter = 0 // diffusion off
PPMFlatteningParameter = 0 // flattening on
PPMSteepeningParameter = 0 // steepening on
Gamma = 1.6666667
#
# set grid refinement parameters
#
StaticHierarchy = 1 // static hierarchy
RefineBy = 2 // refinement factor
MaximumRefinementLevel = 0
CellFlaggingMethod = 2

#
# Radiation
RadiativeTransfer = 1
RadiativeTransferRaysPerCell = 5.100000
RadiativeTransferInitialHEALPixLevel = 1
RadiativeTransferHydrogenOnly = 0
RadiativeTransferOpticallyThinH2 = 1
RadiativeTransferPeriodicBoundary = 0
RadiativeTransferAdaptiveTimestep = 1
RadiativeTransferRadiationPressure = 1
RadiativeTransferPhotonMergeRadius = 3.0
RadiativeTransferSourceClustering = 1
RadiativeCooling = 1
#
MaximumRefinementLevel = 0
CellFlaggingMethod = 0
#
# Cooling
MultiSpecies = 1
#RadiativeCooling = 0
#MultiSpecies = 1
#MetalCooling = 3
#CloudyCoolingGridFile = solar_2008_3D_metals.h5
#CMBTemperatureFloor = 0
#TestProblemMultiSpecies = 1
#TestProblemUseMetallicityField = 1
#TestProblemHydrogenFractionByMass = 0.75
#TestProblemInitialMetallicityFraction = 2e-3
#TestProblemInitialHIFraction = 0.998
#TestProblemInitialHIIFraction
#TestProblemInitialHeIFraction = 1.0
#TestProblemInitialHeIIFraction = 1.0e-20
#TestProblemInitialHeIIIIFraction = 1.0e-20
#
# set some misc global parameters
#

#MixSpeciesAndColors = 1
#PopIIISupernovaUseColour = 1
#PopIIIHeliumIonization = 1


#
# Rotating Pop III Stars
#

PopIIIRotating = 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
name = 'TestRadiatingStarParticleSingle'
radiation = 'ray'
10 changes: 7 additions & 3 deletions src/enzo/Grid_FindNewStarParticles.C
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,13 @@ int grid::FindNewStarParticles(int level)
merging new (massless) star particles to avoid unnecessary
calls to the IMF. */

if (ParticleType[i] == -PARTICLE_TYPE_SINGLE_STAR)
if (PopIIIInitialMassFunction == FALSE)
NewStar->AssignFinalMass(PopIIIStarMass);
if (ParticleType[i] == -PARTICLE_TYPE_SINGLE_STAR){
if (PopIIIInitialMassFunction == FALSE){
if (ProblemType != 252){
NewStar->AssignFinalMass(PopIIIStarMass);
}
}
}
if (ParticleType[i] == -PARTICLE_TYPE_SIMPLE_SOURCE)
NewStar->AssignFinalMass(PopIIIStarMass);
InsertStarAfter(Stars, NewStar);
Expand Down
Loading

0 comments on commit ca4a04c

Please sign in to comment.