Skip to content

Conversation

@ctmbl
Copy link
Contributor

@ctmbl ctmbl commented Jul 18, 2023

Roadmap:

  • remove old initial_composition funcion and introduce new star2d::init_metal_mix (85d8c3d)
  • fix multiple calls (089cad0, 5923d19) to star2d::fill and star2d::init_comp and ensure it (85d8c3d)
  • add -mixt <mixt> flag, where <mixt> is either a default mixture (GN93, GS98...) or a file describing a custom one (via relative metal fractions of Z)
    • compatible with -Z
    • verify that the sum of fractions ~= 1, warning if not
  • write star2d.comp attribute to hdf5 file (easy)
  • read composition (H, He3, He4 and metals) from hdf5 files, providing retro compatibility (harder)
  • add -composition <comp.cfg> describing an absolute metal composition in log(n_i/n_H)
    • exclusive with -Z or -mixt
    • Z is computed from the config
    • metals absolute fractions are based on X value through log(n_i/n_H)
  • ensure compatibility of -composition, -Z or -mixt with -i <input model>
    • -mixt and -i: keep same Z as input model and change metal mixture
    • -Z and -i: keep same mixture and change metals absolute fractions, Y compensate the surplus/loss of metals to ensure X+Y+Z=1
    • ((-mixt and -Z) OR -composition) and -i: keep nothing, change mixture and Z, Y compensate

TODO:

  • fix eos:freeeos which currently is the only one to use star2d.comp-attribute internal metal composition (other uses comp.X|Y|Z() methods) but uses badly (dpeends on basically the whole roadmap) (2f750de, ...)
  • check that ester_info star1d star2d (optionally star*dR and ester_evol) works correctly
  • use comp attribute in: eos_freeeos, eos_ideal, eos_idealrad, nuc_*
  • improve atm_onelayer to avoid calling eos resolution inside the loop (?)
  • update python interface, if needed
  • Resolve all TODOs in the code
  • Store comp in HDF5 file in a more compressed/smart manner (most of metal fields are: uniform or zero), if considered relevant, at least compute the theoretical memory save and write about it in ESTER doc, could be relevant for a huge number of models

Notes:

  • Hard-coded supported metal list in star.h
  • User is forced to give fractions of every isotop, no hidden hard-coded isotopic fractions except the default one
  • Hard-coded He isotopic ratio in star.h
  • Mass of every isotop is hardocded (should be changed?)
  • step 4 (read HDF5) of the roadmap is needed to make star2d works as it requires to be generated from a 1D model

@rieutord

@ctmbl ctmbl force-pushed the metal-config branch 2 times, most recently from 849a02a to f5f7d25 Compare July 20, 2023 13:15
ctmbl added 20 commits August 23, 2023 12:02
…t in fill/read, remove useless redondant init_comp
@ctmbl ctmbl changed the title Metal config Improve ESTER chemistry fixing freeeos implementation Oct 27, 2023
@ctmbl
Copy link
Contributor Author

ctmbl commented Oct 27, 2023

I'll publish here, and edit the TODO list whenever I progress in this project!

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.

1 participant