Você é o visitante n°:

contador de visitas

quinta-feira, 21 de abril de 2011

Gnuplot: introdução e comandos básicos.

1.0 INTRODUÇÃO:
          A tecnologia é algo cada vez mais presente em nosso cotidiano e presente em diversas áreas do conhecimento humano, e quando aliada ao processo de ensino e aprendizagem, torna-o mais dinâmico e eficiente, aliando aprendizagem ao entretenimento. E na matemática não poderia ser diferente: diversos programas em diversas áreas nos oferecem outros meios de facilitar a assimilação de conteúdos.
            Todos os estudantes, em algum momento de sua vida estudantil, se deparam com o conceito de função, inicialmente a constante, a de 1° e 2° grau, e mais a frente as funções trigonométricas. É de fato um conceito belíssimo, e o que chama muito mesmo a atenção é o fato de toda função possuir gráfico. E os gráficos possibilitam a todos o entendimento do comportamento da função em diversos aspectos, como por exemplo: domínio, imagem, pontos de máximo e mínimo e etc. E não é só em funções que os gráficos são utilizados: por exemplo, na área de estatística,com seus gráficos de barras, linhas e de setores, e tampouco ficam restritos somente na matemática: encontramos aplicações nas áreas de geografia, economia, biologia, agronomia, enfim! São instrumentos poderosos e que facilitam a visualização de variações de grandezas numéricas e a compreensão das mesmas.
           Quanto ao gráfico de funções, surge uma indagação feita por boa parte dos estudantes: existe um meio computacional de ser gerado gráficos de funções? Sim, existe. E vários softwares fazem isso. Nesse nosso estudo, iremos destacar o software gnuplot* e alguns de seus comandos mais básicos na visualização de gráficos de funções. É um programa de interface simples, trabalhado através de comandos, em língua inglesa, o que a princípio pode dificultar um pouco o aprendizado a primeira vista, mas depois o usuário não sentirá mais dificuldade e ela tende a desaparecer. É importante também destacar que o gnuplot é uma espécie de calculadora científica com capacidade gráfica. O software pode ser baixado através do site: www.gnuplot.info. (*gnuplot se escreve mesmo com 'g' minúsculo, de acordo com seus idealizadores).
             Depois de o usuário baixar o programa, que vem em uma pasta, basta abrir a pasta e clicar no ícone "wgnuplot" :


E em seguida, abre a janela abaixo:

             É nesta tela (chamada prompt) que inserimos os comandos necessários à visualização de gráficos. Além dos comandos, é necessário conhecermos alguns operadores aritméticos úteis:
  • Adição: +
  • Subtração: - 
  • Multiplicação: *
  • Divisão: /
  • Potência: **
  • Resto de uma divisão: %. Exemplo: 
gnuplot> print 95%10
gnuplot> 5
  • Fatorial: !
         Uma observação útil! Ao inserirmos um número, o programa interpreta-o como sendo um número inteiro. Se fôssemos calcular 5/4, do jeito que escrevemos agora, o programa ia dar como resposta o número 1. Isto aconteceu porque 1 é a parte inteira da divisão de 5 por 4. Se quisermos obter 1.25, teremos que digitar 5.0/4 ou 5/4.0 (a presença do '.0' indica ao programa que se trata de um número real, e portanto a resposta será um número real, com suas casas decimais):
gnuplot> 5/4.0
gnuplot> 1.25


           Vamos agora conhecer alguns comandos:
  • PRINT: Mostra na tela valores calculados através do próprio programa. Vejamos, se digitarmos no prompt e em seguida pressionarmos 'enter':

gnuplot> print 5*4 + 10
gnuplot> 30
Uma outra forma de aplicar calculando valores de funções seria:
gnuplot> f(x) = x**2 - 5*x + 6
gnuplot> print f(6)
gnuplot> 12
  • SQRT: Calcula a raiz quadrada de um número. Exemplo:
gnuplot> print sqrt(9)
gnuplot: 3
  • PLOT: Mostra na tela o gráfico de uma função em 2D;
  • SPLOT: Mostra na tela o gráfico de uma função em 3D;
  • SET: Permite exibir no programa funções/reajustes no gráfico a ser exibido. Os principais são:
SET XRANGE: Insere o domínio no eixo x;
SET YRANGE: Insere domínio no eixo y;
SET ZEROAXIS: Exibe os eixos coordenados;
SET TITLE: Insere um título no gráfico;
SET KEY LEFT BOTTOM: Coloca a legenda no canto inferior esquerdo;
SET KEY RIGHT BOTTOM: Coloca a legenda no canto inferior direito;
SET KEY LEFT TOP: Coloca a legenda no canto superior esquerdo;
SET KEY RIGHT TOP: Coloca a legenda no canto superior direito;
SET KEY OUTSIDE: Coloca a legenda fora da área do gráfico;
SET KEY BELLOW: Coloca a legenda fora e abaixo;
SET KEY BOX: Coloca caixa na legenda;
SET XLABEL: Insere um título no eixo x;
SET YLABEL: Insere um título no eixo y;
SET XTICS: Define o tamanho do intervalo no eixo x;
SET YTICS: Define o tamanho do intervalo usado no eixo y;
SET HIDDEN3D: "Esconde" a parte de trás de um gráfico em 3D, dando um efeito
SET SAMPLES: Aumenta/diminui a quantidade de pontos usados para construir um gráfico 2D;
SET ISOSAMPLES: Aumenta/diminui a quantidade de pontos usados para construir um gráfico em 3D;
SET CONTOUR BASE: Exibe as curvas de nível abaixo do gráfico de uma superfície;
SET CONTOUR SURFACE: Exibe as curvas de nível na própria superfície;
SET ARROW FROM 'A' TO 'B' : Desenha um vetor na tela com origem em A e extremidade em B.
           Ainda temos outras opções de comandos combinados com o SET, que veremos ao longo do artigo.
  • UNSET: Desfaz a operação 'set' feira pelo usuário;
  • HELP: Exibe menus de ajuda ao usuário;
  • RESET: Limpa todas as configurações ativadas pelo usuário;
  • EXIT: Sair do programa.

2.0 VISUALIZANDO UM GRÁFICO:

           Vamos ao que nos interessa! Para visualizarmos o gráfico de uma função em 2D, basta utilizarmos 'plot função'. Por exemplo: se quisermos visualizar o gráfico da função f(x) = 2x - 7, basta fazer:

gnuplot> plot 2*x  - 7

            E o resultado:
           Nota: poderíamos também fazer dessa maneira:
gnuplot> f(x) = 2*x - 7
gnuplot: plot f(x)
           Podemos incrementar ainda mais nosso gráfico. Digitemos então o seguinte script:
gnuplot> set zeroaxis .......................................... mostra os eixos coordenados
gnuplot> set grid ................................................. mostra a tela dividida em grade
gnuplot> set title "Função de primeiro grau" ......... define o título do gráfico
gnuplot> set xlabel "Eixo X" .................................nomeia o eixo dos 'x'
gnuplot> set ylabel "Eixo Y" .................................nomeia o eixo dos 'y'
gnuplot> set  xtics 1 ............................................define o tamanho do intervalo usado no eixo 'x'
gnuplot> set ytics 1 .............................................define o tamanho do intervalo no eixo 'y'
gnuplot> plot 2*x - 7
            E o resultado:

              Note que, em meio a essa malha toda, ficou difícil de visualizar os eixos coordenados, mas é possível mudar essa situação aplicando uma cor diferente da malha do plano. Façamos isso: feche o gráfico (mas não o prompt!) e no próprio prompt digite:

gnuplot> set zeroaxis 2
gnuplot> plot 2*x - 7
             Teclando enter em seguida, o gráfico fica com o aspecto abaixo:

       Veja que os eixos coordenados ficaram com a cor verde. Isso aconteceu porque você acrescentou ao lado do comando set zeroaxis o número 2. É ele que indica ao programa a cor que deve ficar os eixos coordenados. Uma maneira de você visualizar todas as opções disponíveis é digitar a palavra test no prompt de comandos e teclar enter. Irá aparecer a tela abaixo:

           Uma melhor olhada no desenho (no canto direito) permite você identificar a cor verde associada ao número 2 que colocamos ao lado do comando. Podemos também mudar o estilo da linha do gráfico! Se você olhar o canto inferior esquerdo da tela "test", aparece várias espessuras de linha (o linewidth). Faça disso: digite plot 2*x - 7 lw 3, e veja o que acontece:
              O comando lw 3 permite que você altere a espessura da linha que desenha o gráfico da função. Veja na tela test que você tem seis opções de espessura de linha (do 1 até o 6).
              Vamos ver então outras opções. Feche o gráfico, e no prompt digite plot 2*x - 7 with boxes, e observe:

              Veja agora o que acontece quando inserimos o comando plot 2*x - 7 with points 3:
             O gráfico deixa de ser desenhado por uma linha e passa a ser desenhado por um conjunto de pontos  (descritos na tela test). E veja agora se digitarmos o comando plot 2*x - 7 with linespoint 7:

           Enfim! Deu para perceber que o programa tem várias opções de incrementar gráficos, mas não é só para isso que ele serve não! Com ele dá para enxergarmos em uma função algo como suas possíveis raízes reais, exatas ou aproximadas, seu valor máximo ou mínimo e ponto de intersecção do gráfico com o eixo das ordenadas (quando houver). Vamos lá! Digite no gnuplot o script abaixo:
gnuplot> reset
gnuplot> set zeroaxis 2
gnuplot> set grid
gnuplot> set xtics 1
gnuplot> set ytics 1
gnuplot> set title "Função de segundo grau"
gnuplot> set xlabel "Eixo X"
gnuplot> set ylabel "Eixo Y"
gnuplot> f(x) = x**2 - 5*x + 6 
gnuplot> plot f(x)

              Deu para perceber que, do jeito que está aí fica um pouco confuso de entender o comportamento dessa função. Isso porque o programa ajusta o gráfico de acordo com o tamanho de sua tela, o que é conhecido por default. Por isso, vamos aprender a restringi-la a um domínio específico. Para isso, feche o gráfico e digite no script os seguintes comandos:
gnuplot> set xrange [-1:5]
gnuplot> set yrange [-1:7]
              Explicando: o comando set xrange [-1:5] permite que você veja a função no eixo x somente no intervalo [-1:5], assim como o comando set yrange [-1:7] restringe a visualização do eixo das ordenadas ao intervalo [-1:7]. E bom saber que esses comandos podem ser abreviados respectivamente para set xr e set yr. Tecle enter e veja o que acontece:

              Observando o desenho, você percebe que:
i) O gráfico é uma parábola com concavidade voltada para cima (a = 1 > 0);
ii) As raízes da função são os números 2 e 3 (ponto onde o gráfico corta o eixo x: f(x) = 0);
iii) O gráfico intercepta o eixo y no ponto y = 6 (é só fazer x = 0);
iv) A função tem um ponto mínimo, e ele está entre 2 e 3 (Faça as contas! Você descobre que o ponto mínimo é Yv = -0.25 e isso acontece quando Xv = 2,5).
            Viu só? Vejamos outro exemplo. No mesmo script anterior, digite:
gnuplot> set title "Sistema de equações"
gnuplot> f(x) = x - 1
gnuplot: g(x) = (13 - 3*x)/2.0
gnuplot> plot f(x), g(x)
            Teclando enter:
             Vemos então que as duas funções se cruzaram no ponto P(3,2). Fazendo as contas, é só resolver a igualdade f(x) = g(x).
              Ao trabalharmos com outros tipos de função, é necessário conhecermos a notação utilizada no programa:
PRINCIPAIS FUNÇÕES ELEMENTARES:
sin(x) .................................. seno de x
cos(x) ..................................cosseno de x
tan(x) ...................................tangente de x
asin(x) .................................arco-seno de x
acos(x) ................................arco-cosseno de x
atan(x) .................................arco-tangente de x
sinh(x) ..................................seno hiperbólico de x
cosh(x) .................................cosseno hiperbólico de x
tanh(x) ..................................tangente hiperbólica de x
sqrt(x) ..................................raiz quadrada de x
log(x) ...................................logaritmo de x na base e (e = 2,781828 ... )
log10(x) ...............................logaritmo decimal de x
exp(x) ..................................exponencial de x
abs(x) ..................................valor absoluto(módulo) de x

3.0  OUTROS EXEMPLOS DE GRÁFICOS EM 2D:

3.1 GRÁFICO DA FUNÇÃO SENO:
3.2  GRÁFICO DA FUNÇÃO LOGARITMO DECIMAL:

3.3 GRÁFICO DA FUNÇÃO INVERSA (f(x) = 1/x):
3.4 GRÁFICO DA FUNÇÃO COSSENO HIPERBÓLICO DE X:
3.5 GRÁFICO DA FUNÇÃO F(X) = X*SIN(X):
3.6 GRÁFICO DA FUNÇÃO F(X) = ABS(-x**2 + 4):
3.7  MODELO MATEMÁTICO DE UM AMORTECEDOR SIMPLES:

segunda-feira, 18 de abril de 2011

GEOMETRIA ANALÍTICA: O QUE É E PARA QUE SERVE?

A geometria analítica, também chamada geometria de coordenadas e que antigamente recebia o nome de geometria cartesiana, é o estudo da geometria através dos princípios da álgebra. Em geral, é usado o sistema de coordenadas cartesianas (isso mesmo, aquele dos eixos x e y) para manipular equações para planos, retas, curvas e círculos, geralmente em duas dimensões (o espaço R2), mas por vezes também em três ou mais dimensões, o dito espaço R3, embora muito difícil de ser trabalhado no ensino médio, é frequentemente cobrado em um ensino superior na área de exatas, como por exemplo nas disciplinas de cálculo diferencial e equações diferenciais. Um bom software para a construção de gráficos é o gnuplot, que trabalha através de comandos (em inglês) tanto com 2D como com 3D, e que tem a vantagem de ser gratuito e de interface de comando fácil (pode ser baixado em www.gnuplot.info):


Alguns pensam que a introdução da geometria analítica constituiu o início da matemática moderna. Os estudos iniciais da Geometria Analítica se deram no século XVII , e devem-se ao filósofo e matemático francês Rene Descartes (1596 - 1650), inventor das coordenadas cartesianas (assim chamadas em sua homenagem), que permitiram a representação numérica de propriedades geométricas, porém quase na mesma época (um pouco antes de Descartes), outro matemático francês, Pierre de Fermat (1601 - 1665) já havia enunciado os princípios da geometria analítica e tinha até deduzido equações de retas e parábolas, mas não o publicou devido em grande parte a sua modéstia. Provavelmente, se tivesse publicado, as coordenadas que hoje chamamos de "cartesianas" poderiam se chamar de "fermatianas".
Por aquilo que dela é ensinado nos livros escolares, pode-se explicar a geometria analítica de uma forma mais simples: a disciplina procura definir formas geométricas de modo numérico e extrair informação numérica dessa representação. O resultado numérico também pode, no entanto, ser um vetor ou uma forma. Descartes criou as fundações para os métodos da geometria analítica em 1637 no apêndice intitulado Geometria do seu Discurso do Método. Este livro e os seus princípios filosóficos criaram as fundações para o cálculo, que foi mais tarde introduzido independentemente por  Isaac Newton e Gottfried Wilhelm Leibniz.
Os temas importantes de geometria analítica incluem:
  • Espaço vetorial
  • Conceitos primitivos (ponto, reta e plano)
  • Problemas de distância entre pontos e entre ponto e reta
  • O produto escalar para obter o ângulo entre dois vetores
  • O produto vetorial para obter um vetor perpendicular a dois vetores conhecidos (e também o seu volume espacial)
  • Problemas de intersecção
A álgebra linear (ramo da matemática aplicada que trata de espaços vetoriais) utliza largamente a geometria analítica em seus resultados. Mas no nosso dia a dia utilizamos muita coisa, embora de forma inconsciente, que utiliza geometria analítica. Por exemplo: ao utilizarmos um aparelho GPS, estamos fazendo proveito da divisão do globo terrestre em um sistema de coordenadas cartesianas e que sua posição exata é um par ordenado nesse imenso plano. E também encontra aplicações em vários ramos: medicina, robótica, aeronáutica, etc. Daí, percebemos a importância do estudo da geometria analítica e porque apesar de tanto tempo desde sua criação esta continua a ser um ramo rico e ainda muito estudado.

Fonte: wikipédia.