ForHosting KIT · Matemática

Calculadora de convolução

Deslize uma sequência sobre a outra e some os produtos em cada posição: [1; 2; 3] com [0,5; 0,5] dá [0,5; 1,5; 2,5; 1,5]. Todas as sobreposições parciais são mantidas, então o resultado tem n + m − 1 valores. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Primeiro texto
1, 2, 3
Segundo texto
0,5, 0,5
Você obtém
Comprimento de a
3
Comprimento de b
2
Comprimento
4
Sequência
0,5, 1,5, 2,5, 1,5

A convolução discreta é a operação fundamental do processamento de sinais e da matemática aplicada: ela desliza uma sequência finita sobre a outra e, a cada sobreposição, multiplica os valores alinhados e soma os produtos. Dadas duas sequências a de comprimento n e b de comprimento m, esta calculadora retorna a convolução linear completa, uma nova sequência de comprimento n mais m menos um cujo k-ésimo valor é a soma de a[i] vezes b[j] sobre cada par de índices com i mais j igual a k. É o mesmo cálculo por trás da filtragem FIR, das médias móveis, da multiplicação de polinômios e das distribuições de probabilidade de somas de dados independentes. As duas sequências devem conter pelo menos um valor e cada valor deve ser um número finito; sequências vazias e entradas não finitas como NaN ou Infinity são rejeitadas com um erro de validação claro.

O que significa a convolução discreta e como ela é calculada

A convolução responde a uma pergunta simples: se você inverte uma sequência, desliza sobre a outra e, a cada alinhamento, multiplica os pares sobrepostos e soma os produtos, que número aparece em cada posição? Formalmente, para sequências a de comprimento n e b de comprimento m, a convolução c igual a a asterisco b é a sequência de comprimento n mais m menos um definida por c[k] igual à soma de a[i] vezes b[k menos i] sobre cada i válido.

Um exemplo concreto torna isso tangível: convoluir [1, 2, 3] com [0.5, 0.5] produz [0.5, 1.5, 2.5, 1.5], porque cada amostra de saída é a média de uma amostra de entrada com a vizinha, com pesos pela metade nas bordas. Este modo «completo», que é o que esta ferramenta retorna, mantém todas as sobreposições parciais, incluindo as posições de contato único nas duas extremidades.

O algoritmo direto usado aqui executa n vezes m passos de multiplicação e acumulação, o que é instantâneo para as sequências usadas no ensino, no projeto de filtros e na análise de dados. Vale saber que a convolução é comutativa, portanto a asterisco b é igual a b asterisco a, e associativa, de modo que suavizações encadeadas podem ser reordenadas sem mudar o resultado. A operação também se distribui sobre a adição, razão pela qual a teoria de sistemas lineares se apoia tanto nela.

Entradas, limites e regras de validação

A calculadora aceita dois campos, a e b, cada um um array não vazio de números. Os valores podem ser inteiros, decimais ou negativos, e strings numéricas em notação científica como 1.5e-3 são convertidas com segurança. Duas regras rígidas protegem o contrato.

Primeira: nenhuma sequência pode estar vazia, pois uma entrada de comprimento zero não tem convolução e é rejeitada em vez de ser tratada silenciosamente como um impulso zero. Segunda: cada elemento deve ser um número finito; NaN, Infinity e valores que transbordariam para resultados não finitos durante a acumulação são recusados com uma mensagem que nomeia o campo e o índice infratores.

Cada sequência é limitada a 4096 elementos, o que mantém o laço direto O(n·m) confortavelmente dentro do orçamento de computação e cobre todos os usos educacionais e de engenharia realistas.

Onde a convolução é usada na prática

A convolução aparece em muito mais lugares do que o nome sugere. No processamento digital de sinais, é a forma de aplicar um filtro de resposta finita ao impulso: o núcleo b contém os pesos dos taps e a saída é o sinal filtrado, de modo que uma média móvel de largura três é simplesmente a convolução com [1/3, 1/3, 1/3].

Em probabilidade, a distribuição da soma de duas variáveis aleatórias discretas independentes é a convolução de suas funções de massa de probabilidade; convoluir a distribuição uniforme de um dado consigo mesma produz a conhecida distribuição triangular de dois dados. Em álgebra, multiplicar dois polinômios é exatamente convoluir suas listas de coeficientes, o que torna esta ferramenta um verificador rápido para lições simbólicas. No processamento de imagens, núcleos bidimensionais separáveis são aplicados como duas convoluções unidimensionais em sequência.

Até o eco e a reverberação em áudio são convoluções com uma resposta ao impulso gravada em uma sala real. Onde quer que a saída de um sistema seja uma superposição deslocada e escalada de sua entrada, a convolução é a operação que a descreve.

Aplicar um filtro FIR a um sinal amostrado

Informe suas amostras como sequência a e os pesos dos taps do filtro como sequência b para obter a saída filtrada. Um núcleo de suavização como [0.25, 0.5, 0.25] remove ruído de alta frequência sem nenhuma biblioteca de processamento de sinais.

Distribuição da soma de dados

Convolua a função de massa de probabilidade de um dado justo consigo mesma para obter as probabilidades exatas da soma de dois dados, e convolua novamente para três dados. Cada passo é uma chamada com números finitos e verificáveis.

Multiplicar polinômios com verificação manual

Como a multiplicação de polinômios é a convolução das listas de coeficientes, informe os coeficientes dos dois fatores e compare a sequência de saída com sua expansão simbólica para detectar na hora erros de sinal e de alinhamento.

Qual é o comprimento da sequência convoluída?

Se a sequência a tem n valores e a sequência b tem m valores, a convolução completa tem n + m - 1 valores.

A ordem das duas sequências importa?

Por convenção, o sinal mais longo vai em a e o núcleo mais curto em b.

Por que minha entrada foi rejeitada?

As duas regras rígidas são: nenhuma sequência pode estar vazia e cada elemento deve ser um número finito. NaN, Infinity ou resultados que transbordam durante a acumulação são rejeitados com um erro que nomeia o campo e o índice do valor infrator.

É convolução circular ou linear?

Esta ferramenta calcula a convolução linear completa com preenchimento de zeros nas duas extremidades, o mesmo resultado que você obteria com a soma direta. Ela não enrola as sequências como faz a convolução circular (cíclica).

Existe um limite de tamanho?

Cada sequência pode conter até 4096 números finitos.

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.

POSThttps://api.kit.forhosting.com/math/convolution

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/math/convolution \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":[1,2,3],"b":[0.5,0.5]}'
{
  "a": [
    1,
    2,
    3
  ],
  "b": [
    0.5,
    0.5
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.convolution",
  "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.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_items4096
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

A ferramenta gratuita do navegador e a API paga executam a mesma função pura, de modo que os resultados nunca divergem entre os canais.

Entradas, limites e regras de validação

O objeto de saída informa length_a, length_b, o comprimento de saída e a própria sequência convoluída sob a chave sequence, de modo que scripts podem verificar os tamanhos sem recalculá-los.

Onde a convolução é usada na prática

O caminho da API custa US$ 0,002 por requisição, enquanto a ferramenta do navegador executa a mesma matemática gratuitamente.

Quanto custa a API?

A calculadora do navegador é gratuita e ilimitada. Chamar a mesma capacidade pela API custa US$ 0,002 por requisição; os dois canais executam a mesma função determinística.

Ver a documentação completa do KIT →