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 82 commits into
base: master
Choose a base branch
from

Conversation

liempi
Copy link

@liempi liempi commented Feb 4, 2025

Add nuclear star cluster model and BH seed formation scenario within NSCs due to stellar collisions.

.DS_Store Outdated Show resolved Hide resolved
This is a Mac OS config file and should not be included in Galacticus.
Such files should never be added.
@abensonca
Copy link
Collaborator

Adding comments from Matias here for reference:

  1. First, in the objects.nodes.components.black_hole.standard.F90, the Node_Component_Black_Hole_Standard_Scale_Set subroutine has 1 M⊙ for the mass scale, it is because otherwise it leads to negative masses. I think it would be nice to introduce a new relative mass scale with the stellar mass of the NSC, maybe when the NSC already formed a seed.
  2. The BH seed formed under the model is created in the nodes.operators.physics.stellarCollisions.NSCs.F90 file. I tried to do move this node operator to the blackHoleSeedClass and it is not possible because as there are not BHs in all the galaxies, it ends in an error in routines using the potential in their calculations (as the mass of the BH is 0.0).
  3. In the objects.nodes.components.black_hole.simple.F90, I'm not sure if to introduce a modification. In the rate task, in principle we should remove the gas accreted also for the hot halo as in the standard file but it is not implemented. If it makes sense, I can do it.

and not related to my projects, I think there is a mistake in the cooling.cooling_radius.beta_profile.F90 file. In line 381, the variable is called densityZero which is supposed to be the density evaluated at radius 0.0, but it is using the coordinates of the outerRadius of the Halo (previously used to compute the density at the outer radius).

@abensonca
Copy link
Collaborator

and not related to my projects, I think there is a mistake in the cooling.cooling_radius.beta_profile.F90 file. In line 381, the variable is called densityZero which is supposed to be the density evaluated at radius 0.0, but it is using the coordinates of the outerRadius of the Halo (previously used to compute the density at the outer radius).

Yes - definitely a mistake. I opened issue #781 for this and will push a fix.

@abensonca
Copy link
Collaborator

1. First, in the `objects.nodes.components.black_hole.standard.F90`, the `Node_Component_Black_Hole_Standard_Scale_Set` subroutine has 1 M⊙ for the mass scale, it is because otherwise it leads to negative masses. I think it would be nice to introduce a new relative mass scale with the stellar mass of the NSC, maybe when the NSC already formed a seed.

This seems reasonable. I'd suggest making it some fraction of the NSC stellar mass.

@abensonca
Copy link
Collaborator

2. The BH seed formed under the model is created in the `nodes.operators.physics.stellarCollisions.NSCs.F90` file. I tried to do move this node operator to the `blackHoleSeedClass` and it is not possible because as there are not BHs in all the galaxies, it ends in an error in routines using the potential in their calculations (as the mass of the BH is 0.0).

I caught this problem in the PR refactoring black hole physics, and it is now implemented correctly there. We'll need to be sure to move the equivalent NSC behavior to this new class (after I merge in that PR).

@abensonca
Copy link
Collaborator

2. The BH seed formed under the model is created in the `nodes.operators.physics.stellarCollisions.NSCs.F90` file. I tried to do move this node operator to the `blackHoleSeedClass` and it is not possible because as there are not BHs in all the galaxies, it ends in an error in routines using the potential in their calculations (as the mass of the BH is 0.0).

It would be better to move this to the blackHoleSeedClass if possible. If the only issue is the black hole potential, then we should change the massDistributionBlackHole class so that it correctly handles cases of zero mass black holes (just returning a zero potential in such cases). I'm actually surprised this happens as in the Node_Component_Black_Hole_Standard_Mass_Distribution function it checks that the black hole mass is $>0$ - and if it isn't returns a null massDistribution - in which case this problem should never occur. But maybe that's not working for some reason.

* Renames files for consistency;
* Conventionalizes citations;
* Adds a glossary entry for nuclear star cluster (NSC);
* Renames variables for clarity;
* Reformats code for clarity.
* Variable renaming for clarity.
* Rename variables for clarity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants