From 6c830644faaa3875e57847518ece6ec45d2ede27 Mon Sep 17 00:00:00 2001 From: Quentin Wach Date: Sun, 17 May 2026 15:02:42 +0200 Subject: [PATCH 1/2] Refactor README.md to improve clarity and structure in the Physics section - Consolidated the mathematical expressions for Maxwell's equations into a single line for better readability. - Updated section headers, changing "Performance" to "Solver" to better reflect the content. - Removed redundant line breaks to enhance the flow of information. --- README.md | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 1704672..8be5d11 100644 --- a/README.md +++ b/README.md @@ -61,32 +61,15 @@ data.to_hdf5("modes.h5") ## Physics MicroMode solves the source-free frequency-domain Maxwell equations on a -rasterized Yee mode plane, - -$$ -\nabla\times\mathbf{E}=-i\omega\mu\mathbf{H}, -\qquad -\nabla\times\mathbf{H}=i\omega\epsilon\mathbf{E}, -$$ -with modal fields $\mathbf{E},\mathbf{H}\propto e^{i k_0 n_\mathrm{eff} z}.$ +rasterized Yee mode plane, $\nabla\times\mathbf{E}=-i\omega\mu\mathbf{H}, \; \nabla\times\mathbf{H}=i\omega\epsilon\mathbf{E},$ with modal fields $\mathbf{E},\mathbf{H}\propto e^{i k_0 n_\mathrm{eff} z}.$ On diagonal material grids this becomes a transverse eigenproblem, - -$$ -A_\mathrm{diag} -\begin{bmatrix}E_x\\E_y\end{bmatrix} -= --n_\mathrm{eff}^2 -\begin{bmatrix}E_x\\E_y\end{bmatrix} -$$ - while full tensor or transformed grids use a first-order tensorial form. The detailed derivation is in [docs/physics-model.md](docs/physics-model.md), and -the public solver controls are summarized in -[docs/mode-solver-methods.md](docs/mode-solver-methods.md). +the public solver controls are summarized in [docs/mode-solver-methods.md](docs/mode-solver-methods.md). -## Performance +## Solver MicroMode is designed to make high-performance mode solving available without requiring users to install external solver stacks. The production backend is a From 775e747dfe3bd41d0878e1f4ec1a16643db6137a Mon Sep 17 00:00:00 2001 From: Quentin Wach Date: Sun, 17 May 2026 15:06:30 +0200 Subject: [PATCH 2/2] Update GitHub Actions workflow for coverage reporting - Added `continue-on-error: true` to the Codecov upload and badge download steps to prevent workflow failure on errors. - Included a condition to check the success of the `test-portable` job before updating the coverage badge. - Ensured the coverage badge is only committed if it exists, improving the robustness of the CI process. --- .github/workflows/tests.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c804f15..1e09c59 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -55,12 +55,12 @@ jobs: - name: Upload coverage to Codecov id: codecov_upload uses: codecov/codecov-action@v4 + continue-on-error: true if: matrix.python-version == '3.13' with: files: ./coverage.xml + token: ${{ secrets.CODECOV_TOKEN }} fail_ci_if_error: true - env: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} - name: Generate local coverage badge if: matrix.python-version == '3.13' && steps.codecov_upload.outcome == 'success' @@ -77,7 +77,7 @@ jobs: name: Update coverage badge needs: test-portable runs-on: ubuntu-latest - if: github.event_name == 'push' + if: github.event_name == 'push' && needs.test-portable.result == 'success' permissions: contents: write @@ -86,11 +86,13 @@ jobs: - name: Download local coverage badge uses: actions/download-artifact@v4 + continue-on-error: true with: name: coverage-badge path: tmp/coverage-badge - name: Commit local coverage badge + if: hashFiles('tmp/coverage-badge/coverage.svg') != '' run: | cp tmp/coverage-badge/coverage.svg docs/assets/coverage.svg if ! git diff --quiet -- docs/assets/coverage.svg; then