qiskit-community/qiskit-metal: v0.6.0 — qutip 5 + HFSS 2024.1+ + pyEPR 0.9.5
Authors/Creators
- Priti Ashvin Shah1
- Zlatko Minev2
- Jeremy Drysdale3
- Marco Facchini
- Thomas G McConkey2
- Dennis Wang
- Yehan Liu
- Abhishek Chakraborty4
- Nick Lanzillo
- Will Shanks
- Helena Zhang3
- cdelnano
- Patrick J. O'Brien
- PositroniumJS
- Sadman Ahmed Shanto
- Matthew Treinish
- Abeer Vaishnav5
- Arnau Casau
- John L Blair6
- Sagarika Mukesh3
- ismirlia
- Eric Arellano2
- Claude7
- Figen YILMAZ8
- Clark Miyamoto
- Sharky
- Samarth Hawaldar
- Luciano Bello9
- Patrick Jacobs
- Jagatheesan Jag
- 1. Software Engineer IBM Research
- 2. IBM Quantum
- 3. IBM
- 4. University of Rochester
- 5. Google Quantum AI
- 6. IBM Research
- 7. @anthropics
- 8. TU Delft
- 9. Qiskit - IBM Quantum
Description
v0.6.0 — qutip 5 + HFSS 2024.1+ + pyEPR 0.9.5
Minor version bump: this release adds HFSS 2024.1+ solver support and
a new solution_types helper module — backward-compatible new
functionality, not strictly a patch fix.
This release brings qiskit-metal into alignment with current pyEPR (0.9.5) and qutip (5.x), adds HFSS 2024.1+ solution-type support, and fixes long-standing drift between the pip and conda install paths.
Highlights
- qutip 5 compatibility fix in
analyses/hamiltonian/states_energies.py.extract_energiesusednp.array([Qobj, ...])andnp.absolute(Qobj)patterns that silently broke under qutip 5 (object-dtype ndarray instead of stacking). Converted to.full()before stacking + numpy ops; backward-compatible with qutip 4. (#1050) - HFSS 2024.1+ solution-type alias support. HFSS 2024.1 renamed
the strings reported for the Driven Modal / Driven Terminal solvers
(
DrivenModal→HFSS Modal Network/HFSS Hybrid Modal Network, same shape for Driven Terminal). Metal had eight hard-coded==checks against the legacy strings that silently fell through on HFSS 2024.1+. Newsolution_typeshelper module with frozen alias sets +is_eigenmode/is_drivenmodal/is_driventerminal/is_q3d/canonical_kindpredicates; 8 call sites inhfss_renderer.py,q3d_renderer.py,ansys_renderer.pyupdated. Mirrors pyEPR PR #176. (#1051) - pyEPR-quantum bumped to ≥ 0.9.5, which ships:
pyEPR.solution_typespublic module (alias sets matching metal's), AEDT 2024.1+ hybrid-design fix, QuTiP 5.x.norm()fix inback_box_numeric, setup-name silent-ignore now raisesValueError, convergence-plot log-scale crash fix. (#1053, #1054) - Dead
pyEPR.hfssimport inrenderer_ansys/parse.pyfixed. The module was importing frompyEPR.hfss, removed in pyEPR ≥ 0.9; symbols moved topyEPR.ansys. Latent because no in-tree caller hit it, but any external user ofparse_value_hfsswas hittingModuleNotFoundError. (#1051) - conda environment drift resolved.
environment.ymlhadqutip>=4.7.1andscqubits~=3.1.0whilepyproject.tomlrequiredqutip>=5.0.0andscqubits>=4.1.0. conda users would have pulled incompatible older versions. Now synced. (#1053)
New test coverage
tests/test_solution_types.py— 11 tests pinning every legacy and HFSS 2024.1+ alias to its canonical kind, alias-set disjointness, case-sensitivity, rejection ofNoneand unknown strings.tests/test_pyepr_integration.py— 16 tests pinning the full pyEPR API surface metal imports:Convert.{Ic_from_Lj, Ej_from_Lj, Ec_from_Cs}with metal's exact call shapes,e_el/hbaragainst CODATA, everypyEPR.ansyssymbol, public and privatepyEPR.reportsconvergence plotters, top-levelProjectInfo/DistributedAnalysis/QuantumAnalysisre-exports.tests/test_analyses_2_functionality.py— new coverage forHcpb.h0_to_qutip,Hcpb.n_to_qutip(with and withoutthresh),basis_state_on,extract_energies.- Full suite: 427 passing (up from 391 baseline).
Compatibility
- Python: 3.10, 3.11, 3.12
- qutip: ≥ 5.0.0
- pyEPR-quantum: ≥ 0.9.5
- numpy: ≥ 1.24.2, < 2
- scqubits: ≥ 4.1.0
Cross-repo coordination
This release lands the metal-side mirror of pyEPR PRs #172 and #176.
The new pyEPR.solution_types module (shipped in pyEPR-quantum 0.9.5)
is a drop-in for metal's own solution_types.py — constant names
already match. A future PR may consolidate to importing from pyEPR
directly for a single source of truth.
Full changelog
- #1050 — Fix qutip 5 incompatibility in extract_energies, add coverage tests
- #1051 — Sync metal with pyEPR PR #176: HFSS 2024.1+ solution-type aliases + API contract tests
- #1053 — Bump pyEPR-quantum to 0.9.4, metal to 0.5.4, sync conda env floors
- #1054 — Bump pyEPR-quantum floor to >=0.9.5
What's Changed
- Fix 1045: deprecated pandas behavior in mpl_renderer by @PositroniumJS in https://github.com/qiskit-community/qiskit-metal/pull/1047
- Update references to user folders in gitignore by @PositroniumJS in https://github.com/qiskit-community/qiskit-metal/pull/1039
- Correct bug in GDS renderer related to
pandasupdate by @PositroniumJS in https://github.com/qiskit-community/qiskit-metal/pull/1049 - Fix qutip>=5 compatibility in states_energies and add tests by @zlatko-minev in https://github.com/qiskit-community/qiskit-metal/pull/1050
- Sync metal with pyEPR PR #176: HFSS 2024.1+ solution-type aliases + API contract tests by @zlatko-minev in https://github.com/qiskit-community/qiskit-metal/pull/1051
- Update 1.2-Quick-start.ipynb by @dyk07 in https://github.com/qiskit-community/qiskit-metal/pull/1044
- Bump pyEPR-quantum to 0.9.4, metal to 0.5.4, sync conda env floors by @zlatko-minev in https://github.com/qiskit-community/qiskit-metal/pull/1053
- Bump pyEPR-quantum floor to >=0.9.5 by @zlatko-minev in https://github.com/qiskit-community/qiskit-metal/pull/1054
New Contributors
- @dyk07 made their first contribution in https://github.com/qiskit-community/qiskit-metal/pull/1044
Full Changelog: https://github.com/qiskit-community/qiskit-metal/compare/v0.5.3...v0.6.0
Files
qiskit-community/qiskit-metal-v0.6.0.zip
Files
(34.6 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:081bd204090e8479c98e2e47486eddfd
|
34.6 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/qiskit-community/qiskit-metal/tree/v0.6.0 (URL)
Software
- Repository URL
- https://github.com/qiskit-community/qiskit-metal