Resumo
Neste trabalho, exploramos abordagens computacionais voltadas ao ensino de mecânica quântica por meio da resolução numérica da equação de Schrödinger unidimensional. Analisamos dois sistemas de referência: o poço de potencial finito, tratado por análise gráfica e pelo método de diferenças centradas, e o oscilador harmônico, resolvido pelo método de Numerov. Em ambos os casos, utilizamos a linguagem Python para implementar os algoritmos e gerar visualizações que favorecem a interpretação física dos resultados. A proposta busca estimular a aprendizagem ativa, aproximando teoria, programação e experimentação virtual, além de incentivar o desenvolvimento da proficiência computacional dos estudantes. Dessa forma, contribui-se para uma compreensão mais intuitiva, crítica e engajadora da mecânica quântica no contexto da formação em física moderna.
Palavras-chave:
Equação de Schrödinger; Programação em Python; Métodos numéricos; Ensino de mecânica quântica
Abstract
In this work, we explore computational approaches aimed at teaching quantum mechanics through the numerical solution of the one-dimensional Schrödinger equation. Two benchmark systems are analyzed: the finite potential well, addressed via graphical analysis and the finite-difference method, and the harmonic oscillator, solved using the Numerov method. In both cases, Python is employed to implement the algorithms and generate visualizations that enhance the physical interpretation of the results. The approach is designed to foster active learning by bridging theory, programming, and virtual experimentation, while also promoting students’ computational proficiency. In doing so, it contributes to a more intuitive, critical, and engaging understanding of quantum mechanics in the context of modern physics education.
Keywords:
Schrödinger equation; Python programming; Numerical methods; Quantum mechanics education
1. Introdução
Ensinar mecânica quântica impõe desafios pedagógicos: a abstração conceitual (superposição, tunelamento) e a algebraização do conteúdo podem distanciar os estudantes da intuição física. No contexto da graduação em Física, em que predomina a ênfase nas soluções analíticas, torna-se desejável incorporar abordagens complementares que aproximem a formulação matemática da visualização de fenômenos e da experimentação computacional.
Ferramentas como o Python, aliado a bibliotecas amplamente acessíveis para cálculo numérico e visualização científica (por exemplo, NumPy e Matplotlib), oferecem um ambiente de baixo custo de entrada para simulações reprodutíveis em cadernos Jupyter. Embora a literatura nacional venha se expandindo e demonstrando um crescente interesse na área [1, 2, 3, 4, 5], permanece o desafio de produzir materiais em língua portuguesa que articulem, de modo sistemático e integrado, a modelagem computacional ao fortalecimento da intuição física em mecânica quântica. Ressaltamos que este trabalho é fruto de uma iniciativa de aprendizagem ativa desenvolvida por estudantes de graduação. Assim, o artigo apresenta-se como um estudo de caso de como a integração entre teoria e programação pode fortalecer o protagonismo discente no ensino de Física Moderna.
A literatura brasileira tem apresentado abordagens valiosas para a solução numérica da equação de Schrödinger, detalhando métodos como Numerov, técnicas de tentativa (shooting methods) e até Monte Carlo [6, 5, 7, 4]. Apesar da disponibilidade dessas técnicas, nota-se a importância de materiais que construam explicitamente a ponte entre as soluções de livros-texto e a modelagem computacional. A contribuição deste trabalho reside na estruturação de uma comparação direta e sistemática entre três paradigmas: a solução semi-analítica (equações transcendentais), a discretização por diferenças centradas e o método de Numerov. Ao integrar essas abordagens para o poço finito e o oscilador harmônico, oferecemos ao estudante uma análise crítica sobre convergência, precisão e limitações de cada técnica, preenchendo uma lacuna entre a teoria algébrica e a aplicação computacional.
Nesse cenário, a física computacional assume um papel estratégico no ensino, consolidando-se como uma ferramenta cognitiva que permite transitar entre o rigor da teoria e a visualização fenomenológica. Ao atuar como um laboratório virtual, essa abordagem permite que o estudante manipule parâmetros e observe as consequências físicas nas funções de onda e nas densidades de probabilidade. Essa interatividade reduz a sobrecarga cognitiva associada à resolução algébrica exaustiva, deslocando o foco para a análise crítica e para o desenvolvimento da intuição física [1, 2, 3].
Neste trabalho, apresentamos uma sequência de atividades computacionais para dois problemas canônicos em uma dimensão (1D): o poço de potencial quadrado finito e o oscilador harmônico. Para o primeiro, combinamos análise gráfica de equações transcendentais com uma discretização por diferenças centradas – abordagem que converte a equação diferencial em um problema matricial de autovalores –; para o segundo, empregamos o método de Numerov, uma técnica de integração numérica de alta precisão otimizada para equações diferenciais de segunda ordem. Em ambos os casos, confrontamos resultados numéricos com as soluções analíticas, discutindo ganhos pedagógicos e limitações. Os códigos, comentados e prontos para execução, são disponibilizados em português, com o objetivo de ampliar o acesso a recursos didáticos e favorecer práticas de ensino ativas e baseadas em investigação. Além disso, com o objetivo de facilitar o acesso e garantir a reprodutibilidade dos resultados, o código-fonte integral utilizado neste trabalho, foi disponibilizado em um repositório público no GitHub [8]. Essa abordagem dialoga com a literatura recente, que aponta a modelagem computacional como ferramenta essencial para o desenvolvimento da intuição física e a consolidação de modelos mentais em mecânica quântica [1, 2, 3].
O trabalho está organizado da seguinte forma: na Seção 2, estabelecemos a fundamentação teórica pertinente. A Seção 3 detalha a metodologia numérica, descrevendo a discretização por diferenças centradas e o método de Numerov. Na Seção 4, aplicamos essas técnicas ao problema do poço de potencial finito, confrontando a solução da matriz do Hamiltoniano com a análise gráfica das equações transcendentais. A Seção 5 dedica-se ao oscilador harmônico quântico, focando na implementação computacional via integração numérica. Por fim, na Seção 6, apresentamos as considerações finais e perspectivas para o uso didático do material.
2. Abordagem Teórica
A equação de Schrödinger constitui a base formal da mecânica quântica não relativística, descrevendo a evolução de um estado quântico no espaço e no tempo. Em sua forma geral, dependente do tempo, ela é expressa por [9]:
onde representa a função de onda do sistema, e o operador Hamiltoniano, que contém a informação sobre a energia total do sistema.
Para isso, restringimo-nos ao estudo de estados estacionários, nos quais a distribuição de probabilidade é independente do tempo. Nesse caso, a equação de Schrödinger assume a forma independente do tempo:
em que é a energia associada ao estado estacionário descrito por .
Nosso objetivo é apresentar uma abordagem computacional para sistemas unidimensionais frequentemente discutidos em disciplinas introdutórias de mecânica quântica. Cada sistema possui um Hamiltoniano específico, o que leva a diferentes formas da equação de Schrödinger. Nas seções seguintes, descrevemos a formulação e a resolução desses modelos, destacando a aplicação de métodos numéricos e seu potencial pedagógico.
3. Metodologia
A resolução da (equação 2) consiste em determinar os autovalores de energia e as respectivas autofunções que satisfazem a equação sob condições de contorno apropriadas do sistema físico em estudo. Os autovalores discretos correspondem aos níveis de energia quantizados, enquanto as autofunções associadas descrevem os estados estacionários nos quais a partícula se encontra espacialmente confinada.
Para analisar os dois sistemas propostos, adotamos uma abordagem metodológica que combina a solução analítica com o cálculo numérico. Para o poço de potencial finito, restringindo a análise aos estados ligados (), empregamos uma metodologia dupla: combinando a análise gráfica das equações transcendentais obtidas da solução analítica, e a solução numérica por meio do método de diferenças finitas centradas. Essa combinação permite uma comparação direta e pedagogicamente instrutiva entre a previsão teórica e o resultado computacional.
No caso do oscilador harmônico, empregamos o método de Numerov, uma técnica numérica reconhecida por sua eficiência na solução de equações diferenciais de segunda ordem sem o termo da primeira derivada [4, 10, 11]. A equação de Schrödinger para esse sistema é reorganizada de forma a atender os requisitos estruturais do algoritmo, que fornece aproximações de alta precisão para as autofunções a partir de estimativas iniciais para os autovalores de energia. Esses valores são, então, refinados iterativamente, de modo a obter soluções numéricas que satisfaçam as condições de contorno físicas do problema.
As soluções numéricas foram implementadas em linguagem de programação Python no ambiente Jupyter Notebook (distribuição Anaconda) [12]. A escolha dessa ferramenta justifica-se por seu valor didático em atividades de aprendizagem ativa, permitindo integrar código e texto formatado (Markdown/LaTeX). Essa estrutura facilita a organização do pensamento físico do estudante, permitindo que a descrição do método e a discussão dos resultados ocorram em um ambiente único e interativo. A escolha do Python deve-se à sua flexibilidade, clareza sintática e ao amplo ecossistema de bibliotecas científicas disponíveis. Em particular, utilizamos as bibliotecas listadas na Tabela 1: NumPy para computação numérica, Matplotlib para visualização gráfica e SciPy, notadamente os submódulos sparse e linalg, para manipulação de matrizes esparsas e resolução de problemas de autovalores. Adicionalmente, a biblioteca warnings foi empregada para controle de alertas durante a execução do código. Essa combinação de ferramentas permitiu a implementação eficiente e didática das simulações de problemas quânticos unidimensionais.
Vale ressaltar que a abordagem numérica aqui desenhada foca na determinação de estados ligados, caracterizados por um espectro de energia discreto. Isso permite a visualização da penetração da função de onda nas regiões classicamente proibidas, onde a densidade de probabilidade decai rapidamente. A análise de estados de espalhamento (espectro contínuo), embora passível de tratamento numérico, foge ao escopo desta proposta didática voltada para os sistemas confinados.
Os códigos desenvolvidos são apresentados ao longo do artigo, integrados à discussão dos conceitos físicos e matemáticos. Esta estratégia busca favorecer uma aprendizagem contínua, aproximando a teoria da implementação computacional. Acreditamos que essa abordagem torna o aprendizado mais acessível e intuitivo, facilitando a compreensão dos fenômenos quânticos por meio de recursos visuais e dinâmicos, o que permite sua livre utilização, reprodução e adaptação por educadores e estudantes.
3.1. Solução numérica com o método dediferenças centradas
Embora as soluções analíticas sejam fundamentais para compreensão conceitual dos sistemas quânticos, em muitos casos elas exigem manipulações algébricas complexas ou simplesmente não estão disponíveis. Nesses cenários, os métodos numéricos surgem como ferramentas eficazes para determinar níveis de energia e funções de onda de forma direta. Destacam-se desde a discretização por diferenças finitas [2] até métodos voltados a sistemas complexos, como o de Hartree-Fock [1], permitindo uma visualização concreta dos resultados e a superação de limitações analíticas.
Entre esses métodos, adotamos o método de diferenças centradas, que consiste em discretizar a equação de Schrödinger independente do tempo sobre uma malha de pontos igualmente espaçados por meio da expansão em série de Taylor, aproximando a derivada de segunda ordem () através dos pontos vizinhos e . No Python, isso permite transformar a equação diferencial de Schrödinger em um problema de autovalores matriciais. A eficiência dessa técnica reside na obtenção de uma matriz tridiagonal simétrica. Nessa representação, os elementos da diagonal contêm a energia potencial e as diagonais adjacentes contêm o termo da energia cinética [6, 13]. Do ponto de vista didático, essa tradução é fundamental, pois materializa o conceito abstrato de operador Hamiltoniano, permitindo que o aluno identifique a energia como um autovalor e a função de onda como um autovetor do sistema matricial. A derivada de segunda ordem é aproximada por uma expressão finita envolvendo apenas os pontos vizinhos, de modo que o problema contínuo é convertido em um problema de autovalores matricial. Essa transformação é particularmente eficiente porque leva a uma matriz tridiagonal simétrica, cuja diagonal contém o potencial e cujas sub- e super-diagonais refletem o termo cinético [14, 2].
Do ponto de vista formal, a aproximação para a derivada de segunda ordem é a base do método, e considera os pontos imediatamente vizinhos e , igualmente espaçados por :
Substituindo essa expressão na equação de Schrödinger, obtemos uma equação matricial da forma , em que é a matriz do Hamiltoniano. Essa matriz é construída a partir da soma de duas contribuições: a matriz cinética tridiagonal (), que possui coeficientes 2 em sua diagonal principal e 1 nas subdiagonais adjacentes (decorrentes da discretização da derivada segunda), e a matriz potencial diagonal (), que contém os valores discretizados de . Dessa forma, cada elemento da diagonal principal do Hamiltoniano final é o resultado da soma do termo cinético (coeficiente ) com o valor local do potencial naquela posição da grade. Multiplicando pelo vetor coluna com os valores da função de onda discretizada, temos:
Para a implementação numérica do poço finito, definimos um domínio de cálculo tal que . Diferente do poço infinito, a função de onda no poço finito apresenta uma penetração na região classicamente proibida (), onde decai rapidamente. Portanto, as condições de contorno numéricas impostas são . Fisicamente, a escolha de deve garantir que a extensão espacial do estado ligado esteja contida no intervalo, assegurando que a amplitude da função de onda nas bordas da malha seja desprezível. Este cuidado é crucial para os estados com maior número quântico , que possuem maior penetração na barreira. Por exemplo, no ponto extremo a aproximação é:
com . O mesmo se aplica ao ponto .
Para o potencial finito, a matriz que representa o operador associado à energia potencial é diagonal:
Somando os operadores de energia cinética e potencial, obtemos o Hamiltoniano total:
Assim, no espaço discreto, a função de onda é representada por um vetor coluna com os valores , e o Hamiltoniano do sistema assume a forma:
Nesse método numérico, a malha é composta por pontos sendo que os valores nas extremidades são fixados em zero pelas condições de contorno. A matriz do Hamiltoniano é construída para atuar sobre os pontos internos da malha (), cujos valores da função de onda constituem as incógnitas do problema de autovalor matricial. Diferentemente do poço infinito, onde as fronteiras da malha coincidem com as paredes físicas do poço, no caso do poço finito é necessário definir um domínio computacional significativamente maior que a largura do poço (). Isso permite capturar o decaimento exponencial da função de onda na região classicamente proibida (onde ), garantindo que a solução numérica tenda a zero de forma suave antes de atingir as bordas da malha.
Do ponto de vista didático, o método de diferenças centradas é de grande valor. Ele conecta de maneira direta a álgebra matricial à mecânica quântica, reinterpretando a equação de Schrödinger como um problema de autovalores linear, algo já familiar aos estudantes de álgebra linear. Além disso, sua implementação em Python é imediata com o uso de bibliotecas como NumPy e SciPy, que permitem resolver sistemas de autovalores de forma eficiente e extrair tanto energias quanto autofunções com poucas linhas de código. Finalmente, o método favorece uma visualização pedagógica clara. Ao fazer um gráfico dos autovalores e as funções de onda resultantes, torna-se possível comparar diretamente os resultados numéricos com as previsões gráficas obtidas pela análise transcendental da subseção anterior.
Entre as limitações deste método, destaca-se o erro de truncamento de ordem . Como consequência, a obtenção de alta precisão requer o uso de malhas espaciais mais densas, o que eleva o custo computacional devido ao aumento na dimensão da matriz Hamiltoniana. No entanto, tal fator torna-se praticamente irrelevante em problemas unidimensionais, nos quais os recursos computacionais modernos processam essas matrizes de forma quase instantânea.
Assim, o método de diferenças centradas não apenas fornece uma solução numérica robusta para o poço de potencial finito, mas também reforça a integração entre formalismo teórico, ferramentas computacionais e visualização física, consolidando seu papel como recurso didático no ensino de mecânica quântica.
3.2. Método de Numerov
Para resolver a equação de Schrödinger do oscilador harmônico, utilizamos o método de Numerov [4, 10, 11], uma técnica especializada para equações diferenciais lineares de segunda ordem que não possui o termo da primeira derivada. Este método utiliza uma relação de recorrência de três pontos para propagar a função de onda ao longo da malha. A equação diferencial pode ser escrita na forma:
onde definimos:
Essa forma é adequada para o algoritmo de Numerov, cuja ideia central é calcular a função de onda em um ponto a partir de seus dois vizinhos, usando a relação de recorrência:
Aqui, é o espaçamento entre os pontos da malha, e os índices , e se referem a pontos consecutivos do domínio espacial. O método apresenta erro de ordem , o que garante alta precisão mesmo em malhas relativamente pouco densas.
O procedimento numérico segue as seguintes etapas:
-
Define-se um domínio espacial simétrico e condições iniciais para a função de onda, e um pequeno valor arbitrário em .
-
Escolhe-se um valor de teste para a energia .
-
Propaga-se a função de onda em toda a malha usando a fórmula de Numerov.
-
Verifica-se se a solução obtida é fisicamente admissível, isto é, se permanece finita e se anula adequadamente nas extremidades do domínio.
-
Ajusta-se o valor de até encontrar os autovalores corretos, normalizando a função de onda correspondente.
O uso do método de Numerov para o oscilador harmônico tem grande valor didático. Em primeiro lugar, este método mostra como um problema que possui solução analítica conhecida pode ser reproduzido com excelente aproximação numérica, validando a técnica antes de aplicá-la a sistemas mais complexos. Conecta conceitos de álgebra numérica com a mecânica quântica, ao formular a equação de Schrödinger como um problema de autovalores estruturado por meio de relações de recorrência. Mostra a importância de condições de contorno e da normalização numérica, elementos centrais na interpretação física. Favorece ainda a visualização gráfica das autofunções e da distribuição de probabilidade, reforçando o entendimento de quantização e do papel do potencial harmônico.
Assim, a análise do oscilador harmônico pelo método de Numerov não apenas fornece resultados quantitativos consistentes, mas também constitui uma ponte entre formalismo matemático, ferramentas computacionais e intuição física, consolidando sua relevância como recurso didático no ensino de mecânica quântica.
Por possuir erro de ordem , ele atinge uma alta precisão mesmo com poucos pontos na malha. No caso do oscilador harmônico, isso permite ao aluno verificar que os níveis de energia são exatamente igualmente espaçados (), reforçando a confiabilidade desse método numérico. O método de Numerov exige que o aluno faça uma busca pelo autovalor correto, simulando um processo de descoberta. Por consequência, é um método de tiro (shooting method), se a energia inicial for ligeiramente incorreta, a função de onda diverge no infinito. Isso exige o uso de técnicas de refinamento como a bisseção [7].
Vale salientar que o método de Numerov é preferível ao método de diferenças centradas na resolução do oscilador harmônico quântico por apresentar maior precisão e estabilidade numérica, uma vez que é um método de ordem superior, enquanto as diferenças centradas são, em geral, de segunda ordem. Além disso, o método de Numerov é naturalmente adaptado à forma da equação de Schrödinger estacionária, permitindo uma implementação direta por meio de uma relação recursiva simples, sem a necessidade de formular e diagonalizar grandes matrizes, o que resulta em uma obtenção mais precisa dos autovalores de energia com menor custo computacional. Ainda assim, optou-se por apresentar ambos os métodos ao longo do trabalho para refletir a rica diversidade de abordagens explorada durante uma atividade de aprendizagem ativa. Nesse contexto, diferentes estudantes implementaram estratégias independentes para problemas específicos, o que permitiu uma análise comparativa de diferentes ferramentas computacionais. Dessa forma, a utilização de mais de um método não visa estabelecer uma superioridade técnica absoluta, mas sim ilustrar a versatilidade das estratégias numéricas e promover a compreensão de suas características, limitações e potencial pedagógico no ensino de física.
4. Poço de Potencial Finito
O poço de potencial finito unidimensional é um problema canônico e instrutivo no ensino de mecânica quântica, pois introduz conceitos fundamentais como estados ligados, tunelamento quântico e simetrias das funções de onda. Ao contrário do poço infinito, este sistema não possui soluções analíticas fechadas para os níveis de energia, o que motiva o uso de métodos numéricos e o torna uma excelente oportunidade pedagógica para integrar aspectos conceituais e computacionais.
Consideramos uma partícula em um potencial atrativo simétrico de profundidade finita, definido por:
onde caracteriza a profundidade do poço e, sua largura total, centrado na origem [13]. A (equação 2) assume a forma:
com a energia e a função de onda da partícula. O caráter não trivial do problema decorre do fato de que apenas certos valores discretos de energia satisfazem as condições de contorno impostas pela continuidade de e de sua derivada .
Como o potencial é definido por partes, resolvemos a equação em três regiões: I) , II) , e III) . Nas regiões I e III, onde é constante, obtemos:
cujas soluções fisicamente aceitáveis (decrescentes no infinito) são exponenciais:
Na região II, ,
de modo que, para ,
Com a simetria do potencial (), as soluções podem ser escolhidas com paridade definida. Para soluções pares, e ; para soluções ímpares, e . Essa simetria reduz a complexidade do problema, permitindo resolver apenas para , bastando impor as condições de continuidade de e de sua derivada em , o que leva às equações transcendentais, que relacionam e ,
Estas relações determinam, implicitamente, os valores permitidos de (e, portanto, de ) e não admitem solução analítica fechada. Nas próximas subseções, exploramos uma análise gráfica dessas equações e uma solução numérica por diferenças finitas centradas, permitindo comparar, de forma didática, as previsões teóricas com resultados computacionais.
4.1. Análise gráfica das equações transcendentais
Essa abordagem é particularmente instrutiva. Do ponto de vista teórico, revela a dependência direta entre profundidade do poço e número de estados ligados; do ponto de vista computacional, permite implementar em Python um procedimento simples de busca de interseções, reforçando a ponte entre formalismo matemático e visualização gráfica.
Para determinar os níveis de energia permitidos no poço de potencial finito, implementamos esse procedimento numérico em Python a partir da análise gráfica das equações transcendentais. A ideia consiste em representar as equações graficamente e identificar suas raízes a partir das interseções, dentro de uma tolerância numérica apropriada.
As condições de contorno podem ser reescritas em termos das variáveis adimensionais e , que satisfazem a equação do círculo modificada:
Essa forma evidencia que os estados ligados correspondem às interseções entre a curva do círculo e as curvas das soluções pares e ímpares. O raio fornece ainda uma estimativa do número máximo de estados ligados para dado poço. O primeiro passo é definir os parâmetros físicos do sistema e a malha de energias a serem testadas:
Em seguida, calculamos as constantes e , as variáveis adimensionais e , bem como a curva do círculo. As equações transcendentais para as soluções pares e ímpares envolvem funções trigonométricas com assíntotas (como ), o que pode causar divisões por zero e gerar o aviso RuntimeWarning: invalid value encountered in true_divide. Para contornar esse problema, suprimimos temporariamente o aviso e filtramos valores não finitos (inf, NaN) antes de detectar as interseções:
Para localizar as interseções de forma robusta, construímos uma função que filtra valores próximos às assíntotas e procura mudanças de sinal entre pares de pontos consecutivos. Isso evita que descontinuidades sejam interpretadas erroneamente como soluções.
Função para detecção segura das interseções entre as equações transcendentais e a curva do círculo.
Com as interseções localizadas, podemos plotar o resultado. O gráfico exibe a curva do círculo, as funções transcendentais pares e ímpares e os pontos de interseção que correspondem aos autovalores de energia.
Construção gráfica das equações transcendentais e identificação dos autovalores de energia.
A Figura 1 sintetiza a ponte entre o formalismo e a implementação numérica. No plano adimensional , em que representa a região propagante dentro do poço e a região evanescente nas barreiras, o círculo expressa a relação geométrica entre as duas contribuições. As curvas azul e laranja representam, respectivamente, as soluções pares () e ímpares () impostas pelas condições de contorno. Cada ponto de interseção entre uma dessas curvas e o círculo identifica um estado ligado, permitindo obter e , e portanto a energia e a paridade do estado (pela curva que intercepta).
Equações transcendentais e interseções no poço finito. Representação gráfica dos estados ligados em um poço de potencial finito. As curvas azul e laranja correspondem às soluções pares e ímpares, enquanto as tracejadas representam a curva do círculo para diferentes profundidades . Os pontos de interseção destacados indicam os valores de que satisfazem as condições de contorno, correspondendo aos níveis de energia permitidos. O círculo preto tracejado delimita a região de estados ligados para o potencial padrão adotado. Os círculos em cinza representam sistemas com potenciais mais profundos ou larguras maiores.
Didaticamente, a Figura 1 evidencia de forma clara o mecanismo de quantização: os estados só existem onde as condições de contorno são simultaneamente satisfeitas (nas interseções). Observa-se na Figura 1, por meio das curvas tracejadas em cinza, que o aumento da profundidade (ou o alargamento do poço pelo parâmetro ) resulta na expansão do raio . Geometricamente, esse crescimento permite que o círculo intercepte ramos adicionais das funções transcendentais, o que fisicamente se traduz no surgimento de novos estados ligados. Tal comportamento demonstra que a capacidade de confinamento do sistema é proporcional à magnitude do potencial e à sua extensão espacial. Destaca-se, ainda, a alternância entre soluções pares e ímpares com o aumento da energia, antecipando a contagem de nós das autofunções. Sendo assim, essa experimentação virtual permite que o discente visualize o mecanismo de quantização de forma dinâmica, consolidando a intuição física sobre como a geometria do potencial molda o espectro de energia da partícula antes mesmo do tratamento puramente algébrico.
Do ponto de vista computacional, o gráfico é construído a partir de uma varredura discreta em , com valores não finitos próximos às assíntotas das funções tangente e cotangente, evitando o aparecimento de falsas raízes. Esse tratamento simples fornece resultados robustos e suficientemente precisos para fins didáticos, ao mesmo tempo em que ilustra como técnicas de programação básicas podem ser aplicadas à resolução de problemas transcendentais. A Figura 1 não apenas confirma as previsões teóricas sobre a relação entre profundidade do poço e número de estados ligados, como também demonstra como uma implementação computacional acessível em Python pode traduzir as condições de contorno em um problema de interseções geométricas, fortalecendo a integração entre teoria, abordagem numérica e interpretação física.
4.2. Implementação computacional do método de diferenças centradas
Para implementar o método, a primeira etapa é a construção da matriz do Hamiltoniano, de acordo com o formalismo de diferenças centradas. Conforme a aproximação da segunda derivada, o operador de energia cinética é representado por uma matriz tridiagonal com os coeficientes 1, -2, 1 nas diagonais, enquanto o potencial é representado por uma matriz diagonal. Para a implementação, utilizamos as bibliotecas NumPy para operações matemáticas, Matplotlib para visualização, e o módulo sparse.linalg do SciPy, que oferece solucionadores otimizados para matrizes esparsas.
O código a seguir inicia o processo definindo os parâmetros do sistema e montando a matriz do Hamiltoniano.
Vale ressaltar que, embora tenhamos optado pela construção explícita da matriz para fins didáticos, a eficiência computacional pode ser significativamente aumentada em problemas de grande escala utilizando-se funções específicas para matrizes tridiagonais, como a scipy.linalg.eigh_tridiagonal, que otimizam o uso de memória e o tempo de execução.
Após a construção do Hamiltoniano, o próximo passo é extrair os autovalores (níveis de energia) e os autovetores (funções de onda). Para isso, utilizamos o solucionador eigsh, que é ideal para matrizes esparsas e simétricas. Para garantir a robustez da solução, implementamos um mecanismo de fallback que, em caso de falha, recorre ao solucionador denso numpy.linalg.eigh.
Uma vez obtidos, os autovalores e autovetores são processados. Primeiro, eles são ordenados em ordem crescente de energia (do estado fundamental para o mais excitado). Em seguida, o código filtra os autovalores para identificar apenas os estados ligados, ou seja, aqueles com energia menor que a profundidade do poço.
Extração dos autovalores e autovetores do Hamiltoniano, identificando apenas os estados ligados.
Finalmente, as funções de onda são normalizadas e têm seu sinal padronizado. Os autovetores são estendidos para o domínio completo, e a integral do módulo quadrado de cada função de onda é calculada numericamente usando a regra do trapézio (np.trapz) por sua simplicidade conceitual e precisão adequada para o problema, garantindo que a normalização final seja unitária. Para fins de consistência visual na apresentação gráfica, adotou-se uma convenção de sinal na qual, se a amplitude de pico for negativa, a função é multiplicada por -1. Vale ressaltar que essa operação não altera o estado físico do sistema, uma vez que a densidade de probabilidade , esta sim com significado físico, é invariante sob uma mudança de fase global.
Por fim, as funções de onda e as densidades de probabilidade são plotadas, incluindo anotações visuais para uma interpretação mais clara dos resultados.
Plotagem das funções de onda e densidades de probabilidade normalizadas em comparação com o potencial.
As visualizações obtidas com a solução numérica fornecem uma interpretação direta dos fenômenos quânticos. A Figura 2a, que mostra as funções de onda , e a Figura 2b, que exibe as densidades de probabilidade correspondentes , são a culminação da abordagem computacional. Na Figura 2a, observamos dois comportamentos distintos: um comportamento oscilatório dentro do poço, característico da partícula confinada, e um decaimento exponencial suave para fora do poço, nas regiões classicamente proibidas. Cada uma dessas curvas representa um estado estacionário do sistema, com seu respectivo nível de energia. A visualização da função de onda estendendo-se para além das barreiras do poço é uma ilustração clara da física quântica, que permite a existência da partícula em locais inacessíveis para a física clássica.
Visualização numérica de estados quânticos em um poço de potencial. (a) Funções de onda normalizadas calculadas numericamente pelo método das diferenças centradas, ilustrando os diferentes estados estacionários no poço de potencial finito. (b) Densidades de probabilidade , que indicam onde a partícula tem maior chance de ser encontrada. A comparação entre (a) e (b) reforça a interpretação física da função de onda e conecta o formalismo matemático com o significado probabilístico da mecânica quântica. Para fins de visualização, as curvas foram deslocadas verticalmente para coincidirem com os seus respectivos níveis de energia .
A Figura 2b apresenta a densidade de probabilidade . Físicamente, enquanto representa a densidade em cada ponto , a probabilidade de encontrar a partícula em um intervalo infinitesimal entre e é dada por . Essa representação é fundamental para visualizar como o confinamento no poço finito permite uma probabilidade não nula de localização da partícula fora das paredes do poço ().
A altura da curva em cada ponto representa a probabilidade de detecção. Observamos que à medida que o número quântico aumenta, a função de onda se torna mais complexa, com um número crescente de nós (pontos de probabilidade nula). A densidade de probabilidade também decai exponencialmente fora do poço, confirmando visualmente o fenômeno do túnel quântico, onde a partícula tem uma probabilidade finita de ser encontrada nas regiões onde sua energia total é menor que o potencial. Juntas, as Figuras 2a,b servem como uma ferramenta didática robusta para construir uma intuição física sobre conceitos abstratos como quantização, distribuição de probabilidade e tunelamento, fortalecendo a conexão entre a matemática e a interpretação física da mecânica quântica.
Vale ressaltar que cada curva na Figura 2a representa uma solução da equação de Schrödinger associada a um nível de energia quantizado permitido para a partícula. Como o poço de potencial é composto pela: região II (dentro do poço), onde o potencial é mínimo e os estados ligados se localizam, e as regiões I e III (as barreiras), onde o potencial é mais elevado e, do ponto de vista clássico, a partícula não poderia existir. A transição entre essas regiões ilustra como as funções de onda e as probabilidades de presença da partícula variam com o potencial.
Essa convergência demonstra ao estudante que, embora a abordagem matricial seja uma aproximação numérica (ver Tabela 2), sua capacidade de reproduzir resultados analíticos com alta fidelidade a qualifica como uma alternativa poderosa para investigar potenciais para os quais não existem soluções exatas.
Comparação entre os resultados numéricos () e analíticos () para os cinco primeiros autovalores de energia do poço finito. Os resultados demonstram a alta precisão do método de diferenças centradas.
Para simplificar a implementação computacional, adotamos variáveis adimensionais definindo . Para recuperar os valores em unidades do Sistema Internacional (SI), utiliza-se a relação:
onde é a escala de comprimento utilizada no código (por exemplo, largura do poço) e é o valor numérico obtido. Como exemplo prático, para um elétron ( kg) em um poço de largura nm, um autovalor numérico de corresponde a uma energia física de aproximadamente meV.
5. Oscilador Harmônico
Entre os sistemas quânticos exatamente solucionáveis, o oscilador harmônico ocupa um papel central, tanto pela sua relevância física quanto pelo valor pedagógico. Este sistema descreve uma partícula sujeita a uma força restauradora proporcional ao deslocamento em relação à posição de equilíbrio, sendo aplicável a uma ampla gama de fenômenos, desde vibrações moleculares até modos normais em sistemas de campos quânticos.
O Hamiltoniano unidimensional desse sistema é dado por:
e conduz, ao ser inserido na equação de Schrödinger independente do tempo, a
As soluções analíticas desse problema são bem conhecidas: autofunções expressas em termos de polinômios de Hermite e autovalores igualmente espaçados, . No entanto, aqui optamos por uma abordagem numérica. Essa escolha se justifica por dois motivos principais: ressaltar o caráter didático dos métodos numéricos, mostrando como eles permitem resolver problemas mesmo quando as soluções analíticas não estão disponíveis, e utilizar o oscilador como sistema de referência para validar a precisão do método aplicado.
5.1. Implementação computacional
A implementação do método de Numerov em Python segue uma sequência lógica que reflete diretamente o algoritmo teórico. O código é estruturado em etapas modulares, cada uma com um propósito bem claro: definir as funções-base, identificar os autovalores por meio de uma varredura de energia com refinamento por bisseção, processar os resultados e, finalmente, visualizá-los.
O valor pedagógico dessa implementação está em demonstrar como, a partir de condições iniciais simples e de um algoritmo recursivo eficiente, é possível recuperar numericamente os mesmos autovalores e autofunções obtidos analiticamente. Isso valida o método e, ao mesmo tempo, introduz o estudante a ferramentas indispensáveis para lidar com sistemas sem solução exata.
A primeira etapa é definir as funções principais do algoritmo. A função K(x, E) calcula o termo da equação de Schrödinger em unidades adimensionais (). A função numerov(E, x) aplica a fórmula recursiva do método de Numerov para um valor de energia de teste , propagando a função de onda a partir de condições iniciais simples. Já a função normalize(psi, x) garante que a função de onda seja normalizada e que com fase consistente para visualização.
Definição das funções principais do método de Numerov. Inclui a função , a implementação da recorrência de Numerov para propagação da função de onda e a normalização das autofunções.
A busca pelos autovalores é feita combinando varredura de energia e bisseção. O algoritmo percorre um intervalo de energias e detecta mudanças de sinal em , o que indica a presença de um autovalor. Em seguida, o método da bisseção refina o resultado.
Rotina de busca dos autovalores de energia do oscilador harmônico utilizando varredura e refinamento por bisseção. As autofunções correspondentes são normalizadas para análise posterior.
A Tabela 3 compara os resultados numéricos com os valores analíticos, confirmando a precisão do método de Numerov:
Comparação entre os resultados numéricos () e analíticos () para os cinco primeiros autovalores de energia do oscilador harmônico. Os resultados demonstram a alta precisão do método de Numerov.
Da Tabela 3, observa-se que o desvio em relação aos valores analíticos é extremamente reduzido, reforçando a robustez e o alto nível de confiabilidade deste método para potenciais continuamente variáveis.
A etapa final consiste em visualizar as soluções. O primeiro gráfico exibe as funções de onda normalizadas e os níveis de energia, enquanto o segundo mostra as densidades de probabilidade.
Visualização numérica dos estados quânticos do oscilador harmônico. O painel (a) mostra as funções de onda normalizadas sobrepostas ao potencial harmônico e aos níveis de energia; o painel (b) exibe as densidades de probabilidade associadas.
As Figuras 3a,b ilustram claramente os aspectos teóricos: as funções de onda (Figura 3a) apresentam comportamento oscilatório dentro do potencial e decaimento exponencial fora dele; as densidades de probabilidade (Figura 3b) mostram como o estado fundamental tem forma aproximadamente gaussiana, enquanto os estados excitados apresentam nós e estrutura crescente de picos.
Visualização numérica do oscilador harmônico. (a) Funções de onda obtidas pelo método de Numerov, sobrepostas ao potencial harmônico e aos respectivos níveis de energia . (b) Densidades de probabilidade normalizadas, destacando a distribuição espacial da partícula para diferentes estados quânticos. A comparação entre (a) e (b) reforça a interpretação probabilística da função de onda e evidencia o espaçamento uniforme entre os níveis de energia, característica do oscilador harmônico. Para fins de visualização, as curvas foram deslocadas verticalmente para coincidirem com os seus respectivos níveis de energia .
Uma observação central é que os níveis de energia do oscilador harmônico são igualmente espaçados, em contraste com o poço de potencial finito. Essa diferença, visível tanto nos gráficos quanto na tabela, reforça a intuição do aluno sobre como diferentes potenciais moldam os espectros quânticos.
6. Considerações Finais
A implementação de métodos computacionais em Python, utilizando o ambiente Jupyter Notebook, demonstrou ser uma ferramenta de potencial valor didático para auxiliar o ensino de mecânica quântica, permitindo a visualização de conceitos abstratos e a experimentação virtual. A discretização da equação de Schrödinger e a resolução numérica permitiram obter aproximações confiáveis para os níveis de energia e funções de onda, favorecendo a visualização de conceitos abstratos e contribuindo para a construção de uma intuição física mais sólida. O maior mérito deste trabalho reside no fato de ter sido integralmente proposto, desenvolvido e conduzido por estudantes de graduação, em uma iniciativa de aprendizagem ativa que evidenciou como a integração entre teoria, programação e visualização gráfica pode fortalecer o engajamento com conteúdos complexos da física moderna e estimular maior protagonismo discente. Outro aspecto de destaque é sua dimensão de acessibilidade. Ao disponibilizar os materiais em português e em formato de acesso aberto, este trabalho contribui para a democratização do ensino de física no Brasil, incentivando a adoção de metodologias computacionais inovadoras no ambiente universitário e escolar. Dessa forma, amplia-se o alcance de conteúdos didáticos de qualidade e cria-se um espaço fértil para a formação crítica e criativa. Em síntese, acreditamos que este trabalho não apenas fornece um recurso didático útil, mas também pode inspirar a próxima geração de físicos a explorar de maneira integrada a interface entre a física e a computação, enriquecendo tanto a compreensão conceitual quanto a prática pedagógica em mecânica quântica.
Agradecimentos
C.B., J.A.L.O., N.P.S. e B.R.C. agradecem ao Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), à Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) e à Universidade Federal do Rio Grande do Norte pelo apoio institucional.
Referências
- [1] H.R. Armando, M. Ferreira, O.L.S. Filho e D.L. Azevedo, Rev. Bras. Ens. Fís. 47, e20250043 (2025).
- [2] G.A. Monerat, L.G.F. Filho, E.V.C. Silva, G. Oliveira-Neto, P.H.A.S. Nogueira e A.R.P. Assunção, Rev. Bras. Ens. Fís. 32, 1304 (2010).
- [3] E.L. Pinheiro, K.M. Barata, O.J.N. Neto, R.S. Martins e M.R.S. Siqueira, Rev. Bras. Ens. Fís. 46, e20240011 (2024).
- [4] F. Caruso, V. Oguri e F. Silveira, Rev. Bras. Ens. Fís. 44, e20220098 (2022).
- [5] R.C.S. Tonhon e L. Madeira, Rev. Bras. Ens. Fís. 46, e20240300 (2024).
- [6] F. Caruso e V. Oguri, Rev. Bras. Ens. Fís. 36, 2310 (2014).
- [7] M.S.M. Sousa e F.A. Nascimento, Rev. Bras. Ens. Fís. 42, e20190144 (2020).
-
[8] C. Baliana, J. A. Luna Oliveira, N. Pereira dos Santos e B. R. Carvalho, Equação de Schrödinger com Python, disponível em: https://github.com/Josearthur266/Equacao-de-Schrodinger-com-Python, acessado em: 10/01/2026.
» https://github.com/Josearthur266/Equacao-de-Schrodinger-com-Python - [9] D.J. Griffiths, Introduction to Quantum Mechanics (Cambridge University Press, Cambridge, 2018).
-
[10] D. Bennett, Numerical solution of time-independent 1-D Schrodinger equation, disponível em: https://www.maths.tcd.ie/~dbennett/js/schro.pdf, acessado em: 05/10/2025.
» https://www.maths.tcd.ie/~dbennett/js/schro.pdf - [11] M. Purevkhuu e V.I. Korobov, Phys. Part. Nuclei Lett. 18, 153 (2021).
-
[12] Anaconda, Anaconda Software Distribution. Web. Versão 2-2.4.0, disponível em: https://anaconda.com, acessado em: 05/09/2025.
» https://anaconda.com - [13] C. Cohen-Tannoudji, B. Diu e F. Laloë, Quantum Mechanics (John Wiley & Sons, 2019), v. 1, 2 ed.
- [14] M.E.J. Newman, Computational Physics (CreateSpace Independent Publishing Platform, North Charleston, 2013).
Editado por
-
Editor-Chefe:
Marcello Ferreira https://orcid.org/0000-0003-4945-3169






























