• Lobzang
  • Tips
  • Links
  • SevenDays
  • SubWay
  • Emmanuel

    Use this script to find the good strings for you instrument

    create a script called *cordes.sh* :
    #!/bin/bash
    # copyright @lobzang 2021
    
    [ $# -ne 3 ] && echo "Usage : $0 [Diapason(cm)] [Note] [String[P(plain)/W(wounded)]]
    ex: $0 65 C3 10P" && exit 2
    
    Diapason=$1
    Note=$2
    String=$3
    
    case $String in
    9P)  UnitWeight=0.00001794;;
    10P) UnitWeight=0.00002215;;
    11P) UnitWeight=0.00002680;;
    12P) UnitWeight=0.00003190;;
    13P) UnitWeight=0.00003744;;
    14P) UnitWeight=0.00004342;;
    15P) UnitWeight=0.00004984;;
    16P) UnitWeight=0.00005671;;
    17P) UnitWeight=0.00006402;;
    18P) UnitWeight=0.00007177;;
    19P) UnitWeight=0.00007997;;
    20P) UnitWeight=0.00008861;;
    21W) UnitWeight=0.00008293;;
    22P) UnitWeight=0.00010722;;
    24W) UnitWeight=0.00010857;;
    26P) UnitWeight=0.00014975;;
    26W) UnitWeight=0.00012671;;
    28W) UnitWeight=0.00014666;;
    30W) UnitWeight=0.00017236;;
    32W) UnitWeight=0.00019347;;
    34W) UnitWeight=0.00021590;;
    42W) UnitWeight=0.00032279;;
    54W) UnitWeight=0.00053838;;
    *) echo "String $String not found"
    esac
    
    ScaleLength=$( echo "scale=10 ; $Diapason/2.54 " | bc )
    Frequency=$(echo "$Note" | awk ' BEGIN{
    position["A"]=0
    position["A#"]=1
    position["Bb"]=1
    position["B"]=2
    position["C"]=-9
    position["C#"]=-8
    position["D"]=-7
    position["D#"]=-6
    position["E"]=-5
    position["F"]=-4
    position["F#"]=-3
    position["G"]=-2
    position["G#"]=-1
    }
    { 
      octave=substr($0,length($0))
      note=substr($0,1,length($0)-1)
      p=position[note]+(octave-4)*12
      print 440*(1.05946^p)
     } ')
    Tension=$(echo "scale=10 ; $UnitWeight*(2*$ScaleLength*$Frequency)^2/386.4" | bc  )
    echo "ScaleLength $ScaleLength ; Frequency $Frequency , Tension : $Tension"
    echo $Tension | awk ' 
    $1<10 { print "not enought tension !!!" ;exit } 
    $1<15 { print "X-LIGHT" ;exit } 
    $1<20 { print "LIGHT" ;exit } 
    $1<25 { print "MEDIUM" ;exit } 
    $1<30 { print "HEAVY" ;exit } 
    $1>=30 { print "too much tension !!!" ;exit } '
    
    And now let's test the script, supposing we have a tres cubano guitar , with diapason 59cm, and tuning G4 / G3 / C4 / C4 / E3 / E4 . We have some strings and we want to see if they are good ( E: 11P/30W C: 14P/14P G: 12P/23W ) .
    P = plain string
    W = wounded string

    ]$ ./cordes.sh 59 E4 11P
    ScaleLength 23.2283464566 ; Frequency 329.632 , Tension : 16.2649595905
    LIGHT
    
    ]$ ./cordes.sh 59 E3 30W
    ScaleLength 23.2283464566 ; Frequency 164.822 , Tension : 26.1532887319
    HEAVY
    
    so 30W string seems too big for you instrument , we should try smaller strings
    ]$ ./cordes.sh 59 E3 26W
    ScaleLength 23.2283464566 ; Frequency 164.822 , Tension : 19.2265213229
    LIGHT
    
    see http://vinic.free.fr/strings/ for online tool