Acessibilidade / Reportar erro

Aprendizagem de Eletromagnetismo via Programação e Computação Simbólica

Learning Electromagnetism Via Programming and Symbolic Computation

Resumos

Relatamos a experiência de utilizar programação em Maple como ferramenta de aprendizagem do estudante num curso básico de teoria eletromagnética. Acreditamos que este relato possa ser útil a quem desejar utilizar o computador como instrumento pedagógico no ensino de Física.


We describe an experience in using programming in Maple as a student's tool for the learning of introductory electromagnetic theory. We believe that this paper can be of use for those interested in using computers as a pedagogical tool.


Aprendizagem de Eletromagnetismo via Programação e Computação Simbólica

Learning Electromagnetism Via Programming and Symbolic Computation

D. T. Alves* * danilo@ufpa.br , J. V. Amaral† * danilo@ufpa.br , J. F. Medeiros Neto‡ * danilo@ufpa.br

Universidade Federal do Pará,

Departamento de Física, Rua Augusto Corrêa, 1

66075-110, Caixa Postal 479, Belém, PA, Brasil

E. S. Cheb-Terrab§ * danilo@ufpa.br

Centre for Experimental and Constructive Mathematics

Department of Mathematics and Statistics, Simon Fraser University

Burnaby Mountain Campus, Burnaby, BC Canada V5A 1S6

e Universidade do Estado do Rio de Janeiro, Instituto de Física,

Rua São Francisco Xavier, 524, 20550-013 Rio de Janeiro, RJ, Brasil

Recebido em 20 de abril, 2002. Aceito em 26 de junho, 2002.

Relatamos a experiência de utilizar programação em Maple como ferramenta de aprendizagem do estudante num curso básico de teoria eletromagnética. Acreditamos que este relato possa ser útil a quem desejar utilizar o computador como instrumento pedagógico no ensino de Física.

We describe an experience in using programming in Maple as a student's tool for the learning of introductory electromagnetic theory. We believe that this paper can be of use for those interested in using computers as a pedagogical tool.

I Introdução

Denomina-se computação algébrica (CA) a manipulação de símbolos matemáticos - feita no computador - de acordo com as regras abstratas da matemática simbólica. Entre os mais conhecidos softwares que permitem este tipo de manipulação estão o Maple1 1 http://www.maplesoft.com e o Mathematica2 1 http://www.maplesoft.com . Nestes sistemas de CA encontram-se implementadas, por exemplo, regras de álgebra, trigonometria e cálculo, de modo que pesquisadores e estudantes podem derivar, integrar, obter a solução de equações diferenciais, simplificar expressões, representar graficamente campos escalares, vetoriais e curvas paramétricas. Além dos comandos usuais, esses sistemas de CA permitem um fácil e rápido desenvolvimento de programas matemáticos, através de um repertório vasto de funções e operações. Por essas características, a utilização da CA tem se intensificado a cada dia, assumindo um papel cada vez mais importante tanto na pesquisa quanto na educação [1-9].

Pesquisadores e estudantes podem utilizar um sistema de CA basicamente de duas formas: usando os comandos que já se encontram disponíveis no sistema, ou construindo (programando) as próprias ferramentas ou seqüência de operações matemáticas que julguem necessárias.

Em pesquisa podemos usar os comandos e funções já implementados na resolução de problemas difíceis de serem resolvidos sem o auxílio da computação algébrica. Caso necessitemos de ferramentas que não estejam disponíveis, podemos programar novos comandos, tomando como base os comandos e funções já implementados, uma vez que eles estão acessíveis ao usuário num sistema de CA típico, como o Maple. Esta possibilidade de desenvolver programas a partir dos já existentes é uma prática usual e que facilita enormemente a programação em CA.

Por outro lado, no processo de aprendizagem, o aluno pode usar os comandos e funções já implementados, por exemplo, ao explorar a solução de uma dada equação, alterando seus parâmetros e obtendo assim novas soluções. Dessa forma, é possível examinar um grande número de exemplos em curto espaço de tempo. Em adição, muitos dos gráficos podem ser animados, sendo a animação uma ferramenta pedagógica poderosa, não disponível nos livros-texto e de grande valia na ilustração de processos dinâmicos. Esse tipo de utilização da CA em educação é hoje em dia comum [6,7]. O uso da programação em CA como instrumento de aprendizagem, entretanto, é bem menos difundido.

Neste trabalho, descrevemos nossa experiência com o uso dos comandos de Maple e basicamente da sua linguagem de programação como instrumentos de aprendizagem em um curso de introdução à teoria eletromagnética. Tendo em vista esta aprendizagem, entendemos que a programação deve ser feita pelo aluno (que atuaria como agente de construção de seu próprio conhecimento), e não pelo professor. Diferentemente do pesquisador, que programa objetivando construir ferramentas não disponíveis nos sistemas de CA, o aluno programa visando aprender, construindo o próprio conhecimento.

Este uso da CA gerou um ambiente extremamente positivo de aprendizado, explorando a expressão de conceitos abstratos e a seqüência algorítmica de passos na resolução de problemas através da linguagem de programação do sistema Maple. Como as linguagens de computação são precisas e não ambíguas, de acordo com Valente [4] o aluno que representa a resolução de um problema segundo um programa de computador, tem uma descrição formal e precisa dessa resolução, apurando seu entendimento sobre a estrutura lógica de toda uma classe de problemas semelhantes ao que ele está tratando.

Mais ainda, orientar o aluno a se concentrar na seqüência lógica que leva à solução de um problema - a ponto de ser capaz de criar programas que simulem tal seqüência - sem ter que desviar a atenção com evitar os ''erros de contas'', acelerou notavelmente o tempo de maturação dos conceitos. As técnicas de programação também trazem, de um modo geral, um divertimento concreto para alunos que optaram por áreas de ciências exatas e tecnológicas, resultando num incentivo adicional ao processo de aprendizado. Finalmente, a possibilidade de experimentar os programas feitos em diversos problemas, seguida da correção e ajuste desses programas, ajudou concretamente a identificar os pontos não entendidos da teoria. O sucesso de cada ajuste resultou num estímulo concreto e tangível para cada passo à frente dado pelo aluno na incorporação do novo conhecimento.

Durante o curso implementamos, via CA, vários programas, dentre os quais vários sugeridos em edições modernas de livros destinados ao curso de Física de graduação. Por exemplo, podemos citar o tradicional Física, de Resnick, Halliday e Krane [10], que traz ao final dos capítulos uma coletânea de problemas para serem resolvidos via programação3 1 http://www.maplesoft.com .

Quanto à estrutura do curso, as aulas para alunos de graduação em Química e Engenharia Civil da UFPA foram ministradas da forma usual, via ''quadro negro", mas com os alunos dispondo de computadores (três alunos por computador, em média), equipados com o sistema Maple. Os alunos tinham acesso facilitado aos computadores fora do horário de aula, enquanto que, durante o tempo de aula, uma parte importante transcorreu com os alunos trabalhando efetivamente no computador, com o professor assistindo os diversos grupos.

Finalmente, cabe ressaltar que a apresentação deste trabalho não tem por objetivo verificar, em termos estatísticos, a eficiência pedagógica do uso da programação via computação algébrica como ferramenta de aprendizagem. Isso só poderia ser obtido através da repetição da experiência com várias outras turmas. O nosso objetivo consiste em motivar a aplicação desta técnica a quem tiver interesse no uso do computador em educação.

O restante deste artigo está organizado como segue. Na seção II, relatamos a experiência em trabalhar com alunos que, ao início do curso, não tinham tido qualquer contato com um sistema de CA. Na seção III, damos alguns exemplos da metodologia usada durante o curso. Na seção IV, expomos de maneira resumida os pontos que achamos mais importantes desta experiência.

II Primeiras aulas: comandos básicos e noções de programação

Consideremos um professor que dará aulas para uma turma de graduação, cujos alunos não tenham tido qualquer contato prévio com CA. Ele poderia perguntar, nessas condições, qual a viabilidade de conduzir um curso baseado em computação algébrica.

Trabalhando com alunos de graduação, totalizando 43 alunos - 29 do curso de Engenharia Civil e 14 do curso de Bacharelado em Química, divididos em 3 turmas com cerca de 14 alunos em cada uma - observamos que apenas uma aula foi suficiente para que os alunos adquirissem certa familiaridade com a sintaxe básica do Maple e começassem a fazer cálculos por si próprios, tornando-se aptos a já utilizar o computador no processo de aprendizagem.

O procedimento adotado nessa primeira aula foi o de colocar o aluno em contato com alguns dos comandos e regras básicas da sintaxe do Maple, mostrando também como fazer cálculos elementares, usar várias das funções já implementadas, como as funções trigonométricas, os operadores de derivação, integração, etc. Também mostramos como realizar gráficos em duas e três dimensões (vide Figs. 1 e 7 ). Ao final da aula, sugerimos aos alunos verificar como é possível expandir esse conhecimento através da opção Help, oferecida pelo sistema. O professor pode guiar os alunos nesse primeiro contato com o Maple, tomando também como base as seções-guia para novos usuários (New User's Tour), disponíveis no Help.







Após um primeiro contato com os comandos e a sintaxe básica, mostramos ao aluno, numa segunda aula, como ele pode construir ferramentas por si próprio, utilizando a linguagem de programação do sistema. Ao final da aula sugerimos vários exercícios relacionados com a construção de pequenos programas.

Foram, portanto, necessárias 2 aulas (2 horas cada) para que os alunos adquirissem certa familiaridade mínima com os comandos básicos do Maple e noções de programação. É importante ressaltar que tais noções já permitem ao aluno realizar cálculos, experimentos computacionais e pequenos programas, úteis no processo de aprendizagem. Novas ferramentas e técnicas foram sendo gradativamente introduzidas durante o curso, conforme a necessidade.

O conteúdo ministrado foi o usual, encontrado nos livros sobre o assunto, por exemplo [10,11,12]. Alguns exemplos, entretanto, foram extraídos de livros mais avançados como, por exemplo, [13].

III Aplicações à aprendizagem de eletromagnetismo

Nesta seção, expomos várias aplicações de programação via CA na aprendizagem de conceitos relacionados com a teoria eletromagnética, iniciando com os conceitos de campos escalares e vetoriais. Numa primeira etapa desse processo de aprendizagem, o estudante é apresentado às definições de campo escalar e vetorial. A saber, um campo escalar real f é uma função que mapeia cada ponto do espaço 3 num número f() Î . Um campo vetorial real é uma função que mapeia cada ponto do espaço num vetor (), cujas componentes são funções reais de . Logo no início de um curso básico de eletromagnetismo, o aluno se depara com esses dois tipos de campo, tanto o escalar, através do potencial elétrico V, quanto o vetorial, através do campo elétrico . Numa segunda etapa do processo, tais conceitos, ainda não amadurecidos, podem ser materializados na implementação de uma série de exemplos de tais funções matemáticas, dispostas em forma de rotinas computacionais. Por exemplo, podemos pedir ao aluno que implemente computacionalmente as seguintes funções: f(x,y,z) = 1/, e , que resultam nas seguintes rotinas:

Durante a elaboração de tais rotinas, o aluno amadurece os conceitos de campo escalar e vetorial, percebendo que o input das funções f, 1, 2, 3 e 4 é do mesmo tipo, a saber uma seqüência de três números reais x,y,z . Quanto aos outputs, os do operador f são objetos tipo f(x,y,z), portanto escalares, enquanto os dos operadores 1, 2 e 3 e 4 são objetos tipo [f1(x,y,z),f2(x,y,z),f3(x,y,z)]4 1 http://www.maplesoft.com , logo vetoriais. Numa terceira etapa, tais rotinas podem ser usadas, por exemplo, no aprendizado do mecanismo de construção de gráficos de campos vetoriais. Num primeiro instante, explicamos conceitualmente como desenhar gráficos associados a campos vetoriais: para cada campo, deve-se escolher um conjunto de pontos e, em cada ponto, desenhar o vetor associado, de acordo com a função dada. Em seguida, pedimos aos alunos que, usando lápis e papel, sem qualquer auxílio do computador, construam os gráficos para vários campos vetorias, dentre eles 1, 2, 3 e 4, gerando gráficos rudimentares para os referidos campos. Explicamos que, num procedimento semelhante, só que mais eficiente, o computador gera um grande conjunto de pontos5 1 http://www.maplesoft.com e calcula o vetor associado a cada ponto. Fazendo uso das funções (rotinas) 1, 2, 3 e 4 que eles próprios implementaram computacionalmente, podem agora, usando o comando ''fieldplot'' gerar os gráficos bidimensionais mostrados nas Figs. 1, 2, 3 e 4:

A próxima etapa do aprendizado consiste na comparação dos gráficos construídos com lápis e papel, aos obtidos via computador, resultando no aperfeiçoamento da capacidade do aluno em desenhar ou mesmo usar a imaginação para visualizar gráficos de campos vetoriais.

Mencionaremos agora o processo de aprendizagem relacionado com as aplicações do operador diferencial . Os conceitos de gradiente, divergente e rotacional freqüentemente confundem os alunos, pois misturam operações vetoriais e diferenciais. O processo de aprendizagem da utilização e do significado físico-matemático da atuação de tal operador pode ser feito através das seguintes etapas. Numa primeira etapa, a seqüência de operações matemáticas ligadas com a atuação do gradiente, do divergente e do rotacional é exposta, usando, por simplicidade, coordenadas cartesianas:

Numa segunda etapa, a fim de fixar as operações acima descritas, o aluno pode organizar os procedimentos matemáticos em rotinas computacionais, construindo rotinas simples, que gerem o gradiente de uma função escalar, assim como o divergente e o rotacional de uma função vetorial (todos, por simplicidade, em coordenadas cartesianas). Tais comandos, denominados ''grad'', ''div'' e ''rot'', podem ser construídos como segue6 6 Note-se que os sistemas de CA já trazem implementadas esse tipo de rotinas e várias outras, mas a finalidade aqui é que o aluno construa por si próprio. :

Ao realizar a tarefa, o aluno deve perceber que, apesar de construídos a partir de um mesmo operador vetorial, os procedimentos atuam em funções distintas. O input do comando ''grad" será do tipo f(x,y,z), enquanto o input dos comando ''div" e ''rot" serão funções vetoriais, representadas no Maple por [f1(x,y,z),f2(x,y,z),f3(x,y,z)]. Também verifica que os outputs resultantes da atuação do comando ''div'' são objetos tipo f(x,y,z), enquanto ''grad" e ''rot'' geram objetos tipo [f1(x,y,z),f2(x,y,z),f3(x,y,z)]. Numa terceira etapa, o aluno testa as rotinas elaboradas. Escolhe vários exemplos simples de campos escalares e vetoriais e calcula sem o uso do computador, o gradiente, o divergente e o rotacional, comparando em seguida com os resultados gerados pelas rotinas computacionais. A seguir corrige, se necessário, as rotinas, de modo a fornecerem os resultados corretos. Tal processo resulta na fixação dos procedimentos matemáticos por parte do aluno. Numa etapa final desse ciclo de aprendizagem, relacionado com a fixação das operações matemáticas envolvidas, o aluno pode usar as rotinas por ele construídas, e já testadas, para iniciar um outro ciclo de aprendizagem, por exemplo, buscando a relação entre o divergente e o rotacional de um campo vetorial e o seu comportamento espacial. Neste sentido, sugerimos aos alunos a realização de gráficos para vários campos vetoriais e, em seguida, que procurassem relacionar o divergente e o rotacional desses campos, tomados na origem ( = ), com o comportamento espacial dos campos próximos a esse ponto. Na tabela 1, encontram-se resumidas algumas das observações feitas pelos alunos.

Após analisarem vários exemplos, os alunos começam a perceber que o · () é uma medida de quanto o campo vetorial se ''espalha" (ou diverge) de um ponto em questão [13]. De modo análogo, percebe que × () é uma medida de quanto o campo vetorial ''gira ao redor" de um ponto em questão [13]. Em seguida, incluí mos na discussão os campos em 3D7 6 Note-se que os sistemas de CA já trazem implementadas esse tipo de rotinas e várias outras, mas a finalidade aqui é que o aluno construa por si próprio. e apresentamos formalmente as interpretações geométricas do divergente e do rotacional, relacionadas com o fluxo e a circuitação dos campos (vide, por exemplo, [11,12] ). Chamou nossa atenção o fato de os alunos, através da experimentação computacional, intuírem previamente tais relações, antes que elas fossem discutidas formalmente.

O ciclo de aprendizagem do uso e do significado dos operadores divergente e rotacional, portanto, passou pelo processo de ''intuição'' e ''descoberta'' do significado desses operadores por meio da experimentação computacional. O significado físico-matemático da atuação de tais operadores nos campos elétrico e magnético, o que resulta nas equações de Maxwell, é a próxima etapa do aprendizado. O aluno, já com boa percepção do significado de tais operadores, tem condições de entender que: (i) · = r/Î0 significa que a ''medida de quanto o campo elétrico espalha'' (ou diverge) de um ponto dado, é dada pela densidade de carga naquele ponto; (ii) o divergente do campo magnético ser igual a zero, em qualquer posição e em qualquer instante, indica a ausência na natureza da carga magnética, ou do monopolo magnético; (iii) × = -(¶t) significa que a ''medida de quanto o campo elétrico gira'' ao redor de um ponto é dada pela variação do campo magnético com o tempo nesse ponto; (iv) de modo análogo × = m0+m0Î0t) significa que ''a medida de quanto o campo magnético gira'' ao redor de um ponto é dada pela corrente elétrica e pela variação do campo elétrico com o tempo naquele ponto.

Com o intuito de estimular os alunos não somente a chegar num resultado, mas a explorar o resultado obtido, interpretando-o e verificando suas implicações físicas, sugerimos que, após a resolução de vários exercícios, eles explorassem seus resultados, utilizando as várias ferramentas existentes no Maple. Para ilustrar alguns desses exercícios, solicitamos que os alunos calculassem o potencial elétrico V e o campo elétrico gerados por uma esfera isolante de raio R = 1, com centro na origem e uniformemente carregada com densidade de carga r = 1. Considerando-se V(¥) = 0 e usando-se o sistema gaussiano de unidades (4pe0 = 1), obtém-se, em coordenadas esféricas:

Em seguida, solicitamos que programassem uma função escalar que representasse o potencial e outra função vetorial que representasse o campo elétrico do modelo em questão, em coordenadas cartesianas. Como resultado, obtivemos:

Nos procedimentos acima, os mapeamentos V e E levam três números ou variáveis simbólicas dadas - representados por x,y,z - no valor do campo respectivo. Ressaltamos para os alunos a natureza diferente dos resultados de tais mapeamentos. No caso do programa ''V", o resultado é um escalar, enquanto que o resultado de ''E" vem em forma de um objeto com estrutura do tipo ''[ , , ]", portanto, um vetor. Com tais programas o aluno pode ter instantaneamente o potencial e o campo em qualquer ponto do espaço, o que permite a ele, por exemplo, tentar responder, inicialmente sem o computador, perguntas sobre o comportamento desses campos num dado ponto, e logo em seguida verificar sua resposta com o programa feito por ele.

Usando a relação r = , podemos reescrever V e o módulo de em função de r:

As rotinas V1 e E1 recebem como entrada um número não-negativo r (coordenada radial), gerando, respectivamente, os valores do potencial e do módulo do campo elétrico para a distância dada.

Pedimos aos alunos que, usando lápis e papel, esboçassem os gráficos de tais funções, comparando-os, em seguida, com os obtidos usando o comando plot do Maple (Figs. 5 e 6). O aluno pode ainda fazer, por exemplo, z = 0 e gerar o gráfico de V(x,y,0), usando o comando plot3d (ver Fig. 7 ).

Seguindo o curso com essa linha de trabalho, vários outros tópicos foram abordados, incluindo campos e potenciais magnéticos, chegando até às equações de Maxwell. Dando seqüência a este trabalho, consideramos o seguinte exercício, inspirado em um problema sugerido na referência [10]: partindo dos campos = Em(senwt)(senkx), = Bm(coswt)(coskx), pede-se (a) mostrar que estes satisfazem às eqs. de Maxwell se Em estiver relacionado com Bm de maneira apropriada e w estiver relacionada com k também de maneira conveniente e determinar estas relações; (b) calcular o valor instantâneo do vetor de Poynting.

Comecemos pelo item (b), por ser o mais simples. Uma rotina simples para determinar o vetor de Poynting é dada abaixo:

A entrada de dados da rotina acima deve ser escrita na forma de um par de vetores, sendo que o primeiro deles deve representar o campo elétrico. Como exemplo de utilização da rotina acima, determinemos o vetor de Poynting associado aos campos e propostos. Definindo inicialmente, no Maple, os campos:

determinamos então o vetor de Poynting associado:

Resultou surpreendente para os alunos notar que um procedimento deste tipo pode ser usado para determinar o vetor de Poynting associado a qualquer conjunto (, ), bastando para isso mudar apenas a forma funcional na definição dos campos sem ter que se deter na verificação de erros de conta usuais aos cômputos feitos com caneta e papel. Como mencionado na introdução, isso permitiu ao aluno se concentrar nos conceitos envolvidos, deixando o momento de praticar ''contas a mão" apenas para verificar - em algum momento do processo - que o programa feito funciona corretamente.

O item (a) pode ser resolvido usando-se uma rotina que teste os campos elétrico e magnético , as densidades de carga r e corrente dadas, verificando se o conjunto destas variáveis é ou não solução das equações de Maxwell. A rotina que executa tal tarefa usa os programas feitos pelos alunos ''rot" e ''div", usados anteriormente, e se escreve em termos destes como:

Na rotina acima, a entrada de dados deve ser feita na seguinte seqüência: primeiro o campo elétrico, depois o magnético, a seguir a densidade de carga e, por último, a densidade de corrente. Uma das limitações da rotina acima ocorre quando se trabalha com campos gerados por distribuições discretas de cargas, por exemplo o campo de uma carga pontual q localizada na origem: r = qd(). A rotina trabalha de forma errada com distribuições deste tipo, sendo tal limitação originada em sua simplicidade. O software Maple permite a construção de rotinas mais complexas, capazes de trabalhar com expressões de campos e distribuições de carga bem mais complicadas.

Foi instrutivo ressaltar para os alunos como a construção prévia dos comandos div e rot tinham agora usos múltiplos, e permitiam expressar as equações de Maxwell ''dentro de um programa", de maneira idêntica àquelas obtidas com o uso de lápis e papel. O aluno pode a seguir verificar que o conjunto , proposto inicialmente no livro (com r = 0, = e Em, Bm, w, k arbitrários) não é solução das equações de Maxwell. Para isto bastou introduzir no Maple as correspondentes expressões dos campos elétrico e magnético e das densidades de carga e corrente:

Usando o comando ''maxwell'', obtemos:

O conjunto dado NÃO é solução das equações de Maxwell

A seguir, sugerimos verificar que, escolhendo as constantes Em, Bm, w e k adequadamente, por exemplo: Em = a/, Bm = a, w = k/, onde a é uma constante arbitrária, as novas funções são soluções aceitáveis:

O conjunto dado é solução das equações de Maxwell

A idéia motivadora para esta experiência computacional também foi que os alunos pudessem constatar que os programas construídos para resolver problemas específicos podem também ser usados para solucionar, de maneira rápida, uma ampla classe de problemas semelhantes.

Vejamos, agora, um exemplo mais complexo: ondas eletromagnéticas confinadas no interior de um guia de ondas, considerado como um condutor perfeito (Fig. 8). As condições de contorno na parede interna são dadas por:


Concentrando o foco em ondas monocromáticas, propagando-se ao longo do tubo, temos que as formas genéricas de e são dadas por [13]:

onde a notação complexa foi introduzida, pela vantagem que há em manipular exponenciais em comparação com senos e cossenos. Os vetores

0 e 0 podem ser escritos em termos de suas compontentes da seguinte forma:

É possível mostrar que a substituição de (8) em (7) e estas nas equações de Maxwell, resulta em que as componentes Ex, Ey, Bx, By podem ser escritas em termos das componentes Ez e Bz, da seguinte forma [13]:

sendo que as componentes Bz e Ez obedecem às seguintes equações diferenciais:

cujas soluções devem levar em consideração as condições de contorno dadas em (6). É importante levar o aluno a observar que a existência de componentes de campo elétrico e magnético ao longo da direção z revela que a onda que se propaga no guia-de-onda não é transversal8 6 Note-se que os sistemas de CA já trazem implementadas esse tipo de rotinas e várias outras, mas a finalidade aqui é que o aluno construa por si próprio. . Se Ez = 0 a onda denomina-se transverso-elétrica (TE); se Bz = 0, transverso-magnética (TM).

Num primeiro momento, portanto, o aluno entra em contato com essa seqüência lógica de idéias a respeito do problema da propagação de ondas eletromagnéticas num guia-de-ondas. Num segundo momento, tais idéias, ainda não amadurecidas, assim como a seqüência de operações matemáticas descritas nas fórmulas (9), (10), (11) e (12), podem ser organizadas pelo aluno em rotinas computacionais. A elaboração de tais rotinas permite ao aluno fixar, refinar e amadurecer os conceitos teóricos envolvidos, assim como melhorar seu entendimento sobre a seqüência de operações usadas no problema. Desse modo, podemos solicitar ao aluno que implemente um par de rotinas simples, tais que, dadas as componentes Bz e Ez (soluções das equações (13) e (14)), sejam geradas automaticamente as componentes restantes dos campos e . Tais rotinas, aqui denominadas ''guiaE" e ''guiaB", escritas como:

permitem o cálculo automático, respectivamente, dos campos e dados em (7). A entrada das rotinas consiste das expressões para Ez e Bz, representadas, respectivamente, por X e Y. A saída do programa é da forma ''[ , , ]", representando os vetores ou para o modelo em questão.

Num terceiro momento do processo de aprendizagem sobre o guia-de-ondas, o aluno, após elaborar as rotinas ''guiaE" e ''guiaB", precisa testá-las e corrigi-las, caso necessário. Para isso ele pode buscar soluções particulares simples9 6 Note-se que os sistemas de CA já trazem implementadas esse tipo de rotinas e várias outras, mas a finalidade aqui é que o aluno construa por si próprio. dessas equações e, em seguida calcular, usando o lápis e o papel, as componentes restantes dadas pelas fórmulas (9), (10), (11) e (12). Em seguida, deve verificar se os resultados obtidos pelos comandos ''guiaE'' e ''guiaB'' estão de acordo com os resultados que ele próprio calculou. Tal processo de testagem exige treino de cálculos, além de fixar também toda a seqüência matemática do problema em questão. A testagem final dos comandos ''guiaE" e ''guiaB" passa ainda pelo uso de outro comando construído pelo aluno, o comando ''maxwell'', com o qual se pode verificar se o conjunto de campos obtido satisfaz às equações de Maxwell. Desse modo espera-se que todo o conjunto de campos elétrico e magnético gerado pelas rotinas ''guiaE" e ''guiaB", cujas entradas sejam campos Ez e Bz que satisfaçam às eqs. (13) e (14), seja tal que:

''O conjunto dado e solução das equações de Maxwell''

ou seja, satisfaça às equações de Maxwell. Num quarto momento, fechando-se o ciclo inicial de aprendizagem, os programas feitos e testados podem servir agora para satisfazer a curiosidade do aluno, de modo que ele possa testar várias soluções para campos elétricos e magnéticos em guias-de-onda, sem o desestímulo de ter que realizar longos cálculos para testar cada idéia. Como um exemplo, o aluno pode testar tais rotinas para o caso de ondas transverso-elétricas num guia de ondas retangular, conforme mostrado na Fig. 9. Neste caso Ez = 0, e a eq. (13), resolvida via método de separação de variáveis e levando-se em consideração as condições de contorno dadas em (6), resulta em [13]

onde m e n são inteiros não-negativos, e a seguinte relação deve ser obedecida:


Usando-se as rotinas ''guiaE'' e ''guiaB'', pode-se calcular, a partir das componentes Ez e Bz, os campos e . Definimos inicialmente, no Maple, as componentes Ez e Bz:

Usamos então a rotina ''guiaE'' para gerar o campo completo:

o que dará:

Usando a rotina ''guiaB'' para gerar o campo completo:

resultando em:

As condições de contorno (6), que, especificamente para este problema, podem ser escritas como

podem ser facilmente verificadas fazendo-se:

o que resulta em:

0,0,0,0,0,0,0,0

Isso indica que todas as condições são satisfeitas. Finalizando o processo de testagem da solução para o ploblema do guia retangular, o aluno pode aplicar o comando ''maxwell", por ele contruído em etapa anterior do curso, para verificar que o conjunto de campos dados em (17) e (18) satisfaz às equações de Maxwell. Caso ele proceda fazendo:

obterá:

''O conjunto dado NÃO é solução das equações de Maxwell''

Tal resultado pode, a princípio, causar surpresa no estudante. Entretanto deverá perceber que as expressões (17) e (18), para um k genérico, de fato não satisfazem às equações de Maxwell. O aluno deverá, em sua testagem, levar em consideração a relação (16) e proceder a testagem como segue:

obtendo:

''O conjunto dado é solução das equações de Maxwell''

Dessa forma, o aluno teria completado a testagem e a análise de uma das inúmeras soluções relacionadas com guias-de-onda. Vale mencionar novamente que tal processo de investigação é o último estágio de um ciclo de aprendizado baseado no amadurecimento e na fixação de conceitos através da construção de rotinas computacionais.

IV Comentários finais

Ao usar o computador - especificamente programação - como ferramenta auxiliar na aprendizagem, o aluno é beneficiado pelo fato de os sistemas de CA possuírem uma vasta biblioteca de comandos implementados (derivação, integração, etc...), o que permite a ele concentrar-se mais diretamente nos conceitos teóricos utilizados. Por exemplo, quando o aluno constrói um programa que gera o gradiente de uma função, ele preocupa-se apenas com a definição de gradiente em termos da atuação de derivadas (aspecto teoricamente relevante), em vez de ter que preocupar-se com ter que programar a operação de derivação em si mesma ou com o cálculo das derivadas para cada função possível.

Esta inclusão da programação altera, assim, o ciclo usual de aprendizagem de maneira particularmente interessante. Num primeiro momento, os conceitos são enunciados e verificados, podendo-se já fazer uso dos recursos disponíveis nos sistemas de CA, tais como recursos gráficos e a capacidade de fazer contas simbólicas utilizando regras matemáticas abstratas.

Num segundo momento, os conceitos - ainda não amadurecidos - são organizados em seqüências lógicas de operações matemáticas, e organizados em forma de rotinas computacionais, num sistema de CA. Essa segunda parte permite refinar, fixar, e até estender esses conceitos além dos limites com que foram apresentados. Exercita, ainda, outro aspecto fundamental do processo de aprendizagem: o domínio completo da representação abstrata do problema, sem o qual é impossível organizar os conceitos em rotinas computacionais.

Entre os estudantes de ciências exatas e tecnológicas, esta atividade de ''programação" também inclui tipicamente um divertimento e induz à interação entre alunos, uma vez que a atividade se faz em pequenos grupos. O ingrediente humano adiciona um aspecto subjetivo positivo e importante à atividade. Além disso, o aspecto de colaboração, tão útil na carreira científica, passa a ser um fator importante para o sucesso do grupo, durante as atividades de programação.

Num terceiro momento, o grupo testa os programas elaborados, aumentando a compreensão dos conceitos, fixando as idéias e verificando a necessidade de correção dos programas, comparando, nos casos mais simples, cálculos feitos sem o uso do computador com os feitos pelas rotinas implementadas .

O ciclo se fecha num quarto momento, quando os programas feitos e testados (motivo de orgulho e auto-incentivo para os alunos-autores) são repentinamente percebidos como potentes ferramentas para satisfazer a curiosidade (investigação) em relação aos temas relacionados. Assim, o aluno tem agora a oportunidade de imaginar variações, práticas ou teóricas, de tópicos estudados, sem o desestímulo da perspectiva de ter que realizar ''longas contas passíveis de erro'' para cada idéia. O que observamos foi que vários alunos partiram para a experimentação de conjecturas criativas e possíveis derivações teóricas dos conceitos ensinados, muitas vezes resultando em novas idéias, que por sua vez são também programáveis, recomeçando assim o ciclo.

Um detalhe adicional - não menos importante - deste ciclo de aprendizagem consiste na velocidade com que os alunos são capazes de testar suas próprias idéias, uma vez que o programa para analisá-las foi feito por eles mesmos. A resposta dos programas vem - em tempo real - quase instantaneamente. Isso permite concentrar, num lapso pequeno de tempo, um número grande de respostas, tratando diversos aspectos de um mesmo tema, com o ingrediente emocional positivo de que ''a ferramenta útil'' foi feita pelo próprio aluno. Notamos que esta acumulação rápida de resultados facilita notoriamente o desenvolvimento da ''intuição'' dos alunos em relação aos assuntos estudados. Este desenvolvimento rápido da intuição nos pareceu não usual se comparado como o que ocorre em média em ciclos de aprendizagem que não incluem a programação dos conceitos ensinados. Também nos pareceu acima da média o interesse pelo conteúdo da disciplina, assim como a precisão no uso da linguagem matemática.

Baseado na experiência que relatamos, acreditamos que o uso de programação via computação simbólica é uma ferramenta de grande valia nos processos de aprendizagem.

Agradecimentos

Os autores agradecem aos professores Jessé Carvalho Costa, Benedito Ferreira e Manoel Reinaldo Filho, da UFPA, pelas referências fornecidas. Agradecem, especialmente, ao professor Luís Crispino (UFPA) pela leitura crítica deste texto e pelas valiosas discussões sobre o tema. Finalmente, fica um agradecimento a todos os alunos que participaram desta experiência.

† jairamaral@yahoo.com.br

‡ jfmn@ufpa.br

§ ecterrab@cecm.sfu.ca

2 http://www.wolfram.com

3 Para material de CA para cursos mais avançados veja por exemplo [5,6,7].

4 Vetores podem ser escritos em Maple como listas ordenadas.

5 Os pontos gerados pelo Maple na realização de um dado gráfico, podem ser visualizados, sendo tal visualização interessante para o aluno.

7 Campos vetoriais em 3D podem ser plotados no Maple usando o comando fieldplot3d.

8 Em geral, ondas eletromagnéticas confinadas não são transversais.

9 O aluno pode explorar várias soluções das equações (13) e (14), através do comando "pdsolve" do Maple, projetado para solucionar equações diferenciais parciais.

  • [1] M. Lang-Lazi, I. Diospatonyi, D. Petz, Z. Viczian e G. Fetter, Computer and multimedia in chemical engineering education, Comp. Chem. Eng. 23, S637-S640 (1999);
  • [2] B. Amrhein, O. Gloor e R. E. Maeder, Visualizations for mathematics courses based on a computer algebra system, J. Symb. Comp. 23, 5-6, 447-452 (1997);
  • [3] A. I. Beltzer, A. L. Shenkman, Use of Symbolic Computation in Engineering-Education, IEEE Traansactions on Education, 38, 2, 177-184 (1995);
  • [4] J. A. Valente, Computadores e conhecimento: repensando a educaçăo, Unicamp, Campinas (1993);
  • [5] Willi-Hans. Steeb, Quantum Mechanics using Computer Algebra, World Scientific, Singapura (1994);
  • [6] Willian E. Baylis, Theoretical methods in physical science: an introduction to problem solving with Maple V, Birkhauser,1994;
  • [7] G. Baumann, Mathematica in theoretical physics: selected examples from classical mechanics to fractals, Spring-Verlag, 1996;
  • [8] K. R. Hunt, B. R. Hunt, R. L. Lipsman, J. E. Osborn e C. J. Stuck Differential equation with Maple, Wiley, Nova York (1995);
  • [9] K. R. Hunt, B. R. Hunt, R. L. Lipsman, J. E. Osborn e C. J. Stuck Differential equation with Mathematica, Wiley, Nova York (1995);
  • [10] D. Halliday, R. Resnick, K. S. Krane, Física, 3, 4Ş ediçăo, Livros Técnicos e Científicos S.A., Rio de Janeiro (1996);
  • [11] H. Moysés Nussensveig, Curso de Física Básica, 3, 1Ş ediçăo, Editora Edgard Blücher Ltda., Săo Paulo (1997);
  • [12] E. Purcell, Curso de Física de Berkeley, 2, 1Ş ediçăo, Prentice Hall, New Jersey (1999);
  • [13] D. J. Griffiths, Introduction to Electrodynamics, 3Ş ediçăo, Prentice Hall, New Jersey (1999).
  • *
  • 1
  • 6
    Note-se que os sistemas de CA já trazem implementadas esse tipo de rotinas e várias outras, mas a finalidade aqui é que o aluno construa por si próprio.
  • Datas de Publicação

    • Publicação nesta coleção
      04 Dez 2006
    • Data do Fascículo
      Jun 2002

    Histórico

    • Aceito
      26 Jun 2002
    • Recebido
      20 Abr 2002
    Sociedade Brasileira de Física Caixa Postal 66328, 05389-970 São Paulo SP - Brazil - São Paulo - SP - Brazil
    E-mail: marcio@sbfisica.org.br