Razão de intervalos na afinação pitagórica
Esta calculadora transforma uma quantidade com sinal de quintas puras em uma razão de frequências exata.
Executar grátis
Informe um valor positivo para avançar pelo círculo de quintas ou negativo para recuar. Ela pode levar o resultado a uma única oitava sem alterar a classe de altura e apresenta a fração exata, a razão decimal, o deslocamento de oitava e o tamanho em cents. É útil para estudar afinação, conferir tabelas de intervalos e comparar grafias pitagóricas sem eliminar a aritmética exata por arredondamento.
Construa um intervalo com quintas puras
A afinação pitagórica começa pela quinta pura, cuja razão de frequências é exatamente 3:2. Empilhar quintas significa multiplicar essa razão uma vez a cada passo ascendente; assim, sete quintas produzem (3/2)^7. Um valor negativo segue na direção oposta e usa o recíproco, (2/3), em cada passo. Informe zero para obter o uníssono, um para uma quinta pura, dois para a segunda maior pitagórica depois da redução de oitava, ou qualquer inteiro com sinal dentro do limite indicado. A calculadora realiza a aritmética racional com inteiros, em vez de arredondar valores decimais repetidamente. Portanto, numerador e denominador preservam a razão teórica exata. Isso importa quando muitas quintas são empilhadas: o decimal exibido é prático para medições, porém é apenas uma aproximação, enquanto a fração registra precisamente como o intervalo foi construído. Valores positivos e negativos são tratados de modo simétrico, permitindo percorrer uma cadeia de quintas nos dois sentidos e verificar relações inversas entre intervalos.
Entenda a normalização e o deslocamento de oitava
Intervalos produzidos por várias quintas logo ultrapassam uma única oitava. A normalização multiplica ou divide a razão original por potências de dois até que o resultado fique entre 1:1, inclusive, e 2:1, exclusive. Como a oitava identifica alturas da mesma classe, essa redução preserva a identidade pitagórica e apresenta o intervalo na faixa usada pela maioria das tabelas. O campo `octave_shift` explica a operação: um valor negativo indica que a razão empilhada foi dividida por esse número de oitavas; um positivo indica que ela subiu oitavas após quintas descendentes. Desative a normalização quando precisar do intervalo composto literal formado pela pilha completa. Nesse modo, o deslocamento é zero e a fração permanece (3/2)^n ou seu recíproco. Comparar chamadas normalizadas e não normalizadas ajuda a separar a multiplicação física de frequências acumulada pela pilha do intervalo simples equivalente por oitava que normalmente recebe um nome musical conhecido.
Use razões exatas, decimais e cents em conjunto
O resultado oferece várias representações do mesmo intervalo porque cada uma atende a uma tarefa diferente. Use `ratio`, `numerator` e `denominator` para copiar valores exatos em uma tabela de afinação, demonstrar uma relação ou calcular uma frequência-alvo com aritmética racional. Use `decimal_ratio` ao multiplicar uma frequência de referência em um script de sintetizador ou planilha. Use `cents` para comparar o resultado com o temperamento igual de doze tons ou outro sistema, pois os cents convertem razões multiplicativas em uma escala aditiva. Por exemplo, você pode calcular uma altura pitagórica, comparar seu valor com o passo temperado de 100 cents mais próximo e interpretar a diferença como ajuste. A calculadora descreve intervalos, mas não atribui nomes de notas: a grafia enarmônica depende da nota inicial e da direção na cadeia. A fração exata continua inequívoca mesmo quando duas grafias parecem iguais no teclado e revela diferenças pequenas, como a coma pitagórica, que rótulos arredondados podem esconder.
Casos de uso
Construir uma escala pitagórica
Gere razões exatas reduzidas à oitava para posições sucessivas em uma cadeia de quintas puras.
Comparar sistemas de afinação
Use o resultado em cents para medir a diferença entre um intervalo pitagórico e seu equivalente temperado.
Conferir instrumento ou sintetizador
Multiplique uma frequência-base pela razão decimal ou converta os cents em um ajuste de afinação.
Perguntas frequentes
O que é uma quinta pura?
É um intervalo com razão de frequências exata 3:2, no qual a frequência superior equivale a uma vez e meia a inferior.
O que significa uma quantidade negativa de quintas?
Ela empilha quintas descendentes usando a razão recíproca 2:3 antes de qualquer normalização de oitava opcional.
O que a normalização de oitava altera?
Ela muda somente o registro por uma potência exata de dois, colocando a razão entre 1:1 e 2:1 sem alterar sua classe de altura.
Por que numerador e denominador são strings?
Inteiros exatos grandes podem superar o intervalo numérico seguro do JSON em JavaScript. As strings preservam todos os dígitos.
A calculadora retorna o nome de uma nota?
Não. O nome também exige uma altura inicial e uma convenção de grafia; aqui é retornado o intervalo produzido pelas quintas.
Quanto custa uma solicitação de API?
Cada solicitação de API custa US$ 0,002. A versão determinística para navegador também pode ser executada localmente na página.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/hobby/music-pythagorean-ratio \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"fifths":7}'const res = await fetch("https://api.kit.forhosting.com/hobby/music-pythagorean-ratio", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"fifths": 7
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/music-pythagorean-ratio",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"fifths": 7
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/music-pythagorean-ratio", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"fifths":7}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"fifths":7}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/music-pythagorean-ratio", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"fifths": 7
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.music_pythagorean_ratio",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_fifths | 100 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |