Giter VIP home page Giter VIP logo

grackle_data_files's People

Contributors

brittonsmith avatar

Watchers

Matthew Turk avatar James Cloos avatar  avatar

Forkers

brittonsmith

grackle_data_files's Issues

Missing ('z') dataset in CloudyData_UVB=HM2012_high_density.h5 input data file

Hi everyone,

I'm a PhD student, I'm new with Grackle, and i'm currently trying to add it on my PDR code to add chemistry and H2 cooling.

Maybe I got something wrong (and I'm not familiar with HDF5), but I encountered an issue when trying to execute my code with the new input data file CloudyData_UVB=HM2012_high_density.h5, instead of the default CloudyData_UVB=HM2012.h5 (I really need to deal with higher densities physics).

For my code, I need to enable dust chemistry and metal cooling.

More precisely, there is no issue during execution when I set grackle_data%grackle_data_file = CloudyData_UVB=HM2012.h5. But when I set grackle_data%grackle_data_file = CloudyData_UVB=HM2012_high_density.h5, I get that HDF5 can't open redshift dataset ('z'), with the following shell output (displayed when executing iresult = initialize_chemistry_data(my_units)) :

The Grackle Version 3.2.dev2
Git Branch   main
Git Revision f9c828a4155747071c41407269625a867541c634

Initializing grackle data.
Dust chemistry enabled, setting photoelectric_heating to 2.
Dust chemistry enabled, setting dust_recombination_cooling to 1.
Dust chemistry enabled, setting h2_on_dust to 1.
Initializing Cloudy cooling: Metals.
cloudy_table_file: ../../input/CloudyData_UVB=HM2012_high_density.h5.
Cloudy cooling grid rank: 3.
Cloudy cooling grid dimensions: 42 26 161.
Parameter1: -10 to 10 (42 steps).
Parameter2: 0 to 15 (26 steps).
Temperature: 1 to 9 (161 steps).
Reading Cloudy Cooling dataset.
Reading Cloudy Heating dataset.
Initializing UV background.
Reading UV background data from ../../input/CloudyData_UVB=HM2012_high_density.h5.
HDF5-DIAG: Error detected in HDF5 (1.10.4) thread 140689315553280:
  #000: ../../../src/H5Ddeprec.c line 195 in H5Dopen1(): unable to open dataset
    major: Dataset
    minor: Can't open object
  #001: ../../../src/H5Dint.c line 1205 in H5D__open_name(): not found
    major: Dataset
    minor: Object not found
  #002: ../../../src/H5Gloc.c line 422 in H5G_loc_find(): can't find object
    major: Symbol table
    minor: Object not found
  #003: ../../../src/H5Gtraverse.c line 851 in H5G_traverse(): internal path traversal failed
    major: Symbol table
    minor: Object not found
  #004: ../../../src/H5Gtraverse.c line 627 in H5G__traverse_real(): traversal operator failed
    major: Symbol table
    minor: Callback failed
  #005: ../../../src/H5Gloc.c line 378 in H5G__loc_find_cb(): object 'z' doesn't exist
    major: Symbol table
    minor: Object not found
Can't open redshift dataset ('z') in ../../input/CloudyData_UVB=HM2012_high_density.h5.
Error in initialize_UVbackground_data.
Error in _initialize_chemistry_data.
Error in initialize_chemistry_data.

I tried to look at the content of the two .h5 files with h5web Jupyter extension, but as you can see it below, CloudyData_UVB=HM2012_high_density.h5 really misses a 'z' entry under the 'UVBrates' group, while it is clearly here for CloudyData_UVB=HM2012.h5 :

Capture d’écran de 2022-08-06 13-10-35
Capture d’écran de 2022-08-06 13-10-14

How may I deal with this issue, please ?

Any assistance would be appreciated. Thank you !

Cloudy data file is corrupt

The CloudyData_UVB=HM2012_shielded.h5 data file has "0" for the MMW array for the highest density, highest redshift column.
Repeat by (in python with the h5py module):

>>> import h5py
>>> f = h5py.File('CloudyData_UVB=HM2012_shielded.h5',mode="r")
>>> cr = f['CoolingRates']
>>> mmw = cr['Primordial']['MMW']
>>> mmw[-1][-1]
array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,
       0., 0., 0., 0., 0., 0., 0., 0.])

Those zeros will cause havoc when trying to get a temperature at high density and high redshfit.

Heating rates in Cloudy _shielded tables are too high for low density and low temperature gas

Low-density and low-temperature gas is overheated with the _shielded tables, which is also very odd because shielding is not expected to have any effect in this regime. There is no issue with the Cloudy tables that do not include shielding.

As an example of what kind of impact this can have, I am showing here the evolution of gas temperature at mean cosmic density as a function of redshift for a cosmological simulation that only includes gas cooling (no star formation, no feedback). It is clear that the shielded tables overheat this low-density gas.

Screenshot 2023-01-16 at 14 41 58

Thanks to Volker Springel, Yves Revaz, and Matthew Smith for discovering and investigating this problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.