Gauge suggest#
We can use the API or the CLI to do this. For example, consider this Irish tenor banjo situation (also shown in the GitHub README):
target tension: 17 lbf
scale length: 23”
tuning: G2 D3 A3 E4
string types: D’Addario loop-end nickel-wound and plain steel (
DA:LEWandDA:LE)
API#
We use the function stringcalc.tension.suggest_gauge().
from stringcalc.tension import suggest_gauge
T = 17
L = 23
pitches = ["G2", "D3", "A3", "E4"]
types = {"DA:LEW", "DA:LE"}
for pitch in pitches:
df = suggest_gauge(T, L, pitch, types=types, n=6)
display(
df
.style
.set_caption(f'{pitch}, target T = {T} lbf')
.highlight_min(df.dT.abs().argmin())
)
abcjs loaded
| id | T | dT | |
|---|---|---|---|
| 0 | DA:LE038W | 13.698612 | -3.301388 |
| 1 | DA:LE040W | 15.228692 | -1.771308 |
| 2 | DA:LE042W | 16.686664 | -0.313336 |
| 3 | DA:LE044W | 18.214638 | 1.214638 |
| 4 | DA:LE046W | 19.811564 | 2.811564 |
| 5 | DA:LE048W | 21.477967 | 4.477967 |
| id | T | dT | |
|---|---|---|---|
| 0 | DA:LE023W | 11.507611 | -5.492389 |
| 1 | DA:LE024W | 12.828641 | -4.171359 |
| 2 | DA:LE026W | 14.552597 | -2.447403 |
| 3 | DA:LE028W | 16.909890 | -0.090110 |
| 4 | DA:LE030W | 19.841442 | 2.841442 |
| 5 | DA:LE032W | 22.334620 | 5.334620 |
| id | T | dT | |
|---|---|---|---|
| 0 | DA:LE015 | 13.220580 | -3.779420 |
| 1 | DA:LE016 | 15.042919 | -1.957081 |
| 2 | DA:LE018W | 15.923584 | -1.076416 |
| 3 | DA:LE017 | 16.981973 | -0.018027 |
| 4 | DA:LE018 | 19.037741 | 2.037741 |
| 5 | DA:LE020W | 19.316265 | 2.316265 |
| id | T | dT | |
|---|---|---|---|
| 0 | DA:LE008 | 8.444042 | -8.555958 |
| 1 | DA:LE009 | 10.683082 | -6.316918 |
| 2 | DA:LE010 | 13.190093 | -3.809907 |
| 3 | DA:LE011 | 15.959120 | -1.040880 |
| 4 | DA:LE012 | 18.996116 | 1.996116 |
| 5 | DA:LE013 | 22.295128 | 5.295128 |
Most players would prefer a wound A string. The 018w is probably a better choice than the 017p here, tone- and balance-wise, even though it is farther from the target tension.
CLI#
On the command-line, we can do the same thing
with stringcalc gauge --suggest:
stringcalc gauge --suggest -T 17 -L 23 -P G2 -P D3 -P A3 -P E4 -N 6 --type DA:LEW --type DA:LE --no-column-info
--no-column-info suppresses the descriptions of the columns,
which currently are repeated for each boxed result.
For a single string query, it looks like this:
stringcalc gauge --suggest -T 17 -L 23 -P D3 --type DA:LEW