Pozycje suwaka

źródło: https://www.facebook.com/TROMBONEplayers

Zobaczyłem wczoraj na facebookowej grupie puzonistów taki obrazkowy żart.

Jak to właściwie jest z tymi puzonowymi pozycjami? Tak jak na obrazku?

Na szczęście nie do końca. To o ile trzeba wysunąć suwak możemy policzyć. Sami.

Po pierwsze – trzeba przypomnieć sobie, że stosunek częstotliwości pomiędzy dźwiękami różniącymi się o oktawę wynosi 2. Tzn dźwięk o oktawę wyższy ma 2 razy większą częstotliwość. Umówmy się też, że długość instrumentu w pierwszej pozycji wynosi 1.

Będziemy tu porównywać ze sobą stosunki częstotliwości. Bardzo dobrze do tego nadają się logarytmy. Ze szkoły trzeba sobie przypomnieć, że:

\log_{a}(\frac{x}{y})=\log_{a}x-log_{a}y

czyli:

\log\frac{2}{1}=\log2-\log1 = 0.30103 - 0 = 0.30103

Zauważmy też, ze oktawa składa się z 12 półtonów. W stroju równomiernie temperowanym półtonowi będzie więc odpowiadała wartość

\frac{0.30103}{12} = 0.025009

Teraz jeszcze znowu małe przypomnienie.

\log_{a}(b) = c  \Longrightarrow b=a^{c}

gdzie b – to jest właśnie szukana długość. W związku z tym np. dla drugiej pozycji (1 półton) mamy:

\log{b} = 0.025009

stąd

b=a^{c} \Longrightarrow b = 10^{1\cdot0.025009}  = 1.0595

Czyli długość instrumentu w drugiej pozycji powinna wynosić 1.0595 długości pierwotnej. Jeśli założymy, że długość instrumentu w pierwszej pozycji to 274 cm – tyle ma przeciętny puzon tenorowy, to w drugiej pozycji powinna ona wynosić 290.29. A z racji tego, że suwak ma dwie rurki, wysunięcie powinno wynosić połowę różnicy długości w pierwszej i drugiej pozycji.

Skoro to już rozumiemy, to nie ma co się dalej męczyć, parę linijek kodu policzy sprawę za nas

import math
from tabulate import tabulate

OCTAVE = math.log10(2.0)
SEMITON = OCTAVE/12.0

def position_relative(nr):
"position when long of close instrument = 1"
global OCTAVE
global SEMITON

n = 10**((nr-1)*SEMITON)
return n

def position_cm(nr, instrument_length=274):
"Positions in cm, "
relative = position_relative(nr)
slide_len = (instrument_length*relative - instrument_length) / 2
return slide_len

table = []
for i in range(1, 8):
table.append([i, round(position_cm(i),3)])

print(tabulate(table, headers=["pozycja", "wysunięcie [cm]"],tablefmt="pipe"))

i wynik

| pozycja | wysunięcie [cm] |
|----------:|------------------:|
| 1 | 0 |
| 2 | 8.146 |
| 3 | 16.777 |
| 4 | 25.921 |
| 5 | 35.609 |
| 6 | 45.873 |
| 7 | 56.747 |

Także wiemy już, gdzie w teorii są pozycje. Ale w praktyce i tak nic nie zastąpi ucha.. no chyba, że ktoś chce zrobić robota, który będzie grać na puzonie… ale wtedy to nie koniec obliczeń, w końcu te wszystkie pozycje obniżone i podwyższone. To może zostawmy już jednak na kolejny artykuł!

Więcej na temat: pozycje, pozycje suwaka, Puzon

Polub nas na Facebooku
0 Komentarzy

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

Uwaga: Przeglądając stronę akceptujesz naszą Politykę Prywatności BRASSerwis.pl 2001 - 2024 Wszystkie prawa zastrzeżone.

lub

Zaloguj się używając swojego loginu i hasła

Nie pamiętasz hasła ?