Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add nuclear star cluster component #779

Open
wants to merge 94 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
8b3ca73
add: NSC component
liempi Nov 19, 2023
ba15353
SMBH hard code
liempi Nov 20, 2023
be060e2
Merge branch 'galacticusorg:master' into master
liempi Nov 27, 2023
d076090
Remove unused variables
liempi Nov 27, 2023
99e9659
Remove unused property and function
liempi Nov 27, 2023
5f5bd2d
add variables
liempi Nov 28, 2023
bf1db94
fix: coding conventions and update references
liempi Nov 28, 2023
8abf708
Merge branch 'galacticusorg:master' into master
liempi Nov 28, 2023
cc9b7f8
remove redundant code
liempi Nov 28, 2023
290e585
fix: NSC mass distribution
liempi Nov 29, 2023
3505b92
Merge branch 'galacticusorg:master' into master
liempi Nov 29, 2023
f2c879e
fix: units and references NSC formation rate
liempi Nov 29, 2023
af3dc3e
rename variables
liempi Dec 3, 2023
ecdb170
add simple angular momentum prescription
liempi Dec 4, 2023
86530e9
fix: Inconsistent tab aligment
liempi Dec 4, 2023
15e5440
remove unused property
liempi Dec 4, 2023
30f765e
fix: angular momentum property
liempi Dec 4, 2023
ffd4970
fix: satellitemerger in NSC component
liempi Dec 5, 2023
28419c5
fix: set correctly mass movements in NSC component
liempi Dec 6, 2023
9855131
fix: code conventions
liempi Dec 6, 2023
f54cdb1
remove unused variables
liempi Dec 6, 2023
c2659e6
fix: ages operator
liempi Dec 6, 2023
de19d1a
remove unused variables
liempi Dec 6, 2023
07a2876
Merge branch 'galacticusorg:master' into master
liempi Dec 6, 2023
20efd25
fix: metaproperties
liempi Dec 7, 2023
837b967
fix: trap cases after meger
liempi Dec 7, 2023
de9151a
fix: floating point exception
liempi Dec 7, 2023
bc64e2e
fix: wrong spelling word
liempi Dec 7, 2023
26bbf9f
fix: units in critical mass calculation
liempi Dec 11, 2023
ed7b69f
Resolved merge conflict by incorporating both suggestions.
liempi Dec 18, 2023
30c5f5d
fix: wrong unit conversion
liempi Dec 18, 2023
96a6b23
fix: remove unused variable
liempi Dec 19, 2023
f04a6ee
fix: factor when computing surface density
liempi Dec 20, 2023
1a937e5
Merge branch 'galacticusorg:master' into master
liempi Dec 21, 2023
06312ae
Merge branch 'galacticusorg:master' into master
liempi Jan 5, 2024
3c89560
update fork
liempi Jan 12, 2024
c93e3ec
Merge branch 'galacticusorg:master' into master
liempi Jan 12, 2024
a3ba6d5
fix: Update copyright
liempi Jan 12, 2024
188d1f5
use rotation curve when calculating the velocity for collapse
liempi Jan 12, 2024
464f1d6
fix: units when calculating the velocity
liempi Jan 16, 2024
be266d0
Merge branch 'galacticusorg:master' into master
liempi Jan 31, 2024
99c362d
Merge branch 'galacticusorg:master' into master
liempi Feb 6, 2024
cde8db4
Merge branch 'galacticusorg:master' into master
liempi Feb 7, 2024
90ef100
Merge branch 'galacticusorg:master' into master
liempi Feb 27, 2024
44bd315
Merge branch 'galacticusorg:master' into master
liempi Apr 1, 2024
a7c4f1c
Merge branch 'galacticusorg:master' into master
liempi Apr 15, 2024
668f5f0
modify the equation for NSC radius
liempi May 22, 2024
4f971f3
Merge branch 'galacticusorg:master' into master
liempi May 22, 2024
88b64a4
fix: add equal symbol
liempi May 23, 2024
e2c47fe
fix: Trap casses with negative gas masses
liempi May 23, 2024
3a0b96e
Merge branch 'galacticusorg:master' into master
liempi Jun 18, 2024
6a51a2c
fix:include NSC contribution in black hole simple
liempi Jun 19, 2024
3be6b66
Merge branch 'galacticusorg:master' into master
liempi Jul 18, 2024
ef711a0
Merge branch 'galacticusorg:master' into master
liempi Jul 29, 2024
0bffe50
fix: correct capital letter in name
liempi Jul 30, 2024
8b4b7a3
Merge branch 'master' into master
liempi Aug 26, 2024
f33cfec
fix: correct misspelled variables
Aug 27, 2024
3a33be5
Merge branch 'galacticusorg:master' into master
liempi Sep 5, 2024
a984100
Merge branch 'galacticusorg:master' into master
liempi Sep 28, 2024
89f6fa2
resolve merge conflits
Nov 26, 2024
0640768
fix: insert major changes to rebase main branch
Nov 27, 2024
bfa6f75
Merge branch 'galacticusorg:master' into master
liempi Nov 27, 2024
5c1486c
Merge branch 'galacticusorg:master' into master
liempi Dec 6, 2024
92f8485
fix merge conflcits
Dec 27, 2024
bfb2b97
Merge branch 'master' of https://github.com/liempi/galacticus-NSC
Dec 27, 2024
eb797f0
fix: nodeOperator to form BH seeds
Jan 3, 2025
63248a0
Merged upstream changes and resolved conflicts
Jan 27, 2025
58167b2
fix: correct NSC star formation treatment in galaxy mergers
liempi Jan 29, 2025
085a923
rm: remove renamed modules
liempi Jan 29, 2025
7ce9aaa
Merge branch 'galacticusorg:master' into master
liempi Jan 29, 2025
4623688
Merge branch 'galacticusorg:master' into master
liempi Feb 3, 2025
b9efbcb
fix: style corrections
liempi Feb 4, 2025
a071c15
fix: make the name of the operator consistent
liempi Feb 4, 2025
9043d65
Merge branch 'galacticusorg:master' into master
liempi Feb 4, 2025
c15de95
fix: Remove irrelevant `.DS_Store` file
abensonca Feb 4, 2025
92f2f0d
feat: Add `.DS_Store` to `.gitignore`
abensonca Feb 4, 2025
574d240
fix: Undo whitespace changes
abensonca Feb 4, 2025
2a13a05
fix: Strip trailing tabs
abensonca Feb 4, 2025
19f4803
fix: Clean up of nuclear star cluster component code
abensonca Feb 5, 2025
c824831
fix(style): Correct typos
abensonca Feb 5, 2025
fdce70f
fix: Clean up `blackHoleAccretion` class files
abensonca Feb 5, 2025
8d95abb
fix: Clean up black hole component code
abensonca Feb 5, 2025
d240065
fix: Expand NSC acronym in variable names for clarity
abensonca Feb 7, 2025
62d07d2
fix: Improve clarity
abensonca Feb 10, 2025
ae3dfb0
fix: Changes for clarity
abensonca Feb 11, 2025
958f02e
fix: Correct spelling error
abensonca Feb 11, 2025
13c9a20
fix: Merge branch 'master' into liempi/master
abensonca Feb 11, 2025
8f5f292
fix: Make the default `NSC` component `null`
abensonca Feb 11, 2025
24f87a4
fix: Add missing type guard
abensonca Feb 11, 2025
d05488f
fix: Do not attempt to access `NSC` components if they do not exist
abensonca Feb 11, 2025
a20fce4
fix: correct wrong calculations
liempi Feb 13, 2025
8f33650
fix: Remove unused property in nuclear star cluster component
liempi Feb 13, 2025
e23788d
fix: add nuclear star cluster simple test model
liempi Feb 13, 2025
f6073bf
fix: Merge branch 'master' into liempi/master
abensonca Feb 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1202,7 +1202,8 @@ jobs:
fail-fast: false
matrix:
file: [ testSuite/parameters/mergerTreeEvolverThreaded.xml,
testSuite/parameters/constrainedMilkyWay.xml ]
testSuite/parameters/constrainedMilkyWay.xml,
testSuite/parameters/test-nuclear-star-cluster.xml ]
uses: ./.github/workflows/testModel.yml
with:
file: ${{ matrix.file }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,4 @@ doc/GalacticusAccented.bib
source/FFTlog
source/texfrag
__pycache__
.DS_Store
58 changes: 58 additions & 0 deletions doc/Galacticus.bib
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,25 @@ @article{angulo_fate_2009
pages = {983--995}
},

@article{antonini_coevolution_2015,
title = {The {Coevolution} of {Nuclear} {Star} {Clusters}, {Massive} {Black} {Holes}, and {Their} {Host} {Galaxies}},
volume = {812},
issn = {0004-637X},
url = {https://ui.adsabs.harvard.edu/abs/2015ApJ...812...72A},
doi = {10.1088/0004-637X/812/1/72},
abstract = {Studying how nuclear star clusters (NSCs) form and how they are related to the growth of the central massive black holes (MBHs) and their host galaxies is fundamental for our understanding of the evolution of galaxies and the processes that have shaped their central structures. We present the results of a semi-analytical galaxy formation model that follows the evolution of dark matter halos along merger trees, as well as that of the baryonic components. This model allows us to study the evolution of NSCs in a cosmological context, by taking into account the growth of NSCs due to both dynamical-friction-driven migration of stellar clusters and star formation triggered by infalling gas, while also accounting for dynamical heating from (binary) MBHs. We find that in situ star formation contributes a significant fraction (up to ∼80\%) of the total mass of NSCs in our model. Both NSC growth through in situ star formation and that through star cluster migration are found to generate NSC—host galaxy scaling correlations that are shallower than the same correlations for MBHs. We explore the role of galaxy mergers on the evolution of NSCs and show that observational data on NSC—host galaxy scaling relations provide evidence of partial erosion of NSCs by MBH binaries in luminous galaxies. We show that this observational feature is reproduced by our models, and we make predictions about the NSC and MBH occupation fraction in galaxies. We conclude by discussing several implications for theories of NSC formation.},
urldate = {2025-02-04},
journal = {The Astrophysical Journal},
author = {Antonini, Fabio and Barausse, Enrico and Silk, Joseph},
month = oct,
year = {2015},
note = {Publisher: IOP
ADS Bibcode: 2015ApJ...812...72A},
keywords = {Astrophysics - Astrophysics of Galaxies, Astrophysics - Cosmology and Nongalactic Astrophysics, galaxies: evolution, galaxies: formation, galaxies: nuclei, Galaxy: center, General Relativity and Quantum Cosmology, quasars: supermassive black holes},
pages = {72},
file = {Accepted Version:/home/abensonca/.mozilla/firefox/f54gqgdx.default/zotero/storage/A3A9F684/Antonini et al. - 2015 - The Coevolution of Nuclear Star Clusters, Massive .pdf:application/pdf},
}

@article{arnaud_updated_1985,
title = {An updated evaluation of recombination and ionization rates},
volume = {60},
Expand Down Expand Up @@ -2423,6 +2442,25 @@ @article{eisenstein_power_1999
pages = {5--15}
},

@article{escala_observational_2021,
title = {Observational {Support} for {Massive} {Black} {Hole} {Formation} {Driven} by {Runaway} {Stellar} {Collisions} in {Galactic} {Nuclei}},
volume = {908},
issn = {0004-637X},
url = {https://ui.adsabs.harvard.edu/abs/2021ApJ...908...57E},
doi = {10.3847/1538-4357/abd93c},
abstract = {We explore a scenario for massive black hole formation driven by stellar collisions in galactic nuclei, proposing a new formation regime of global instability in nuclear stellar clusters triggered by runaway stellar collisions. Using order-of-magnitude estimations, we show that observed nuclear stellar clusters avoid the regime where stellar collisions are dynamically relevant over the whole system, while resolved detections of massive black holes are well into such collision-dominated regimes. We interpret this result in terms of massive black holes and nuclear stellar clusters being different evolutionary paths of a common formation mechanism, unified under the standard terminology of both being central massive objects. We propose a formation scenario where central massive objects more massive than ∼108 M⊙, which also have relaxation times longer that their collision times, will be too dense (in virial equilibrium) to be globally stable against stellar collisions, and most of the mass will collapse toward the formation of a massive black hole. Contrarily, this will only be the case at the core of less dense central massive objects, leading to the formation of black holes with much lower black hole efficiencies \$\{{\textbackslash}epsilon \}\_\{{\textbackslash}mathrm\{BH\}\}={\textbackslash}tfrac\{\{M\}\_\{{\textbackslash}mathrm\{BH\}\}\}\{\{M\}\_\{{\textbackslash}mathrm\{CMO\}\}\}\$ , with these efficiencies ɛBH drastically growing for central massive objects more massive than ∼107 M⊙, approaching unity around MCMO ∼ 108 M⊙. We show that the proposed scenario successfully explains the relative trends observed in the masses, efficiencies, and scaling relations between massive black holes and nuclear stellar clusters.},
urldate = {2025-02-04},
journal = {The Astrophysical Journal},
author = {Escala, Andrés},
month = feb,
year = {2021},
note = {Publisher: IOP
ADS Bibcode: 2021ApJ...908...57E},
keywords = {1394, 1567, 1663, 2031, 2065, Astrophysics - Astrophysics of Galaxies, Astrophysics - Cosmology and Nongalactic Astrophysics, Astrophysics - High Energy Astrophysical Phenomena, Collision processes, General Relativity and Quantum Cosmology, Relaxation time, Scaling relations, Star clusters, Supermassive black holes},
pages = {57},
file = {Full Text PDF:/home/abensonca/.mozilla/firefox/f54gqgdx.default/zotero/storage/KKILKQYL/Escala - 2021 - Observational Support for Massive Black Hole Forma.pdf:application/pdf},
}

@article{fakhouri_environmental_2009,
title = {Environmental dependence of dark matter halo growth - {I}. {Halo} merger rates},
volume = {394},
Expand Down Expand Up @@ -7803,6 +7841,26 @@ @article{van_meter_general_2010
keywords = {Astrophysics - High Energy Astrophysical Phenomena, General Relativity and Quantum Cosmology}
},

@article{vergara_global_2023,
title = {Global instability by runaway collisions in nuclear stellar clusters: numerical tests of a route for massive black hole formation},
volume = {522},
issn = {0035-8711},
shorttitle = {Global instability by runaway collisions in nuclear stellar clusters},
url = {https://ui.adsabs.harvard.edu/abs/2023MNRAS.522.4224V},
doi = {10.1093/mnras/stad1253},
abstract = {The centres of galaxies host nuclear stellar clusters, supermassive black holes, or both. The origin of this dichotomy is still a mystery. Nuclear stellar clusters are the densest stellar system in the Universe, so they are ideal places for runaway collisions to occur. Previous studies have proposed the possible existence of a critical mass scale in such clusters, for which the occurrence of collisions becomes very frequent and leads to the formation of a very massive object. While it is difficult to directly probe this scenario with simulations, we here aim for a proof of concept using toy models where the occurrence of such a transition is shown based on simplified compact systems, where the typical evolution time-scales will be faster compared to the real Universe. Indeed our simulations confirm that such a transition takes place and that up to 50 per cent of the cluster mass can go into the formation of a central massive object for clusters that are above the critical mass scale. Our results thus support the proposed new scenario on the basis of idealized simulations. A preliminary analysis of observed nuclear star clusters shows similar trends related to the critical mass as in our simulations. We further discuss the caveats for the application of the proposed scenario in real nuclear star clusters.},
urldate = {2025-02-04},
journal = {Monthly Notices of the Royal Astronomical Society},
author = {Vergara, M. C. and Escala, A. and Schleicher, D. R. G. and Reinoso, B.},
month = jul,
year = {2023},
note = {Publisher: OUP
ADS Bibcode: 2023MNRAS.522.4224V},
keywords = {Astrophysics - Astrophysics of Galaxies, Astrophysics - Cosmology and Nongalactic Astrophysics, methods: numerical, stars: black hole, stars: kinematics and dynamics},
pages = {4224--4237},
file = {Full Text PDF:/home/abensonca/.mozilla/firefox/f54gqgdx.default/zotero/storage/6AFGN62Q/Vergara et al. - 2023 - Global instability by runaway collisions in nuclea.pdf:application/pdf},
}

@article{verner_analytic_1995,
title = {Analytic {FITS} for partial photoionization cross sections.},
volume = {109},
Expand Down
4 changes: 4 additions & 0 deletions doc/Glossary.tex
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
\newglossaryentry{cdf}{type=\acronymtype, name={CDF}, description=\glslink{cdfg}{cumulative distribution function}, first={cumulative distribution function (CDF)}, firstplural={cumulative distribution functions (CDFs)}}
\newglossaryentry{gsl}{type=\acronymtype, name={GSL}, description=\glslink{gslg}{GNU Scientific Library}, first={GNU Scientific Library (GSL)}}
\newglossaryentry{gama}{type=\acronymtype, name={GAMA}, description=\glslink{gamag}{Galaxy and Mass Assembly}, first={Galaxy and Mass Assembly (GAMA)}}
\newglossaryentry{nsc}{type=\acronymtype, name={NSC}, description=\glslink{nscg}{nuclear star cluster}, first={nuclear star cluster (NSC)}, firstplural={nuclear star clusters (NSC)}}

% Glossary entries.
\newglossaryentry{FFTLog}{name={FFTLog}, description={\href{https://jila.colorado.edu/~ajsh/FFTLog/index.html}{FFTLog} is a code to compute fast Fourier transforms of discrete periodic sequences of logarithmically spaced data}}
Expand Down Expand Up @@ -96,6 +97,9 @@
\newglossaryentry{fdmg}{name={FDM},
description={\href{https://en.wikipedia.org/wiki/Fuzzy_cold_dark_matter}{Fuzzy dark matter} (FDM) is a hypothesized type of dark matter consisting of extremely light scalar particles with masses on the order of $10^{-22}$~eV}}

\newglossaryentry{nscg}{name={NSC},
description={\href{https://en.wikipedia.org/wiki/Nuclear_star_cluster}{Nuclear star clusters} (NSC) are high-density star clusters found in the centers of some galaxies}}

\newglossaryentry{wdmg}{name={WDM},
description={\href{http://en.wikipedia.org/wiki/Warm_dark_matter}{Warm dark matter} (WDM) is a hypothesized type of dark matter in which the particle has non-negligible thermal velocity at decoupling}}

Expand Down
10 changes: 6 additions & 4 deletions source/accretion_disks.spectra.file.F90
Original file line number Diff line number Diff line change
Expand Up @@ -173,13 +173,15 @@ double precision function fileSpectrumNode(self,node,wavelength)
type (treeNode ), intent(inout) :: node
double precision , intent(in ) :: wavelength
class (nodeComponentBlackHole ), pointer :: blackHole
double precision :: rateAccretionSpheroid, rateAccretionHotHalo, &
& rateAccretion , efficiencyRadiative
double precision :: rateAccretionSpheroid, rateAccretionHotHalo , &
& rateAccretion , rateAccretionNuclearStarCluster, &
& efficiencyRadiative

blackHole => node%blackHole()
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo)
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo,rateAccretionNuclearStarCluster)
rateAccretion =+ rateAccretionSpheroid &
& + rateAccretionHotHalo
& + rateAccretionHotHalo &
& + rateAccretionNuclearStarCluster
efficiencyRadiative=self%accretionDisks_%efficiencyRadiative (blackHole,rateAccretion )
fileSpectrumNode =self %spectrum ( rateAccretion,efficiencyRadiative,wavelength)
return
Expand Down
11 changes: 6 additions & 5 deletions source/black_holes.CGM_heating.jet_power.F90
Original file line number Diff line number Diff line change
Expand Up @@ -122,13 +122,14 @@ double precision function jetPowerHeatingRate(self,blackHole) result(rateHeating
implicit none
class (blackHoleCGMHeatingJetPower), intent(inout) :: self
class (nodeComponentBlackHole ), intent(inout) :: blackHole
double precision :: rateAccretionSpheroid, rateAccretionHotHalo, &
& rateACcretion
double precision :: rateAccretionSpheroid , rateAccretionHotHalo, &
& rateAccretionNuclearStarCluster, rateAccretion

! Compute the jet power and CGM heating rate.
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo)
rateAccretion=+rateAccretionSpheroid &
& +rateAccretionHotHalo
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo,rateAccretionNuclearStarCluster)
rateAccretion=+rateAccretionSpheroid &
& +rateAccretionHotHalo &
& +rateAccretionNuclearStarCluster
rateHeating =+self %efficiencyRadioMode &
& *self%accretionDisks_%powerJet (blackHole,rateAccretion)
return
Expand Down
14 changes: 8 additions & 6 deletions source/black_holes.CGM_heating.quasistatic.F90
Original file line number Diff line number Diff line change
Expand Up @@ -133,14 +133,16 @@ double precision function quasistaticHeatingRate(self,blackHole) result(rateHeat
class (nodeComponentBlackHole ), intent(inout) :: blackHole
double precision , parameter :: radiusCoolingFractionalTransitionMinimum=0.9d0
double precision , parameter :: radiusCoolingFractionalTransitionMaximum=1.0d0
double precision :: rateAccretionSpheroid , rateAccretionHotHalo , &
& rateAccretion , radiusCoolingFractional, &
& efficiencyCoupling , x
double precision :: rateAccretionSpheroid , rateAccretionHotHalo , &
& rateAccretion , rateAccretionNuclearStarCluster, &
& efficiencyCoupling , x , &
& radiusCoolingFractional

! Compute accretion rate onto the black hole.
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo)
rateAccretion=+rateAccretionSpheroid &
& +rateAccretionHotHalo
call self%blackHoleAccretionRate_%rateAccretion(blackHole,rateAccretionSpheroid,rateAccretionHotHalo,rateAccretionNuclearStarCluster)
rateAccretion=+rateAccretionSpheroid &
& +rateAccretionHotHalo &
& +rateAccretionNuclearStarCluster
! No heating for non-positive accretion rates.
if (rateAccretion > 0.0d0) then
! Compute coupling efficiency based on whether halo is cooling quasistatically.
Expand Down
4 changes: 2 additions & 2 deletions source/black_holes.accretion_rates.F90
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ module Black_Hole_Accretion_Rates
<description>Computes the mass accretion rate onto a black hole.</description>
<type>void</type>
<pass>yes</pass>
<argument>class (nodeComponentBlackHole), intent(inout) :: blackHole </argument>
<argument>double precision , intent( out) :: rateMassAccretionSpheroid, rateMassAccretionHotHalo</argument>
<argument>class (nodeComponentBlackHole), intent(inout) :: blackHole </argument>
<argument>double precision , intent( out) :: rateMassAccretionSpheroid, rateMassAccretionHotHalo, rateMassAccretionNuclearStarCluster</argument>
</method>
</functionClass>
!!]
Expand Down
24 changes: 13 additions & 11 deletions source/black_holes.accretion_rates.spheroid_tracking.F90
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
final :: spheroidTrackingDestructor
procedure :: rateAccretion => spheroidTrackingRateAccretion
end type blackHoleAccretionRateSpheroidTracking

interface blackHoleAccretionRateSpheroidTracking
!!{
Constructors for the {\normalfont \ttfamily spheroidTracking} black hole accretion rate class.
Expand All @@ -62,7 +62,7 @@ function spheroidTrackingConstructorParameters(parameters) result(self)
type (inputParameters ), intent(inout) :: parameters
class (starFormationRateSpheroidsClass ), pointer :: starFormationRateSpheroids_
double precision :: growthRatioToStellarSpheroid

!![
<inputParameter>
<name>growthRatioToStellarSpheroid</name>
Expand Down Expand Up @@ -101,27 +101,29 @@ subroutine spheroidTrackingDestructor(self)
!!}
implicit none
type(blackHoleAccretionRateSpheroidTracking), intent(inout) :: self

!![
<objectDestructor name="self%starFormationRateSpheroids_"/>
!!]
return
end subroutine spheroidTrackingDestructor
subroutine spheroidTrackingRateAccretion(self,blackHole,rateMassAccretionSpheroid,rateMassAccretionHotHalo)

subroutine spheroidTrackingRateAccretion(self,blackHole,rateMassAccretionSpheroid,rateMassAccretionHotHalo,rateMassAccretionNuclearStarCluster)
!!{
Compute the accretion rate onto a black hole.
!!}
use :: Galacticus_Nodes, only : treeNode
implicit none
class (blackHoleAccretionRateSpheroidTracking), intent(inout) :: self
class (nodeComponentBlackHole ), intent(inout) :: blackHole
double precision , intent( out) :: rateMassAccretionSpheroid,rateMassAccretionHotHalo
double precision , intent( out) :: rateMassAccretionSpheroid , rateMassAccretionHotHalo, &
& rateMassAccretionNuclearStarCluster
type (treeNode ), pointer :: node

node => blackHole %host ( )
rateMassAccretionSpheroid = +self %growthRatioToStellarSpheroid &
& *self %starFormationRateSpheroids_%rate (node)
rateMassAccretionHotHalo = +0.0d0

node => blackHole %host ( )
rateMassAccretionSpheroid = +self %growthRatioToStellarSpheroid &
& *self %starFormationRateSpheroids_%rate (node)
rateMassAccretionHotHalo = +0.0d0
rateMassAccretionNuclearStarCluster = +0.0d0
return
end subroutine spheroidTrackingRateAccretion
Loading
Loading