Draft
Conversation
…port - Introduced a static library of over 55 predefined materials with detailed metadata and lookup functions. - Added dispersive material models including Sellmeier, Drude, Lorentz, and Debye, with conversion capabilities to standard materials. - Updated README to reflect new material functionalities and usage notes. - Implemented tests for material library and dispersive models to ensure accuracy and reliability.
- Consolidated material models into the design module, introducing new classes for PEC and PMC materials. - Removed obsolete medium-related classes and functions from the components module. - Updated material library to streamline access to material definitions and enhance compatibility with design workflows. - Revised README to reflect changes in material structure and usage.
- Moved material library components to the design module, enhancing organization and accessibility. - Added a comprehensive material library with a new API for material handling, including various material types and their properties. - Removed deprecated material library files and classes to streamline the codebase. - Updated README to reflect the new material library structure and usage instructions.
- Replaced the deprecated material_library.py with a new library.py for improved organization and functionality. - Introduced a comprehensive function-based material registry, supporting various material types and their properties. - Updated README to reflect the new library structure and usage instructions. - Removed obsolete material library data files and scripts to streamline the codebase.
- Eliminated PECMaterial and PMCMaterial classes along with their instances and related functions from the materials module. - Updated imports and exports across the codebase to reflect the removal of these materials. - Revised README to remove references to deprecated materials.
- Introduced `show()` methods for various material classes including `Material`, `CustomMaterial`, `Material2D`, and `AnisotropicMaterial` to display their properties and dispersion characteristics. - Created a new `material_plots.py` module containing utility functions for plotting material responses. - Updated the README with examples demonstrating the new visualization features. - Added tests to ensure the `show()` methods function correctly across different material types.
- Introduced native support for dispersive materials in the simulation framework, allowing for accurate modeling of frequency-dependent behaviors. - Added methods for converting dispersive material properties into canonical pole representations, facilitating integration with the solver. - Updated the simulation and field classes to handle dispersive materials, including new methods for advancing electric fields with ADE corrections. - Enhanced the README to include details on the new dispersive material functionalities and usage instructions. - Implemented tests to validate the behavior of dispersive materials and ensure consistency across simulation methods.
…ation methods - Added a new method for creating a JIT-compiled dispersive E-update function in the Simulation class, improving performance for dispersive materials. - Updated the run_fast method to utilize the new dispersive E-update function, ensuring accurate updates of ADE states during simulation. - Enhanced the README to clarify the behavior of run_jit_scan with dispersive materials, including fallback mechanisms when sources are present. - Introduced tests to validate the correct functioning of dispersive updates and fallback scenarios in the simulation framework.
- Renamed `run_fast` to `run` in the Simulation class, consolidating simulation execution under a unified API. - Updated the README to clarify the behavior of the new `run` method and its compatibility with visualization options. - Modified tests to reflect the changes in method names and ensure consistent behavior across simulation scenarios. - Removed the deprecated `run_jit_scan` method, streamlining the simulation interface.
- Introduced a new module for dispersion validation, including utilities for estimating transfer functions and extracting effective refractive indices. - Added a showcase example for pulse-through-slab dispersion validation, demonstrating the usage of the new features. - Updated the README to include information on the new dispersion validation capabilities and usage instructions. - Implemented tests to ensure the functionality of dispersion validation methods and showcase execution.
- Refactored the dispersion showcase example to support multiple material cases (SiO2, Gold, Water) with configurable parameters. - Simplified the simulation workflow by consolidating case definitions and improving readability. - Updated the simulation execution to handle both cases with and without slabs, providing a clearer comparison of results. - Added warnings for non-finite fields during simulation to improve robustness and user feedback.
- Simplified the material selection process by introducing a centralized CASE_PRESETS dictionary for key parameters. - Enhanced the simulation workflow with dedicated functions for retrieving material properties and building designs. - Improved error handling for unsupported material keys, providing clearer feedback to users. - Streamlined the code structure for better readability and maintainability.
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
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.
See https://pmc.ncbi.nlm.nih.gov/articles/PMC2763393/?lang=de