Skip to content

Tabulated optically thin radiative cooling module with Townsend integration#349

Open
dutta-alankar wants to merge 20 commits into
idefix-code:masterfrom
dutta-alankar:master
Open

Tabulated optically thin radiative cooling module with Townsend integration#349
dutta-alankar wants to merge 20 commits into
idefix-code:masterfrom
dutta-alankar:master

Conversation

@dutta-alankar

@dutta-alankar dutta-alankar commented Sep 6, 2025

Copy link
Copy Markdown
Contributor

I have implemented optically thin radiative cooling module for Idefix. I have tested this for by allowing cooling of a collection of cells (initially at $2\times 10^6 \ \rm K$) in a uniform domain (and calculating temperature and $-\dot{e}/n_H^2$ from the code over time) which seems to exactly reproduce the cooling rate as supplied by the table read during runtime by the code (screenshot attached). The setup and analysis code is attached here for reference and further testing. I have also put in a sample Cloudy generated equilibrium cooling rate table for plasma at solar metallicity in presence of HM12 UV photo-ionizing background at redshift 0.

The integration method follows the Townsend algorithm (https://ui.adsabs.harvard.edu/abs/2009ApJS..181..391T/abstract), which is quite efficient in calculating the pressure drop due to radiative cooling. There is also a way to set a floor that switches off cooling below some temperature, as required by many popular setups. I have also included a small .rst documentation for this module.

Let me know if this is something worth integrating to the main repo and if something additional needs to be done.

Test setup:
cooling-test.tar.gz

Test result (purple: supplied table; green: code result):
image

@dutta-alankar

dutta-alankar commented Oct 20, 2025

Copy link
Copy Markdown
Contributor Author

@glesur I noticed that use of CGS quantities has now been incorporated into Idefix. If this radiative cooling module with Townsend integration is something you/developer community thinks worth being integrated into Idefix, then I would be happy to change the code to utilize the CGS units capability. Let me know.

Comment thread src/fluid/addSourceTerms.hpp Outdated
Comment thread src/fluid/fluid.hpp
@dutta-alankar

dutta-alankar commented Jun 19, 2026

Copy link
Copy Markdown
Contributor Author

I have now updated the Townsend radiative cooling module to utilize the code units to CGS units conversion as a runtime parameter from the ini file and the documentation has been updated accordingly along with the addition of a test problem of an advecting uniform box undergoing cooling in test/HD/CoolBox. @glesur @neutrinoceros Please let me know if you would like to have this feature in Idefix. I have been using this modified version of Idefix in simulating turbulent radiatively cooling mixing layers and also plan to use this in upcoming cloud-crushing simulations.

@neutrinoceros

Copy link
Copy Markdown
Collaborator

Hi @dutta-alankar
For the record, I have no say in what goes into idefix and it's not part of my job to work on it anymore.

@dutta-alankar

Copy link
Copy Markdown
Contributor Author

Hi @dutta-alankar For the record, I have no say in what goes into idefix and it's not part of my job to work on it anymore.

@neutrinoceros I understand. Apologies for my lack of knowledge on the latest developments and dynamics in the Idefix development team.

@neutrinoceros

Copy link
Copy Markdown
Collaborator

No worries

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