Skip to main content

Tension Estimate cALCulator for stringed instruments.

Project description

tealc

tealc is a command-line Tension Estimate cALCulator for stringed instruments. Users can calculate tensions for single strings or string sets. Estimates are available for most common string materials for acoustic and electric instruments. Tension estimates are based on published data from major US string manufacturers.

Tensions estimates should be regarded as just that: estimates only, approximate tensions under ideal conditions. Variations in acutal string length due to bridge compensation, environmental conditions, string age, and and manufacturing tolerances all affect the actual tension of a string. Use estimates from tealc as a guide only.

Requirements

The principal requirement is a working Python 3 installation or virtual environment.

Officially, only Linux and Windows are supported. However, tealc can run on other systems can run on other platforms such as the BSDs and macOS, provided:

  1. the user has write permissions to the platform's (or environment's) Python install directory (generally Scripts/), and
  2. the install directory is on the user's PATH.

Installation

python -m pip install -U tealc

Usage

tealc contains these subcommands:

  • tealc string: Calucate tension estimate for a single string.
  • tealc set: Calculate tension estimates for a string set.
  • tealc file: Calculate string set tension estimates from a file.
  • tealc materials: Print a chart of string material codes and descriptions.
  • tealc help: Open the tealc manual.

tealc string

Usage: tealc string [OPTIONS] GAUGE MATERIAL PITCH LENGTH

REQUIRED

GAUGE
String gauge in inches, 1/1000in, or mm with the --si flag. Inch gauges may optionally be in thousandths of an inch: 11 or .011 are both valid and produce the same output.
MATERIAL
Short code for string construction material. Options:
code material
ps plain steel
nps nickel plated steel wound
pb phosphor bronze wound
8020 80/20 bronze wound
8515 85/15 bronze wound
ss stainless steel roundwound
fw stainless steel flatwound
pn pure nickel wound
PITCH
Tuned pitch of string in scientific pitch notation, from A0-E5. Middle C is C4, and A440 is A4. Octaves change at C: A2, B2 is followed by C3, D3, ..., A3, B3, C4, ...

Examples of open-string pitches in standard tunings:

  • Guitar: E2, A2, D3, G3, B3, E4
  • Bass: (B0), E1, A1, D2, G2
  • Mandolin/violin: G3, D4, A4, E5
  • Banjo: G4, D3, G3, B3, D4
LENGTH
Scale length of the instrument in inches, 1/1000in, or mm with the --si flag.

OPTIONAL

--si
Supply gauge and length arguments in millimenters. Tension is returned in kilograms (converted from pounds; used in place of Newtons.)

EXAMPLES

tealc string .011 ps E4 25.5
tealc string --si 1.37 pb E2 632.5

tealc set

usage: `tealc set [OPTIONS]

REQUIRED

-l, --length
Scale length, just as in `tealc string`
-s, --string <GAUGE MATERIAL PITCH>...
Repeated option, per string for the entire set. Requiremnts for the sub-arguments in `<GAUGE MATERIAL PITCH>` are just as in "tealc string".

OPTIONAL

--si
Supply set-wide --length and per-string GAUGE arguments in millimenters inctead of inches. Tension is returned in kilograms.
--title TEXT
An optional title for the output chart.

EXAMPLES

tealc set -l 25.5 -s 10 ps e4 13 -s 13 ps b3 -s 17 ps g3 -s 26 nps d3 \
    -s 36 nps a3 46 -s 46 nps e2
tealc set -l 34 -s 45 bfw g2 -s 60 bfw d2 -s 80 bfw a1 -s 105 bfw e1 \
    --title "Bass Flatwound Mediums"

tealc file

usage: tealc file SETFILE

REQUIRED:

SETFILE
A file formatted using the format: ``` length = LENGTH GAUGE MATERIAL PITCH [GAUGE MATERIAL PITCH] [...] [si = True or False] ```

An example SETFILE for a common set of light gauge ("10's") electric guitar strings on a Fender-scale instrument, with nickel plated steel wound strings, would look like this:

length = 25.5
10 ps e4
13 ps b3
17 ps g3
26 nps d3
36 nps a2
46 nps e2

The "length = ..." line and at least one "GAUGE MATERIAL PITCH" line are required.

"si = False" is not required, and the SetFileParser.si attribute defaults to False if no "si = ..." line is included.

OPTIONAL:

--si
Show output chart units in mm/kg.
--title TEXT
An optional title for the output chart.

EXAMPLE:

tealc file ~/path/to/setfile

tealc materials

Print a chart of material codes and their descriptions.

tealc help

Print a man page style help manual to the terminal (a formatted version of this Usage section).

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

tealc-0.2.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

tealc-0.2.0-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file tealc-0.2.0.tar.gz.

File metadata

  • Download URL: tealc-0.2.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for tealc-0.2.0.tar.gz
Algorithm Hash digest
SHA256 50bac45b7adada3f8e5969fbd7d4d382cfc8db56be738a83e9b867aa7bb47d85
MD5 25e147f598da2f99792b5a0458b40d60
BLAKE2b-256 f25ed27fe918ec6746c4ad3aa5352e0733e188923cf2e45427c0a1ff0b164c6d

See more details on using hashes here.

File details

Details for the file tealc-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tealc-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for tealc-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3392aab6ff4eb9ebcfe84bcf5a233377e5862b7aaa462dfde1768c0ebe10ed4f
MD5 e8d1848a85c26bd098bb26311700de6c
BLAKE2b-256 9098d35edcb142c3ca1191156b9d8f1f7d47a84933404db9c632c36ec0a63b24

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