Skip to main content

No project description provided

Project description

ITU grid

Documentation Status Github - License Github - Release PyPI - Version Code style: black Linting with pylint Checked with mypy Python Version Docstr coverage

Description

itu-grid is a small python package that can be used to quickly identify the channels in the ITU grid. The app can:

  • list the ITU grid;
  • identify a channel from a wavelength or a frequency;
  • give the wavelength and frequency from a channel;
  • apply this to different spacing.

The default parameters for the grid are the following:

Number of channels Spacing Starting center frequency
80 100 GHz 190.1 THz

Usage

The itu-grid package is shipped with a command line interface (CLI) that can be called using the itu command. Calling this command without any parameters print the grid:

$ itu
| Channel | Cent. Freq. | Cent. Wav. | Channel | Cent. Freq. | Cent. Wav. |
| ------- | ----------- | ---------- | ------- | ----------- | ---------- |
| 1       | 190.1 THz   | 1577.03 nm | 41      | 194.1 THz   | 1544.53 nm |
| 2       | 190.2 THz   | 1576.20 nm | 42      | 194.2 THz   | 1543.73 nm |
| 3       | 190.3 THz   | 1575.37 nm | 43      | 194.3 THz   | 1542.94 nm |
| 4       | 190.4 THz   | 1574.54 nm | 44      | 194.4 THz   | 1542.14 nm |
| 5       | 190.5 THz   | 1573.71 nm | 45      | 194.5 THz   | 1541.35 nm |
| 6       | 190.6 THz   | 1572.89 nm | 46      | 194.6 THz   | 1540.56 nm |
| 7       | 190.7 THz   | 1572.06 nm | 47      | 194.7 THz   | 1539.77 nm |
| 8       | 190.8 THz   | 1571.24 nm | 48      | 194.8 THz   | 1538.98 nm |
| 9       | 190.9 THz   | 1570.42 nm | 49      | 194.9 THz   | 1538.19 nm |
| 10      | 191.0 THz   | 1569.59 nm | 50      | 195.0 THz   | 1537.40 nm |
| 11      | 191.1 THz   | 1568.77 nm | 51      | 195.1 THz   | 1536.61 nm |
| 12      | 191.2 THz   | 1567.95 nm | 52      | 195.2 THz   | 1535.82 nm |
| 13      | 191.3 THz   | 1567.13 nm | 53      | 195.3 THz   | 1535.04 nm |
| 14      | 191.4 THz   | 1566.31 nm | 54      | 195.4 THz   | 1534.25 nm |
| 15      | 191.5 THz   | 1565.50 nm | 55      | 195.5 THz   | 1533.47 nm |
| 16      | 191.6 THz   | 1564.68 nm | 56      | 195.6 THz   | 1532.68 nm |
| 17      | 191.7 THz   | 1563.86 nm | 57      | 195.7 THz   | 1531.90 nm |
| 18      | 191.8 THz   | 1563.05 nm | 58      | 195.8 THz   | 1531.12 nm |
| 19      | 191.9 THz   | 1562.23 nm | 59      | 195.9 THz   | 1530.33 nm |
| 20      | 192.0 THz   | 1561.42 nm | 60      | 196.0 THz   | 1529.55 nm |
| 21      | 192.1 THz   | 1560.61 nm | 61      | 196.1 THz   | 1528.77 nm |
| 22      | 192.2 THz   | 1559.79 nm | 62      | 196.2 THz   | 1527.99 nm |
| 23      | 192.3 THz   | 1558.98 nm | 63      | 196.3 THz   | 1527.22 nm |
| 24      | 192.4 THz   | 1558.17 nm | 64      | 196.4 THz   | 1526.44 nm |
| 25      | 192.5 THz   | 1557.36 nm | 65      | 196.5 THz   | 1525.66 nm |
| 26      | 192.6 THz   | 1556.55 nm | 66      | 196.6 THz   | 1524.89 nm |
| 27      | 192.7 THz   | 1555.75 nm | 67      | 196.7 THz   | 1524.11 nm |
| 28      | 192.8 THz   | 1554.94 nm | 68      | 196.8 THz   | 1523.34 nm |
| 29      | 192.9 THz   | 1554.13 nm | 69      | 196.9 THz   | 1522.56 nm |
| 30      | 193.0 THz   | 1553.33 nm | 70      | 197.0 THz   | 1521.79 nm |
| 31      | 193.1 THz   | 1552.52 nm | 71      | 197.1 THz   | 1521.02 nm |
| 32      | 193.2 THz   | 1551.72 nm | 72      | 197.2 THz   | 1520.25 nm |
| 33      | 193.3 THz   | 1550.92 nm | 73      | 197.3 THz   | 1519.48 nm |
| 34      | 193.4 THz   | 1550.12 nm | 74      | 197.4 THz   | 1518.71 nm |
| 35      | 193.5 THz   | 1549.32 nm | 75      | 197.5 THz   | 1517.94 nm |
| 36      | 193.6 THz   | 1548.51 nm | 76      | 197.6 THz   | 1517.17 nm |
| 37      | 193.7 THz   | 1547.72 nm | 77      | 197.7 THz   | 1516.40 nm |
| 38      | 193.8 THz   | 1546.92 nm | 78      | 197.8 THz   | 1515.63 nm |
| 39      | 193.9 THz   | 1546.12 nm | 79      | 197.9 THz   | 1514.87 nm |
| 40      | 194.0 THz   | 1545.32 nm | 80      | 198.0 THz   | 1514.10 nm |

The information of specific channel can be queried by passing as argument C followed by the channel number, e.g.

$ itu C34
Channel 34
Frequency: 193.4 THz (193.3 - 193.4 THz)
Wavelength: 1550.12 nm (1549.72 - 1550.52 nm)

The channel for a given wavelength can be queried by passing a number followed by nm without space (the number will be interpreted as the wavelength in nm), e.g.

$ itu 1550nm
1550.0 nm is in channel 34

The channel for a givenwavelength can be queried by passing a number followed by thz without space (the number will be interpreted as the frequency in THz), e.g.

$ itu 190.25Thz
190.25 THz is in channel 2

In case the format of the argument passed to itu is none of the one above, it will try to guess the type of parameter, as long as the number is a float.

$ itu 34
Query has no C, nm or thz indicator. Trying to guess the query.
Query is less than 100 and integer. Channel is assumed (equivalent to C34).
Channel 34
Frequency: 193.4 THz (193.3 - 193.4 THz)
Wavelength: 1550.12 nm (1549.72 - 1550.52 nm)
$ itu 1550
Query has no C, nm or thz indicator. Trying to guess the query.
Query is between 1000 and 2000. Assuming it is a wavelength in nm (equivalent to 1550.0nm).
1550.0 nm is in channel 34
$ itu 190.25
Query has no C, nm or thz indicator. Trying to guess the query.
Query is between 100 and 200. Assuming it is a frequency in Thz (equivalent to 190.25thz).
190.25 THz is in channel 2

In case the query cannot be interpreted (not a float or a float that doesn't make sense in the context), the ITU grid is printed.

For any of these commands, the parameters of the grid can be tuned from the command line with the --num-channels (or -n), --start-freq (or -f) and --spacing (or -s) parameters.

Installation

The package can be installed via pip:

$ pip install itu-grid

For arch-linux users, a PKGBUILD file is available in the archlinux folder and can be used with makepkg -si.

License

itu-grid is distributed under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

itu_grid-0.1.0.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

itu_grid-0.1.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file itu_grid-0.1.0.tar.gz.

File metadata

  • Download URL: itu_grid-0.1.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for itu_grid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 904bc4b9c0666af41a9bbaf5c8941170d331cfbfc1b1441c4093a6d6ac264be3
MD5 ccc2b7564f54d3e2cf6b1bad9558f72d
BLAKE2b-256 47c57b3cf3b0f12c055d1d7a29067080daf6bf3ac16396ded9c00ae1ce628378

See more details on using hashes here.

File details

Details for the file itu_grid-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: itu_grid-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for itu_grid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 179ded5e81a1473ebe3b303b40e53802a777d8cc2ca74ef71cfdc75767ff4ec6
MD5 abca8a3faa9ecc08c432445f56c64a9d
BLAKE2b-256 4cb308d3a44ebd4ea0282e3a35750960f6c4628c78a8c10bc4257da18053f5fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page