1 - INTRODUÇÃO-COMANDOS-BÁSICOS-MATEMÁTICA-BASICA

501 days ago by jmarcellopereira

INTRODUÇÃO AO SAGE

jmarcellopereira@ufpi.edu.br


  • Histórico
    • SAGE (Software for Algebra and Geometry Experimentation - Software para álgebra e geometria experimental ) é um ambiente de cálculos matemáticos que introduz dados matemáticos em forma de texto e exibidos em forma textual ou tradicional. Enquanto a maioria dos ambientes de computação matemática são entidades separadas, SAGE fornece alguns algoritmos para si mesmo e outros que fazem outros ambientes de computação matemática. Esta estratégia permite SAGE para fornecer cálculomatemáticos vários ambientes dentro de uma arquitetura capaz de evoluir para atender às necessidades futuras. SAGE está escrito na linguagem de programação Python poderoso e muito popular ea linguagem de programação orientada a matemática que SAGE disponibiliza aos usuários é uma extensão do Python. Isso significa que usuários experientes SAGE especialistas também deve ser programadores de Python. Algum conhecimento da linguagem de programação Python é tão crucial para usar com sucesso o SAGE que o nível de conhecimento de um Python usuário pode ser usado para ajudar a determinar o seu nível de habilidade ou SAGE.

     

  • Características da Linguagem de Programação
    • Uma interface gráfica para revisão e reutilização de entradas e saídas anteriores, incluindo gráficos e anotações de texto. Compatível com os navegadores Firefox, Opera, Konqueror e Safari. Os cadernos podem ser acessados ​​localmente ou remotamente, e a conexão pode ser assegurada com HTTPS.
    •  Um interpretador de comandos baseado em texto usando IPython.
    • Computação paralela, usando processadores multinúcleo, multiprocessamento simétrico e computação distribuída.
    • Cálculo, usando Maxima e SymPy.
    • Álgebra linear numérica, usando GNU Scientific Library, SciPy e NumPy.
    • Bibliotecas de funções elementares e especiais.
    • Gráficos 2D e 3D de funções simbólicas e dados numéricos.
    • Manipulação de matrizes, incluindo matrizes esparsas.
    • Bibliotecas de estatísticas multivariáveis, usando R e SciPy.
    • Uma caixa de ferramentas para acrescentar interfaces do utilizador a cálculos e aplicações.
    • Ferramentas para o processamento de imagens, usando pylab e Python.
    • Ferramentas para visualizar e analisar gráficos.
    • Bibliotecas para funções de teoria dos números.
    • Filtros para importação e exportação de dados, imagens, vídeo, áudio, CAD e GIS.
    • Suporte para números complexos, aritmética de precisão arbitrária e matemática simbólica, sempre que isto for apropriado.
    • MoinMoin como um sistema Wiki, para gestão do conhecimento.
    • Documentação, usando Sphinx.
    • Interface para alguns softwares proprietários, como o Mathematica, Magma (sistema algébrico computacional) e Maple.

     

  • Pacotes de matemática contidos no Sage 

    Álgebra GAPMaxima, Singular, Macaulay 2
    Geometria algébrica Singular, Macaulay 2
    Aritmética de precisão arbitrária MPIR, MPFR, MPFI, NTL, mpmath
    Geometria aritmética PARI/GP, NTL, mwrank, ecm
    Cálculo Maxima, SymPy, GiNaC
    Combinatória Symmetrica, Sage-Combinat
    Álgebra linear ATLAS, BLAS, LAPACK, NumPy, LinBox, IML, GSL
    Teoria de grafos NetworkX
    Teoria de grupos GAP
    Computação numérica GSL, SciPyNumPy, ATLAS, ScilabGNU_Octave
    Teoria dos números PARI/GP, FLINT, NTL, Kash/Kant
    Computação estatística RSciPy

    Outros pacotes contidos no Sage

    Shell da linha de comando IPython
    Banco de dados ZODB, Python pickles, SQLite
    Configuração do tipo de matemática LaTeX
    Interface gráfica Sage Notebook, jsmath
    Gráficos Matplotlib, Tachyon3d, GD, Jmol
    Linguagem de programação interativa Python
    Rede Twisted


  • Aplicação
    • SAGE
 
       

COMANDOS E MATEMÁTICA BÁSICA

Antes de iniciar, é interessante fazer algumas configurações de aparencia de resultado que podem fazer muita diferença. Vamos habilidar a saída de resultado em um padrão mais bonito, para isso, vamos em configuração -> configuração do notebook -> aparencia -> Saída de impressão elegante (typeset) (marque essa opção). O sage funciona como uma excelente calculadora,veja alguns exemplos:

version() 
       
2+5 
       
2^101 
       
(2+5)^2/(3+1)^3 
       
sin(pi/2)+1 
       
10e-2 
       
# número aleatório entre 0 e 1 random() 
       
# MDC gcd(7,14) 
       
# MMC lcm(7,14) 
       

O uso do ponto e vírgula (;) permite efetuar mais de uma expressão

cos(pi)+2;tan(pi/4)+2 
       

Para resultados numéricos, podemos usar a forma: n(expressão) ou expressão.n()

sin(5) ; n(sin(5)) ; sin(5).n() 
       


Para acresentar comentários, use o # #

#como calcular o sin(pi/2)+cos(pi/2) sin(pi/2)+ cos(pi/2) #senos e cossenos 
       

Precisão de números significativos: n(expressao, digits = n) ou expressao.n(digits = n), sendo n o número de dígitos.

sin(5); n(sin(5)); n(sin(5),digits=5) ; sin(5).n(digits = 5) 
       



Pedindo Ajuda

Para pedir ajuda , use "comando"?

# pedir ajuda do MMC lcm? 
       

File: /home/jmarcellopereira/SageMath/local/lib/python2.7/site-packages/sage/arith/misc.py

Type: <type ‘function’>

Definition: lcm(a, b=None)

Docstring:

The least common multiple of a and b, or if a is a list and b is omitted the least common multiple of all elements of a.

Note that LCM is an alias for lcm.

INPUT:

  • a,b - two elements of a ring with lcm or
  • a - a list or tuple of elements of a ring with lcm

OUTPUT:

First, the given elements are coerced into a common parent. Then, their least common multiple in that parent is returned.

EXAMPLES:

sage: lcm(97,100)
9700
sage: LCM(97,100)
9700
sage: LCM(0,2)
0
sage: LCM(-3,-5)
15
sage: LCM([1,2,3,4,5])
60
sage: v = LCM(range(1,10000))   # *very* fast!
sage: len(str(v))
4349

File: /home/jmarcellopereira/SageMath/local/lib/python2.7/site-packages/sage/arith/misc.py

Type: <type ‘function’>

Definition: lcm(a, b=None)

Docstring:

The least common multiple of a and b, or if a is a list and b is omitted the least common multiple of all elements of a.

Note that LCM is an alias for lcm.

INPUT:

  • a,b - two elements of a ring with lcm or
  • a - a list or tuple of elements of a ring with lcm

OUTPUT:

First, the given elements are coerced into a common parent. Then, their least common multiple in that parent is returned.

EXAMPLES:

sage: lcm(97,100)
9700
sage: LCM(97,100)
9700
sage: LCM(0,2)
0
sage: LCM(-3,-5)
15
sage: LCM([1,2,3,4,5])
60
sage: v = LCM(range(1,10000))   # *very* fast!
sage: len(str(v))
4349

Resumo dos principais comandos de matemática Básica

Resumo dos principais comandos básicos e matemática básica

Comando Função Exemplo
 +    
 -    
 *    
 ^    
/    
 //    
 %    
   mmc  
   mdc  
 abs    
 cos    
 tan    
 asin    
 acos    
 atan    
 print    
 show    
     
     
a  a  a

 

Comando Função Exemplo
 +    
 -    
 *    
 ^    
/    
 //    
 %    
   mmc  
   mdc  
 abs    
 cos    
 tan    
 asin    
 acos    
 atan    
 print    
 show    
     
     
a  a  a

 

Calcular o tempo de processamento

%time sqrt((2*pi + sqrt(log(2569854.5415263))/(sin(52)*cos(log(25948.1452))))^100)*exp(sin(0.8985424)) 
       

CPU time: 0.01 s,  Wall time: 0.01 s
CPU time: 0.01 s,  Wall time: 0.01 s

O COMANDO PRINT() E O COMANDO SHOW()

Print() apresenta um formato bruto, enquanto show() mostra um resultado melhor formatado

print("como calcular o seno de um número") 
       
como calcular o seno de um número
como calcular o seno de um número
# n efetua o resultado numérico print("como calcular o seno de um número") ; print("sin(pi/4)=") ; print(n(sin(pi/4))) 
       
como calcular o seno de um número
sin(pi/4)=
0.707106781186548
como calcular o seno de um número
sin(pi/4)=
0.707106781186548
# n efetua o resultado numérico print("como calcular o seno de um número","sin(pi/4) = ",n(sin(pi/4))) 
       
('como calcular o seno de um n\xc3\xbamero', 'sin(pi/4) = ',
0.707106781186548)
('como calcular o seno de um n\xc3\xbamero', 'sin(pi/4) = ', 0.707106781186548)
show("como calcular o seno de um número: ", " sin(pi/4)=",sin(pi/4)) 
       
show("como calcular o seno de um número: ", " sin(pi/4)=",n(sin(pi/4))) # n efetura o resultado numérico 
       
# Espaços de 6 digitos print '%6s %6s %6s'%('BOLA','MAX', 'HEHE') 
       
  BOLA    MAX   HEHE
  BOLA    MAX   HEHE
 
       

HISTORICO DE COMANDOS

Para utilizar o resultado de um calculo anterior, use o comando "_"

2+log(5)-3 
       
# Resultado numérico do calculo anterior n(_) 
       
# multiplicação do calculo anterior por 2 _*2 
       

%%% FIM COMANDOS BASICOS E MATEMATICA BÁSICA %%%