pyRFtk 2.0.0__tar.gz → 2.0.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyrftk-2.0.0 → pyrftk-2.0.2}/PKG-INFO +2 -2
- pyrftk-2.0.2/docs/build/.doctrees/Installation.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Touchstone.doctree +0 -0
- pyrftk-2.0.2/docs/build/.doctrees/environment.pickle +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Installation.html +2 -9
- {pyrftk-2.0.0/docs/build/html → pyrftk-2.0.2/docs/build}/_sources/Installation.rst.txt +2 -12
- pyrftk-2.0.2/docs/build/searchindex.js +1 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Installation.rst +2 -12
- {pyrftk-2.0.0 → pyrftk-2.0.2}/pyproject.toml +2 -2
- pyrftk-2.0.2/rfCommon.log +67 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/__init__.py +1 -1
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/plotVSWs.py +2 -2
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/resolveTLparams.py +2 -2
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfBase.py +2 -2
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfCircuit.py +22 -3
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfCoupler.py +15 -7
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfObject.py +13 -1
- pyrftk-2.0.2/tests/rfCommon.log +100 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/tests/tests.py +57 -2
- pyrftk-2.0.0/docs/build/.doctrees/environment.pickle +0 -0
- pyrftk-2.0.0/docs/build/doctrees/Installation.doctree +0 -0
- pyrftk-2.0.0/docs/build/searchindex.js +0 -1
- {pyrftk-2.0.0 → pyrftk-2.0.2}/LICENCE +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/README.md +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/Makefile +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.buildinfo +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Arcs.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Deembedding.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Examples.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Introduction.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Logging.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/Tutorials.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/backup.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/index.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/modules.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.doctrees/pyRFtk.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/.nojekyll +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Arcs.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Deembedding.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Examples.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Introduction.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Logging.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Touchstone.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/Tutorials.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_downloads/b90e652aafe314ced71820d596828aed/Tomas-Ref_geo-R=200-Diel_eps=0500.s2p +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_downloads/bf8243189246eb0547daf197b1578bac/tomas_icrh_linear_2017-vacuum.s2p +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_images/RLC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_images/RLCSC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_images/SC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_images/TomasCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Arcs.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Deembedding.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Examples.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Introduction.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Logging.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Touchstone.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/Tutorials.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/backup.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/index.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/modules.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_sources/pyRFtk.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/_sphinx_javascript_frameworks_compat.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/alabaster.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/basic.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/classic.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/badge_only.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/fontawesome-webfont.eot +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/fontawesome-webfont.svg +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/fontawesome-webfont.ttf +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/fontawesome-webfont.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-bold-italic.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-bold-italic.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-bold.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-bold.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-normal-italic.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-normal-italic.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-normal.woff +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/fonts/lato-normal.woff2 +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/css/theme.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/custom.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/doctools.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/documentation_options.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/file.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/groundwork.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/gw_logo.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/jquery.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/js/badge_only.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/js/html5shiv-printshiv.min.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/js/html5shiv.min.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/js/theme.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/language_data.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/minus.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/plus.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/pygments.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/searchtools.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/sidebar.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/small_groundwork.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/_static/sphinx_highlight.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/backup.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/Deembedding.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/Examples.doctree +0 -0
- {pyrftk-2.0.0/docs/build/.doctrees → pyrftk-2.0.2/docs/build/doctrees}/Installation.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/Introduction.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/TOMAS.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/Touchstone.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/Tutorials.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/backup.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/environment.pickle +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/index.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/modules.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/pyRFtk.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/doctrees/usage.doctree +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/genindex.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/.buildinfo +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/.nojekyll +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Deembedding.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Examples.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Installation.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Introduction.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/TOMAS.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Touchstone.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/Tutorials.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/RLC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/RLCSC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/SC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/SimpleCircuit.pdf +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/TOMAS_ICRH_Antenna.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/TOMAS_ICRH_Circuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_images/TomasCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/Deembedding.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/Examples.rst.txt +0 -0
- {pyrftk-2.0.0/docs/build → pyrftk-2.0.2/docs/build/html}/_sources/Installation.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/Introduction.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/TOMAS.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/Touchstone.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/Tutorials.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/backup.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/index.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/modules.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/pyRFtk.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_sources/usage.rst.txt +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/alabaster.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/basic.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/classic.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/custom.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/doctools.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/documentation_options.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/file.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/language_data.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/minus.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/plus.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/pygments.css +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/searchtools.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/sidebar.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/_static/sphinx_highlight.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/backup.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/genindex.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/index.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/modules.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/objects.inv +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/py-modindex.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/pyRFtk.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/search.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/searchindex.js +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/html/usage.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/index.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/modules.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/objects.inv +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/py-modindex.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/pyRFtk.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/build/search.html +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/make.bat +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Arcs.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Deembedding.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Drawings/SimpleCircuit.odg +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Examples.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Files/Tomas-Ref_geo-R=200-Diel_eps=0500.s2p +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Files/tomas_icrh_linear_2017-vacuum.s2p +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/RLC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/RLCSC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/SC.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/SimpleCircuit.pdf +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/TOMAS_ICRH_Antenna.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/TOMAS_ICRH_Circuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Images/TomasCircuit.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Introduction.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Logging.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Touchstone.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/Tutorials.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/backup.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/conf.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/index.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/modules.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/docs/source/pyRFtk.rst +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/logo.png +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/.gitignore +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/ConvertGeneral.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/ReadDictData.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/ReadTSF.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/S_from_VI.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/S_from_Y.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/S_from_Z.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/Y_from_S.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/Z_from_S.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/_check_3D_shape_.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/circuit.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/codebase.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/compareSs.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/config.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/findpath.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/getlines.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/maxfun.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/printMatrices.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfArcObj.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfGTL.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfRLC.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/rfTRL.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/str_dict.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/tictoc.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/src/pyRFtk/whoami.py +0 -0
- {pyrftk-2.0.0 → pyrftk-2.0.2}/tests/routine.sh +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pyRFtk
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.2
|
|
4
4
|
Summary: Design tool for RF antennae networks
|
|
5
5
|
Project-URL: Homepage, https://lpp-erm-kms.github.io/pyrftk/
|
|
6
6
|
Author-email: Frederic Durodie <frederic.durodie@rma.ac.be>, Arthur Adriaens <arthur.adriaens@mil.be>
|
|
7
7
|
License-File: LICENCE
|
|
8
8
|
Classifier: Operating System :: OS Independent
|
|
9
9
|
Classifier: Programming Language :: Python
|
|
10
|
-
Requires-Python: >=3.
|
|
10
|
+
Requires-Python: >=3.8
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
12
|
|
|
13
13
|
# pyRFtk
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -86,17 +86,10 @@
|
|
|
86
86
|
<h1>Installation<a class="headerlink" href="#installation" title="Link to this heading"></a></h1>
|
|
87
87
|
<section id="pip">
|
|
88
88
|
<h2>Pip<a class="headerlink" href="#pip" title="Link to this heading"></a></h2>
|
|
89
|
-
<p>The program has a pre-build version which can be installed using pip
|
|
90
|
-
|
|
91
|
-
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">LPP</span><span class="o">-</span><span class="n">ERM</span><span class="o">-</span><span class="n">KMS</span><span class="o">/</span><span class="n">pyRFtk</span><span class="o">.</span><span class="n">git</span>
|
|
89
|
+
<p>The program has a pre-build version which can be installed using pip:</p>
|
|
90
|
+
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">pip</span> <span class="n">install</span> <span class="n">pyRFtk</span>
|
|
92
91
|
</pre></div>
|
|
93
92
|
</div>
|
|
94
|
-
<p>Then navigate to the folder “dist” where the
|
|
95
|
-
install file is located, and run</p>
|
|
96
|
-
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>(.venv) $pip install pyrftk2-2.0.0-py3-none-any.whl
|
|
97
|
-
</pre></div>
|
|
98
|
-
</div>
|
|
99
|
-
<p>which installs the program</p>
|
|
100
93
|
</section>
|
|
101
94
|
<section id="source">
|
|
102
95
|
<h2>Source<a class="headerlink" href="#source" title="Link to this heading"></a></h2>
|
|
@@ -2,21 +2,11 @@ Installation
|
|
|
2
2
|
==================================
|
|
3
3
|
Pip
|
|
4
4
|
---
|
|
5
|
-
The program has a pre-build version which can be installed using pip
|
|
6
|
-
to install the program you'll have to first clone the repository:
|
|
5
|
+
The program has a pre-build version which can be installed using pip:
|
|
7
6
|
|
|
8
7
|
.. code-block::
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Then navigate to the folder "dist" where the
|
|
13
|
-
install file is located, and run
|
|
14
|
-
|
|
15
|
-
.. code-block::
|
|
16
|
-
|
|
17
|
-
(.venv) $pip install pyrftk2-2.0.0-py3-none-any.whl
|
|
18
|
-
|
|
19
|
-
which installs the program
|
|
9
|
+
pip install pyRFtk
|
|
20
10
|
|
|
21
11
|
Source
|
|
22
12
|
------
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Search.setIndex({"docnames": ["Arcs", "Deembedding", "Examples", "Installation", "Introduction", "Logging", "Touchstone", "Tutorials", "backup", "index", "modules", "pyRFtk"], "filenames": ["Arcs.rst", "Deembedding.rst", "Examples.rst", "Installation.rst", "Introduction.rst", "Logging.rst", "Touchstone.rst", "Tutorials.rst", "backup.rst", "index.rst", "modules.rst", "pyRFtk.rst"], "titles": ["Arc Detection", "Deembedding", "Examples", "Installation", "Introduction", "Logging", "Touchstone files", "Tutorials", "S-matrix and combining circuits", "Welcome to pyRFtk\u2019s documentation!", "pyRFtk", "pyRFtk package"], "terms": {"de": 1, "embed": 1, "i": [1, 3, 4, 6, 8, 9, 11], "post": 1, "measur": [1, 6], "process": 1, "minim": [1, 11], "error": [1, 11], "reveal": 1, "inform": [1, 11], "about": 1, "devic": 1, "under": [1, 9], "test": 1, "when": [1, 11], "composit": 1, "fixtur": 1, "combin": 1, "you": [1, 3, 4], "can": [1, 3, 4, 6, 8, 9, 11], "us": [1, 3, 4, 6, 8, 9, 11], "isol": 1, "perform": [1, 11], "extract": 1, "emb": 1, "from": [1, 4, 6, 8, 11], "what": [1, 4, 6, 11], "thi": [1, 4, 6, 8, 11], "mean": [1, 4, 11], "context": 1, "our": [1, 4], "softwar": [1, 3, 4], "follow": [1, 3, 4, 6, 11], "sai": [1, 4, 6], "we": [1, 4, 6, 8], "have": [1, 3, 4, 6, 11], "circuit": [1, 4, 6, 9, 10], "structur": [1, 4, 11], "sextern": 1, "sintern": [1, 11], "deemb": [1, 10, 11], "ip": 1, "dpi": 1, "dpe": 1, "ep": 1, "here": [1, 4, 8, 11], "know": [1, 4, 6], "scatter": [1, 11], "matric": [1, 8, 11], "se": 1, "sd": 1, "want": [1, 6, 11], "find": [1, 6, 11], "matrix": [1, 4, 6, 11], "intern": [1, 11], "compon": 1, "si": 1, "intport": [1, 11], "extport": [1, 11], "mai": [1, 4, 11], "function": [1, 11], "rfcircuit": [1, 4, 6, 8, 10], "object": [1, 4, 11], "solv": [1, 4, 10, 11], "As": [1, 4, 8], "an": [1, 3, 4, 8, 9, 11], "exampl": [1, 8], "ll": [1, 3, 4, 6], "toma": [1, 6], "icrh": [1, 6], "system": 1, "again": 1, "The": [3, 4, 8, 9, 11], "program": [3, 4, 8], "ha": [1, 3, 8, 11], "pre": [3, 6], "build": [3, 4, 9, 11], "version": [3, 11], "which": [3, 4, 6, 8, 9, 11], "yet": 11, "made": [], "avail": 11, "python": 9, "databas": [], "first": [4, 6, 11], "clone": 3, "repositori": [], "navig": [], "folder": 3, "dist": [], "where": [4, 6, 8, 11], "file": [7, 9, 11], "locat": 11, "run": 4, "venv": [], "pyrftk2": [], "2": [4, 6, 8, 11], "0": [1, 4, 6, 8, 11], "py3": [], "none": 11, "ani": [9, 11], "whl": [], "If": [3, 11], "re": 3, "plan": 3, "modifi": [3, 11], "code": [3, 4, 6, 8, 11], "contribut": 3, "project": 3, "your": 3, "own": 3, "benefit": 3, "easili": 3, "access": 3, "add": [3, 4, 11], "path": [3, 11], "rel": [3, 11], "adress": 3, "pyrftk": [3, 4, 6, 8], "src": [3, 11], "pythonpath": 3, "e": [3, 4, 6, 8, 11], "g": [3, 6, 8, 11], "ad": [3, 6, 11], "zshrc": 3, "export": 3, "numpi": [3, 11], "scipi": [3, 11], "matplotlib": [3, 4, 8], "start": [4, 11], "creat": [4, 6, 8, 9, 11], "simpl": [4, 6, 11], "given": [4, 8, 11], "below": [4, 6, 8], "import": [4, 6, 8], "pyplot": [4, 8], "plt": [4, 8], "rftrl": [4, 6, 8, 10], "rfrlc": [4, 6, 10], "plotvsw": [4, 8, 10], "trl1": [4, 8], "l": [4, 6, 8, 11], "1": [4, 6, 8, 11], "od": [4, 6, 11], "230": 4, "id": [4, 6, 8, 11], "100": 4, "130": 4, "dx": [4, 6, 11], "360": 4, "conic": 4, "tl": [1, 4, 11], "trl2": [4, 8], "z0tl": [4, 11], "40": 4, "trl3": [4, 8], "port": [1, 4, 6, 11], "t": [1, 4], "zbase": [4, 11], "just": [4, 11], "fun": 4, "rlc2": 4, "cp": [4, 6, 11], "100e": 4, "12": [4, 6, 11], "ct": [4, 6, 11], "addblock": [4, 6, 8, 10, 11], "tl1": [4, 8], "relpo": [4, 6, 8, 11], "tl2": [4, 8], "tl3": [4, 8], "cap": [1, 4], "oc": 4, "connect": [1, 4, 6, 8, 10, 11], "termin": [4, 6, 8, 10, 11], "y": [4, 11], "open": [4, 9, 11], "z": [4, 6, 11], "10": 4, "finit": 4, "imped": [4, 11], "maxv": [4, 8, 10, 11], "vsw": [4, 8, 11], "f": [1, 4, 6, 8, 11], "55e6": 4, "show": [4, 8], "variou": [4, 9], "step": [4, 11], "happen": 4, "let": [4, 6], "": [4, 6, 11], "explain": [4, 6], "them": 4, "one": [4, 11], "make": [4, 6, 8], "radio": 4, "frequenc": [4, 8, 11], "transmiss": [4, 8, 11], "line": [4, 8, 11], "argument": [4, 6], "length": [4, 8, 11], "section": [4, 6, 11], "outer": [4, 11], "diamet": [4, 11], "inner": [4, 11], "characterist": [4, 11], "refer": [4, 11], "repres": [4, 11], "dimension": [4, 11], "along": [4, 11], "telegraphist": [4, 11], "seen": [4, 8], "definit": [4, 6], "specifi": [4, 11], "leftmost": 4, "side": [4, 11], "rightmost": 4, "13": 4, "With": [4, 9, 11], "being": [4, 11], "p": [4, 11], "kwarg": [4, 11], "ar": [1, 4, 6, 8, 9, 11], "50": [1, 4, 6, 11], "ohm": [4, 11], "name": [4, 8, 11], "rp": [4, 11], "parallel": [4, 11], "resist": [4, 11], "inf": [4, 11], "lp": [4, 11], "induct": [4, 11], "h": [4, 6, 11], "capac": [4, 11], "r": [1, 4, 6, 11], "seri": [4, 11], "c": [4, 6, 8, 11], "onli": [1, 4, 11], "implement": [4, 11], "capacitor": [4, 6], "now": 4, "block": [4, 11], "time": 4, "put": 4, "togeth": [1, 4, 8], "To": [4, 6], "do": [4, 11], "instanc": 4, "call": [4, 6, 11], "label": 4, "point": [4, 11], "analog": 4, "addit": 4, "other": [1, 4], "both": 4, "same": [4, 11], "input": [4, 8, 11], "output": [4, 6, 8, 11], "note": [4, 6, 11], "alreadi": 4, "itself": 4, "contain": [4, 6, 11], "sourc": [4, 6, 7, 9, 11], "afterward": 4, "place": 4, "part": [4, 11], "1m": 4, "awai": 4, "These": 4, "need": [4, 11], "all": [4, 11], "proce": 4, "leav": [1, 4, 11], "righthand": 4, "zero": [4, 6], "admitt": [4, 11], "In": [4, 11], "end": [4, 11], "thu": [4, 11], "look": 4, "like": [4, 11], "appli": [4, 6], "signal": [4, 6], "55mhz": 4, "get": [4, 8, 10, 11], "back": 4, "maxim": 4, "voltag": [4, 6, 11], "over": [4, 11], "full": [4, 11], "stand": [4, 11], "wave": [4, 8, 11], "arrai": [4, 11], "valu": [4, 11], "data": [4, 11], "how": [4, 11], "chang": 4, "distanc": 4, "plot": 4, "set": [4, 10, 11], "apart": 4, "rf": [4, 6, 9, 11], "circuitri": [4, 9], "applic": 4, "cuq": 4, "certain": 4, "node": [4, 6, 11], "whole": [4, 11], "should": 4, "window": 4, "shown": [4, 6, 11], "give": [4, 8, 11], "clear": 4, "insight": 4, "incorpor": [6, 9], "rfobject": [1, 6, 10], "class": [6, 11], "showcas": 6, "capabl": [6, 8], "match": [6, 11], "diagram": 6, "power": [6, 11], "goe": [6, 11], "differenti": 6, "coupler": 6, "through": [6, 11], "coaxial": [1, 6, 11], "cabl": [6, 8], "4": [6, 8, 11], "probe": 6, "after": [6, 11], "box": 6, "Then": 6, "antenna": [1, 6], "final": [6, 11], "ca": 6, "tomas_icrh_linear_2017": 6, "vacuum": 6, "s2p": [1, 6], "construct": 6, "def": 6, "caval": 6, "150": 6, "1e": [1, 6, 11], "cpval": 6, "47": 6, "94": 6, "csval": 6, "133": 6, "rfcoupler": 6, "trlstov3": 6, "235": 6, "041": 6, "017": 6, "500": 6, "trlv3tov2": 6, "66": 6, "trlv2tov1": 6, "795": 6, "trlv1tov0": 6, "trlv0tom": 6, "load": [6, 11], "rlcleft": 6, "caright": 6, "tomas_icrh": 6, "stov3": 6, "v3": 6, "v3tov2": 6, "v2": 6, "v2tov1": 6, "v1": [6, 11], "v1tov0": 6, "v0": [6, 11], "v0tom": 6, "m": [6, 11], "endoflin": 6, "rloss": 6, "out": [6, 11], "prematch": 6, "A": [8, 11], "ground": [6, 11], "return": [6, 11], "resistor": 6, "simul": 6, "effect": 6, "plasma": 6, "would": [6, 11], "3": [1, 6, 8], "5kw": 6, "25mhz": 6, "25": 6, "1e6": [6, 8], "solut": [6, 10, 11], "np": [6, 11], "sqrt": 6, "5": [6, 8, 11], "1e3": 6, "v0tov1": 6, "v2tov3": 6, "v": [6, 11], "ab": 6, "print": [6, 8, 11], "indic": 6, "excit": [6, 8, 11], "element": 6, "wa": 6, "request": [6, 11], "becaus": 6, "vf": [6, 11], "vr": [6, 11], "also": 6, "why": 6, "omit": 6, "directli": 6, "obtain": 6, "instal": [7, 9], "pip": [7, 9], "depend": [7, 9, 11], "introduct": [7, 9], "touchston": [1, 7, 9, 11], "deembed": [7, 9, 11], "calcul": [8, 11], "printmatric": [8, 10], "printma": [8, 10, 11], "ta": 8, "b": 8, "tb": 8, "consist": 8, "left": [8, 11], "right": [8, 11], "each": 8, "two": [1, 8], "lenght": [8, 11], "coax": 8, "wire": 8, "1mhz": 8, "funciton": 8, "posibl": 8, "complex": [8, 11], "easi": 8, "read": [8, 11], "format": [8, 11], "6": 8, "180": 8, "impi": 8, "rho": [8, 11], "theta": 8, "pi": 8, "config": [8, 10], "setloglevel": [8, 10, 11], "1a": 8, "1b": 8, "2a": 8, "2b": 8, "ct1": 8, "3a": 8, "3b": 8, "trl4": 8, "4a": 8, "4b": 8, "ct2": 8, "rc": [8, 11], "5j": 8, "ct3": 8, "ct4": 8, "duh": 8, "trl5": 8, "5a": 8, "5b": 8, "debug": [8, 11], "45e6": 8, "critic": 8, "1v": 8, "5v": 8, "eupl": 9, "licens": 9, "librari": 9, "analys": 9, "modul": [9, 10], "abil": 9, "examin": 9, "almost": 9, "imagin": 9, "intend": 9, "audienc": 9, "experienc": 9, "engin": 9, "peopl": 9, "interest": 9, "field": 9, "willing": 9, "learn": 9, "activ": 9, "develop": 9, "tutori": 9, "index": 9, "search": [9, 11], "page": 9, "packag": [1, 10], "submodul": 10, "convertgener": 10, "readdictdata": 10, "readdictstr": [10, 11], "readtsf": 10, "s_from_vi": 10, "s_from_i": 10, "s_from_z": 10, "y_from_": 10, "z_from_": 10, "get_internalsmatrix": [10, 11], "copi": [10, 11], "ext": [10, 11], "listblock": [10, 11], "codebas": 10, "list1dir": [10, 11], "comparess": 10, "cleanuplogfil": [10, 11], "fscale": [10, 11], "get_class_that_defined_method": [10, 11], "ident": [10, 11], "logid": [10, 11], "findpath": 10, "existspath": [10, 11], "getlin": 10, "maxfun": 10, "scalevsw": [10, 11], "strvsw": [10, 11], "printdb": [10, 11], "printm": [10, 11], "printr": [10, 11], "printri": [10, 11], "strm": [10, 11], "resolvetlparam": 10, "tlresolv": [10, 11], "rf3dbhybrid": 10, "rfarcobj": 10, "get1": [10, 11], "rfbase": 10, "add_debug_cod": [10, 11], "asstr": [10, 11], "tsf2str": [10, 11], "write_tsf": [10, 11], "findobj": [10, 11], "getpo": [10, 11], "resolve_xpo": [10, 11], "rfgtl": 10, "processgtl": [10, 11], "getsgtl": [10, 11], "convert2newzbas": [10, 11], "process_kwarg": [10, 11], "read_tsf": [10, 11], "sortport": [10, 11], "visw": [10, 11], "solvevi": [10, 11], "str_dict": 10, "tictoc": 10, "tic": [10, 11], "toc": [10, 11], "whoami": 10, "content": 10, "arnold": [], "law": [], "document": [], "exist": 11, "doesn": [], "doe": 11, "date": [], "useless": [], "transcend": [], "18": [], "dec": [], "2020": [], "author": [], "freder": [], "z2": 11, "s1": 11, "z1": 11, "type1": 11, "type2": 11, "covertgener": 11, "convert": 11, "n": 11, "scalar": 11, "1d": 11, "list": 11, "must": 11, "correspond": 11, "number": 11, "differ": 11, "2d": 11, "shape": 11, "nf": 11, "matri": 11, "x": 11, "ce": 11, "nfreq": 11, "nport": 11, "3d": 11, "type": 11, "zk": 11, "imag": 11, "ak": 11, "vk": 11, "ik": 11, "bk": 11, "wavezk": 11, "gener": 11, "orfanidi": 11, "real": 11, "s2": 11, "text": 11, "fact": [], "dict": 11, "comment": 11, "strip": [], "durodi": [], "11": [], "apr": [], "2014": [], "2015": [], "aug": [], "26": [], "signatur": [], "compat": 11, "new": 11, "fpath": 11, "userdir": 11, "envvar": 11, "appdir": 11, "missingok": 11, "true": 11, "verbos": 11, "fals": 11, "model": 11, "mod4pj": 11, "ciamod": 11, "special": 11, "str": 11, "top": 11, "bottom": 11, "tupl": 11, "int": 11, "up": 11, "down": 11, "rem": 11, "marker": 11, "17": [], "feb": [], "2021": [], "z0": 11, "30": 11, "imed": 11, "vi": 11, "transform": 11, "i2": [], "i1": 11, "defin": 11, "oposit": 11, "sign": 11, "abov": 11, "standard": 11, "alwai": 11, "ndarrai": 11, "unless": 11, "base": 11, "deprec": 11, "sinc": 11, "been": [1, 11], "replac": 11, "kept": 11, "legaci": 11, "manipul": 11, "method": 11, "attribut": 11, "float": 11, "string": 11, "__len__": 11, "integ": 11, "hz": [1, 11], "param": 11, "smatric": 11, "singl": 11, "smatrix": 11, "result": 11, "els": 11, "default": 11, "arg": 11, "rfobj": 11, "unus": 11, "automat": 11, "becom": 11, "extern": 11, "try": 11, "self": 11, "flag": 11, "pair": 11, "fequenc": 11, "its": 11, "current": 11, "flow": 11, "forward": 11, "reflect": 11, "quantiti": 11, "express": 11, "map": 11, "pf": 11, "portnam": 11, "ommit": 11, "paramet": 11, "suppli": 11, "xpo": 11, "posit": 11, "well": 11, "state": 11, "recurs": 11, "fill": 11, "futur": 11, "extesns": 11, "nov": [], "level": 11, "ss": 11, "lbl": 11, "figkwarg": 11, "20": [], "frm": 11, "meth": 11, "messag": 11, "d": 11, "printarg": 11, "stacklev": 11, "gmail": [], "com": [], "filepath": [], "more": 11, "predict": [], "restrict": 11, "manner": 11, "27": [], "second": 11, "allow": [], "partial": [], "keep": [], "former": [], "fpattern": 11, "origin": [], "rais": 11, "except": 11, "empti": 11, "envar": 11, "basenam": 11, "environ": 11, "variabl": 11, "separ": 11, "directori": 11, "order": 11, "appear": 11, "usersdir": 11, "next": 11, "ioerror": 11, "maxlev": 11, "scale": 11, "indent": 11, "23": [], "jul": [], "telenet": [], "pfmt": 11, "7": 11, "3f": 11, "1f": 11, "printzero": 11, "pretti": 11, "3fj": 11, "pfun": 11, "lambda": 11, "write": 11, "8": 11, "5f": 11, "2f": 11, "possibli": 11, "func": 11, "parent": 11, "__init__": 11, "__copy__": 11, "__deepcopy__": 11, "__getstate__": 11, "__setstate__": 11, "__str__": 11, "present": 11, "multilin": 11, "represent": 11, "collect": 11, "tfmt": 11, "mhz": 11, "ma": 11, "zref": 11, "overrul": 11, "tsbasenam": 11, "todo": 11, "renam": 11, "rethink": 11, "check": 11, "logic": 11, "statu": 11, "snp": 11, "evalu": 11, "anywai": 11, "subblock": 11, "so": 11, "than": 11, "previous": 11, "explicitli": 11, "known": 11, "size": 11, "port_new": 11, "extens": 11, "tri": 11, "underli": 11, "blkid": 11, "sdict": 11, "similar": 11, "further": 11, "chain": 11, "nest": 11, "attr": 11, "rfcircuita": 11, "rfrlc1": 11, "rfcircuitb": 11, "rftrl1": 11, "20e": 11, "9": 11, "purpos": 11, "formal": 11, "kw": 11, "attr1": 11, "val1": 11, "attr2": 11, "val2": 11, "abl": 11, "multipl": 11, "onc": 11, "case": 11, "val": 11, "work": 11, "formul": 11, "loop": 11, "cancel": 11, "sol": 11, "either": 11, "some": 11, "fmhz": 11, "gtl_data": 11, "gtl": 11, "provid": 11, "option": 11, "p1": 11, "substitut": 11, "addblockgtl": 11, "tlid1": 11, "1st": 11, "general_tl": 11, "properti": 11, "tlidn": 11, "tlid": 11, "path2model": 11, "objkei": 11, "templat": [], "obsolet": [], "glorifi": 11, "lut": 11, "creation": 11, "done": 11, "sever": 11, "simplest": 11, "produc": 11, "ansi": 11, "hfss": 11, "myobject": 11, "path_to_touchston": 11, "anoth": 11, "tabl": 11, "manual": 11, "fhz": 11, "main": 11, "port1": 11, "a1": 11, "vamx": 11, "newzbas": 11, "convert_zbas": 11, "target": 11, "lossless": 11, "assum": 11, "pass": 11, "slot": 11, "wrapper": 11, "__lt__": 11, "mar": [], "gnd": 11, "identifi": 11, "could": 11, "log": 11, "warn": 11, "total": 11, "72": 11, "axi": 11, "intiti": 11, "estim": 11, "nth": 11, "wavelength": 11, "taken": 11, "initi": 11, "refin": 11, "fit": 11, "necessari": 11, "odeparam": 11, "rtol": 11, "atol": 11, "figur": 11, "constant": 11, "split": 11, "len": 11, "segment": 11, "piec": [1, 11], "wise": 11, "linear": 11, "vari": 11, "paramt": 11, "continu": 11, "long": 11, "treat": 11, "boundari": 11, "linarli": 11, "interpol": 11, "extrapol": 11, "nearest": 11, "invok": 11, "solver": 11, "equat": 11, "otherwis": 11, "propag": 11, "deriv": 11, "form": 11, "global": 11, "ltl": 11, "ctl": 11, "capacit": 11, "rtl": 11, "rtlo": 11, "conductor": 11, "rtli": 11, "mho": 11, "medium": 11, "conduct": 11, "attenu": 11, "adb": 11, "db": 11, "specif": 11, "rhoo": 11, "rhoi": 11, "muro": 11, "mu0": 11, "permeabl": 11, "muri": 11, "properi": 11, "sigma": 11, "tand": 11, "dielectr": 11, "loss": 11, "tangent": 11, "epsr": 11, "epsilon0": 11, "permit": 11, "mur": 11, "etar": 11, "eta0": 11, "c0": 11, "veloc": 11, "geometr": 11, "circular": 11, "qtl": 11, "w": 11, "qtlo": 11, "qtli": 11, "nice": 11, "describ": 11, "mandatori": 11, "expand": 11, "remov": [1, 11], "condit": 11, "i0": 11, "see": 11, "prior": 11, "integr": 11, "odeint": 11, "atribut": 11, "non": [1, 11], "correctli": 11, "telegraph": 11, "sink": 11, "u": 11, "14": [], "adict": 11, "t0": 11, "pname": 11, "dframe": 11, "mathemat": 1, "affect": 1, "behavior": 1, "commonli": 1, "vna": 1, "dut": 1, "board": 1, "trace": 1, "backplan": 1, "channel": 1, "semiconductor": 1, "connector": 1, "discret": 1, "andrea": 1, "henkel": 1, "product": 1, "manag": 1, "network": 1, "analysi": 1, "rohd": 1, "schwarz": 1, "iter": 11, "descriptor": 11, "git": [], "http": [], "github": [], "lpp": [], "erm": [], "km": [], "strap": 1, "a2ca1_l": 1, "1715": 1, "a2ca1_z": 1, "t2cs1_l": 1, "121": 1, "t2cs1_z": 1, "tsstrap": 1, "ref_geo": 1, "200": 1, "diel_ep": 1, "0500": 1, "avoid": 1, "divis": 1, "arc": [], "detect": [], "download": [], "doc": [], "dowload": []}, "objects": {"": [[11, 0, 0, "-", "pyRFtk"]], "pyRFtk": [[11, 0, 0, "-", "ConvertGeneral"], [11, 0, 0, "-", "ReadDictData"], [11, 0, 0, "-", "ReadTSF"], [11, 0, 0, "-", "S_from_VI"], [11, 0, 0, "-", "S_from_Y"], [11, 0, 0, "-", "S_from_Z"], [11, 0, 0, "-", "Y_from_S"], [11, 0, 0, "-", "Z_from_S"], [11, 0, 0, "-", "circuit"], [11, 0, 0, "-", "codebase"], [11, 0, 0, "-", "compareSs"], [11, 0, 0, "-", "config"], [11, 0, 0, "-", "findpath"], [11, 0, 0, "-", "getlines"], [11, 0, 0, "-", "maxfun"], [11, 0, 0, "-", "plotVSWs"], [11, 0, 0, "-", "printMatrices"], [11, 0, 0, "-", "resolveTLparams"], [11, 0, 0, "-", "rfArcObj"], [11, 0, 0, "-", "rfBase"], [11, 0, 0, "-", "rfCircuit"], [11, 0, 0, "-", "rfGTL"], [11, 0, 0, "-", "rfObject"], [11, 0, 0, "-", "rfRLC"], [11, 0, 0, "-", "rfTRL"], [11, 0, 0, "-", "str_dict"], [11, 0, 0, "-", "tictoc"], [11, 0, 0, "-", "whoami"]], "pyRFtk.ConvertGeneral": [[11, 1, 1, "", "ConvertGeneral"]], "pyRFtk.ReadDictData": [[11, 1, 1, "", "ReadDictData"], [11, 1, 1, "", "ReadDictString"]], "pyRFtk.ReadTSF": [[11, 1, 1, "", "ReadTSF"]], "pyRFtk.S_from_VI": [[11, 1, 1, "", "S_from_VI"]], "pyRFtk.S_from_Y": [[11, 1, 1, "", "S_from_Y"]], "pyRFtk.S_from_Z": [[11, 1, 1, "", "S_from_Z"]], "pyRFtk.Y_from_S": [[11, 1, 1, "", "Y_from_S"]], "pyRFtk.Z_from_S": [[11, 1, 1, "", "Z_from_S"]], "pyRFtk.circuit": [[11, 2, 1, "", "circuit"]], "pyRFtk.circuit.circuit": [[11, 3, 1, "", "Get_internalSmatrix"], [11, 3, 1, "", "Solution"], [11, 3, 1, "", "addblock"], [11, 3, 1, "", "connect"], [11, 3, 1, "", "copy"], [11, 3, 1, "", "extS"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "listBlocks"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "set"], [11, 3, 1, "", "solve"], [11, 3, 1, "", "terminate"]], "pyRFtk.codebase": [[11, 1, 1, "", "list1dir"]], "pyRFtk.compareSs": [[11, 1, 1, "", "compareSs"]], "pyRFtk.config": [[11, 1, 1, "", "CleanUpLogFile"], [11, 1, 1, "", "fscale"], [11, 1, 1, "", "get_class_that_defined_method"], [11, 1, 1, "", "ident"], [11, 1, 1, "", "logident"], [11, 1, 1, "", "setLogLevel"]], "pyRFtk.findpath": [[11, 1, 1, "", "existspath"], [11, 1, 1, "", "findpath"]], "pyRFtk.getlines": [[11, 1, 1, "", "getlines"]], "pyRFtk.maxfun": [[11, 1, 1, "", "maxfun"]], "pyRFtk.plotVSWs": [[11, 1, 1, "", "plotVSWs"], [11, 1, 1, "", "scaleVSW"], [11, 1, 1, "", "strVSW"]], "pyRFtk.printMatrices": [[11, 1, 1, "", "printDB"], [11, 1, 1, "", "printM"], [11, 1, 1, "", "printMA"], [11, 1, 1, "", "printR"], [11, 1, 1, "", "printRI"], [11, 1, 1, "", "strM"]], "pyRFtk.resolveTLparams": [[11, 2, 1, "", "TLresolver"]], "pyRFtk.rfArcObj": [[11, 2, 1, "", "rfArcObj"]], "pyRFtk.rfArcObj.rfArcObj": [[11, 3, 1, "", "get1S"]], "pyRFtk.rfBase": [[11, 1, 1, "", "add_debug_code"], [11, 2, 1, "", "rfBase"]], "pyRFtk.rfBase.rfBase": [[11, 3, 1, "", "asstr"], [11, 3, 1, "", "copy"], [11, 3, 1, "", "get1S"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "set"], [11, 3, 1, "", "tsf2str"], [11, 3, 1, "", "write_tsf"]], "pyRFtk.rfCircuit": [[11, 2, 1, "", "rfCircuit"]], "pyRFtk.rfCircuit.rfCircuit": [[11, 3, 1, "", "Get_internalSmatrix"], [11, 3, 1, "", "Solution"], [11, 3, 1, "", "addblock"], [11, 3, 1, "", "connect"], [11, 3, 1, "", "deembed"], [11, 3, 1, "", "extS"], [11, 3, 1, "", "findObj"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "getpos"], [11, 3, 1, "", "listBlocks"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "resolve_xpos"], [11, 3, 1, "", "set"], [11, 3, 1, "", "solve"], [11, 3, 1, "", "terminate"]], "pyRFtk.rfGTL": [[11, 1, 1, "", "processGTL"], [11, 2, 1, "", "rfGTL"]], "pyRFtk.rfGTL.rfGTL": [[11, 3, 1, "", "copy"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "getSgtl"]], "pyRFtk.rfObject": [[11, 2, 1, "", "rfObject"]], "pyRFtk.rfObject.rfObject": [[11, 3, 1, "", "S_from_Y"], [11, 3, 1, "", "S_from_Z"], [11, 3, 1, "", "convert2newZbase"], [11, 3, 1, "", "copy"], [11, 3, 1, "", "deembed"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "process_kwargs"], [11, 3, 1, "", "read_tsf"], [11, 3, 1, "", "setS"], [11, 3, 1, "", "sortports"]], "pyRFtk.rfRLC": [[11, 2, 1, "", "rfRLC"]], "pyRFtk.rfRLC.rfRLC": [[11, 3, 1, "", "asstr"], [11, 3, 1, "", "copy"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "set"]], "pyRFtk.rfTRL": [[11, 2, 1, "", "rfTRL"]], "pyRFtk.rfTRL.rfTRL": [[11, 3, 1, "", "VISWs"], [11, 3, 1, "", "asstr"], [11, 3, 1, "", "copy"], [11, 3, 1, "", "getS"], [11, 3, 1, "", "maxV"], [11, 3, 1, "", "set"], [11, 3, 1, "", "solveVI"]], "pyRFtk.str_dict": [[11, 1, 1, "", "str_dict"]], "pyRFtk.tictoc": [[11, 1, 1, "", "tic"], [11, 1, 1, "", "toc"]], "pyRFtk.whoami": [[11, 1, 1, "", "whoami"]]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:class", "3": "py:method"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "class", "Python class"], "3": ["py", "method", "Python method"]}, "titleterms": {"deembed": 1, "exampl": 2, "instal": 3, "pip": 3, "sourc": 3, "depend": 3, "introduct": 4, "touchston": 6, "file": 6, "tutori": 7, "": [8, 9], "matrix": 8, "combin": 8, "circuit": [8, 11], "multipl": 8, "port": 8, "log": [5, 8], "welcom": 9, "pyrftk": [9, 10, 11], "document": 9, "content": [9, 11], "indic": 9, "tabl": 9, "packag": 11, "submodul": 11, "convertgener": 11, "modul": 11, "readdictdata": 11, "readtsf": 11, "s_from_vi": 11, "s_from_i": 11, "s_from_z": 11, "y_from_": 11, "z_from_": 11, "codebas": 11, "comparess": 11, "config": 11, "findpath": 11, "getlin": 11, "maxfun": 11, "plotvsw": 11, "printmatric": 11, "resolvetlparam": 11, "rf3dbhybrid": 11, "rfarcobj": 11, "rfbase": 11, "rfcircuit": 11, "rfgtl": 11, "rfobject": 11, "rfrlc": 11, "rftrl": 11, "str_dict": 11, "tictoc": 11, "whoami": 11, "arc": 0, "detect": 0}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 60}, "alltitles": {"Introduction": [[4, "introduction"]], "S-matrix and combining circuits": [[8, "s-matrix-and-combining-circuits"]], "Multiple ports and Logging": [[8, "multiple-ports-and-logging"]], "Welcome to pyRFtk\u2019s documentation!": [[9, "welcome-to-pyrftk-s-documentation"]], "Contents": [[9, "contents"]], "Indices and tables": [[9, "indices-and-tables"]], "pyRFtk": [[10, "pyrftk"]], "Tutorials": [[7, "tutorials"]], "Arc Detection": [[0, "arc-detection"]], "Deembedding": [[1, "deembedding"]], "Logging": [[5, "logging"]], "Examples": [[2, "examples"]], "Installation": [[3, "installation"]], "Pip": [[3, "pip"]], "Source": [[3, "source"]], "Dependencies": [[3, "dependencies"]], "Touchstone files": [[6, "touchstone-files"]], "pyRFtk package": [[11, "pyrftk-package"]], "Submodules": [[11, "submodules"]], "pyRFtk.ConvertGeneral module": [[11, "module-pyRFtk.ConvertGeneral"]], "pyRFtk.ReadDictData module": [[11, "module-pyRFtk.ReadDictData"]], "pyRFtk.ReadTSF module": [[11, "module-pyRFtk.ReadTSF"]], "pyRFtk.S_from_VI module": [[11, "module-pyRFtk.S_from_VI"]], "pyRFtk.S_from_Y module": [[11, "module-pyRFtk.S_from_Y"]], "pyRFtk.S_from_Z module": [[11, "module-pyRFtk.S_from_Z"]], "pyRFtk.Y_from_S module": [[11, "module-pyRFtk.Y_from_S"]], "pyRFtk.Z_from_S module": [[11, "module-pyRFtk.Z_from_S"]], "pyRFtk.circuit module": [[11, "module-pyRFtk.circuit"]], "pyRFtk.codebase module": [[11, "module-pyRFtk.codebase"]], "pyRFtk.compareSs module": [[11, "module-pyRFtk.compareSs"]], "pyRFtk.config module": [[11, "module-pyRFtk.config"]], "pyRFtk.findpath module": [[11, "module-pyRFtk.findpath"]], "pyRFtk.getlines module": [[11, "module-pyRFtk.getlines"]], "pyRFtk.maxfun module": [[11, "module-pyRFtk.maxfun"]], "pyRFtk.plotVSWs module": [[11, "module-pyRFtk.plotVSWs"]], "pyRFtk.printMatrices module": [[11, "module-pyRFtk.printMatrices"]], "pyRFtk.resolveTLparams module": [[11, "module-pyRFtk.resolveTLparams"]], "pyRFtk.rf3dBHybrid module": [[11, "pyrftk-rf3dbhybrid-module"]], "pyRFtk.rfArcObj module": [[11, "module-pyRFtk.rfArcObj"]], "pyRFtk.rfBase module": [[11, "module-pyRFtk.rfBase"]], "pyRFtk.rfCircuit module": [[11, "module-pyRFtk.rfCircuit"]], "pyRFtk.rfGTL module": [[11, "module-pyRFtk.rfGTL"]], "pyRFtk.rfObject module": [[11, "module-pyRFtk.rfObject"]], "pyRFtk.rfRLC module": [[11, "module-pyRFtk.rfRLC"]], "pyRFtk.rfTRL module": [[11, "module-pyRFtk.rfTRL"]], "pyRFtk.str_dict module": [[11, "module-pyRFtk.str_dict"]], "pyRFtk.tictoc module": [[11, "module-pyRFtk.tictoc"]], "pyRFtk.whoami module": [[11, "module-pyRFtk.whoami"]], "Module contents": [[11, "module-pyRFtk"]]}, "indexentries": {"cleanuplogfile() (in module pyrftk.config)": [[11, "pyRFtk.config.CleanUpLogFile"]], "convertgeneral() (in module pyrftk.convertgeneral)": [[11, "pyRFtk.ConvertGeneral.ConvertGeneral"]], "get_internalsmatrix() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.Get_internalSmatrix"]], "get_internalsmatrix() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.Get_internalSmatrix"]], "readdictdata() (in module pyrftk.readdictdata)": [[11, "pyRFtk.ReadDictData.ReadDictData"]], "readdictstring() (in module pyrftk.readdictdata)": [[11, "pyRFtk.ReadDictData.ReadDictString"]], "readtsf() (in module pyrftk.readtsf)": [[11, "pyRFtk.ReadTSF.ReadTSF"]], "s_from_vi() (in module pyrftk.s_from_vi)": [[11, "pyRFtk.S_from_VI.S_from_VI"]], "s_from_y() (in module pyrftk.s_from_y)": [[11, "pyRFtk.S_from_Y.S_from_Y"]], "s_from_y() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.S_from_Y"]], "s_from_z() (in module pyrftk.s_from_z)": [[11, "pyRFtk.S_from_Z.S_from_Z"]], "s_from_z() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.S_from_Z"]], "solution() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.Solution"]], "solution() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.Solution"]], "tlresolver (class in pyrftk.resolvetlparams)": [[11, "pyRFtk.resolveTLparams.TLresolver"]], "visws() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.VISWs"]], "y_from_s() (in module pyrftk.y_from_s)": [[11, "pyRFtk.Y_from_S.Y_from_S"]], "z_from_s() (in module pyrftk.z_from_s)": [[11, "pyRFtk.Z_from_S.Z_from_S"]], "add_debug_code() (in module pyrftk.rfbase)": [[11, "pyRFtk.rfBase.add_debug_code"]], "addblock() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.addblock"]], "addblock() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.addblock"]], "asstr() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.asstr"]], "asstr() (pyrftk.rfrlc.rfrlc method)": [[11, "pyRFtk.rfRLC.rfRLC.asstr"]], "asstr() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.asstr"]], "circuit (class in pyrftk.circuit)": [[11, "pyRFtk.circuit.circuit"]], "comparess() (in module pyrftk.comparess)": [[11, "pyRFtk.compareSs.compareSs"]], "connect() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.connect"]], "connect() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.connect"]], "convert2newzbase() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.convert2newZbase"]], "copy() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.copy"]], "copy() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.copy"]], "copy() (pyrftk.rfgtl.rfgtl method)": [[11, "pyRFtk.rfGTL.rfGTL.copy"]], "copy() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.copy"]], "copy() (pyrftk.rfrlc.rfrlc method)": [[11, "pyRFtk.rfRLC.rfRLC.copy"]], "copy() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.copy"]], "deembed() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.deembed"]], "deembed() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.deembed"]], "existspath() (in module pyrftk.findpath)": [[11, "pyRFtk.findpath.existspath"]], "exts() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.extS"]], "exts() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.extS"]], "findobj() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.findObj"]], "findpath() (in module pyrftk.findpath)": [[11, "pyRFtk.findpath.findpath"]], "fscale() (in module pyrftk.config)": [[11, "pyRFtk.config.fscale"]], "get1s() (pyrftk.rfarcobj.rfarcobj method)": [[11, "pyRFtk.rfArcObj.rfArcObj.get1S"]], "get1s() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.get1S"]], "gets() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.getS"]], "gets() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.getS"]], "gets() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.getS"]], "gets() (pyrftk.rfgtl.rfgtl method)": [[11, "pyRFtk.rfGTL.rfGTL.getS"]], "gets() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.getS"]], "gets() (pyrftk.rfrlc.rfrlc method)": [[11, "pyRFtk.rfRLC.rfRLC.getS"]], "gets() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.getS"]], "getsgtl() (pyrftk.rfgtl.rfgtl method)": [[11, "pyRFtk.rfGTL.rfGTL.getSgtl"]], "get_class_that_defined_method() (in module pyrftk.config)": [[11, "pyRFtk.config.get_class_that_defined_method"]], "getlines() (in module pyrftk.getlines)": [[11, "pyRFtk.getlines.getlines"]], "getpos() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.getpos"]], "ident() (in module pyrftk.config)": [[11, "pyRFtk.config.ident"]], "list1dir() (in module pyrftk.codebase)": [[11, "pyRFtk.codebase.list1dir"]], "listblocks() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.listBlocks"]], "listblocks() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.listBlocks"]], "logident() (in module pyrftk.config)": [[11, "pyRFtk.config.logident"]], "maxv() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.maxV"]], "maxv() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.maxV"]], "maxv() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.maxV"]], "maxv() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.maxV"]], "maxv() (pyrftk.rfrlc.rfrlc method)": [[11, "pyRFtk.rfRLC.rfRLC.maxV"]], "maxv() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.maxV"]], "maxfun() (in module pyrftk.maxfun)": [[11, "pyRFtk.maxfun.maxfun"]], "module": [[11, "module-pyRFtk"], [11, "module-pyRFtk.ConvertGeneral"], [11, "module-pyRFtk.ReadDictData"], [11, "module-pyRFtk.ReadTSF"], [11, "module-pyRFtk.S_from_VI"], [11, "module-pyRFtk.S_from_Y"], [11, "module-pyRFtk.S_from_Z"], [11, "module-pyRFtk.Y_from_S"], [11, "module-pyRFtk.Z_from_S"], [11, "module-pyRFtk.circuit"], [11, "module-pyRFtk.codebase"], [11, "module-pyRFtk.compareSs"], [11, "module-pyRFtk.config"], [11, "module-pyRFtk.findpath"], [11, "module-pyRFtk.getlines"], [11, "module-pyRFtk.maxfun"], [11, "module-pyRFtk.plotVSWs"], [11, "module-pyRFtk.printMatrices"], [11, "module-pyRFtk.resolveTLparams"], [11, "module-pyRFtk.rfArcObj"], [11, "module-pyRFtk.rfBase"], [11, "module-pyRFtk.rfCircuit"], [11, "module-pyRFtk.rfGTL"], [11, "module-pyRFtk.rfObject"], [11, "module-pyRFtk.rfRLC"], [11, "module-pyRFtk.rfTRL"], [11, "module-pyRFtk.str_dict"], [11, "module-pyRFtk.tictoc"], [11, "module-pyRFtk.whoami"]], "plotvsws() (in module pyrftk.plotvsws)": [[11, "pyRFtk.plotVSWs.plotVSWs"]], "printdb() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.printDB"]], "printm() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.printM"]], "printma() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.printMA"]], "printr() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.printR"]], "printri() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.printRI"]], "processgtl() (in module pyrftk.rfgtl)": [[11, "pyRFtk.rfGTL.processGTL"]], "process_kwargs() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.process_kwargs"]], "pyrftk": [[11, "module-pyRFtk"]], "pyrftk.convertgeneral": [[11, "module-pyRFtk.ConvertGeneral"]], "pyrftk.readdictdata": [[11, "module-pyRFtk.ReadDictData"]], "pyrftk.readtsf": [[11, "module-pyRFtk.ReadTSF"]], "pyrftk.s_from_vi": [[11, "module-pyRFtk.S_from_VI"]], "pyrftk.s_from_y": [[11, "module-pyRFtk.S_from_Y"]], "pyrftk.s_from_z": [[11, "module-pyRFtk.S_from_Z"]], "pyrftk.y_from_s": [[11, "module-pyRFtk.Y_from_S"]], "pyrftk.z_from_s": [[11, "module-pyRFtk.Z_from_S"]], "pyrftk.circuit": [[11, "module-pyRFtk.circuit"]], "pyrftk.codebase": [[11, "module-pyRFtk.codebase"]], "pyrftk.comparess": [[11, "module-pyRFtk.compareSs"]], "pyrftk.config": [[11, "module-pyRFtk.config"]], "pyrftk.findpath": [[11, "module-pyRFtk.findpath"]], "pyrftk.getlines": [[11, "module-pyRFtk.getlines"]], "pyrftk.maxfun": [[11, "module-pyRFtk.maxfun"]], "pyrftk.plotvsws": [[11, "module-pyRFtk.plotVSWs"]], "pyrftk.printmatrices": [[11, "module-pyRFtk.printMatrices"]], "pyrftk.resolvetlparams": [[11, "module-pyRFtk.resolveTLparams"]], "pyrftk.rfarcobj": [[11, "module-pyRFtk.rfArcObj"]], "pyrftk.rfbase": [[11, "module-pyRFtk.rfBase"]], "pyrftk.rfcircuit": [[11, "module-pyRFtk.rfCircuit"]], "pyrftk.rfgtl": [[11, "module-pyRFtk.rfGTL"]], "pyrftk.rfobject": [[11, "module-pyRFtk.rfObject"]], "pyrftk.rfrlc": [[11, "module-pyRFtk.rfRLC"]], "pyrftk.rftrl": [[11, "module-pyRFtk.rfTRL"]], "pyrftk.str_dict": [[11, "module-pyRFtk.str_dict"]], "pyrftk.tictoc": [[11, "module-pyRFtk.tictoc"]], "pyrftk.whoami": [[11, "module-pyRFtk.whoami"]], "read_tsf() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.read_tsf"]], "resolve_xpos() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.resolve_xpos"]], "rfarcobj (class in pyrftk.rfarcobj)": [[11, "pyRFtk.rfArcObj.rfArcObj"]], "rfbase (class in pyrftk.rfbase)": [[11, "pyRFtk.rfBase.rfBase"]], "rfcircuit (class in pyrftk.rfcircuit)": [[11, "pyRFtk.rfCircuit.rfCircuit"]], "rfgtl (class in pyrftk.rfgtl)": [[11, "pyRFtk.rfGTL.rfGTL"]], "rfobject (class in pyrftk.rfobject)": [[11, "pyRFtk.rfObject.rfObject"]], "rfrlc (class in pyrftk.rfrlc)": [[11, "pyRFtk.rfRLC.rfRLC"]], "rftrl (class in pyrftk.rftrl)": [[11, "pyRFtk.rfTRL.rfTRL"]], "scalevsw() (in module pyrftk.plotvsws)": [[11, "pyRFtk.plotVSWs.scaleVSW"]], "set() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.set"]], "set() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.set"]], "set() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.set"]], "set() (pyrftk.rfrlc.rfrlc method)": [[11, "pyRFtk.rfRLC.rfRLC.set"]], "set() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.set"]], "setloglevel() (in module pyrftk.config)": [[11, "pyRFtk.config.setLogLevel"]], "sets() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.setS"]], "solve() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.solve"]], "solve() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.solve"]], "solvevi() (pyrftk.rftrl.rftrl method)": [[11, "pyRFtk.rfTRL.rfTRL.solveVI"]], "sortports() (pyrftk.rfobject.rfobject method)": [[11, "pyRFtk.rfObject.rfObject.sortports"]], "strm() (in module pyrftk.printmatrices)": [[11, "pyRFtk.printMatrices.strM"]], "strvsw() (in module pyrftk.plotvsws)": [[11, "pyRFtk.plotVSWs.strVSW"]], "str_dict() (in module pyrftk.str_dict)": [[11, "pyRFtk.str_dict.str_dict"]], "terminate() (pyrftk.circuit.circuit method)": [[11, "pyRFtk.circuit.circuit.terminate"]], "terminate() (pyrftk.rfcircuit.rfcircuit method)": [[11, "pyRFtk.rfCircuit.rfCircuit.terminate"]], "tic() (in module pyrftk.tictoc)": [[11, "pyRFtk.tictoc.tic"]], "toc() (in module pyrftk.tictoc)": [[11, "pyRFtk.tictoc.toc"]], "tsf2str() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.tsf2str"]], "whoami() (in module pyrftk.whoami)": [[11, "pyRFtk.whoami.whoami"]], "write_tsf() (pyrftk.rfbase.rfbase method)": [[11, "pyRFtk.rfBase.rfBase.write_tsf"]]}})
|
|
@@ -2,21 +2,11 @@ Installation
|
|
|
2
2
|
==================================
|
|
3
3
|
Pip
|
|
4
4
|
---
|
|
5
|
-
The program has a pre-build version which can be installed using pip
|
|
6
|
-
to install the program you'll have to first clone the repository:
|
|
5
|
+
The program has a pre-build version which can be installed using pip:
|
|
7
6
|
|
|
8
7
|
.. code-block::
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Then navigate to the folder "dist" where the
|
|
13
|
-
install file is located, and run
|
|
14
|
-
|
|
15
|
-
.. code-block::
|
|
16
|
-
|
|
17
|
-
(.venv) $pip install pyrftk2-2.0.0-py3-none-any.whl
|
|
18
|
-
|
|
19
|
-
which installs the program
|
|
9
|
+
pip install pyRFtk
|
|
20
10
|
|
|
21
11
|
Source
|
|
22
12
|
------
|
|
@@ -3,14 +3,14 @@ requires = ["hatchling","numpy","matplotlib","logging"]
|
|
|
3
3
|
build-backend = "hatchling.build"
|
|
4
4
|
[project]
|
|
5
5
|
name = "pyRFtk"
|
|
6
|
-
version = "2.0.
|
|
6
|
+
version = "2.0.2"
|
|
7
7
|
authors = [
|
|
8
8
|
{ name="Frederic Durodie", email="frederic.durodie@rma.ac.be" },
|
|
9
9
|
{ name="Arthur Adriaens", email="arthur.adriaens@mil.be" },
|
|
10
10
|
]
|
|
11
11
|
description = "Design tool for RF antennae networks"
|
|
12
12
|
readme = "README.md"
|
|
13
|
-
requires-python = ">=3.
|
|
13
|
+
requires-python = ">=3.8"
|
|
14
14
|
classifiers = [
|
|
15
15
|
"Programming Language :: Python",
|
|
16
16
|
"Operating System :: OS Independent",
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
DEBUG - config.py setLogLevel [ 39]: Change loglevel from CRITICAL to DEBUG
|
|
2
|
+
DEBUG - rfCircuit.py __init__ [ 60]: [ 0] > __init__
|
|
3
|
+
DEBUG - rfBase.py __init__ [ 70]: [ 1] | > __init__
|
|
4
|
+
DEBUG - rfBase.py __init__ [ 114]: [ 2] | | self.fs=[]
|
|
5
|
+
DEBUG - rfBase.py __init__ [ 138]: [ 1] | < __init__
|
|
6
|
+
DEBUG - rfCircuit.py __init__ [ 110]: [ 0] < __init__
|
|
7
|
+
DEBUG - rfCircuit.py addblock [ 533]: [ 0] > [circuit.addblock] name= TL1, RFobj= rfTRL_1, ports= None, params={}, kwargs= {}
|
|
8
|
+
DEBUG - rfCircuit.py addblock [ 698]: [ 0] < [circuit.addblock] (inserted a new block)
|
|
9
|
+
DEBUG - rfCircuit.py addblock [ 533]: [ 0] > [circuit.addblock] name= TL2, RFobj= rfTRL_1, ports= None, params={}, kwargs= {}
|
|
10
|
+
DEBUG - rfCircuit.py addblock [ 698]: [ 0] < [circuit.addblock] (inserted a new block)
|
|
11
|
+
DEBUG - rfCircuit.py connect [ 748]: [ 0] > [circuit.connect] ports= ('TL1.1', 'TL2.1', '1')
|
|
12
|
+
DEBUG - rfCircuit.py connect [ 821]: [ 0] < [circuit.connect]
|
|
13
|
+
DEBUG - rfCircuit.py connect [ 748]: [ 0] > [circuit.connect] ports= ('TL1.2', 'TL2.2', '2')
|
|
14
|
+
DEBUG - rfCircuit.py connect [ 821]: [ 0] < [circuit.connect]
|
|
15
|
+
DEBUG - rfCircuit.py getS [ 1203]: [ 0] > [circuit.getS] fs= 10000000.0, Zbase= None, params= {}, flags= {}
|
|
16
|
+
DEBUG - rfCircuit.py get1S [ 1228]: [ 1] | not using sNp: no sNp
|
|
17
|
+
DEBUG - rfCircuit.py get1S [ 1235]: [ 1] | getting S for TL1
|
|
18
|
+
DEBUG - rfCircuit.py get1S [ 1235]: [ 1] | getting S for TL2
|
|
19
|
+
DEBUG - rfCircuit.py extS [ 949]: [ 1] | > [circuit.extS]
|
|
20
|
+
DEBUG - rfCircuit.py extS [ 955]: [ 2] | | M is not square (10, 12)
|
|
21
|
+
DEBUG - rfCircuit.py extS [ 993]: [ 2] | | Portnames= ['1', '2']
|
|
22
|
+
DEBUG - rfCircuit.py extS [ 994]: [ 2] | | ports= ['1', '2']
|
|
23
|
+
DEBUG - rfCircuit.py extS [ 1021]: [ 2] | | S:
|
|
24
|
+
DEBUG - rfCircuit.py extS [ 1028]: [ 2] | | [2,2]
|
|
25
|
+
DEBUG - rfCircuit.py extS [ 1028]: [ 2] | | 0.15417 -104.89°, 0.98804 -14.89°,
|
|
26
|
+
DEBUG - rfCircuit.py extS [ 1028]: [ 2] | | 0.98804 -14.89°, 0.15417 -104.89°,
|
|
27
|
+
DEBUG - rfCircuit.py extS [ 1030]: [ 1] | < [circuit.extS]
|
|
28
|
+
DEBUG - rfCircuit.py getS [ 1282]: [ 1] | Ss: 1 matrix
|
|
29
|
+
DEBUG - rfCircuit.py getS [ 1286]: [ 1] | f= 10000000.0 Hz
|
|
30
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | [2,2]
|
|
31
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | 0.15417 -104.89°, 0.98804 -14.89°,
|
|
32
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | 0.98804 -14.89°, 0.15417 -104.89°,
|
|
33
|
+
DEBUG - rfCircuit.py getS [ 1295]: [ 0] < [circuit.getS]
|
|
34
|
+
DEBUG - rfCircuit.py <lambda> [ 840]: [ 0] > [circuit.terminate] port= "1", kwargs= {'Z': 0}
|
|
35
|
+
DEBUG - rfCircuit.py terminate [ 883]: [ 1] | port was an external port
|
|
36
|
+
DEBUG - rfCircuit.py <lambda> [ 840]: [ 1] | "1" -> idxA: 8, idxB: 9
|
|
37
|
+
DEBUG - rfCircuit.py terminate [ 885]: [ 1] | self.E["1"] = 10
|
|
38
|
+
DEBUG - rfCircuit.py terminate [ 888]: [ 1] | self.M[8] -> (1+0j)
|
|
39
|
+
DEBUG - rfCircuit.py terminate [ 934]: [ 0] < [circuit.terminate]
|
|
40
|
+
DEBUG - rfCircuit.py getS [ 1203]: [ 0] > [circuit.getS] fs= 10000000.0, Zbase= None, params= {}, flags= {}
|
|
41
|
+
DEBUG - rfCircuit.py get1S [ 1228]: [ 1] | not using sNp: no sNp
|
|
42
|
+
DEBUG - rfCircuit.py get1S [ 1235]: [ 1] | getting S for TL1
|
|
43
|
+
DEBUG - rfCircuit.py get1S [ 1235]: [ 1] | getting S for TL2
|
|
44
|
+
DEBUG - rfCircuit.py extS [ 949]: [ 1] | > [circuit.extS]
|
|
45
|
+
DEBUG - rfCircuit.py extS [ 993]: [ 2] | | Portnames= ['2']
|
|
46
|
+
DEBUG - rfCircuit.py extS [ 994]: [ 2] | | ports= ['2']
|
|
47
|
+
DEBUG - rfCircuit.py extS [ 1021]: [ 2] | | S:
|
|
48
|
+
DEBUG - rfCircuit.py extS [ 1028]: [ 2] | | [1,1]
|
|
49
|
+
DEBUG - rfCircuit.py extS [ 1028]: [ 2] | | 1.00000 +167.86°,
|
|
50
|
+
DEBUG - rfCircuit.py extS [ 1030]: [ 1] | < [circuit.extS]
|
|
51
|
+
DEBUG - rfCircuit.py getS [ 1282]: [ 1] | Ss: 1 matrix
|
|
52
|
+
DEBUG - rfCircuit.py getS [ 1286]: [ 1] | f= 10000000.0 Hz
|
|
53
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | [1,1]
|
|
54
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | 1.00000 +167.86°,
|
|
55
|
+
DEBUG - rfCircuit.py getS [ 1295]: [ 0] < [circuit.getS]
|
|
56
|
+
DEBUG - rfCircuit.py getS [ 1203]: [ 0] > [circuit.getS] fs= 10000000.0, Zbase= None, params= {}, flags= {}
|
|
57
|
+
DEBUG - rfCircuit.py get1S [ 1228]: [ 1] | not using sNp: no sNp
|
|
58
|
+
DEBUG - rfCircuit.py getS [ 1282]: [ 1] | Ss: 1 matrix
|
|
59
|
+
DEBUG - rfCircuit.py getS [ 1286]: [ 1] | f= 10000000.0 Hz
|
|
60
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | [1,1]
|
|
61
|
+
DEBUG - rfCircuit.py getS [ 1293]: [ 1] | 1.00000 +167.86°,
|
|
62
|
+
DEBUG - rfCircuit.py getS [ 1295]: [ 0] < [circuit.getS]
|
|
63
|
+
DEBUG - rfCircuit.py __init__ [ 60]: [ 0] > __init__
|
|
64
|
+
DEBUG - rfBase.py __init__ [ 70]: [ 1] | > __init__
|
|
65
|
+
DEBUG - rfBase.py __init__ [ 114]: [ 2] | | self.fs=[]
|
|
66
|
+
DEBUG - rfBase.py __init__ [ 138]: [ 1] | < __init__
|
|
67
|
+
DEBUG - rfCircuit.py __init__ [ 110]: [ 0] < __init__
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
__updated__ = '
|
|
1
|
+
__updated__ = '2023-11-08 13:25:07'
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
import matplotlib.pyplot as plt
|
|
5
5
|
|
|
6
6
|
from pyRFtk.config import setLogLevel, logit, tLogger, ident
|
|
7
|
-
from pyRFtk.str_dict import str_dict
|
|
8
7
|
|
|
9
8
|
#===============================================================================
|
|
10
9
|
#
|
|
@@ -255,6 +254,7 @@ def strVSW(VSW, indent=0):
|
|
|
255
254
|
if __name__ == '__main__':
|
|
256
255
|
import pickle
|
|
257
256
|
from pprint import pprint
|
|
257
|
+
# from . import str_dict
|
|
258
258
|
|
|
259
259
|
with open('../../pyRFtk test/Launcher_VSWs.bin','rb') as f:
|
|
260
260
|
VSWs = pickle.load(f)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__updated__ = "
|
|
1
|
+
__updated__ = "2023-11-09 11:11:56"
|
|
2
2
|
|
|
3
3
|
from inspect import signature
|
|
4
4
|
|
|
@@ -255,7 +255,7 @@ class TLresolver():
|
|
|
255
255
|
# resonable assumptions as we found nothing until now ...
|
|
256
256
|
('mur', (), 0., _ct_1_), #53
|
|
257
257
|
('epsr', (), 0., _ct_1_), #54
|
|
258
|
-
('Z0TL', (), 0., lambda w, x: self.Zbase),
|
|
258
|
+
('Z0TL', (), 0., lambda w=0, x=0: self.Zbase), #55
|
|
259
259
|
#-- ----------------------------------------------------------- --
|
|
260
260
|
# these are a bit iffy but in case there is nothing else ...
|
|
261
261
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__updated__ = '
|
|
1
|
+
__updated__ = '2023-11-07 16:56:18'
|
|
2
2
|
|
|
3
3
|
if __name__ == '__main__':
|
|
4
4
|
import sys
|
|
@@ -215,7 +215,7 @@ class rfBase():
|
|
|
215
215
|
"""set attributes of the object if present
|
|
216
216
|
"""
|
|
217
217
|
modified = False
|
|
218
|
-
for kw, val in kwargs:
|
|
218
|
+
for kw, val in kwargs.items():
|
|
219
219
|
try:
|
|
220
220
|
if kw in self.attrs:
|
|
221
221
|
if hasattr(self, kw):
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__updated__ = "2023-09
|
|
1
|
+
__updated__ = "2023-11-09 10:00:05"
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
import matplotlib.pyplot as plt
|
|
@@ -753,6 +753,8 @@ class rfCircuit(rfBase):
|
|
|
753
753
|
|
|
754
754
|
# create possibly missing nodes
|
|
755
755
|
newports = [p for p in ports if ('->'+p) not in self.waves]
|
|
756
|
+
_debug_ and tLogger.debug(ident(f'new ports: {", ".join(newports)}', 0))
|
|
757
|
+
|
|
756
758
|
if len(newports) > 1:
|
|
757
759
|
raise ValueError(
|
|
758
760
|
f'{whoami(__package__)}: cannot have more than one new port'
|
|
@@ -763,6 +765,7 @@ class rfCircuit(rfBase):
|
|
|
763
765
|
)
|
|
764
766
|
|
|
765
767
|
oldports = [p for p in ports if ('->'+p) in self.waves]
|
|
768
|
+
_debug_ and tLogger.debug(ident(f'old ports: {", ".join(oldports)}', 0))
|
|
766
769
|
|
|
767
770
|
for p in newports:
|
|
768
771
|
self.waves.append('->'+p)
|
|
@@ -771,6 +774,9 @@ class rfCircuit(rfBase):
|
|
|
771
774
|
# here we need to make assumptions on the position of the new port
|
|
772
775
|
# -> we take the position of the first port in the list
|
|
773
776
|
self.xpos.append(self.getpos(oldports[0]))
|
|
777
|
+
|
|
778
|
+
_debug_ and tLogger.debug(ident(f'self.ports = {", ".join(self.ports)}', 0))
|
|
779
|
+
|
|
774
780
|
|
|
775
781
|
# do we need to reverse '->' and '<-' for new ports
|
|
776
782
|
idxAs, idxBs = [], []
|
|
@@ -787,7 +793,10 @@ class rfCircuit(rfBase):
|
|
|
787
793
|
_kp = self.ports.index(_p)
|
|
788
794
|
self.ports.pop(_kp)
|
|
789
795
|
self.xpos.pop(_kp)
|
|
790
|
-
|
|
796
|
+
_debug_ and tLogger.debug(ident(f'deleted port {_p}', 0))
|
|
797
|
+
|
|
798
|
+
_debug_ and tLogger.debug(ident(f'self.ports -> {", ".join(self.ports)}', 0))
|
|
799
|
+
|
|
791
800
|
# now we need to expand M for the new variables
|
|
792
801
|
self.M = np.hstack((
|
|
793
802
|
self.M, np.zeros((self.M.shape[0],2*len(newports)))
|
|
@@ -817,6 +826,8 @@ class rfCircuit(rfBase):
|
|
|
817
826
|
|
|
818
827
|
for SJrc, idxB in zip(SJr,idxBs):
|
|
819
828
|
self.M[-1, idxB] = SJrc
|
|
829
|
+
|
|
830
|
+
self.invM, self.S = None, None
|
|
820
831
|
|
|
821
832
|
_debug_ and tLogger.debug(ident(
|
|
822
833
|
f'< [circuit.connect]', -1
|
|
@@ -899,7 +910,12 @@ class rfCircuit(rfBase):
|
|
|
899
910
|
self.invM = None
|
|
900
911
|
self.S = None
|
|
901
912
|
|
|
902
|
-
elif port in self.C:
|
|
913
|
+
elif False and (port in self.C):
|
|
914
|
+
|
|
915
|
+
# 2023/11/08 : (FDe) disabled this branch with "False and ..."
|
|
916
|
+
# trying to terminate a port newly created would erroneously cause
|
|
917
|
+
# a port already connected error
|
|
918
|
+
|
|
903
919
|
_debug_ and tLogger.debug(ident(f'port already connected !'))
|
|
904
920
|
raise ValueError(
|
|
905
921
|
f'{whoami(__package__)}: port {port} already conneccted'
|
|
@@ -913,6 +929,7 @@ class rfCircuit(rfBase):
|
|
|
913
929
|
_kp = self.ports.index(port)
|
|
914
930
|
self.ports.pop(_kp)
|
|
915
931
|
self.xpos.pop(_kp)
|
|
932
|
+
|
|
916
933
|
except IndexError:
|
|
917
934
|
raise ValueError(
|
|
918
935
|
f'{whoami(__package__)}: port {port} already in use'
|
|
@@ -930,6 +947,8 @@ class rfCircuit(rfBase):
|
|
|
930
947
|
self.eqns.append(f'T: {port}')
|
|
931
948
|
|
|
932
949
|
self.T[port] = idxA, idxB, self.M.shape[0] - 1
|
|
950
|
+
|
|
951
|
+
self.invM, self.S = None, None
|
|
933
952
|
|
|
934
953
|
_debug_ and tLogger.debug(ident(
|
|
935
954
|
f'< [circuit.terminate]', -1
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
__updated__ = '2023-
|
|
1
|
+
__updated__ = '2023-11-08 11:26:40'
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
degSign = u'\N{DEGREE SIGN}'
|
|
5
5
|
|
|
6
6
|
if False and __name__ == '__main__':
|
|
7
|
-
from pyRFtk import rfBase
|
|
8
|
-
from pyRFtk.config import logit, logident
|
|
9
|
-
from pyRFtk.whoami import whoami
|
|
7
|
+
from pyRFtk import rfBase # @UnresolvedImport
|
|
8
|
+
from pyRFtk.config import logit, logident # @UnresolvedImport
|
|
9
|
+
from pyRFtk.whoami import whoami # @UnresolvedImport
|
|
10
10
|
else:
|
|
11
11
|
from . import rfBase
|
|
12
12
|
from .config import logit, logident
|
|
@@ -132,7 +132,13 @@ class rfCoupler(rfBase):
|
|
|
132
132
|
q = "'"
|
|
133
133
|
for p, xpos in zip(self.ports, self.xpos):
|
|
134
134
|
s += f'| {q+p+q:{lmax+2}s} @ {xpos:7.3f}m '+ '\n'
|
|
135
|
-
s = s[:-1]
|
|
135
|
+
# s = s[:-1]
|
|
136
|
+
|
|
137
|
+
if self.S is not None:
|
|
138
|
+
s += f'|\n+ last evaluation at {self.f:_.1f} Hz: \n'
|
|
139
|
+
for sk in str(self.S).split('\n'):
|
|
140
|
+
s += '| ' + sk + '\n'
|
|
141
|
+
|
|
136
142
|
s += '\n^'
|
|
137
143
|
return s
|
|
138
144
|
|
|
@@ -155,12 +161,14 @@ class rfCoupler(rfBase):
|
|
|
155
161
|
|
|
156
162
|
_debug_ and logident('<')
|
|
157
163
|
|
|
158
|
-
|
|
164
|
+
self.f = f
|
|
165
|
+
self.S = np.array(
|
|
159
166
|
[[0., A, B, 0.],
|
|
160
167
|
[A, 0., 0., B],
|
|
161
168
|
[B, 0., 0., A],
|
|
162
169
|
[0., B, A, 0.]])
|
|
163
|
-
|
|
170
|
+
|
|
171
|
+
return self.S
|
|
164
172
|
#===============================================================================
|
|
165
173
|
#
|
|
166
174
|
# _ _ m a i n _ _
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__updated__ = "2023-
|
|
1
|
+
__updated__ = "2023-11-08 11:19:50"
|
|
2
2
|
|
|
3
3
|
if __name__ == '__main__':
|
|
4
4
|
import sys
|
|
@@ -129,6 +129,8 @@ class rfObject():
|
|
|
129
129
|
self.read_tsf(self.touchstone, **Tkwargs)
|
|
130
130
|
|
|
131
131
|
self.interpOK = False
|
|
132
|
+
|
|
133
|
+
self.f, self.S = None, None
|
|
132
134
|
|
|
133
135
|
#===========================================================================
|
|
134
136
|
#
|
|
@@ -223,6 +225,12 @@ class rfObject():
|
|
|
223
225
|
#FIXME: adhere to format compatible with rfTRL, rfRLC, circuit, ...
|
|
224
226
|
s = self.__repr__() + '\n'
|
|
225
227
|
s += '# %d frequencies\n' % len(self.fs)
|
|
228
|
+
|
|
229
|
+
if self.S is not None:
|
|
230
|
+
s += f'|\n+ last evaluation at {self.f:_.1f} Hz: \n'
|
|
231
|
+
for sk in str(self.S).split('\n'):
|
|
232
|
+
s += '| ' + sk + '\n'
|
|
233
|
+
|
|
226
234
|
return s
|
|
227
235
|
|
|
228
236
|
#===========================================================================
|
|
@@ -456,11 +464,15 @@ class rfObject():
|
|
|
456
464
|
tS if Zbase == self.Zbase
|
|
457
465
|
else ConvertGeneral(Zbase, tS, self.Zbase)
|
|
458
466
|
)
|
|
467
|
+
self.f, self.S = f, Ss[-1]
|
|
468
|
+
|
|
459
469
|
else:
|
|
460
470
|
tS = get1S(fs)
|
|
461
471
|
Ss = (tS if Zbase == self.Zbase
|
|
462
472
|
else ConvertGeneral(Zbase, tS, self.Zbase))
|
|
463
473
|
|
|
474
|
+
self.f, self.S = fs, Ss
|
|
475
|
+
|
|
464
476
|
debug and tLogger.debug(ident('< [rfObject.getS]',-1))
|
|
465
477
|
return np.array(Ss)
|
|
466
478
|
|