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

Update the growth module #104

Closed
40 tasks done
GwennyGit opened this issue Oct 31, 2023 · 4 comments · Fixed by #119
Closed
40 tasks done

Update the growth module #104

GwennyGit opened this issue Oct 31, 2023 · 4 comments · Fixed by #119
Assignees
Labels
enhancement New feature or request refactoring changes in the code functionality

Comments

@GwennyGit
Copy link
Collaborator

GwennyGit commented Oct 31, 2023

The growth module works and contains excellent ideas. However, a new and less confusing setup would be beneficial. The following ideas should improve the setup and add better handling of flux values.


Improvement/rearranging of already existing functions (-> #79)

Main changes

  • Change existing functions:
    • Rename set_fluxes_to_simulate -> set_bounds_to_default
      • Change/add default parameter for upper & lower bound from COBRApy/user-specified
    • Merge get_default_uptake (renamed to get_model_uptake) & get_minimal_uptake -> Name function get_uptake
    • Replace get_missing_exchanges & modify_medium with medium.add_medium_to_model
    • Merge find_missing_essential & find_minimum_essential -> find_essential?
    • Further ideas for medium.add_medium_to_model -> ❗ name changed to medium_to_model:
      • Integrate functionality of find_essential
      • Add a parameter to return the resulting medium
      • Add the possibility to load medium as anaerobic ❓
      • Extend usable namespaces from BiGG-specific to more namespaces
        • 🔴 this function can already do that, but not the wrappers in growth etc. -> see "still missing" below
    • Rename simulate_minimal_essential -> simulate_growth
      • Add parameter to enable growth with or without supplements
    • Merge growth_one_medium_from_default & growth_one_medium_from_minimal -> growth_on_one_medium
    • Check output of growth_on_one_medium & get_growth_selected_media
    • Remove get_growth_selected_media -> Now handled by medium.add_medium_to_model!
  • Check connections in/to:
  • Check pseudo algorithm

Additional ideas

  • Check model.optimize & model.slim_optimize -> Possibility for faster run time?
  • growth_on_one_medium:
  • Add possibility to add:
    • medium-specific fluxes from medium2substance table in data.db,
    • default flux (Currently: 10),
    • user-specific default flux and
    • user-specific fluxes -> 🟠 oxygen percentage can be set only currently
  • Improve handling of anaerobic simulations

Isolated functions

  • Change function get_default_secretion -> Wrong description for what it currently really does!
  • get_all_minimum_essential -> Do we need this? Is it correct? 🤔 -> Removed!
  • Rename get_essential_reactions -> get_single_ko_essential_reacs
  • Rename get_essential_reactions_via_bounds -> get_single_deletion_essential_reacs
  • Rename find_additives -> find_additives_to_enhance_growth/ find_growth_enhancing_additives

Improvement/addition of new functions:

Still missing

  • function for reading external media: missing a 'file' option 🟠 written, only needs testing
  • adding superoxide to a medium to enable growth e.g. important for Klebsiella (either via subset or new category to add different substances) -> Update media definitions, document and extend db #16
@GwennyGit GwennyGit added enhancement New feature or request refactoring changes in the code functionality labels Oct 31, 2023
@cb-Hades
Copy link
Collaborator

Notes from the Whiteboard:

Image

@cb-Hades
Copy link
Collaborator

get_default_secretion changed to one function for returning ID for reactions secreting compounds (get_secretion) and a second for for returning functions that produce a compound called get_production.

cb-Hades added a commit that referenced this issue Nov 21, 2023
collected + started functions for growth simulation
added class for reports
#104
cb-Hades added a commit that referenced this issue Nov 21, 2023
restructering, renaming, some clean up #104
GwennyGit referenced this issue Nov 22, 2023
add/update set_bounds_to_default and get_uptake
cb-Hades added a commit that referenced this issue Nov 29, 2023
Issue #104
- removed construction as functions have been moved to growth
- added function for parsing the media_config.yaml
- progress for growth_simulation function, next agenda: simulation & visualisation + testing
cb-Hades added a commit that referenced this issue Dec 4, 2023
#104 , #79
Update growth simulation + plotting model vs media (bars and heatmap)
cb-Hades added a commit that referenced this issue Dec 5, 2023
small fixes and added docstrings
#104 , #79
cb-Hades added a commit that referenced this issue Dec 5, 2023
added a function to save the report as a whole
#104
#79
@cb-Hades
Copy link
Collaborator

cb-Hades commented Dec 5, 2023

Added functions to plot and save the growth simulation results.

cb-Hades added a commit that referenced this issue Dec 6, 2023
Still needs testing as a whole.
#104 , #79
GwennyGit added a commit that referenced this issue Dec 7, 2023
- Added functionality to not only add a new medium but also an updated version. -> Needs to be tested!
- Added function to generate a new SQL file after updating the database. -> Works but looks less human-readable compared to the current SQL file.
cb-Hades added a commit that referenced this issue Dec 14, 2023
cb-Hades added a commit that referenced this issue Dec 19, 2023
#104 , #99
- function to add a substance from db to medium
- changes to media_config to allow adding substances
- small docs additions
@GwennyGit
Copy link
Collaborator Author

All tasks are either done or transferred to a new issue -- closing issue (#16, #79).

@GwennyGit GwennyGit linked a pull request Apr 12, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request refactoring changes in the code functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants