forked from LDAR-Sim/LDAR_Sim
-
Notifications
You must be signed in to change notification settings - Fork 0
Adding emission estimation into routing branch #3
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
Open
SEAJang
wants to merge
541
commits into
SEAJang:routing
Choose a base branch
from
LDAR-Sim:master
base: routing
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
V4 constants change overhaul
* <CLEAN> Cleanup unused code and files * Removed Testing suite * <CLEAN> Clean up unused code
* <FEAT> Add multi-single emission from source func Reason for change: Some sources of emissions should only ever emit one emission at a time. Changes: - Add a new function to the sources module that will allow users to define if a source can create multiple emissions at once or not. * <TEST> Add unit test for multi-single emission functionality Reason for Change: - New functionality requires tests - Changes in source creation required update to the existing unit test * <DOC> Add inline comments
Reason for change: Previous design for summary output processing was not scalable and was difficult to maintain. This change introduces a new design for summary output processing that is more modular and scalable. Resolution: Added new summary output processing classes and functions, along with unit tests for the new classes and functions. Effect(s) of change: N/A
Reason for change: Previous program output design has logic spread throughout the LDAR-Sim object. This made it more difficult to isolate the logic responsible for program outputs. Resolution: Moved all output logic for program outputs to a new class. This centralizes the logic for program outputs and makes it more accessible. Effect(s) of change: N/A
Reason for change: Summary visualization logic was getting too complex and was hard to manage. Resolution: Summary visualization output manager added to manage the summary visualization output process. This will make it easier to add new summary visualizations in the future. Effect(s) of change: N/A
Reason for change: New output managers were implement but not used in the code. Resolution: This commit switches the code to use the new output managers. This commit also includes other associated changes to make the new output managers work. Effect(s) of change: N/A
Reason for change: Some unit test were failing after the outputs module was refactored. Resolution: Removed redundant input processing unit tests and fixed failing emissions unit tests. Effect(s) of change: N/A
Reason for change: Code from old output files was no longer used anywhere in the codebase. Resolution: Removed old code that was no longer used. Effect(s) of change: N/A
Reason for change: Various assorted minor issues were discovered in the output processing code. Resolution: This commit addresses these issues. Effect(s) of change: This commit will improve the output processing code.
V4 outputs processing overhaul
* <CLEAN> Clean up assorted files Reason for change: Example simulation was outdated and needed to be updated Deprecated example files were still in code base Changes: - Removed old example files - Updated example simulation files * <FIX> Bug fix sensors Reason for change: Sensors were not working properly and sensor parameters were not being set correctly as a default behavior Changes: - Update the default sensors behavior and relevant sensors to set the parameters correctly
Reason for change: PReviously only simulation summary data from the most recent batch of simulations was being saved to the summary files. This was due to an overwrite bug in the summary_output_manager.py file where legacy summary data was not being properly retrieved and thus overwritten. Resolution: Changed get legacy summary data to properly retrieve legacy summary data. Effect(s) of change:
Reason for change: Duration estimation method was previously hard coded to use a single method. This change allows the user to choose per program which method to use to calculate emissions estimations.
Reason for change: Unit tests for relevant new functions were added Updated existing tests to reflect the change in structure of the code
Reason for change: Missing unit tests and addressing comments from PR
<FEAT> Duration Estimation Method Swap
Reason for fix: Extra commas in code were making the program duration factor and methods to be read as tuples instead of string/integers. Changes made: - Removed extra commas in program.py - Added simple unit test case to test the program initialization
Reason for fix: Extra commas in code were making the program duration factor and methods to be read as tuples instead of string/integers. Changes made: - Removed extra commas in program.py - Added simple unit test case to test the program initialization
Reason for change: There were still relics of the old parameters in the simple test case parameters. This commit updates and removes those relics
Reason for change: Moved messages over to the output_message constants file.
Reason for change: Probit plots are a useful tool for comparing two emissions distributions. Resolution: This change adds probit plots to the summary visualizations. Effect(s) of change: Added new plot to summary visualizations. WIP: Add probit plots for scaling Reason for change: Resolution: Effect(s) of change: WIP: add probit plots to summary visualizations Reason for change: Resolution: Effect(s) of change:
Reason for change: Users had no ability to modify any properties of the summary visualizations. Resolution: This change allows users to modify the properties of the summary visualizations with summary visualization settings parameters in the outputs parameters. Additionally, made changes to cleanup logic for the new probit plots. Effect(s) of change: Users can now modify select properties of the summary visualizations.
Reason for change: User define output parameters were being overwritten by the default output parameters. Resolution: The user defined output parameters are now being properly used to update the default output parameters. Effect(s) of change: Output parameters now function as expected.
Reason for change: Responding to suggested changes from code review to cleanup constants from new changes. Resolution: Moved quantiles to a constant and adjusted constant naming. Effect(s) of change: N/A
Add Probit plots
Reason for change: initialization did not always be have as intended with the preseed files provided. Changes: - Preseed files if they are generated, forces the remake of all generated files - Add error handling for when n_sim_saved is missing
Reason for Change: When generator files exist, running the same programs with different methods cause the simulator to crash with no good error message. Changes: - Updated the hash file to take into account the programs. If a program is changed, new infrastructure is generated
feat: Add parameter to keep all program outputs
Reason for change: Sim was breaking when the METEC_NoWind_sensor was used Resolution: Fix the inheritance of the sensors such that it's using the correct functions Effect(s) of change: The sim runs now using METEC_NoWind_sensor
Reason for change: In some cases, it is incorrect to simulate emissions beginning from a state of no LDAR. Resolution: Added a parameter to the virtual world that allows the user to specify whether or not to simulate emissions that "begin" before the start of the simulation. Effect(s) of change: The user can now specify whether or not to simulate emissions that "begin" before the start of the simulation.
Reason for change: Changes to emissions generation logic to allow for pre-simulation emissions to be turned off caused the unit tests to fail due to missing arguments. Resolution: Updated the unit tests to include the new argument for the generate_emissions function. Effect(s) of change:
Reason for change: User manual descriptions require refinement Resolution: Updated user manual descriptions to be more accurate and informative. Effect(s) of change:
…ation_emissions Add option to prevent pre simulation emissions
* fix: fixed issue with METEC_NoWind_sensor.py Reason for change: The METEC_NoWind_sensor was out of date for the current version of the LDAR-Sim, resulting in a runtime error when using it at the equipment or component level. Resolution: The METEC_NoWind_sensor was updated to the current version of the LDAR-Sim, allowing it to be used at the equipment or component level. Effect(s) of change: The METEC_NoWind_sensor can now be used at the equipment or component level without causing a runtime error.
Reason for change: Rolling average startup logic was working in such a way that anomalous behavior was observed in the start of the simulation. Resolution: Changed rolling average startup logic to require the full rolling average window to be filled before the rolling average is calculated. This will prevent the rolling average from being calculated with fewer than the full window of data. Effect(s) of change: The rolling average startup logic will now require the full rolling average window to be filled before the rolling average is calculated.
Reason for change: CM would only use rolling averages beginning after a detection had occurred. This was not the desired behavior. Resolution: CM now uses true rolling averages, beginning at the start of the simulation. Effect(s) of change: CM will now use true rolling averages, beginning at the start of the simulation.
Reason for change: Runtime error was occurring when the stationary long threshold was not set. Resolution: Added a check to see if the stationary long threshold is defined before using it in the rolling average calculation. Effect(s) of change: The program will no longer crash if the stationary long threshold is not set.
Reason for change: Rolling average logic was updated to require a minimum number of data points before calculating the average. This change was made to prevent the rolling average from being calculated with too few data points, which could result in an inaccurate average. Resolution: The test was updated to reflect the new rolling average logic. The test now expects a rolling average returned before the minimum number of data points is reached to be 0. Effect(s) of change: The test now accurately reflects the behavior of the rolling average logic.
Reason for change: When calculating start dates for estimated emissions, runtime errors were being thrown when the shape of the dataframe was not as expected. Resolution: This change adds checks for the shape of the dataframe and for empty dataframes to prevent these errors. Effect(s) of change: Prevents runtime errors.
Reason for change: Rolling average logic was not functioning as expected when using both thresholds. Resolution: Fixed the logic to follow-up if either threshold is met instead of both. This was not intentional and was causing the logic to not follow-up when it should have. Effect(s) of change: The rolling average logic will now follow-up if either threshold is met.
Reason for change: Earlier changes added logic to requeue mobile sites for flagging however as mobile sites are already filtered by threshold they should never entered that conditional block. Resolution: Remove the logic to requeue mobile sites for flagging. Effect(s) of change: N/A
Reason for change: CM behavior was changed Resolution: Updated E2E tests to reflect the new CM behavior Effect(s) of change: E2E tests now up to date with new CM behavior
…logic Change startup rolling average logic
Reason for change: Spatial extrapolation was not extrapolating to unmeasured sites correctly. Resolution: This change fixes the spatial extrapolation logic for non-component level simulations and adds additional outputs for better analysis. Effect(s) of change:
…dd-outputs Fix spatial extrapolation and add outputs
* change rs > 0 to >=0 * update changelog
* Added Mac-environment file * Update numpy nan imports * Updated changelog.md
Reason for change: The Ephem library was not correctly handling polar day and polar night scenarios, leading to runtime errors when calculating daylight hours. Because daylight hours are always calculated even when daylight is not considered, this was blocking simulations with polar weather data. Resolution: Added a try-catch for and handling polar day and polar night scenarios. Effect(s) of change: This change allows the simulation to run without errors in polar regions by correctly accounting for extreme daylight conditions.
…xtremes fix: Fix error in polar daylight extremes
* fix emission source list returning the wrong value * <doc> updated changelog
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.