ForHosting KIT · Matemática

Calculadora de decomposição polar

A matriz de linhas (2, 1) e (0, 3) se decompõe em uma rotação U e um estiramento simétrico P, com A = U P. Digite uma matriz quadrada de até 16 por 16 e receba os dois fatores, os valores singulares e o resíduo. 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

A decomposição polar fatoreia uma matriz real quadrada A como o produto de uma matriz ortogonal U e uma matriz simétrica semidefinida positiva única P, escrita A = U P. O fator de estiramento P é a raiz quadrada matricial de A transposta vezes A; o fator ortogonal U é a rotação ou reflexão mais próxima de A na norma de Frobenius e vem dos vetores singulares esquerdo e direito. Códigos de mecânica do contínuo recuperam assim uma rotação a partir de um gradiente de deformação; pipelines de robótica e de computação gráfica extraem um movimento rígido de um mapa linear; analistas numéricos projetam uma matriz calculada de volta sobre SO(n) ou O(n).

O que A = U P significa e como os dois fatores são únicos

A decomposição polar direita de uma matriz real quadrada A é a fatoração A = U P em que U é ortogonal (U transposta vezes U iguala a identidade) e P é simétrica e semidefinida positiva. O fator de estiramento P é único para toda A quadrada: é a única raiz quadrada semidefinida positiva da matriz de Gram A transposta A. Quando A é invertível, o fator ortogonal também é único e iguala A vezes a inversa de P.

Quando A é singular, U continua sendo uma matriz ortogonal mais próxima de A na norma de Frobenius, obtida de uma decomposição em valores singulares A = W Σ V-transposta pelo produto U = W V-transposta, enquanto P iguala V Σ V-transposta. Geometricamente U é uma rotação ou uma rotação composta com uma reflexão, e P estica ao longo de um conjunto ortonormal de eixos pelos valores singulares de A.

É por isso que a mecânica do contínuo escreve um gradiente de deformação como R U (ou V R) e por isso o problema ortogonal de Procrustes se resolve com o fator polar de uma covariância cruzada. A decomposição polar esquerda A = P_left U usa o mesmo fator ortogonal e a raiz quadrada de A A-transposta; esta calculadora devolve a forma direita A = U P, que é a convenção da maioria dos livros e códigos de produção.

Para uma matriz um por um os fatores se reduzem ao sinal da entrada e ao seu valor absoluto, tomando o sinal de zero como mais um. Para uma matriz já ortogonal o estiramento é a identidade e U iguala A. Para uma matriz já simétrica semidefinida positiva o fator ortogonal é a identidade e P iguala A.

Essas três conferências são o jeito mais rápido de validar uma implementação antes de confiar em um gradiente de deformação três por três vindo de um dump de simulação.

Onde a decomposição polar é útil

Salas de aula e cadernos de álgebra linear usam uma calculadora de decomposição polar para que os alunos confiram que U-transposta U iguala a identidade e que P iguala P-transposta com autovalores não negativos, sem levantar um sistema de álgebra computacional completo para uma matriz de lição de casa três por três.

Pós-processadores de mecânica do contínuo e de elementos finitos recuperam um tensor de rotação a partir de um gradiente de deformação F lendo o fator ortogonal e um tensor de estiramento a partir do fator positivo, que é exatamente a decomposição polar direita F = R U ensinada em todo curso de contínuos.

Pipelines de robótica, visão computacional e gráficos resolvem o problema ortogonal de Procrustes — achar a rotação mais próxima de um mapa três por três calculado — tomando o fator polar desse mapa, o que é mais barato e estável em um worker de borda do que montar uma biblioteca SVD densa explícita. Códigos de controle e identificação que precisam projetar uma matriz quase ortogonal de volta sobre O(n) depois de uma atualização ruidosa fazem a mesma projeção em uma única chamada. Validação que falha não consome saldo.

Mantenha n no máximo dezesseis, fixe os fatores arredondados nos testes e você obtém U e P reproduzíveis para lição de casa, plugins LMS e workers de borda sem importar uma biblioteca própria de álgebra linear densa.

Do gradiente de deformação à rotação e ao estiramento

Separe um gradiente de deformação da mecânica do contínuo F = R U em uma rotação ortogonal e um estiramento semidefinido positivo único para pós-processamento ou checagens constitutivas.

Matriz ortogonal mais próxima (Procrustes)

Projete um mapa quadrado ruidoso sobre O(n) lendo o fator polar ortogonal, a rotação ou reflexão única mais próxima na norma de Frobenius.

Conferências de sala e de caderno

Deixe os alunos enviarem uma matriz n por n e verificar U-transposta U = I, P = P-transposta e A = U P contra os métodos do livro.

Como calcular a decomposição polar de uma matriz quadrada?

Envie um array quadrado de números finitos em matrix (apelidos a, A, mat).

O que acontece se a matriz for singular?

A decomposição polar ainda existe. P permanece a raiz quadrada PSD única de A-transposta A.

E se a entrada não for uma matriz numérica quadrada?

Cargas retangulares, irregulares, vazias, ausentes ou não numéricas são rejeitadas e não são cobradas.

Em que a decomposição polar difere de SVD ou QR?

SVD escreve A = W Σ V-transposta com duas ortogonais e uma diagonal. A decomposição polar dobra isso em A = U P com uma ortogonal e um estiramento PSD (U = W V-transposta, P = V Σ V-transposta). QR usa um fator triangular, não um PSD.

O que os dois fatores significam geometricamente?

U é uma rotação, ou uma rotação combinada com uma reflexão, e P estica o espaço ao longo de eixos perpendiculares segundo os valores singulares. Aplicar primeiro P e depois U reproduz a matriz original.

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/polar-decomposition

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/polar-decomposition \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"matrix":[[2,1],[0,3]]}'
{
  "matrix": [
    [
      2,
      1
    ],
    [
      0,
      3
    ]
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.polar_decomposition",
  "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_n16
max_abs_entry1000000000000000
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.

Este endpoint aceita um array n por n de números finitos, executa uma decomposição em valores singulares de Jacobi determinística sem rede e sem aleatoriedade, e devolve as duas matrizes fator mais os valores singulares, det(U), um residual de A menos U P e um indicador de invertibilidade. Uma carga não quadrada ou não numérica falha com invalid_input e não é cobrada.

Contrato de entrada, caminho SVD de Jacobi e forma da resposta

Os apelidos a, A e mat são aceitos. Um inteiro opcional precision entre zero e quinze (dez por padrão) define as casas decimais ao arredondar cada campo numérico da resposta. Por dentro o solver monta a matriz de Gram G = A-transposta A, executa uma eigen-decomposição cíclica de Jacobi de G para obter G = V Λ V-transposta, toma os valores singulares como as raízes quadradas dos autovalores recortados, forma P = V diag(σ) V-transposta, constrói os vetores singulares esquerdos W mapeando cada vetor direito por A e dividindo pelo seu valor singular, completa o núcleo com Gram-Schmidt modificado contra a base canônica, e define U = W V-transposta. Envie um corpo JSON cujo campo obrigatório matrix seja um array quadrado de linhas de números finitos: n linhas, cada uma com exatamente n colunas, com n pelo menos um e no máximo dezesseis. Matrix ausente, um não array, um layout irregular ou retangular, linhas vazias, entradas não finitas, entradas com magnitude maior que dez elevado a quinze, ou n acima do limite publicado falham com invalid_input nomeando o campo; essas falhas não são cobradas. A resposta ecoa n, a matriz analisada, o fator ortogonal, o fator semidefinido positivo, os valores singulares descendentes, det_orthogonal (mais ou menos um para uma U bem condicionada), um booleano is_invertible, o residual de Frobenius de A menos U P, a precisão usada e uma string curta de fórmula. Emparelhe as duas matrizes fator com o seu próprio gráfico se precisar de uma figura; este endpoint devolve só números e não emite prosa passo a passo além do campo formula.

Quanto custa a calculadora de decomposição polar?

A ferramenta do navegador é gratuita. Pedidos de API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.

Ver a documentação completa do KIT →