1º Bimestre

2º Bimestre

Informática - 1º Bimestre (semana 5)

Aplicativos para Computação Numérica

Os riscos associados aos usos de planilhas para a realização de cálculos com grande volumes de dados e a apresentação de alternativas mais robustas: os aplicativos de computação numérica.

Planilhas: uma ferramenta de alto risco para análise de dados


Quando a planilha eletrônica foi introduzida no mundo dos negócios no final dos anos 70, início dos anos 80, o seu sucesso foi praticamente imediato. a praticidade, a versatilidade e a eficiência das planilhas se mostraram um forte atrativo, e, de forma questionável, ajudaram a consolidar a ampla utilização de computadores pessoais no cenário dos negócios.


Hoje as planilhas eletrônicas são onipresentes e têm motivos para isso. Elas se tornaram uma ferramenta indispensável para quem trabalha com cálculos e modelamento financeiros.

Um artigo na AccountingWEB.com, que cita uma pesquisa com executivos da área financeira, revelou que 92 por cento de todas as empresas públicas usam planilha nas principais atividades contábeis. As utilizações variam desde às entradas de contabilidade de receita à programação, alocação e redistribuição de receita. 

O artigo afirma que as planilhas são amplamente utilizadas porque várias tarefas essenciais na elaboração de relatórios e reconhecimento de receitas ainda não são totalmente automatizadas em sistemas financeiros e ERP.

Elas podem ser aplicadas a uma infinidade de áreas, entre elas, a preparação de orçamentos, inventários, modelamento financeiro e a entrada de dados de informações financeiras e relatórios.
Paradoxalmente, o que torna as planilhas tão atrativas está na raiz de suas falhas.

As organizações precisam equilibrar a facilidade de uso, a flexibilidade e o baixo custo na aquisição das planilhas, com as suas falhas de utilização em um contexto de nível corporativo.

Estas falhas podem ser classificadas em três áreas principais:
  • Falta de integridade de dados – os valores podem ser alterados deliberadamente ou acidentalmente
  • Tendência a erros – erros na entrada, lógica, interfaces de dados e utilização
  • Não está em sintonia com os sistemas de TI padrão para aplicações essenciais – documentação, testes e controle de versão.

Está claro que as falhas das planilhas podem levar a um questionamento da qualidade dos dados produzidos. Dados com qualidade inferior resultam em relatórios imprecisos e processos decisórios equivocados. Portanto, a confiança nas planilhas para aplicações financeiramente relevantes resulta em um nível inaceitável em termos de riscos comerciais e normas reguladoras.
Os dados importados ou copiados para uma planilha podem ser modificados, alterados ou convertidos inadvertidamente. Estes riscos são basicamente acidentais por natureza, apesar de inúmeros casos existirem por conta de fraudes instauradas devido à manipulação maliciosa das planilhas.

Em tempos de muita pressão para resultados eficientes, manter a integridade das informações é algo hoje indispensável para qualquer processo.



Alternativas às planilhas para a realização de computações numéricas


Dentre as inúmeras opções de aplicativos, alguns softwares são comerciais e outros são softwares livres, dentre eles podemos citar: MatLab, GNU Octave, FreeMat, Scilab, etc. Como exemplo e aprendizagem será utilizado o Scilab, que é um software livre.

Scilab: é um ambiente voltado para o desenvolvimento de software para resolução de problemas numéricos. O Scilab foi criado em 1990 por um grupo de  pesquisadores do INRIA  – Institut de Recherche en Informatique et en Automatique e do ENPC - Ècole Nationale des Ponts et Chaussées. Desde 1994, quando passou a ser disponível na Internet, Scilab é gratuito, free software, e distribuído com o código fonte, open source software. Além da distribuição com o código fonte, existem, também, distribuições pré-compiladas do Scilab para vários sistemas operacionais. As principais características desse ambiente de programação numérica extremamente flexível são:

  • Ambiente poderoso para geração de gráficos bi e tridimensionais, inclusive com animações;
  • Manipulações com matrizes são facilitadas por diversas funções implementadas nos toolboxes;
  • Permite trabalhar com polinômios, funções de transferência, sistemas lineares e grafos;
  • Define funções facilmente;
  • Permite acesso a rotinas escritas em FORTRAN e C;
  • Pode ser acessado por programas de computação simbólica, como o MuPad;
  • Permite o desenvolvimento de toolboxes. 
Além dos toolboxes desenvolvidos pelo grupo Scilab, estão disponíveis outras complementares, igualmente gratuitas, como o ANN (Artificial Neural Network ), o FISLAB ( Fuzzy Logic Inference ) e o FRACLAB ( Fractal, Multifractal and Wavelet  Analisys ). Algumas funções do Scilab estão alocadas em toolboxes bem – definidas, dadas as suas especificidades. Temos como exemplo:

  • Funções de Álgebra Linear: bibliotecas LINPACK, EISPACK, LAPACK e BLAS;
  • Funções para solução de Equações Diferenciais:  bibliotecas ODEPACK e SLATEC;
  • Funções de Otimização: biblioteca MINPACK

Aplicativos para computação simbólica


Um sistema de computação algébrica e simbólica  CAS (Computer Algebra System) é um software com a capacidade de manipular em forma simbólica expressões matemáticas e realizar cálculos numéricos. O principal objetivo de um CAS consiste em realizar em forma automática a manipulação ou remanejamento algébrico de equações o qual pode ser uma tarefa difícil e tediosa quando feita manualmente. A diferença entre um CAS e uma calculadora pode ser entendida destacando a major qualidade do CAS: o tratamento simbólico de expressões matemáticas. A especificidade e a capacidade destes sistemas varia significativamente quando são utilizados  diferentes softwares, embora o principal propósito seja o mesmo: a manipulação simbólica. Estes softwares disponibilizam, em geral, outras ferramentas computacionais como geração de gráficos, programação, etc. Entre dos softwares mais populares merecem ser mencionados: Maxima, Maple, Mathematica, Matlab e MathCAD. Os CAS podem ser utilizados para simplificar funções racionais, fatorar polinômios, achar soluções de equações, integrar e diferenciar em forma simbólica.
Podemos destacar a grande capacidade de realizar cálculos extensos e tediosos com o seguinte exemplo: mostrar que a função

f = sin(n*z*sqrt(x^2+y^2+z^2)/sqrt(y^2+z^2))/sqrt(x^2+y^2+z^2)

é solução da seguinte equação diferencial

diff(f,`$`(x,4))+diff(f,`$`(x,2),`$`(y,2))+diff(f,`$`(x,2),`$`(z,2))+n^2*(diff(f,`$`(x,2))+diff(f,`$`(y,2))) = 0


demanda um tempo de digitalização e execução em um PC, em termos relativos, praticamente insignificante.

Uma visão geral dos aplicativos que resolvem equações e realizam cálculos por meio de manipulação simbólica, com uma introdução ao aplicativo livre Maxima.

Maxima: é um sistema de manipulação numérica e simbólica (implementado em LISP) . Ele é descendente do antigo Macsyma (criado no MIT), possuindo uma comunidade de usuários e desenvolvedores bem ativa e boa documentação em português. Permite uma integração com outras ferramentas como o Gnuplot para exibição de gráficos e é um excelente complemento para o Scilab.