Skip to content
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

Compatibility with Ansys 2022 R2 #142

Merged
merged 151 commits into from
Nov 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
151 commits
Select commit Hold shift + click to select a range
e89dc0c
Update README.md
zlatko-minev Sep 11, 2020
26bfb47
Update README.md
zlatko-minev Sep 16, 2020
0569ab7
fix typo
nathanshammah Sep 16, 2020
367a292
update information on conda forge install
nathanshammah Sep 16, 2020
cd65fd1
add conda badge to readme
nathanshammah Sep 16, 2020
3e1f88d
add information on pypi install and name
nathanshammah Sep 16, 2020
67ab9e8
fix typo
nathanshammah Sep 16, 2020
997d72a
add info on pypi install and note on package name
nathanshammah Sep 16, 2020
5d42112
add pypi badge to readme via fury.io
nathanshammah Sep 16, 2020
557a42a
Merge pull request #50 from nathanshammah/conda-doc
zlatko-minev Sep 16, 2020
e191f2d
Merge remote-tracking branch 'upstream/master' into Asaf_branch
SQClab Sep 24, 2020
eaf4927
Merge commit '557a42aeeee148b8acf7c57c1873a50d8342fba2' into Asaf_branch
SQClab Sep 24, 2020
7a816e8
Update core_quantum_analysis.py
SQClab Sep 24, 2020
52ef6e3
Update core_quantum_analysis.py
SQClab Sep 24, 2020
55535df
Update core_quantum_analysis.py
SQClab Sep 24, 2020
1ec9fdb
Update README.md
zlatko-minev Sep 29, 2020
1adad86
Update README.md
zlatko-minev Sep 29, 2020
7980395
Update README.md
zlatko-minev Oct 5, 2020
2942296
Update README.md
zlatko-minev Oct 5, 2020
f04ae24
Update README.md
zlatko-minev Oct 5, 2020
74a2487
Update README.md
zlatko-minev Oct 5, 2020
642d81f
Update README.md
zlatko-minev Oct 5, 2020
9711eda
Update README.md
zlatko-minev Oct 5, 2020
56b3f07
Update README.md
zlatko-minev Oct 5, 2020
e9594dc
Update about.rst
zlatko-minev Oct 5, 2020
9474010
Update about.rst
zlatko-minev Oct 5, 2020
6d8c3e0
Update about.rst
zlatko-minev Oct 5, 2020
b585c24
Update installation.rst
zlatko-minev Oct 5, 2020
ca470d1
Update README.md
zlatko-minev Oct 5, 2020
39d9145
Update README.md
zlatko-minev Oct 6, 2020
7d064e8
Merge remote-tracking branch 'upstream/master' into Asaf_branch
SQClab Oct 11, 2020
2f1e573
Sorted Qs and freqs
bguttel Oct 18, 2020
98a0d25
Update README.md
zlatko-minev Oct 23, 2020
56a4393
Merge pull request #55 from asafdi/Asaf_branch
zlatko-minev Oct 23, 2020
203d956
Merge pull request #51 from zlatko-minev/develop
zlatko-minev Oct 23, 2020
4cc0b3c
Make package name in setup.py match name on PyPI
willsALMANJ Nov 12, 2020
d43fdb8
Merge pull request #63 from willsALMANJ/willsALMANJ-patch-1
zlatko-minev Nov 12, 2020
297f8a6
Remove old conda recipe
wshanks Nov 13, 2020
63ab2a9
Version 0.8.4
wshanks Nov 13, 2020
5b44cfb
Merge pull request #64 from willsALMANJ/v0.8.4
zlatko-minev Nov 13, 2020
a8d1bdf
Create greetings.yml
zlatko-minev Nov 26, 2020
0612997
Create manual.yml
zlatko-minev Nov 26, 2020
3737d8b
Create Q3D setup within HfssDesign
dwang429 Dec 2, 2020
ad0ba11
Merge branch 'master' of https://github.com/zlatko-minev/pyEPR
dwang429 Dec 2, 2020
f63cf45
Create publish-to-pypi
zlatko-minev Dec 2, 2020
d9d1a9c
Rename publish-to-pypi to publish-to-pypi.yml
zlatko-minev Dec 2, 2020
bebf490
Update README.md
zlatko-minev Dec 2, 2020
3b3d2a1
Update version from 0.8.4 to 0.8.4.2
dwang429 Dec 3, 2020
4dafcfc
Fixed bug with port impedance in ansys.py
dwang429 Jan 6, 2021
c567ecb
Modify how to connect to Ansys
dwang429 Jan 25, 2021
fe8c50b
Update config_user.py
dwang429 Jan 27, 2021
82b20aa
Edit yml file
dwang429 Jan 27, 2021
2da100b
Update publish-to-pypi.yml
dwang429 Jan 27, 2021
d37c393
Updated version number
dwang429 Jan 27, 2021
090d381
If a project or design is missing in Ansys app, then return None and …
priti-ashvin-shah-ibm Feb 3, 2021
0b36217
typo and logger add for no active design
marcolincs Feb 3, 2021
29a2747
Add method to allow user to add a new Q3d to project referenced in Pr…
priti-ashvin-shah-ibm Feb 5, 2021
8e31179
Updated version number
dwang429 Feb 8, 2021
ff52e2a
Fix get_setup method
dwang429 Feb 10, 2021
7fa1272
correction to enable q3d design setup default + removing error in get…
marcolincs Feb 17, 2021
231e818
209 if design exists add it (#71)
priti-ashvin-shah-ibm Feb 19, 2021
d6dbae5
Ansys version update for Z matrices
dwang429 Feb 19, 2021
7f85a40
Merge branch 'master' of https://github.com/zlatko-minev/pyEPR
dwang429 Feb 19, 2021
3b3d194
Update ansys.py for Ansys 2020
dwang429 Feb 26, 2021
c3cc666
get_setup fixed to use the passed setup name + typos
marcolincs Mar 1, 2021
8485220
up-rev
marcolincs Mar 2, 2021
16f6107
Create pyEPR.bib
zlatko-minev Mar 17, 2021
a837414
Update pyEPR.bib
zlatko-minev Mar 17, 2021
0701d2f
Update README.md
zlatko-minev Mar 17, 2021
4110d6c
Update README.md
zlatko-minev Mar 17, 2021
97d0906
Update README.md
zlatko-minev Mar 17, 2021
6c4ed5a
Added ansys calculator functions
bguttel Apr 8, 2021
492bca6
Typos mainly
bguttel Apr 19, 2021
0d98559
Update ansys.py
bguttel Apr 19, 2021
3e979be
Update ansys.py
zlatko-minev May 9, 2021
9c619b7
Merge pull request #76 from bguttel/master
zlatko-minev May 9, 2021
4f95848
Merge pull request #74 from bguttel/patch-1
zlatko-minev May 9, 2021
8876e93
Update README.md
zlatko-minev May 9, 2021
e2dff8e
Update pyEPR.bib
zlatko-minev May 9, 2021
ad93ee5
Update pyEPR.bib
zlatko-minev May 9, 2021
b13ef8f
Update pyEPR.bib
zlatko-minev May 9, 2021
8a766d9
Update core_quantum_analysis.py
bguttel Jun 1, 2021
ee568dc
Merge branch 'master' of https://github.com/bguttel/pyEPR
bguttel Jun 1, 2021
3fb7682
Merge pull request #77 from bguttel/master
zlatko-minev Jun 2, 2021
dd61375
Updates linguist's calculation for pyEPR
paniash Jun 22, 2021
79f6802
Merge pull request #79 from paniash/linguist
zlatko-minev Jun 25, 2021
ad58d2b
Typos
bguttel Jul 21, 2021
e74d94d
Mostly typos, some corrections
bguttel Jul 28, 2021
389cdde
clean_up_solutions functions and some typos
bguttel Jul 29, 2021
f01f64e
Merge pull request #82 from bguttel/master
zlatko-minev Aug 10, 2021
f79941d
Update core_quantum_analysis.py
zlatko-minev Aug 27, 2021
1339bd5
Tutorial2: Correct import of CalcObject to pyEPR.ansys
Oct 26, 2021
a9d9d27
Merge pull request #85 from JONA-X/tutorial2_calcObject_import
zlatko-minev Oct 27, 2021
7f37492
Indentation after was wrong and variable swp_var was never defined
Oct 27, 2021
5998373
Merge pull request #86 from JONA-X/example
zlatko-minev Oct 27, 2021
b8a76c7
fixed mode number error in QuantumAnalysis
hatlabcz Nov 4, 2021
d0d1a7c
Merge pull request #88 from hatlabcz/master
zlatko-minev Nov 8, 2021
d507810
Update back_box_numeric.py
zlatko-minev Nov 18, 2021
1483e7f
fix log plot bug if q__coupling isnot there
zlatko-minev Jan 7, 2022
a52a850
Update core_quantum_analysis.py
zlatko-minev Jan 7, 2022
8a29dbb
Update the init and setup files before creating a tag.
priti-ashvin-shah-ibm Jan 7, 2022
386ed3d
Merge pull request #91 from zlatko-minev/90_publish_to_pypi
zlatko-minev Jan 10, 2022
9290bcd
Update back_box_numeric.py
zlatko-minev Jan 10, 2022
7c968a4
Add pylint CI check
wshanks Jan 10, 2022
d2d5223
Merge pull request #92 from wshanks/pylint-ci
zlatko-minev Jan 10, 2022
b24c42a
Fix old keyword argument name in first tutorial
nikosavola Feb 7, 2022
e1a6815
Merge pull request #95 from nikosavola/94-first-tutorial-old-argument
zlatko-minev Feb 7, 2022
8c6b013
Check for infinite values in the Quality Factors.
priti-ashvin-shah-ibm Feb 9, 2022
fb6f384
Change syntax to pass pylint. In particular, separate numpy from pan…
priti-ashvin-shah-ibm Feb 9, 2022
345ba65
Add int cast to pass pylint.
priti-ashvin-shah-ibm Feb 9, 2022
1622b73
Change syntax to pass pylint.
priti-ashvin-shah-ibm Feb 9, 2022
427bc7d
Disable the pylint warning.
priti-ashvin-shah-ibm Feb 9, 2022
4b9b6f2
Merge pull request #97 from zlatko-minev/96_plot_hamiltonian
zlatko-minev Feb 10, 2022
5945628
Use updated tag to include fix for issue #96.
priti-ashvin-shah-ibm Feb 10, 2022
2018db6
Merge pull request #98 from zlatko-minev/90_publish_to_pypi
zlatko-minev Feb 10, 2022
3030b31
Systematically fix typos in code and documentation (#99)
nikosavola Feb 16, 2022
e13dae4
Test compiling docs in CI (#104)
nikosavola Mar 23, 2022
dfd1f63
Add dissipative elements as arguments to `ProjectInfo` (#103)
nikosavola Mar 24, 2022
fb9eac3
Fix docstrings formatting (#101)
nikosavola Apr 28, 2022
3446d23
https://securitylab.github.com/research/github-actions-preventing-pwn…
priti-ashvin-shah-ibm May 11, 2022
523af53
Replace attrdict to addict for python 3.10 compatibility (#108)
GyeonghunKim May 25, 2022
1fefee7
Prepare for new tag for pyepr for pypi. (#112)
priti-ashvin-shah-ibm May 25, 2022
48db6af
Update the README to reflect addict vs attrdict in both files.
priti-ashvin-shah-ibm May 26, 2022
45ed220
Merge pull request #114 from zlatko-minev/113_update_conda_env
ThomasGM4 May 26, 2022
f30ab7e
Make the type hint more accurate.
priti-ashvin-shah-ibm May 27, 2022
e652fc6
Current code expects None values, as opposed to empty list.
priti-ashvin-shah-ibm May 27, 2022
1ff6a10
Prepare to use next tag for Metal.
priti-ashvin-shah-ibm May 27, 2022
84a2c73
Merge pull request #116 from zlatko-minev/115_type_hints
ThomasGM4 May 27, 2022
3660e76
Add variation labels to plots in `hfss_report_full_convergence` (#119)
nikosavola Jul 5, 2022
f05295d
Add other parametric sweep options (#117)
zachparrott Jul 20, 2022
87679c1
Add DrivenTerminal support (#121)
nikosavola Jul 20, 2022
e610dc4
Add single surface `DistributedAnalysis.get_Qsurface` (#123)
nikosavola Jul 20, 2022
955e729
Fix EPR sign bug that caused EPR to always be positive (#125)
obrienpja Jul 20, 2022
c66fa0b
Update README.md
zlatko-minev Jul 20, 2022
027c355
Update version to 0.8.5.6 for EPR sign bug fix (#126)
obrienpja Jul 20, 2022
570b8d8
Fix EPR bug and bump to version 0.8.5.7
obrienpja Jul 22, 2022
ca15094
Pass lv=lv to evaluate
obrienpja Jul 22, 2022
6b6dcdd
Update version to 0.8.5.7 in __init__.py
obrienpja Jul 22, 2022
0ac3fa2
Merge pull request #127 from zlatko-minev/fix-epr-sign-v2
obrienpja Jul 22, 2022
416c868
Variation support to `calc_p_electric_volume` (#132)
nikosavola Aug 4, 2022
490886a
Support synchronised variables in `Optimetrics.create_setup` (#130)
nikosavola Aug 4, 2022
5e5e0e1
Don't extend `hfss_report_full_convergence` vertically (#135)
nikosavola Aug 10, 2022
f2ff1c9
Support loss tangents for different surfaces in `do_EPR_analysis` (#144)
nikosavola Nov 8, 2022
aa90e8b
Fix #145 .gitignore (#146)
zachparrott Nov 17, 2022
233cefe
Add dtype to empty Pandas Series (#139)
nikosavola Dec 16, 2022
017ea78
Refactor `DataFrame.append` to `pd.concat` (#138)
nikosavola Dec 20, 2022
e3bbf53
Replace usage of np.float with float (#147) (#150)
jagandecapri Apr 17, 2023
148edc0
Correctly select a few modes in analyze_variation (#149)
clarayfontaine Apr 25, 2023
0abdc88
Update setup.py
zlatko-minev Jun 14, 2023
69ce057
Update __init__.py
zlatko-minev Jun 14, 2023
4086a8d
Update core_distributed_analysis.py (#152)
AndersenQubitLab Nov 9, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.ipynb linguist-vendored
70 changes: 70 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: CI

on:
push:
branches:
- master
pull_request: ~

env:
# Increment this to invalidate the cache without modifying requirements.txt
PIPCACHEVERSION: 0
PYTHONVERSION: '3.9.x' # qutip does not support 3.10 yet

jobs:
pylint:
runs-on: ubuntu-latest
steps:
- name: Check out repo
uses: actions/checkout@v2
- name: Set up Python
id: setup-python
uses: actions/setup-python@v2
with:
python-version: ${{ env.PYTHONVERSION }}
- name: Set up cache
id: cache
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}-${{ env.PIPCACHEVERSION }}
restore-keys: |
${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-
- name: Install package and pylint
run: python -m pip install . pylint
- name: Run pylint
run: pylint --errors-only --jobs=0 pyEPR

test_docs:
runs-on: ubuntu-latest
steps:
- name: Check out repo
uses: actions/checkout@v2
- name: Set up Python
id: setup-python
uses: actions/setup-python@v2
with:
python-version: ${{ env.PYTHONVERSION }}
- name: Set up cache
id: cache
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}-${{ env.PIPCACHEVERSION }}
restore-keys: |
${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-
- name: Install package and sphinx
run: python -m pip install . Sphinx
- name: Make docs
run: |
cd docs
make html
- name: Upload docs to artifact
uses: actions/upload-artifact@v2
if: always()
with:
name: docs
path: docs/build/html/
retention-days: 5
13 changes: 13 additions & 0 deletions .github/workflows/greetings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: Greetings

on: [pull_request_target, issues]

jobs:
greeting:
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: '👏👏👏 You are awesome! Thank you for making your first issue to pyEPR '' first issue'
pr-message: '👏👏👏 You are awesome! Thank you for making your first pull request to pyEPR! This team work makes the pyEPR dream work! '' first pr'
30 changes: 30 additions & 0 deletions .github/workflows/manual.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# This is a basic workflow that is manually triggered

name: Manual workflow

# Controls when the action will run. Workflow runs when manually triggered using the UI
# or API.
on:
workflow_dispatch:
# Inputs the workflow accepts.
inputs:
name:
# Friendly description to be shown in the UI instead of 'name'
description: 'Person to greet'
# Default value if no value is explicitly provided
default: 'World'
# Input has to be provided for the workflow to run
required: true

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "greet"
greet:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Runs a single command using the runners shell
- name: Send greeting
run: echo "Hello ${{ github.event.inputs.name }}"
51 changes: 51 additions & 0 deletions .github/workflows/publish-to-pypi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# This is a basic workflow to help you get started with Actions

name: Publish Python 🐍 distributions 📦 to PyPI

# Controls when the action will run.
on:
release:
types: [created]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@master
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7

- name: Install pypa/build
run: >-
python -m
pip install
build
--user

- name: Build a binary wheel and a source tarball
run: >-
python -m
build
--sdist
--wheel
--outdir dist/
.

- name: Publish distribution 📦 to PyPI
if: startsWith(github.ref, 'refs/tags')
uses: pypa/gh-action-pypi-publish@master
with:
password: ${{ secrets.pypi_password }}

4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -102,13 +102,13 @@ ENV/

# exclude config
pyEPR/config.py
pyEPR/_user_config.py
__src__not_incl/
pyEPR/.vscode/
pyEPR/.pylintrc
*.lock
*.aedtresults/*
*.aedtresults*
pyEPR/core.py.rej
pyEPR/core.py.rej
pyEPR/core.py.rej
.vscode/
.idea/
88 changes: 57 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,51 +1,64 @@
Welcome to pyEPR :beers:!
Welcome to pyEPR :beers:!      (see [arXiv:2010.00620](https://arxiv.org/abs/2010.00620))
===================
[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.png?v=103)](https://github.com/zlatko-minev/pyEPR)
[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/zlatko-minev/pyEPR)
[![star this repo](http://githubbadges.com/star.svg?user=zlatko-minev&repo=pyEPR&style=flat)](https://github.com/zlatko-minev/pyEPR)
[![fork this repo](http://githubbadges.com/fork.svg?user=zlatko-minev&repo=pyEPR&style=flat)](https://github.com/zlatko-minev/pyEPR/fork)
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/pyepr-quantum/badges/installer/conda.svg)](https://conda.anaconda.org/conda-forge)
[![PyPI version](https://badge.fury.io/py/pyEPR-quantum.svg)](https://badge.fury.io/py/pyEPR-quantum)
[![DOI](https://zenodo.org/badge/101073856.svg)](https://zenodo.org/badge/latestdoi/101073856)

### Automated Python module for the design and quantization of Josephson quantum circuits

<br>

## :bangbang: :bangbang: pyEPR Working group meeting -- Planning for the future of pyEPR

* Please sign-up here: https://github.com/zlatko-minev/pyEPR/issues/45 :bangbang: :beers:
### Documentation

[Read the docs here.](https://pyepr-docs.readthedocs.io)
<br>

### Automated Python module for the design and quantization of Josephson quantum circuits
## Scientific work:
* Minev, Z. K., Leghtas, Z., Mudhada, S. O., Reinhold, P., Diringer, A., & Devoret, M. H. (2018). [pyEPR: The energy-participation-ratio (EPR) open-source framework for quantum device design.](https://github.com/zlatko-minev/pyEPR/blob/master/pyEPR.bib) [![DOI](https://zenodo.org/badge/101073856.svg)](https://zenodo.org/badge/latestdoi/101073856)
* Minev, Z. K., Leghtas, Z., Mundhada, S. O., Christakis, L., Pop, I. M., & Devoret, M. H. (2020). Energy-participation quantization of Josephson circuits. ArXiv. Retrieved from http://arxiv.org/abs/2010.00620 (2020)
* Z.K. Minev, Ph.D. Dissertation, Yale University (2018), Chapter 4. ([arXiv:1902.10355](https://arxiv.org/abs/1902.10355)) (2018)

**Abstract:** Superconducting circuits incorporating non-linear devices, such as Josephson junctions and nanowires, are among the leading platforms for emerging quantum technologies. Promising applications require designing and optimizing circuits with ever-increasing complexity and controlling their dissipative and Hamiltonian parameters to several significant digits. Therefore, there is a growing need for a systematic, simple, and robust approach for precise circuit design, extensible to increased complexity. The energy-participation ratio (EPR) approach presents such an approach to unify the design of dissipation and Hamiltonians around a single concept — the energy participation, a number between zero and one — in a single-step electromagnetic simulation. This markedly reduces the required number of simulations and allows for robust extension to complex systems. The approach is general purpose, derived ab initio, and valid for arbitrary non-linear devices and circuit architectures. Experimental results on a variety of circuit quantum electrodynamics (cQED) devices and architectures, 3D and flip-chip (2.5D), have been demonstrated to exhibit ten percent to percent-level agreement for non-linear coupling and modal Hamiltonian parameters over five-orders of magnitude and across a dozen samples. Here, in this package, all routines of the EPR approach are fully automated.
## pyEPR Working group meeting -- Planning for the future of pyEPR

## Documentation
* Please sign-up here: https://github.com/zlatko-minev/pyEPR/issues/45 or [directly here](https://docs.google.com/forms/d/e/1FAIpQLScd3WyfzDS47D0WB9skkSPQAXCnKLf7JMxsZ7BnMwK0LjE3Sw/viewform?usp=sf_link) :bangbang: :beers:
- See [pyEPR wiki](https://github.com/zlatko-minev/pyEPR/wiki) for notes from first meeting.
- We will schedule a follow-up meeting in 1-2 mo.

[Read the docs here.](https://pyepr-docs.readthedocs.io)

#### Legacy users
Warning: pyEPR organization was significnatly improved in v0.8-dev (starting 2020; current branch: master \[to be made stable soon\]). If you used a previous version, you will find that all key classes have been renamed. Please, see the tutorials and docs. In the meantime, if you cannot switch yet, revert to use the stable v0.7.
<br>

## Who uses pyEPR?
* Yale University, Michel Devoret lab [QLab](https://qulab.eng.yale.edu/), CT, USA
* Yale University, Rob Schoelkopf lab [RSL](https://rsl.yale.edu/), CT, USA
* [IBM Quantum](https://www.ibm.com/quantum-computing/)
* [IBM Quantum](https://www.ibm.com/quantum-computing/) and IBM's Qiskit Metal
* [QUANTIC](https://team.inria.fr/quantic/people.html#) (QUANTUM INFORMATION CIRCUITS), PARISINRIA, ENS, MINES PARISTECH, UPMC, CNRS. Groups of Zaki Leghtas and team. France
* [Quantum Circuit Group](http://www.physinfo.fr/) Emanuel Flurin, Benjamin Huard, Ecole Normale Supérieure de Lyon, France
* [Quantum Circuit Group](http://www.physinfo.fr/) Benjamin Huard, Ecole Normale Supérieure de Lyon, France
* Emanuel Flurin, CEA Saclay, France
* Ioan Pop group, KIT Physikalisches Institut, Germany
* UC Berkeley, [Quantum Nanoelectronics Laboratory](https://physics.berkeley.edu/quantum-nanoelectronics-laboratory), Irfan Siddiqi, CA, USA
* [Quantum Circuits, Inc.](https://quantumcircuits.com/), CT, USA
* [Seeqc](https://seeqc.com/) (spin-out of Hypres) Digital Quantum Computing, USA
* Serge [Rosenblum Lab](https://www.weizmann.ac.il/condmat/rosenblum/) in the Weizmann Instatue, Israel
* Peter [Leek Lab](https://leeklab.org/), UK
* Serge [Rosenblum Lab] quantum circuits group (https://www.weizmann.ac.il/condmat/rosenblum/) in the Weizmann Instatue, Israel
* University of Oxford - LeekLab - Peter [Leek Lab](https://leeklab.org/), UK
* Britton [Plourde Lab](https://bplourde.expressions.syr.edu/), Syracuse University, USA
* Javad [Shabani Lab](https://wp.nyu.edu/shabanilab/) Quantum Materials & Devices, NYU, NY, USA
* UChicago Dave Schuster Lab, USA
* SQC lab - Shay Hacohen Gourgy, Israel
* Lawrence Berkeley National Lab
* Colorado School of Mines, USA
* Syracuse University, USA
* IPQC, SJTU, Shanghai, China
* Bhabha Atomic Research Centre, India
* Quantum Computing UK
* Alice&Bob, France
* Centre for Quantum Technologies / Qcrew
* Quantum Device Lab ETHZ; Andreas Wallraff
* Bleximo
* ... and many more! (Please e-mail `zlatko.minev@aya.yale.edu` with updates.)


## How do I cite `pyEPR` when I publish?
Cite the following and/or e-mail [`zlatko.minev@aya.yale.edu`](https://www.zlatko-minev.com/) or [`zaki leghtas`](http://cas.ensmp.fr/~leghtas/)
* [arXiv:1902.10355](https://arxiv.org/abs/1902.10355) Z.K. Minev, Ph.D. Dissertation, Yale University (2018), Chapter 4.
* Z.K. Minev, Z. Leghtas, _et al._ (to appear soon on arXiv) (2020)


<br>

# Contents:
Expand All @@ -65,7 +78,9 @@ Cite the following and/or e-mail [`zlatko.minev@aya.yale.edu`](https://www.zlatk
2. **Clone** :point_down: your forked repository locally. ([How to clone a GitHub repo?](https://help.github.com/en/articles/cloning-a-repository)). Setup the `pyEPR` python code by following [Installation and Python Setup](#installation-of-pyepr).
3. **Tutorials** Learn how to use using the [jupyter notebook tutorials](https://github.com/zlatko-minev/pyEPR/tree/master/_tutorial_notebooks)
4. **Stay up to date** Enjoy and make sure to git add the master remote branch `git remote add MASTER_MINEV git://github.com/zlatko-minev/pyEPR.git` [(help?)](https://stackoverflow.com/questions/11266478/git-add-remote-branch).
5. **Cite `pyEPR`** [arXiv:1902.10355](https://arxiv.org/abs/1902.10355) and enjoy! :birthday:
5. **Cite `pyEPR`** [arXiv:2010.00620](https://arxiv.org/abs/2010.00620) / [arXiv:1902.10355](https://arxiv.org/abs/1902.10355) and enjoy! :birthday: [![DOI](https://zenodo.org/badge/101073856.svg)](https://zenodo.org/badge/latestdoi/101073856)



#### Start-up example

Expand All @@ -90,14 +105,16 @@ pinfo.junctions['jBob'] = {'Lj_variable':'Lj_bob', 'rect':'rect_bob', 'lin
pinfo.validate_junction_info() # Check that valid names of variables and objects have been supplied.

# 2b. Dissipative elements: specify
pinfo.dissipative['dielectrics_bulk'] = ['si_substrate', 'dielectic_object2'] # supply names of hfss objects
pinfo.dissipative['dielectrics_bulk'] = ['si_substrate', 'dielectric_object2'] # supply names of hfss objects
pinfo.dissipative['dielectric_surfaces'] = ['interface1', 'interface2']
# Alternatively, these could be specified in ProjectInfo with
# pinfo = epr.ProjectInfo(..., dielectrics_bulk = ['si_substrate', 'dielectric_object2'])

# 3. Perform microwave analysis on eigenmode solutions
eprd = epr.DistributedAnalysis(pinfo)
if 1: # automatic reports
eprd.quick_plot_frequencies(swp_var) # plot the solved frequencies before the analysis
eprd.hfss_report_full_convergence() # report convergen
eprd.hfss_report_full_convergence() # report convergence
eprd.do_EPR_analysis()

# 4a. Perform Hamiltonian spectrum post-analysis, building on mw solutions using EPR
Expand Down Expand Up @@ -150,7 +167,7 @@ Use `pyEPR` directly from the source, and pull updates from the master git repo,
Please keep up to date with `pyEPR` by using git. We like to make it simple using a git-gui manager, [SourceTree](sourcetree.com) or [GitHub Desktop](https://desktop.github.com/).

**Quick setup**
We recommend the approach in the following section, which will be most up to date, but for quick use you can use the [conda forge chanel](https://anaconda.org/conda-forge/pyepr-quantum) to install
We recommend the approach in the following section, which will be most up to date, but for quick use you can use the [conda forge channel](https://anaconda.org/conda-forge/pyepr-quantum) to install
```
conda install -c conda-forge pyepr-quantum
```
Expand All @@ -168,11 +185,11 @@ pip install pyEPR-quantum
$ echo %PATH%
`

2. Install the required packages, including [pint](http://pint.readthedocs.io/en/latest/), [qutip](http://qutip.org/), and [attrdict](https://github.com/bcj/AttrDict). In a terminal window
2. Install the required packages, including [pint](http://pint.readthedocs.io/en/latest/), [qutip](http://qutip.org/), and [addict](https://github.com/mewwts/addict). In a terminal window
```sh
conda install -c conda-forge pint
conda install -c conda-forge qutip
pip install attrdict
pip install addict
```
3. Fork this pyEPR repository on GitHub with your GitHub account. You may clone the fork to your PC and manage it using the [SourceTree](https://www.sourcetreeapp.com/) git-gui manager.
4. Add the pyEPR repository folder to your python search path. Make sure to add the git remote to the master is set up, `git remote add MASTER_MINEV git://github.com/zlatko-minev/pyEPR.git`! [(Help?)](https://stackoverflow.com/questions/11266478/git-add-remote-branch)
Expand All @@ -193,6 +210,10 @@ Follow the same instructions above. You shouldn't have to install mingw or modif



#### Legacy users
Warning: pyEPR organization was significantly improved in v0.8-dev (starting 2020; current branch: master \[to be made stable soon\]). If you used a previous version, you will find that all key classes have been renamed. Please, see the tutorials and docs. In the meantime, if you cannot switch yet, revert to use the stable v0.7.


# HFSS Project Setup for `pyEPR`
-------------
#### Eigenmode Design --- How to set up junctions
Expand Down Expand Up @@ -258,7 +279,7 @@ compiler = mingw32
[build_ext]
compiler = mingw32
```
Next, let's install qutip. You can choose to use conda intall or pip install, or pull from the git directly as done here:
Next, let's install qutip. You can choose to use conda install or pip install, or pull from the git directly as done here:
```sh
conda install git
pip install git+https://github.com/qutip/qutip.git
Expand All @@ -285,12 +306,17 @@ This problem is due to pandas 0.20.1, update to 0.20.3 or better solves this iss
This error happens when trying to read in an hdf file with numpy version 1.16, see [git issue here](https://github.com/numpy/numpy/issues/12791). A solution is to downgrade numpy to 1.15.4 or upgrade to newer versions of hdf and numpy.

# Authors and Contributors
* _Authors:_ [Zlatko Minev](https://www.zlatko-minev.com/) & [Zaki Leghtas](http://cas.ensmp.fr/~leghtas/), with contributions from many friends and colleagues.
* _Authors:_ [Zlatko Minev](https://www.zlatko-minev.com/) & [Zaki Leghtas](http://cas.ensmp.fr/~leghtas/), with contributions from many friends and colleagues. ([arXiv:2010.00620](https://arxiv.org/abs/2010.00620))
* 2015 - present.
* Contributors: [Phil Rheinhold](https://github.com/PhilReinhold), Lysander Christakis, [Devin Cody](https://github.com/devincody), ...
Original versions of pyHFSS.py and pyNumericalDiagonalization.py contributed by [Phil Rheinhold](https://github.com/PhilReinhold), excellent original [repo](https://github.com/PhilReinhold/pyHFSS).
* Terms of use: Use freely and kindly cite the paper (arXiv link to be posted here) and/or this package.
* How can I contribute? Contact [Z. Minev](https://www.zlatko-minev.com/) or [Z. Leghtas](http://cas.ensmp.fr/~leghtas/).
* How can I contribute? Contact [Z. Minev](https://www.zlatko-minev.com/) or [Z. Leghtas](http://cas.ensmp.fr/~leghtas/). [![DOI](https://zenodo.org/badge/101073856.svg)](https://zenodo.org/badge/latestdoi/101073856)

## How do I cite `pyEPR`?
[![DOI](https://zenodo.org/badge/101073856.svg)](https://zenodo.org/badge/latestdoi/101073856)
Use this [bibtex](https://github.com/zlatko-minev/pyEPR/blob/master/pyEPR.bib) for `pyEPR` and for the method use the energy-participation-ratio paper [arXiv:2010.00620](https://arxiv.org/abs/2010.00620).


[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/zlatko-minev/pyEPR/graphs/commit-activity)

Expand Down
Loading
Loading