Skip to content

Transcription Tracking Issue #256

@mabruzzo

Description

@mabruzzo

This issue is designed to track progress and coordination of the transcription efforts.

The (provisional)1 plan is:

  • treat the gen2024 branch as a development branch (the rationale for this is provided in newchem-cpp Tracking Issue #255)
  • essentially, we will make pull requests of transcribed functionality into the gen2024 branch
  • at some point in the future, the gen2024 branch will be merged into main (in which case, any unmerged transcription PRs will need to be shifted to main)
  • for convenience a branch with all/most transcribed functions (that haven't been merged upstream yet) can be found here

Routines Currently being Transcribed (1/32):

Routines ready for transcription (5/32):

Leave a comment on this issue if you want to reserve one of these cases

Routines that will be ready after cool1d_multi_g is transcribed: (4/32)

  • cool1d_cloudy_g
    • file: cool1d_cloudy_g.F
    • already existing wrapper: grackle::impl::fortran_wrapper::cool1d_multi_g
    • remaining call sites that must be wrapped: cool1d_multi_g
    • Special Considerations: An existing PR previously tried transcribing the logic ( Port calc_temp1d_cloudy_g & cool1d_cloudy_g from Fortran to C #153 ). I suspect that we don't want to try to reuse that transcribed logic.2 But, if it's not too hard, we may want to repurpose the unit-test logic.
  • calc_temp1d_cloudy_g
    • file: calc_temp1d_cloudy_g.F
    • already existing wrapper: grackle::impl::fortran_wrapper::calc_temp_cloudy_g
    • remaining call sites that must be wrapped: cool1d_multi_g
    • Special Considerations: An existing PR previously tried transcribing the logic ( Port calc_temp1d_cloudy_g & cool1d_cloudy_g from Fortran to C #153 ). I suspect that we don't want to try to reuse that transcribed logic.2 But, if it's not too hard, we may want to repurpose the unit-test logic.
  • cool1D_cloudy_old_tables_g
  • calc_all_tdust_gasgr_1d_g
    • file: calc_all_tdust_gasgr_1d_g.F
    • already existing wrapper: grackle::impl::fortran_wrapper::calc_all_tdust_gasgr_1d_g
    • remaining call sites that must be wrapped: cool1d_multi_g.F

Routines not yet ready for transcription: (6/32)

These routines all have 1 or more Fortran call-sites (i.e. they are called from 1 or more other Fortran routines). As such they are not yet ready for transcription.

  • if a routine has multiple call-sites, we won't be ready to transcribe it until a wrapper function has been created and every call-site calls the wrapper function
  • if a routine only has 1 Fortran call-site, we can transcribe it immediately after transcribing the call-site.

These cases include:

  • calc_grain_size_increment_1d
    • file: calc_grain_size_increment_1d.F
    • already existing wrapper: grackle::impl::fortran_wrapper::calc_grain_size_increment_1d
    • remaining call sites that must be wrapped: cool1d_multi_g.F and lookup_cool_rates1d_g
  • calc_tdust_1d_g
  • calc_kappa_gr_g
  • calc_gr_balance_g
  • calc_grain_size_increment_species_1d
  • solve_cubic_equation

Transcribed Routines Awaiting Review (16/32)

Merged Transcriptions:

Footnotes

  1. It's provisional until @brittonsmith has a moment to clarify his thought on how he thinks we should handle the details of development

  2. The referenced PR was made before we started our current efforts. Consequently, it will take some work to extract just the logic we want. Thus, it may not be worth the effort to reuse the logic 2

  3. As explained in its description, Transcribe interpolate routines brittonsmith/grackle#38 is a very special PR. The PR justifies why it breaks many conventions for what makes a good transcription PR. Because of its special status, it may not be merged until all other routines have been transcribed. 2 3 4 5 6 7

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions