terça-feira, 4 de junho de 2013

O número de ouro - parte 1

Hoje começo uma pequena série de posts sobre o número de ouro.
O que é o número de ouro?
Dados dois comprimentos a e b, diz-se que estão na razão dourada se a razão entre a soma deles e o maior for igual á razão entre o maior e o mais pequeno.
Á razão chama-se número de ouro e representa-se habitualmente por ϕ.
Matematicamente escreve-se

     a+ b   a
ϕ :=  -a---= b-

Isto pode escrever-se de outra forma, e com essa forma deduzir algumas propriedades de ϕ

({  ϕ = a+b      ({  ϕ = a+b
   ϕ = aa    ⇔     bϕ = aa
(      b        (

             ⇔  ϕ = bϕ-+-b
                      bϕ
             ⇔  ϕ = ϕ-+-1
                      ϕ
             ⇔  ϕ = 1 + 1-
                        ϕ

Esta última fórmula permite-me escrever...

ϕ  =   1+ 1-
          ϕ
          --1--
   =   1+ 1 + 1ϕ
             1
   =   1+ -----1--
          1 + 1+1ϕ
          -------1-------
   =   1+ 1 + -----11----
              1+1+1+--111--
                    1+ ..
                       .
A este desenvolvimento chamamos fracção contínua (infinita).
Voltando a
ϕ = 1+  1-
        ϕ

Se multiplicarmos cada um dos membros desta igualdade por ϕn, onde n designa um número inteiro arbitrário, obtemos:

ϕn+1 = ϕn + ϕn-1

Note-se que esta igualdade, mostra-nos que a sucessão de termo geral un = ϕn é solução da equação de diferenças

fn+1 = fn + fn-1

Que é a equação de diferenças associada à mundialmente famosa sucessão de Fibonacci (não se preocupe se não a conhecer... eu vou voltar a falar dela).
A fómula anterior condensa muitas das propriedades do número de ouro.
Por exemplo

ϕ-1 = ϕ - 1

ou

ϕ2 = ϕ+ 1

Esta igualdade em particular permite-nos determinar o valor exacto de ϕ

ϕ2 - ϕ- 1 = 0

portanto ϕ é solução positiva da equação x2 -x- 1 = 0
As soluções desta equação são

       √-
x = 1±--5-
      2

Como ϕ é a solução positiva temos:

        -
    1+ √5
ϕ = --2---

O número de ouro foi-me apresentado quando eu estava no 10º ano.

segunda-feira, 3 de junho de 2013

O browser como ferramenta de cálculo...

E lá continuo eu a testar "classes" de objectos definidas em JavaScript...

Na verdade, exemplos como as blog-apps deste blog ou as duas versões que estão online das minhas "cpcalculadoras", mostram que um browser pode ser uma boa ferramenta para cálculo numérico.
Há algumas limitações, quando compararmos com pacotes tipo Matlab, Maple, Mathematica ou ferramentas opensource e gratuitas como o Maxima, o R,  ou o gnu Octave, ou outras ferramentas igualmente gratuitas como o Scilab.
Mas há a vantagem de correr em virtualmente qualquer sítio sem a necessidade de instalação de software adicional.

Ter acesso a computação algébrica num browser pode ser complicado mas não é impossível.
É uma questão de alguém ter paciência e implementar (note-se que JavaScript por exemplo não suporta "operator overload" entre muitas outras coisas, e portanto é necessário usar a imaginação)
Noto que não estou a falar de sistemas como o Wolfram Alpha, onde os cálculos ocorrem no servidor.
Por exemplo, nas CPcalculadoras, os cálculos são todos feitos no browser do utilizador.
Aliás, se tivesse os ficheiros que compoem a cpcalculadora  no seu computator só precisaria de uma versão qualquer do firefox para a correr...
No caso do Google chrome, teria de introduzir algumas opções via linha de comandos porque o chrome considera o sistema de frames das 2 versões actuais da cpcalculadoraJS um risco de segurança, se corridas no computador... mas se corridas na internet já não há rico. Vá-se lá entender estes tipos.

Esquecendo estas particularidades, JavaScript é uma boa linguagem para escrever algoritmos simples e  fazer computação.
É uma linguagem de script, portanto não pense em fazer tudo o que poderia fazer, por exemplo em c++ ou Matlab, mas acredite que hoje em dia já pode fazer mesmo muita coisa.

Basta ver as inúmeras aplicações 100% JavaScript+html que existem pela internet, e, se tudo correr bem, que continuarão a aparecer neste blog.

Que as pessoas possam ter alguma aversão a programação ainda consigo aceitar, mas que tenham aversão a usar a imaginação, acho mau.
Quem não gosta de usar a imaginação, de certeza que matemático ou mesmo cientista não deve ser...

Há bons tutoriais de JavaScript pela internet, e se ignorarmos os bugs, as cpcalcualdoraJS mostram um pouco do que se pode fazer, e embora mostrem muito, mostram muito pouco do potencial do JavaScript, que note-se, não requer que tenha mais nada instalado do que um browser... (e um editor de texto para poder escrever o seu código)...e nem precisa de ter acesso à internet para correr o seu código!
(Observe-se também-se que desde 2006 não faço actualizações significativas às cpcalculadorasJS...)

domingo, 2 de junho de 2013

O 11º Doctor vai embora... :(


Doctor Who é uma série britânica que segue as aventuras de um viajante no tempo por todo o universo e toda a história.
O seu veículo, a TARDIS (Time and Relative Dimension in Space) , nanosegundos antes de se materializar num sítio, analisava toda a zona e disfarçava-se de algo por forma a passar despercebido. Mas ainda no princípio da série, nos anos 60 o circuito responsável por isso avariou, e desde então a TARDIS tem mantido a última forma que adquiriu:
Uma cabine telefónica azul britânica dos anos 60.... que tem se mantido desde então.


O viajante, que usa o pseudónimo de Doctor (embora nunca tenha sido revelado o seu verdadeiro nome) é um extraterrestre do planeta (fictício) Gallifrey, e pertence a uma raça que ficou conhecida como "Time-Lords".
Os Timelords têm uma característica invulgar: Quando estão perante a morte, por exemplo, por terem sido baleados ou sobrecarregados com radiação, ou... etc, iniciam um processo que ficou conhecido como regeneração onde ficam totalmente "curados", e com um corpo novo.
Incluindo algumas alterações na personalidade!
Na prática, isto permite que o actor que desempenha o papel principal seja substituído e que a série continue.
E a série já anda por aí desde 1963, está a comemorar o 50ª aniversário neste ano e pode-se considerar um sucesso a nível mundial.

Desde 1963 já 11 actores passaram pelo papel de Doctor, e Matt Smith, o 11º e actual actor a desempenhar o papel de doctor já fez saber que abandona o papel neste Natal, regenerando-se para "o próximo doctor.".
Sempre que um actor entra neste papel, já sabemos que chegará o dia em que terá de ir, mas eu gostaria que continuasse mais uns dois ou três anos.

Bem... a minha sugestão é que levem o Hugh Laurie (Dr. House) para o papel principal por uns anos.
Tudo é possível... duvido que o façam, mas acho que seria um excelente Doctor.


Por cá, em Portugal, Doctor Who infelizmente só pode ser visto nos canais SIC Radical, BBC Entertainment, SyFy e em nenhum dos canais de sinal aberto...
Bom fim de semana.

PS: Admito que prefiro ver num canal que não tenha legendas, o acordo ortográfico na forma actual é demasado indigesto para mim. Principalmente pela falta de uniformidade (cada um escreve como lhe apetece?!) E vejam lá que eu lia BD em português do Brasil quando era pequeno, e até o português do Brasil(pré-AO) é "mais agradável" que o resultante deste AO.

Com a língua não se brinca desta forma.
Deixem pessoas sérias e responsáveis tratar do próximo acordo, e que seja testado pelas populações antes de se decidir se deve ou não adoptar ou mandá-lo de volta para a cozinha. Isto de impor um acordo mal pensado com vários problemas "porque sim" e "porque a língua tem de evoluir" sem se pensar bem no que se está a fazer torna as pessoas hostis a ele.
Pessoalmente acho que coisas como o AO deviam ser objecto de referendo antes de se imporem à população ou na educação.
O que se passa com o actual acordo (AO90) é demasiado grave e não pode se repetir no futuro.

sexta-feira, 31 de maio de 2013

Status: Implentando Objectos matemáticos em JavaScript

Toda a gente sabe que é possível cortar-se com papel.
Eu ontem fiz uma descoberta.. também é possível cortar-se com uma régua!
Tenho uma ferida na minha mão direita, feita com uma régua e que ainda tenho alguma dificuldade em compreender.

Bom. Eu tencionava ter uma blog-app que calculasse (numericamente) os zeros de um polinómio mas parece que não vou conseguir fazê-lo a tempo.
Inicialmente estava a pensar em recorrer a alguns ficheiros utilizados na minha cpcalculadoraJS2.0 , mas deparei-me com um bug incomodo.
Seja como for, decidi aproveitar o código para criar novas classes em Javascript que poderei utilizar em próximas blog-apps matemáticas, e também em possíveis próximas versões da cpcacluladoraJS
  • Numeros racionais (isto é, permitir fracções...)
  • Polinómios de coeficientes "reais" (notar que nas interpolação de Lagrange e Hermite, na cpcalculadoraJS 2.0 já tenho parte do trabalho feito, embora com alguns erros)
  • Numeros complezos (para ser honesto, também estou a considerar quaterniões)
  • Matrizes
  • Permutações/grupo Simétrico
E finalmente uma biblioteca JS com várias funções típicas de Teoria dos números que podem ser úteis ...
Em particular para a aplicação que calcula os zeros de polinómios vou precisar das classes Polinómio,  números complexos, e ...da biblioteca de funções de teoria dos numeros, que me será útil para determinar o numero de divisores de um número. e depois disso dar-me a lista de todos os divisores do número.


Esta imagem nostra-vos a definição da minha classe polinómio para usar aqui no blog.
A versão para a próxima CPcalculadoraJS será um bocadinho mais sofisticada.
A actual já é um bocadinho mais sofistcada, mas tem alguns bugs enbaraçosos...
(Aquele "with(Math)", na verdade não está a fazer nada e será removido...).
Hum... penso que também devia implementar o polinómio recíproco....

Será que ainda consigo ter isto pronto até amanhã?

quinta-feira, 30 de maio de 2013

Houve fogo no paraíso


Ao longo do texto de hoje vou utilizar letras maiúsculas para ocultar nomes e áreas da Matemática.
Antes do nascimento das redes sociais... quando a internet ainda dava os primeiros passos depois do boom de meados dos anos 90...
"O professor X é um mero especialista na teoria Y" - Disse explicitamente uma vez, o professor Z numa aula de W.
"O professor X de A tinha inclusivamente teoremas conhecidos pelo nome dele" - Disse um aluno.
"Professor X? Nunca ouvi falar." - Respondeu o professor L.
Assisti a várias variantes deste tipo de atitudes durante toda a minha vida académica.
O "minimizar" os outros é algo ridículo, mas que se vê muito no meio académico. Se por vezes há alguma razão nos comentários, noutras há muita maldade ou muita ignorância.
No fundo, um problema de egos.
Outra atitude frequente era a de valorizar apenas a sua área e desvalorizar todas as outras.
Muitas vezes dava-me arrepios ver o ninho de cobras onde estava metido.

Bem, deste tipo de professores, alguns tratam os alunos da mesma forma: como burros ignorantes que nada sabem.
Nos meus (péssimos) tempos na fcul por exemplo cheguei a ter umas "peças" interessantes. Aquele que nunca vou esquecer foi um que sempre que eu punha uma dúvida me respondia "você deu isso na cadeira X".
Bem... falo da fcul porque supostamente quando fui aceite talharam o programa de acordo com os dados que lhes enviei.
Na prática, ninguém olhou para aquilo. Penso que precisavam de alunos e portanto aldrabaram os candidatos.
No meu caso em particular apresentaram-me vários programas que não tinham absolutamente nada a ver com o que me deram...
Portanto obviamente chegou a acontecer a tal "cadeira X"..ser uma cadeira que eu nunca tinha tido, ou em alguns casos que afinal na cadeira X nunca ninguém tinha tocado no tal assunto (vá-se lá saber se foi falta do professor de X ou apenas alguma ilusão ou mesmo má vontade do outro...)...
Mas tendo em conta que éramos tão poucos alunos, custava muito terem feito um trabalho melhor?
Ora, estavam-se nas tintas para os alunos.
Para ter respostas destas, ao fim de algum tempo simplesmente deixei de as colocar...passei a pesquisar em todos os meios que tinha disponíveis e a fazer perguntas a contactos meus que não recebiam dinheiro nenhum do que eu pagava para propinas....
É desmotivante ter um professor que invariavelmente goza connosco, em vez de ser um parceiro no progresso académico.
(O caso que me marcou mais ainda foi um em que a tal cadeira X não funcionava há mais de 5 anos naquela faculdade... e que hoje sei que a minha dúvida teria sido rapidamente tirada se o professor tivesse alguma decência visto que nem era uma cadeira difícil)
Alguns professores querem que os alunos não tenham vida e só se dediquem àquilo...
Bem, no meu caso eu "não tinha vida"... era mesmo só aquilo, a minha família e... a minha saúde.
(E estando a viver em Lisboa, os invariáveis problemas que ocorrem em quartos alugados com senhorios que só pensam no lucro ao final do mês.)
Não gosto de criar atritos com quem vai ter de me avaliar, e durante anos engoli muitos sapos até ao dia em que tive de dizer chega! A situação estava insuportável e já nem a minha saúde era compatível com estes stresses
Abandonei um sonho... não qualquer sonho... O sonho.
Não é algo que eu vá esquecer facilmente. Vou mantendo a mente ocupada... já perdi imenso tempo a pensar nisto. Acabou... está acabado.

O que me resta desse sonho são algumas horas por dia, em que com livros, papel e lápis passeio como um fantasma por mundos onde um dia caminhei de corpo e alma.
Quando publico coisas tiradas das minha memórias, é apenas na intenção de que possam vir a ser úteis a alguém. Quando dou detalhes sobre o quando e o como...bem... pelo menos eu gosto de contextos.

Portanto... regressar ao ensino superior?
"I hardly think I'll be back..."
O único e duradouro problema é: "E agora? O que é que sobra para mim?"

quarta-feira, 29 de maio de 2013

Ainda sobre a proposta de programa de Matemática para o ensino básico...

Concordo que é frustrante (e ridículo) haverem mudanças de programas "sempre" que muda o governo.
Mas desta vez, vejo com muita satisfação a proposta que foi apresentada em Portugal.
Não só por propor um uso mais racional das calculadoras como também por vários tópicos apresentados no programa. Ainda sobre o uso de calculadoras, a sua utilização excessiva está a ser responsável por um desleixo sucessivo nas propriedades algébricas das "operações básicas"...

Apesar de várias vozes contra, principalmente os defensores do programa a ser substituído (e em muitos aspectos ridículo) vêm com argumentos que são muito discutíveis e pouco pertinentes para um assunto realmente sério, eu acho que aquele programa vai no bom caminho.
Na verdade, o programa cessante promove de certa forma a cultura do facilitismo como forma de motivação.
Tenho alguma curiosidade sobre o que se passa ao mesmo nível em Angola e no Brasil. Mas ainda não me dei ao trabalho de investigar.

A equipa que elaborou o programa aceita contribuições e propostas até ao dia 31 de Maio (depois de amanhã), mas até a sociedade Portuguesa de matemática já deu uma opinião favorável e em muitos aspectos coincidente com a minha.
Eu não vou desenvolver o porquê da minha posição aqui no blog, prefiro deixar as pessoas tomar a sua posição racionalmente, sem as obrigar a ler opiniões que podem ser consideradas tendenciosas e que podem  interferir nesse processo de raciocínio (mas sempre podem ler o parecer da SPM que não é muito diferente do meu.), além do mais.. estou cansado e tenho mesmo de ir dormir. :)
Esperemos que este novo programa se mantenha e só seja substituído por um melhor (e de preferência, diferente do anterior).
E já agora, peço que não seja dada oportunidade aos autores do anterior de voltar a poder tocar sequer em futuros programas por corrermos o risco de voltar tudo ao mesmo.

terça-feira, 28 de maio de 2013

Google Chrome Versus (as minhas) Blog-Apps


Hoje de manhã deparei-me com um estranho cenário:
As "Blog-Apps" deste blog não estavam a funcionar!
"Mas que raios? Isto sempre funcionou! Fui eu que as escrevi"-Pensei
Abri o blog noutro browser (Mozilla Firefox) e estava tudo a funcionar como devia.
Abri a "Consola JavaScript" no Google Chrome (onde inicialmente ocorreu o erro) e vi o que se passava.
Devem ter havido algumas alterações por alegados motivos de segurança lá pelos lados do google.
Lá perdi meia hora a reescrever partes dos ficheiros JavaScript onde tenho o código, e ainda de páginas aqui do blog para que tudo voltasse a correr.
Infelizmente, não era daquelas que bastava alterar uma linha.. teve de ser mesmo uma modificação em vários sítios,
E eu a pensar que isto só acontecia no tempo do Internet Explorer.
O que se passa, não sei se já perceberam,  é que agora vivemos na ditadura da informática. 

Tenham um bom dia.

segunda-feira, 27 de maio de 2013

De uma equação diferencial até à relação de Euler.

A minha relação com os números complexos foi, inicialmente, muito auto-didacta.
Hoje vou mostrar-vos como percebi como se deveria definir a exponencial complexa, cerca de um ano antes de ter tido análise complexa.
O facto não foi muito surpreendente pois já tinha tropeçado com a fórmula antes em algumas leituras. Em particular, a fórmula

eiπ + 1 = 0

Apareceu-me algumas vezes, (ainda antes de ter visto a fórmula com funções trigonométricas) e confundia-me pelo facto de eπ nem ser inteiro...
Consideremos a equação diferencial

d-y = ky
dx
y(α) = yα

A solução desta equação diferencial eu já a conhecia de outras aventuras, e penso que qualquer um com os conhecimentos mínimos de cálculo diferencial/integral consegue deduzir a fórmula da solução sem grande esforço.
Eu vou apresentar aqui uma dedução, mas o leitor mais apressado pode saltá-la.

d
dxy = ky

⇔ -d-y- ky = 0
  dx

   -kx-d-    -kx
⇔ e   dx y- e   ky = 0

⇔  d-(ye-kx) = 0
   dx

⇔ ye-kx = C

⇔ y = Cekx

y(α) = yα ⇒ yαe-kα = C

⇒ y = yαek(x-α)

A função cis, complexa, de variável real, define-se da seguinte forma

cisθ := cosθ + isinθ

onde i é a unidade imaginária.
Ao derivar esta função observa-se que:

d-cisθ  =   - sinθ+ icosθ
dθ
       =   i2sinθ+ icosθ
       =   i(isinθ+ cosθ)
       =   icisθ
Ou seja
d-
dθcisθ = icisθ

Esta relação mostra que a função cis satisfaz a equação diferencial do início deste post, com k = i
Se admitirmos que aquela solução é válida para valores de k complexos, como cis0 = 1 então:

       i(θ-0)
cisθ = 1e

ou seja

eiθ = cisθ

Esta última relação é uma das relações responsáveis por se definir a exponencial complexa como se define habitualmente (a menos que se defina pela série de MacLaurin).
Em partitcular, esta relação dá-nos:

eiπ + 1 = 0

Este blog recusa-se a utilizar o Acordo Ortográfico de 1990