forked from openearth/aeolis-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Pull updates from main #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
ssheminway
wants to merge
62
commits into
ssheminway:main
Choose a base branch
from
openearth:main
base: main
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.
Open
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
This patch updates the dockerfile for the codespace to be compatible with developer mode. You need to manual install python in dev model after the docker is created.
* delete abundant files * deleted: aeolis/examples/vanWesten2024/blowout/figure_grid_initialization.png deleted: aeolis/examples/vanWesten2024/blowout/figure_params_initialization.png deleted: aeolis/examples/vanWesten2024/blowout/figure_timeseries_initialization.png
* Update pyproject.toml * Update CITATION.cff * Update README.md
Added error handling for missing 'ne_file' when using Avalanching.
Add message indicating manual installation of aeolis
* Update vegetation parameters in constants.py Removes unused V_Lat parameter solves #120 Changes default for veg_min_elevation to -10 to avoid unwanted use of this functionality. * Update aeolis/constants.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Refactor sweep functions and consolidate logic for handling boundary conditions. Remove unused sweep4 function and update sweep3 to handle circular boundaries more effectively.
Removed commented-out code for wind direction quadrants and solution matrix calculations.
* Avalanching numba patch Tested for 2D cases, seems to work fine now. Need to test for 1D cases. * updated avalanching.py to include non erodible layers. Not tested yet. * Remove theta_stat and update theta_dyn description * removed static angle of repose. Could be added back later if needed. * Update aeolis/avalanching.py copilot suggested changes on memory allocation Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/avalanching.py added boundary definition. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/avalanching.py copilot suggestion to filter for ne Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update to work with NE layer in avalanche module Removed requirement for ne_file when avalanching is enabled * Update aeolis/avalanching.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/constants.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Tested for circular boundaries.
small typos and minor code changes proposed by copilot Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ython into Sierd-patch-1
…ractions (#258) * Initial plan * Add validation to prevent steadystate solver with multiple sediment fractions Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
* Initialisation of the GUI Including some overdue maintenance related to python 2-->3 in the write_configfile script. * Updated GUI structure using Class * updated gui * update gui branche with latest main (#255) * fixed dependencies for python 3.13 (#236) * test with timing function * Add devcontainer for use in codespaces (#240) * devcontainer added * Update Dockerfile * Update Dockerfile * Update devcontainer.json * Update Dockerfile * fixed dependencies for python 3.13 (#236) (#239) * Update Dockerfile * remove abundant stuff * Add devcontainer for use in codespaces (#240) (#242) * devcontainer added * Update Dockerfile * Update Dockerfile * Update devcontainer.json * Update Dockerfile * fixed dependencies for python 3.13 (#236) (#239) * Update Dockerfile * remove abundant stuff * Update Dockerfile (#243) This patch updates the dockerfile for the codespace to be compatible with developer mode. You need to manual install python in dev model after the docker is created. * Cleanup main (#245) * delete abundant files * deleted: aeolis/examples/vanWesten2024/blowout/figure_grid_initialization.png deleted: aeolis/examples/vanWesten2024/blowout/figure_params_initialization.png deleted: aeolis/examples/vanWesten2024/blowout/figure_timeseries_initialization.png * Update pyproject.toml * Update README.md * Update CITATION.cff * Update release info (#246) * Update pyproject.toml * Update CITATION.cff * Update README.md * Update Python version and dependencies in installation guide * Implement error message for missing ne_file Added error handling for missing 'ne_file' when using Avalanching. * Print message for aeolis installation in Dockerfile Add message indicating manual installation of aeolis * Update vegetation parameters in constants.py (#250) * Update vegetation parameters in constants.py Removes unused V_Lat parameter solves #120 Changes default for veg_min_elevation to -10 to avoid unwanted use of this functionality. * Update aeolis/constants.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * input and output tab added improved domain plotting functionality * added functionality * Fix GUI crash when canceling file selection on startup (#256) * Initial plan * Fix GUI to handle cancel on startup gracefully Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Address code review feedback: move import to top and remove hardcoded path Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Remove placeholder path, set configfile to 'No file selected' when canceled Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add Plot Output 1D tab for transect visualization with unified interface (#257) * Initial plan * Add Plot Output 1D tab with transect plotting functionality Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add variable change callback for 1D plot updates Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Fix code review issues: cross-platform paths and dimension validation Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Improve dimension validation and dictionary access robustness Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Fix transect direction bug and unify 2D/1D tab interface with dynamic variable dropdowns Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes (#259) * Initial plan * Add Plot Output 1D tab with transect plotting functionality Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add variable change callback for 1D plot updates Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Fix code review issues: cross-platform paths and dimension validation Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Improve dimension validation and dictionary access robustness Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Fix transect direction bug and unify 2D/1D tab interface with dynamic variable dropdowns Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes * added functionality, colorbars, many small fixes. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * domain overview added to 1D plot mode. * Delete aeolis/GUI.ipynb * Remove incompatible parameter checks for ne_file Removed error handling for missing ne_file when using Avalanching. --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
…i package structure Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
…plication.py Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
…achieved! Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com>
…github.com/openearth/aeolis-python into copilot/refactor-gui-code-for-optimization
* add wind plotting functionality * Refactor GUI: Complete modular architecture with all GUI tabs extracted, export functionality, and utilities (#263) * Initial plan * Phase 1: Add constants, utility functions, and improve documentation Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 2: Extract helper methods and reduce code duplication Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 3: Add variable label/title constants and improve docstrings Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Final: Add comprehensive refactoring documentation and summary Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add export functionality: PNG and MP4 animations for all visualizations Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 4: Begin code organization - extract utils module and create gui package structure Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add comprehensive additional improvements proposal document Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes related to import and animattion functionality * updated structure for further refactoring * Refactor: Extract DomainVisualizer and rename gui_app_backup.py to application.py Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfix * bugfix on loading domain * Refactor: Extract WindVisualizer to modular architecture Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Refactor: Extract Output2DVisualizer for 2D NetCDF visualization Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Refactor: Extract Output1DVisualizer - Complete modular architecture achieved! Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes loading files * removed netcdf check * bugfixes after refractoring * bugfixes with domain overview * Speeding up complex drawing * hold on functionality added * Tab to run code added. * Update aeolis/gui/application.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/application.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/domain.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/domain.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/main.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/output_2d.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Rename visualizers folder to gui_tabs and update all imports Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bigfixes related to refactoring * reducing code lenght by omitting some redundancies * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> Co-authored-by: Sierd <sierd.devries@tudelft.nl> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
#268) * Refactor GUI: Complete modular architecture with all GUI tabs extracted, export functionality, and utilities (#263) * Initial plan * Phase 1: Add constants, utility functions, and improve documentation Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 2: Extract helper methods and reduce code duplication Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 3: Add variable label/title constants and improve docstrings Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Final: Add comprehensive refactoring documentation and summary Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add export functionality: PNG and MP4 animations for all visualizations Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Phase 4: Begin code organization - extract utils module and create gui package structure Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Add comprehensive additional improvements proposal document Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes related to import and animattion functionality * updated structure for further refactoring * Refactor: Extract DomainVisualizer and rename gui_app_backup.py to application.py Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfix * bugfix on loading domain * Refactor: Extract WindVisualizer to modular architecture Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Refactor: Extract Output2DVisualizer for 2D NetCDF visualization Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Refactor: Extract Output1DVisualizer - Complete modular architecture achieved! Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bugfixes loading files * removed netcdf check * bugfixes after refractoring * bugfixes with domain overview * Speeding up complex drawing * hold on functionality added * Tab to run code added. * Update aeolis/gui/application.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/application.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/domain.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/domain.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/main.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update aeolis/gui/visualizers/output_2d.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Rename visualizers folder to gui_tabs and update all imports Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * bigfixes related to refactoring * reducing code lenght by omitting some redundancies * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> Co-authored-by: Sierd <sierd.devries@tudelft.nl> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Delete ADDITIONAL_IMPROVEMENTS.md * deleted md files --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
crash reported when newest python version is used. Numba not compatible yet.
* Initial plan * Fix ustars0 and ustarn0 initialization bug in wind.py Fixed bug where ustars0 and ustarn0 were incorrectly set to ustar magnitude instead of their respective directional components ustars and ustarn. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * input files for debugging * Fix missing division in dtauy FFT shear calculation The dtauy_t formula in the FFT shear method was missing the division by sc_kv(0., 2.*sqrt(2.)*sigma), causing incorrect y-direction shear stress perturbations. This resulted in non-zero ustarn values even when the bed had no y-direction variability. The formula now matches the structure of dtaux_t calculation. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Fix frequency array alignment in FFT shear calculation The kx and ky frequency arrays were misaligned with the FFT output. The code was creating frequency arrays with fftfreq(n+1)[1:] which skips the DC component, but the FFT includes all frequencies. This caused incorrect mapping between frequencies and FFT coefficients, leading to wrong shear perturbations. Fixed by using fftfreq(n) which properly matches the FFT output dimensions and includes the DC component at the correct index. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Handle division by zero at DC component in FFT shear The previous fix included the DC component (kx=0, ky=0) in the frequency arrays, which caused division by zero errors in the shear calculations. Fixed by: - Using safe division with np.where to replace zeros with 1.0 temporarily - Explicitly setting DC component of perturbations to 0 after calculation - Applying same fix to filter_highfrequencies function The DC component represents the mean value and doesn't contribute to perturbations, so setting it to zero is physically correct. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Use masked computation to avoid invalid values in FFT shear The previous fix still allowed invalid values when kx=0 (but ky≠0) because sigma depends on kx. When kx=0, sigma=0 which causes issues in Bessel function ratios. New approach: - Create a mask for valid computations: (k > 0) & (abs(kx) > 0) - Initialize perturbation arrays with zeros - Only compute perturbations for valid frequency combinations - All invalid combinations (kx=0 or k=0) automatically get zero perturbation This is physically correct: perturbations at kx=0 (pure y-direction frequencies) should be zero for the x-direction flow formulation. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Simplify FFT shear edge case handling Simplified the masked computation approach to a cleaner implementation: - Use np.where for safe division (replace zeros with 1.0 temporarily) - Compute formulas normally with safe arrays - Apply invalid_mask at the end to zero out problematic regions This achieves the same result with much simpler, more readable code. Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> * Update shear.py reverted the suggested division in dtauy_t calculation * deleted wind tests * shear patch --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Sierd <14054272+Sierd@users.noreply.github.com> Co-authored-by: Sierd <sierd.devries@tudelft.nl>
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.