pyRFtk 2.0.3__tar.gz → 2.0.5__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.3 → pyrftk-2.0.5}/.gitignore +1 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/PKG-INFO +5 -5
- {pyrftk-2.0.3 → pyrftk-2.0.5}/README.md +3 -3
- pyrftk-2.0.5/logo/logo.svg +109 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/pyproject.toml +1 -1
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/ReadTSF.py +51 -19
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/WriteTSF.py +2 -2
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/__init__.py +2 -2
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/config.py +1 -1
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfTRL.py +2 -2
- {pyrftk-2.0.3 → pyrftk-2.0.5}/LICENCE +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/Makefile +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.buildinfo +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Arcs.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Deembedding.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Examples.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Installation.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Introduction.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Logging.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Touchstone.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/Tutorials.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/backup.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/environment.pickle +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/index.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/modules.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.doctrees/pyRFtk.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/.nojekyll +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Arcs.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Deembedding.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Examples.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Installation.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Introduction.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Logging.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Touchstone.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/Tutorials.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_downloads/b90e652aafe314ced71820d596828aed/Tomas-Ref_geo-R=200-Diel_eps=0500.s2p +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_downloads/bf8243189246eb0547daf197b1578bac/tomas_icrh_linear_2017-vacuum.s2p +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_images/RLC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_images/RLCSC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_images/SC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_images/TomasCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Arcs.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Deembedding.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Examples.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Installation.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Introduction.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Logging.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Touchstone.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/Tutorials.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/backup.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/index.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/modules.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_sources/pyRFtk.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/_sphinx_javascript_frameworks_compat.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/alabaster.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/basic.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/classic.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/badge_only.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/fontawesome-webfont.eot +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/fontawesome-webfont.svg +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/fontawesome-webfont.ttf +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/fontawesome-webfont.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-bold-italic.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-bold-italic.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-bold.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-bold.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-normal-italic.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-normal-italic.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-normal.woff +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/fonts/lato-normal.woff2 +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/css/theme.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/custom.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/doctools.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/documentation_options.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/file.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/groundwork.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/gw_logo.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/jquery.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/js/badge_only.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/js/html5shiv-printshiv.min.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/js/html5shiv.min.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/js/theme.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/language_data.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/minus.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/plus.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/pygments.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/searchtools.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/sidebar.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/small_groundwork.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/_static/sphinx_highlight.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/backup.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Deembedding.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Examples.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Installation.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Introduction.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/TOMAS.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Touchstone.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/Tutorials.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/backup.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/environment.pickle +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/index.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/modules.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/pyRFtk.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/doctrees/usage.doctree +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/genindex.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/.buildinfo +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/.nojekyll +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Deembedding.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Examples.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Installation.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Introduction.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/TOMAS.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Touchstone.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/Tutorials.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/RLC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/RLCSC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/SC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/SimpleCircuit.pdf +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/TOMAS_ICRH_Antenna.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/TOMAS_ICRH_Circuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_images/TomasCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Deembedding.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Examples.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Installation.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Introduction.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/TOMAS.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Touchstone.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/Tutorials.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/backup.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/index.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/modules.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/pyRFtk.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_sources/usage.rst.txt +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/alabaster.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/basic.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/classic.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/custom.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/doctools.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/documentation_options.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/file.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/language_data.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/minus.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/plus.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/pygments.css +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/searchtools.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/sidebar.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/_static/sphinx_highlight.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/backup.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/genindex.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/index.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/modules.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/objects.inv +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/py-modindex.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/pyRFtk.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/search.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/searchindex.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/html/usage.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/index.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/modules.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/objects.inv +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/py-modindex.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/pyRFtk.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/search.html +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/build/searchindex.js +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/make.bat +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Arcs.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Deembedding.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Drawings/SimpleCircuit.odg +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Examples.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Files/Tomas-Ref_geo-R=200-Diel_eps=0500.s2p +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Files/tomas_icrh_linear_2017-vacuum.s2p +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/RLC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/RLCSC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/SC.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/SimpleCircuit.pdf +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/SimpleCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/TOMAS_ICRH_Antenna.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/TOMAS_ICRH_Circuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Images/TomasCircuit.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Installation.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Introduction.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Logging.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Touchstone.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/Tutorials.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/backup.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/conf.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/index.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/modules.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/docs/source/pyRFtk.rst +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5/logo}/logo.pdf +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5/logo}/logo.png +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/rfCommon.log +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/.gitignore +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/ConvertGeneral.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/ReadDictData.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/S_from_VI.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/S_from_Y.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/S_from_Z.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/Y_from_S.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/Z_from_S.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/_check_3D_shape_.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/circuit.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/codebase.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/compareSs.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/findpath.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/getlines.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/maxfun.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/plotVSWs.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/printMatrices.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/resolveTLparams.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfArcObj.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfBase.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfCircuit.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfCoupler.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfGTL.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfObject.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/rfRLC.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/str_dict.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/tictoc.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/src/pyRFtk/whoami.py +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/tests/WEST_TWA_7s_4_No_FS_protruding.s7p +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/tests/rfCommon.log +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/tests/routine.sh +0 -0
- {pyrftk-2.0.3 → pyrftk-2.0.5}/tests/tests.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: pyRFtk
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.5
|
|
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>
|
|
@@ -12,14 +12,14 @@ Description-Content-Type: text/markdown
|
|
|
12
12
|
|
|
13
13
|
# pyRFtk
|
|
14
14
|
[](https://zenodo.org/doi/10.5281/zenodo.10391750)
|
|
15
|
-

|
|
16
16
|
## About
|
|
17
17
|
|
|
18
18
|
pyRFtk is a Python library able to build and analyse RF circuits, originally designed for ICRH antennae but now widely deployable.
|
|
19
19
|
you can:
|
|
20
20
|
- Incorporate touchstone files to create your own elements
|
|
21
|
-
- See the
|
|
22
|
-
- Compute
|
|
21
|
+
- See the currents throughout your circuit
|
|
22
|
+
- Compute S-matrices
|
|
23
23
|
- Detect Arcs
|
|
24
24
|
- Deembed systems
|
|
25
25
|
- ...
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# pyRFtk
|
|
2
2
|
[](https://zenodo.org/doi/10.5281/zenodo.10391750)
|
|
3
|
-

|
|
4
4
|
## About
|
|
5
5
|
|
|
6
6
|
pyRFtk is a Python library able to build and analyse RF circuits, originally designed for ICRH antennae but now widely deployable.
|
|
7
7
|
you can:
|
|
8
8
|
- Incorporate touchstone files to create your own elements
|
|
9
|
-
- See the
|
|
10
|
-
- Compute
|
|
9
|
+
- See the currents throughout your circuit
|
|
10
|
+
- Compute S-matrices
|
|
11
11
|
- Detect Arcs
|
|
12
12
|
- Deembed systems
|
|
13
13
|
- ...
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
3
|
+
|
|
4
|
+
<svg
|
|
5
|
+
version="1.1"
|
|
6
|
+
id="svg1"
|
|
7
|
+
width="853.33331"
|
|
8
|
+
height="429.33334"
|
|
9
|
+
viewBox="0 0 853.33331 429.33334"
|
|
10
|
+
sodipodi:docname="logo.pdf"
|
|
11
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
12
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
13
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
14
|
+
xmlns:svg="http://www.w3.org/2000/svg">
|
|
15
|
+
<defs
|
|
16
|
+
id="defs1" />
|
|
17
|
+
<sodipodi:namedview
|
|
18
|
+
id="namedview1"
|
|
19
|
+
pagecolor="#ffffff"
|
|
20
|
+
bordercolor="#000000"
|
|
21
|
+
borderopacity="0.25"
|
|
22
|
+
inkscape:showpageshadow="2"
|
|
23
|
+
inkscape:pageopacity="0.0"
|
|
24
|
+
inkscape:pagecheckerboard="0"
|
|
25
|
+
inkscape:deskcolor="#d1d1d1">
|
|
26
|
+
<inkscape:page
|
|
27
|
+
x="0"
|
|
28
|
+
y="0"
|
|
29
|
+
id="page1"
|
|
30
|
+
width="853.33331"
|
|
31
|
+
height="429.33334"
|
|
32
|
+
margin="0"
|
|
33
|
+
bleed="0" />
|
|
34
|
+
</sodipodi:namedview>
|
|
35
|
+
<g
|
|
36
|
+
id="g1"
|
|
37
|
+
inkscape:groupmode="layer"
|
|
38
|
+
inkscape:label="">
|
|
39
|
+
<path
|
|
40
|
+
id="path1"
|
|
41
|
+
d="m 96.414,77.684 c 4.492,-0.301 7.867,1.453 10.129,5.254 0.5,43.535 0.5,87.07 0,130.601 -0.043,5.02 -2.547,7.52 -7.504,7.508 -3.297,-0.149 -5.805,-1.649 -7.504,-4.504 -0.25,-6.754 -0.5,-13.512 -0.75,-20.266 -1.613,-1.457 -3.488,-1.832 -5.625,-1.125 -0.707,7.465 -4.707,10.719 -12.008,9.758 -1.875,-0.875 -3.25,-2.254 -4.125,-4.129 -0.125,-16.519 -0.5,-33.035 -1.125,-49.539 -2.093,-1.949 -4.222,-1.949 -6.379,0 -0.027,9.578 -0.527,19.086 -1.5,28.524 -2.808,2.82 -6.187,3.695 -10.128,2.625 -2.29,-1.539 -3.665,-3.664 -4.125,-6.379 -0.5,-17.766 -0.5,-35.528 0,-53.293 1.96,-4.996 5.585,-6.871 10.878,-5.629 3.204,1.965 4.829,4.84 4.875,8.633 2.25,3.004 4.504,3.004 6.754,0 0.25,-9.008 0.5,-18.016 0.75,-27.02 2.387,-4.305 6.012,-5.683 10.879,-4.129 1.813,1.246 3.188,2.871 4.125,4.879 0.25,27.27 0.5,54.543 0.75,81.813 2.004,2 4.004,2 6.004,0 0.25,-32.774 0.5,-65.551 0.75,-98.328 1.27,-2.145 2.899,-3.895 4.879,-5.254 z"
|
|
42
|
+
style="fill:#343434;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
43
|
+
transform="scale(1.3333333)" />
|
|
44
|
+
<path
|
|
45
|
+
id="path2"
|
|
46
|
+
d="m 119.672,77.684 c 4.492,-0.301 7.871,1.453 10.129,5.254 0.25,6.757 0.5,13.511 0.75,20.269 1.355,1.422 2.98,1.797 4.879,1.125 1.008,-2.652 2.132,-5.277 3.375,-7.883 5.269,-4.172 9.769,-3.422 13.504,2.254 0.25,16.262 0.5,32.524 0.75,48.785 1.566,2.762 3.57,3.012 6.003,0.75 0.25,-8.504 0.5,-17.011 0.75,-25.519 2.418,-5.887 6.547,-7.512 12.379,-4.879 0.965,1.062 1.84,2.187 2.625,3.379 0.504,18.765 0.504,37.531 0,56.293 -3.566,6.074 -8.066,6.828 -13.504,2.254 -0.96,-2.75 -2.085,-5.375 -3.374,-7.883 -1.899,-0.672 -3.524,-0.297 -4.879,1.125 -0.25,9.258 -0.5,18.515 -0.75,27.773 -3.504,4.899 -7.883,5.774 -13.129,2.625 -1.024,-1.457 -1.649,-3.086 -1.875,-4.879 -0.25,-27.019 -0.5,-54.039 -0.75,-81.062 -2.004,-2 -4.004,-2 -6.004,0 -0.25,32.277 -0.5,64.551 -0.75,96.828 -1.344,5.824 -4.973,7.949 -10.879,6.379 -1.875,-0.875 -3.25,-2.254 -4.129,-4.129 -0.5,-44.535 -0.5,-89.07 0,-133.605 1.273,-2.145 2.898,-3.895 4.879,-5.254 z"
|
|
47
|
+
style="fill:#ff7427;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
48
|
+
transform="scale(1.3333333)" />
|
|
49
|
+
<path
|
|
50
|
+
id="path3"
|
|
51
|
+
d="m 319.816,97.902 c -3.441,0 -6.878,0.016 -10.32,0.047 v 72.809 c 6.059,0.472 11.809,-0.028 17.258,-1.5 V 136.98 c 1.676,-0.222 3.176,0.028 4.5,0.75 8.398,10.903 16.902,21.786 25.512,32.653 6.5,0.5 13.004,0.5 19.507,0 0.715,-0.539 0.836,-1.164 0.375,-1.879 -6.152,-7.426 -12.027,-15.059 -17.632,-22.891 -5.711,-0.843 -11.461,-1.593 -17.258,-2.254 -3.02,-0.91 -5.524,-2.535 -7.504,-4.875 -0.406,-0.05 -0.656,-0.296 -0.75,-0.754 3.215,-0.742 6.465,-0.996 9.754,-0.75 3.801,-0.3 7.551,-0.925 11.254,-1.875 6.449,-2.199 10.574,-6.574 12.383,-13.136 2.332,-13.231 -3.047,-21.114 -16.133,-23.641 -10.313,-0.285 -20.629,-0.426 -30.946,-0.426 z m 13.797,0.27 c 10.016,0.14 14.731,6.199 14.149,18.168 1.297,14.84 -5.457,21.469 -20.258,19.89 V 98.703 c 2.219,-0.379 4.254,-0.558 6.109,-0.531 z"
|
|
52
|
+
style="fill:#353535;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
53
|
+
transform="scale(1.3333333)" />
|
|
54
|
+
<path
|
|
55
|
+
id="path4"
|
|
56
|
+
d="m 419.039,133.227 c 5.023,-0.247 10.027,0.007 15.004,0.753 -8.234,0.75 -16.488,1 -24.758,0.75 -1.25,0 -2.5,0 -3.75,0 0,12.008 0,24.02 0,36.028 -5.754,0 -11.508,0 -17.258,0 0,-24.27 0,-48.539 0,-72.809 17.758,-0.125 35.516,0 53.27,0.379 0.859,5.57 0.984,11.199 0.375,16.887 -0.602,0.976 -1.477,1.476 -2.625,1.5 -1.957,-0.477 -3.703,-1.352 -5.254,-2.625 -5.609,-5.18 -11.363,-10.184 -17.254,-15.012 -3.746,-0.375 -7.496,-0.5 -11.254,-0.375 0,11.508 0,23.016 0,34.524 4.5,0 9,0 13.504,0 z"
|
|
57
|
+
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
58
|
+
transform="scale(1.3333333)" />
|
|
59
|
+
<path
|
|
60
|
+
id="path5"
|
|
61
|
+
d="m 199.395,112.914 c -2.567,0 -5.129,0.016 -7.696,0.047 -0.742,19.211 -0.992,38.477 -0.75,57.797 5.946,0.234 11.821,-0.012 17.633,-0.75 0.375,-6.5 0.5,-13.008 0.375,-19.516 5.527,0.028 11.031,-0.347 16.508,-1.125 5.539,-0.824 9.918,-3.453 13.129,-7.883 5.754,-15.886 0.379,-25.269 -16.133,-28.144 -7.688,-0.285 -15.375,-0.426 -23.066,-0.426 z m 11.667,1.461 c 4.696,0.133 7.872,2.664 9.524,7.594 1.703,7.648 1.203,15.152 -1.5,22.519 -2.422,3.649 -5.801,5.153 -10.129,4.504 v -34.527 c 0.734,-0.078 1.434,-0.11 2.105,-0.09 z"
|
|
62
|
+
style="fill:#353535;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
63
|
+
transform="scale(1.3333333)" />
|
|
64
|
+
<path
|
|
65
|
+
id="path6"
|
|
66
|
+
d="m 244.969,112.961 c 6.297,-0.227 12.551,0.023 18.758,0.754 5.628,10.258 11.253,20.515 16.882,30.773 2.766,-4.039 5.149,-8.293 7.129,-12.761 -2.613,-5.227 -5.242,-10.481 -7.879,-15.762 -0.367,-0.969 -0.492,-1.969 -0.375,-3.004 6.254,0 12.504,0 18.758,0 0.121,1.277 -0.004,2.527 -0.375,3.754 -5.754,10.508 -11.504,21.015 -17.258,31.523 -0.25,7.258 -0.5,14.512 -0.75,21.77 -5.754,1 -11.504,1 -17.257,0 -0.25,-7.758 -0.5,-15.512 -0.75,-23.27 -6.164,-10.465 -12.043,-21.097 -17.633,-31.898 0.187,-0.676 0.437,-1.301 0.75,-1.879 z"
|
|
67
|
+
style="fill:#353535;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
68
|
+
transform="scale(1.3333333)" />
|
|
69
|
+
<path
|
|
70
|
+
id="path7"
|
|
71
|
+
d="m 447.551,112.961 c 17.004,-0.125 34.015,0 51.019,0.379 0.739,7.566 0.989,15.199 0.75,22.89 -2.117,0.313 -3.742,-0.437 -4.879,-2.25 -3.953,-6.71 -8.203,-13.214 -12.753,-19.515 -0.25,18.512 -0.5,37.027 -0.75,55.543 -5.063,0.859 -10.196,0.984 -15.379,0.375 -0.621,-18.586 -1,-37.223 -1.129,-55.918 -4.793,6.551 -9.293,13.305 -13.504,20.265 -1.301,1.579 -2.801,1.829 -4.5,0.75 -0.5,-7.003 -0.5,-14.011 0,-21.015 0.539,-0.406 0.914,-0.91 1.125,-1.504 z"
|
|
72
|
+
style="fill:#363636;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
73
|
+
transform="scale(1.3333333)" />
|
|
74
|
+
<path
|
|
75
|
+
id="path8"
|
|
76
|
+
d="m 511.324,112.961 c 5.446,-0.231 10.821,0.019 16.133,0.754 0.621,18.941 0.496,37.832 -0.375,56.668 -5.687,0.609 -11.316,0.484 -16.883,-0.375 -0.5,-18.516 -0.5,-37.031 0,-55.543 0.539,-0.406 0.914,-0.91 1.125,-1.504 z"
|
|
77
|
+
style="fill:#353535;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
78
|
+
transform="scale(1.3333333)" />
|
|
79
|
+
<path
|
|
80
|
+
id="path9"
|
|
81
|
+
d="m 542.836,112.961 c 8.004,0 16.008,0 24.012,0 0.117,1.035 -0.008,2.035 -0.375,3.004 -6.379,7.758 -12.758,15.512 -19.133,23.269 6.98,9.36 14.109,18.618 21.383,27.77 0.757,1.148 1.132,2.398 1.125,3.754 -7.082,0.332 -14.086,-0.043 -21.008,-1.125 -5.844,-8.098 -11.969,-15.981 -18.383,-23.645 -0.363,-0.711 -0.488,-1.461 -0.375,-2.25 4.523,0.403 8.777,-0.476 12.754,-2.629 3.781,-3.527 7.277,-7.277 10.504,-11.257 -3.535,-4.946 -7.16,-9.825 -10.879,-14.637 -0.352,-0.809 -0.227,-1.563 0.375,-2.254 z"
|
|
82
|
+
style="fill:#353535;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
83
|
+
transform="scale(1.3333333)" />
|
|
84
|
+
<path
|
|
85
|
+
id="path10"
|
|
86
|
+
d="m 201.453,191.773 c 17.258,0 34.516,0 51.77,0 0,0.75 0,1.5 0,2.254 -17.254,0 -34.512,0 -51.77,0 0,-0.754 0,-1.504 0,-2.254 z"
|
|
87
|
+
style="fill:#3a3a3a;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
88
|
+
transform="scale(1.3333333)" />
|
|
89
|
+
<path
|
|
90
|
+
id="path11"
|
|
91
|
+
d="m 507.574,191.773 c 17.254,0 34.512,0 51.77,0 0,0.75 0,1.5 0,2.254 -17.258,0 -34.516,0 -51.77,0 0,-0.754 0,-1.504 0,-2.254 z"
|
|
92
|
+
style="fill:#3a3a3a;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
93
|
+
transform="scale(1.3333333)" />
|
|
94
|
+
<text
|
|
95
|
+
id="text11"
|
|
96
|
+
xml:space="preserve"
|
|
97
|
+
transform="matrix(1.3333333,0,0,1.3338481,353.27835,264.36785)"><tspan
|
|
98
|
+
style="font-variant:normal;font-weight:normal;font-size:20.0078px;font-family:'Hack Nerd Font';writing-mode:lr-tb;fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
|
99
|
+
x="0 12.205783 24.431574 36.637356 48.84314 61.08894 73.294724 85.500504 97.726295 109.93208 122.13786 134.36365 146.56944 158.79523 171.02103 183.22681 195.43259 207.65837 219.86417"
|
|
100
|
+
y="0"
|
|
101
|
+
sodipodi:role="line"
|
|
102
|
+
id="tspan11">RF circuit modeling</tspan></text>
|
|
103
|
+
<path
|
|
104
|
+
id="path12"
|
|
105
|
+
d="m 403.902,132.238 h 31.227 v 2.977 h -31.227 z"
|
|
106
|
+
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
|
107
|
+
transform="scale(1.3333333)" />
|
|
108
|
+
</g>
|
|
109
|
+
</svg>
|
|
@@ -3,7 +3,7 @@ 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.5"
|
|
7
7
|
authors = [
|
|
8
8
|
{ name="Frederic Durodie", email="frederic.durodie@rma.ac.be" },
|
|
9
9
|
{ name="Arthur Adriaens", email="arthur.adriaens@mil.be" },
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
__updated__ = "
|
|
1
|
+
__updated__ = "2024-12-20 14:21:08"
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
import re
|
|
5
|
+
import os
|
|
6
|
+
from warnings import warn
|
|
7
|
+
_warn_skips = (os.path.dirname(__file__),)
|
|
8
|
+
|
|
5
9
|
from .getlines import getlines
|
|
6
10
|
from .config import tLogger, logit, ident
|
|
7
11
|
from .config import fscale
|
|
@@ -183,7 +187,7 @@ def ReadTSF(src, **kwargs):
|
|
|
183
187
|
pvars = {}
|
|
184
188
|
GENERAL_MIXED = False
|
|
185
189
|
source = re.findall(
|
|
186
|
-
'(?i)! Touchstone file exported from HFSS (\d{4}\.\d+\.\d+)',
|
|
190
|
+
r'(?i)! Touchstone file exported from HFSS (\d{4}\.\d+\.\d+)',
|
|
187
191
|
comments[0])
|
|
188
192
|
debug and tLogger.debug(ident(f'source = {source}'))
|
|
189
193
|
|
|
@@ -209,7 +213,7 @@ def ReadTSF(src, **kwargs):
|
|
|
209
213
|
lineno += 1
|
|
210
214
|
aline = comments[lineno]
|
|
211
215
|
while aline.strip() != '!':
|
|
212
|
-
varline = re.findall('!\s*([\$]?[A-Za-z0-9_]+)\s*=\s*(.+)',
|
|
216
|
+
varline = re.findall(r'!\s*([\$]?[A-Za-z0-9_]+)\s*=\s*(.+)',
|
|
213
217
|
aline)
|
|
214
218
|
if varline:
|
|
215
219
|
pvars[varline[0][0]] = varline[0][1]
|
|
@@ -235,8 +239,8 @@ def ReadTSF(src, **kwargs):
|
|
|
235
239
|
|
|
236
240
|
re_compile = True # check if compiling regexes is faster ... not really
|
|
237
241
|
if re_compile:
|
|
238
|
-
reGline = re.compile('(?i)\s*(?:Gamma)\s+!?(.+)')
|
|
239
|
-
reZline = re.compile('(?i)\s*(?:Port Impedance)(.+)')
|
|
242
|
+
reGline = re.compile(r'(?i)\s*(?:Gamma)\s+!?(.+)')
|
|
243
|
+
reZline = re.compile(r'(?i)\s*(?:Port Impedance)(.+)')
|
|
240
244
|
|
|
241
245
|
for aline in comments[got_marker:]:
|
|
242
246
|
# check for gamma or port impedance lines
|
|
@@ -252,8 +256,8 @@ def ReadTSF(src, **kwargs):
|
|
|
252
256
|
Gline = reGline.search(rest)
|
|
253
257
|
Zline = reZline.search(rest)
|
|
254
258
|
else:
|
|
255
|
-
Gline = re.findall('(?i)\s*(Gamma)\s+!?(.+)',rest)
|
|
256
|
-
Zline = re.findall('(?i)\s*(Port Impedance)(.+)',rest)
|
|
259
|
+
Gline = re.findall(r'(?i)\s*(Gamma)\s+!?(.+)',rest)
|
|
260
|
+
Zline = re.findall(r'(?i)\s*(Port Impedance)(.+)',rest)
|
|
257
261
|
|
|
258
262
|
|
|
259
263
|
if Gline or (lastline == 'gamma' and not Zline):
|
|
@@ -339,6 +343,36 @@ def ReadTSF(src, **kwargs):
|
|
|
339
343
|
Ss = 10**(Ss.real/20.) * np.exp(1j * Ss.imag * np.pi / 180.)
|
|
340
344
|
else: # datafmt == 'RI':
|
|
341
345
|
pass
|
|
346
|
+
|
|
347
|
+
## do some checking
|
|
348
|
+
if nZcs := Zcs.shape[1]:
|
|
349
|
+
# Zcs (and probably gammas) were present in the file
|
|
350
|
+
if Zbase is not None:
|
|
351
|
+
# there was also a R ... in the format
|
|
352
|
+
if (nZbase := len(Zbase) if hasattr(Zbase, '__iter__') else 1) != nZcs :
|
|
353
|
+
warn(f'\nInconsistent length of the Zcs ({nZcs}) comments and the '
|
|
354
|
+
f'format supplied reference impedance R ({nZbase})',
|
|
355
|
+
stacklevel=4)
|
|
356
|
+
else:
|
|
357
|
+
# numbers match ... but do the values
|
|
358
|
+
if nZbase == 1:
|
|
359
|
+
errfs = np.max(np.abs([(Zbase - Zcs_k)/Zbase for Zcs_k in Zcs[:,0]]))
|
|
360
|
+
else:
|
|
361
|
+
errfs = np.max(np.abs([
|
|
362
|
+
[(Zbase_l - Zcs_kl)/Zbase_l for Zbase_l, Zcs_kl in zip(Zbase, Zcs_k)]
|
|
363
|
+
for Zcs_k in Zcs
|
|
364
|
+
]))
|
|
365
|
+
|
|
366
|
+
if (tol := 1e-3) < errfs:
|
|
367
|
+
warn(
|
|
368
|
+
f'\nInconsistent values for the reference impedances from Zcs comments'
|
|
369
|
+
f' and the one supplied in the format parameter R (rel. err. = {errfs:0.2g} > {tol:0.2g})',
|
|
370
|
+
stacklevel=4)
|
|
371
|
+
|
|
372
|
+
if nZbase == 1 and nZcs != 1:
|
|
373
|
+
err = []
|
|
374
|
+
|
|
375
|
+
|
|
342
376
|
|
|
343
377
|
# if the data type is Z or Y we need to convert to S
|
|
344
378
|
|
|
@@ -354,20 +388,18 @@ def ReadTSF(src, **kwargs):
|
|
|
354
388
|
|
|
355
389
|
else: # datatype == 'S':
|
|
356
390
|
|
|
357
|
-
if
|
|
358
|
-
if
|
|
359
|
-
if Zbase != TZbase:
|
|
360
|
-
Ss = ConvertGeneral(TZbase, Ss, Zbase, 'V', 'V')
|
|
391
|
+
if nZcs: # prefer the Zcs data over the format line R data
|
|
392
|
+
Ss = ConvertGeneral(TZbase if TZbase else 50., Ss, Zcs, 'P', 'V')
|
|
361
393
|
|
|
362
|
-
|
|
363
|
-
|
|
394
|
+
elif Zbase is not None and (nZbase == 1 or nZbase == Ss.shape[1]):
|
|
395
|
+
Ss = ConvertGeneral(TZbase if TZbase else 50., Ss, Zbase, 'P', 'V')
|
|
364
396
|
|
|
365
|
-
|
|
366
|
-
if
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
397
|
+
elif Zbase is None: # No Zcs and Zbase is None:
|
|
398
|
+
Ss = ConvertGeneral(TZbase if TZbase else 50., Ss, Zcs, 'P', 'V')
|
|
399
|
+
|
|
400
|
+
else:
|
|
401
|
+
logit['ERROR'] and tLogger.error(f'len(Zcs)[{len(Zcs)}] != N[{N}]')
|
|
402
|
+
logit['ERROR'] and tLogger.error(f'Zcs={Zcs}')
|
|
371
403
|
|
|
372
404
|
|
|
373
405
|
# set the portnames
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
__updated__ = "2024-
|
|
1
|
+
__updated__ = "2024-12-20 14:21:10"
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
import re
|
|
@@ -50,7 +50,7 @@ def WriteTSF(object, path2tsf=None,
|
|
|
50
50
|
try:
|
|
51
51
|
zref = float(
|
|
52
52
|
re.findall(
|
|
53
|
-
'^.*?R\s*([-+]?(?:\d*[\.])?\d+(?:[eE][-+]?\d+)?).*?$',
|
|
53
|
+
r'^.*?R\s*([-+]?(?:\d*[\.])?\d+(?:[eE][-+]?\d+)?).*?$',
|
|
54
54
|
tsf_format
|
|
55
55
|
)[0]
|
|
56
56
|
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
__updated__ = "2024-
|
|
1
|
+
__updated__ = "2024-12-20 14:11:19"
|
|
2
2
|
|
|
3
|
-
print('using local copy of pyRFtk')
|
|
3
|
+
print('\n*** using local copy of pyRFtk ***\n')
|
|
4
4
|
|
|
5
5
|
from .config import tLogger, setLogLevel, logit, ident, _newID, logident
|
|
6
6
|
from .rfBase import rfBase
|
|
@@ -195,7 +195,7 @@ rcparams = {
|
|
|
195
195
|
'funit' : 'Hz', # 'Hz' | 'kHz' | 'MHz' | 'GHz' # keep to Hz for the moment
|
|
196
196
|
'fs' : (35e6, 60e6, 251),
|
|
197
197
|
'interp' : 'MA', # 'MA' | 'RI' | 'dB'
|
|
198
|
-
'interpkws' : {'kind':
|
|
198
|
+
'interpkws' : {'kind': 3,
|
|
199
199
|
'fill_value':'extrapolate'
|
|
200
200
|
},
|
|
201
201
|
}
|
|
@@ -191,7 +191,7 @@ class rfTRL():
|
|
|
191
191
|
self.odeparams = kwargs.pop('odeparams',{'rtol':1E-12, 'atol':1E-12})
|
|
192
192
|
self.sNp = kwargs.pop('sNp', None)
|
|
193
193
|
self.constant = True
|
|
194
|
-
self.f = np.
|
|
194
|
+
self.f = np.nan
|
|
195
195
|
self.S = None
|
|
196
196
|
self.attrs = ['L']
|
|
197
197
|
|
|
@@ -319,7 +319,7 @@ class rfTRL():
|
|
|
319
319
|
else:
|
|
320
320
|
s += f'| ODE integration parameters: {self.odeparams} \n'
|
|
321
321
|
|
|
322
|
-
self.TLP.f0 = self.f if self.f != np.
|
|
322
|
+
self.TLP.f0 = self.f if self.f != np.nan else None
|
|
323
323
|
for _s in self.TLP.__str__(full).split('\n'):
|
|
324
324
|
s += f'| {_s}\n'
|
|
325
325
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|