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

Version 2.2.0, first real release of python based music box powered by micm #191

Merged
merged 29 commits into from
Aug 22, 2024

Conversation

K20shores
Copy link
Collaborator

No description provided.

alexjamesgarza and others added 29 commits April 9, 2024 10:46
* setting up a cmake structure for c++

* python box model iniital classes

* added method for generating species config

* added relative tolerance to spec config

* added method to generate reaction config

* added generateConfig documentation and todo solve function

* added todo readfromjson function

* added params to reaction

* updated Reaction and getReactionConfig to handle A B D E and Ea paramaters

* can mostly parse json file from UI

* implemented skeleton logic for solver

* extracted concentrations and reaction rates from evolving conditions

* added initial reaction rates, need to verify

* made conversion functions to shorten code

* tested parsing with example that had every option

* added other reaction types and refactored some code

* fixed bug in species list

* fixed bug in reaction list

* generateReactionConfig accounts for the different types of reactions

* added funciton to create micm solver based on config

* added funciton to create micm solver based on config

* working towards box model test

* adds function to read config json and tests basic reaction

* fixed solve to inc by seconds

* convert time steps to seconds

* updated solve with new time units

* Changed readFromJson to readFromUIJosn

* convert_pressure converts to Pa now

* outputs results to file and creates file for initial test

* reads species name from config

* sets up test config and get analytical concentrations

* aserts concentrations

* fixed comment typo

* fixed output outputted based on output time step

* changed time in output to output step time

* added hr to time conversion:

* removed print stat

* removed print statement

* config files generatable

* initial reaction rates added to generate config

* reads species from json from camp_data

* box model pr

* handle cases without pressure and temperature in evolving conditions for UI parsing

* able to recreate test config in UI, parse it, and use in python_test_1

* reads reaction list from config json

* restructured functions

* fixed missing reaction list param in from_config_JSON

* can generate evolving_conditions.csv for config

* implemented species and rate ordering in solve

* moved where ordered arrays are computed

* updated headers to match ordered array

* fixed evolving conditions not setting attributes correctly

* fixed unit issue with pressure for setting up evolving conditions

* added reaction type prefixes in order_reaction_ratesz

* changed evolving conditions to update in a while loop in case chem time step is greater than time between evolving conditions

* updated python test 3

* creates test for chapman in python_test_3.py

* renamed tests to be more descriptive

* added test file for wall-loss

* include base values for reactions, change C back to Ea

* add species not present in initial conditions for order_species_concentration

* removed unused files

* removed unused files

* created .whl for music_box package

* make sure time in evolving conditions is float

* check reaction names correctly for evolving conditions config, ensure floats for rate constants

* added function to read from UI json string

* removing fortran things, using musica python module, creating installation suitable for pypi

* converting tests to pytest

* correcting setup python?

* adding a space

* strategy

* installing music_box in CI

* newer checkout

* pypi publish

---------

Co-authored-by: Kyle Shores <[email protected]>
Co-authored-by: Evan De la Garza <[email protected]>
Co-authored-by: Evan De la Garza <[email protected]>
* does not add rel tolerance to species list

* updates m according to temp and pressure

* commented out concentration array override

* changed Type to type

* removes unecessary code
* fixed inital conditions for reaction rates

* added handling for loss and emission in generating config

* fixed chapman test

* added scaling factors to config

* changed initial conditions to be read and stored in a separate file
* added full gas phase test

* edited tests
* documented music_box.py

* documented music_box_conditions.py

* documented evolving conditions

* documented box model options

* documented reaction list

* documented reactions

* documented species list
…iles (#154)

* added documentations to missing functions

* adds sphinx doc files in docs directory
* adding citation file

* add names to the citation file

---------

Co-authored-by: Evan De la Garza <[email protected]>
* Hello World from the new MusicBox main().

* Python main() is producing valid floating-point output.

* Added command-line arguments.

* Write out the solution.

* Import music_box_logger the right way.

* Move log statements into main().

* Removed realistic physical defaults, replaced with None.

* Throw exception for None solver instead of Warning.

* Removed ACOM Logger. Set up music_box operation as executable script and python command line.

* Use argparse and configure it for key=value pairs.

* Revise command-line arguments to configFile and outputDir.

* pull smoke test action from other branch

* Modified to look like the MusicBox template.

* Display the working directory.

* Removed redundant pip install.

* Action test (#174)

* listing debug information

* ok actually printing wd

* trying forward slashes

* trying to join files independent of os slashes

* removing csv file

* Re-added file that was inadvertently deleted, and updated musica version tp 0.7.0

* Removed helper scripts from repository.

* Removed another batch helper script.

* Check for configFile parameter. Give error and example if not found.

* Add key=value required parameter to argparse help.

* Rename smoke test to CI Tests. Deleted test.yml.

---------

Co-authored-by: Matt Dawson <[email protected]>
Co-authored-by: Kyle Shores <[email protected]>
* setting up music box docs with our theme

* adding logo

* setting up new documentation

* new logo
* correcting tests

* removing commented out code

* calling unit tests

* requirements

* changing directory
* testing package publishing

* triggering

* maybe wheels aren't necessary for this

* fixing thing

* don't think we need an sdist

* lets have both, why not

* adding both files to cache

* removing push trigger

* considering auto incrementing version

* checking a version bump PR

* maybe this

* maybe it needs the branch name?

* maybe this

* trying to see if any changes are applied

* debug

* trying to get a PR to work

* one more time

* sure would like this to work

* what is happening

* i give up
* checking if autoformat action works

* correcting action trigger
)

* Added logic to catch unexpected JSON config - eg, missing keys.

* Clearer code for setting initial reaction rates.

* Changed for musica 0.7.3; air density and M third body.

* Musica version is now 0.7.3.

* Removed commented-out logging code.
Co-authored-by: GitHub Actions <[email protected]>
Co-authored-by: Kyle Shores <[email protected]>
* renaming docs, adding dockerfile, github action

* Update .github/workflows/gh_pages.yml

Co-authored-by: Jiwon Gim <[email protected]>

* action triggers

---------

Co-authored-by: Jiwon Gim <[email protected]>
…ces [Issue #177] (#180)

* Remove all redundant `music_box_` from file names and updated references [Issue #177]

* correcting relative imports

* correcting more imports

* renaming executable

---------

Co-authored-by: Kyle Shores <[email protected]>
@K20shores K20shores merged commit 989d5c2 into release Aug 22, 2024
9 checks passed
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.

5 participants