Apos Python
Apos Python
2 Numpy 14
2.1 Funções Matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1 Funções Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2 Números Complexos . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1 Criando Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Álgebra Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.1 Utilizando arrays como matrizes . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Produto Escalar e Vetorial . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Polinômios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.5 Estatı́stica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3 Matplotlib 23
3.1 Pylab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.1 Configurações Padrões . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.2 Alterando Cores e Largura das Linhas . . . . . . . . . . . . . . . . . 24
3.1.3 Configurando os Limites dos Eixos da imagem . . . . . . . . . . . . . 25
3.1.4 Configurando Referências dos Eixos . . . . . . . . . . . . . . . . . . . 26
3.1.5 Movendo os Eixos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.6 Adicionando a Legenda . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.7 Outros Tipos de Gráficos . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 Sympy 34
4.1 O que Computação Simbólica . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2 Operações Básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.1 Substituições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.2 lambdify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1
SUMÁRIO 2
4.3 Simplificações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3.1 simplify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3.2 Funções de Simplificação Polinomial . . . . . . . . . . . . . . . . . . . 37
4.3.3 Simplificaçõs Trigonométricas . . . . . . . . . . . . . . . . . . . . . . 38
4.4 Cálculo Diferencial e Integral . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4.1 Derivadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4.2 Integrais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.5 Limites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Capı́tulo 1
O Python é incrivelmente amplo, existe inúmeros programas desenvolvido nele, que va-
riam desde programas de escritório à edição de imagens e vı́deo. Nosso foco serão os módulos
matemáticos e cientı́ficos, veremos que seus recursos equivalem a softwares pagos, devido ao
empenho de diversos cientistas do mundo inteiro.
No terminal linux o comando ’python’, iniciará o programa, verão o seguinte:
Ao iniciar o python, o terminal nos mostra a versão, que no caso é a 2.7.5, versão que
trabalharemos aqui. Hoje a versão mais atual é a 3.x, porém a 2.7.x é a versão que mais
módulos cientı́ficos possui.
O prompt do python é o simbolo >>>, quando este aparece, significa que o python está
esperando o comando do usuário.
>>> 7+8
15
>>> (1+7 j ) +(3 -8 j )
(4 -1 j )
>>> 2**2
4
>>> 2 -5
-3
>>> 3**(0.5)
1.732050 80 75 68 87 72
Para usar funções e constantes matemáticas podemos usar o módulo math, para isso o
importamos da seguinte maneira:
3
CAPÍTULO 1. PRIMEIROS CONTATOS COM O PYTHON 4
Usando a função dir podemos podemos ver o diretório de objetos disponı́veis para o
módulo.
O sinal ” = ” é utilizado para atribuir valores a uma variável. E ” ” é usado para utilizar
o último resultado calculado.
>>> a = 8
>>> b = 5
>>> a / b
1
>>> type ( a )
< type ’ int ’ >
>>> type ( b )
< type ’ int ’ >
>>> a = 8.
>>> b = 5.
>>> a / b
1.6
CAPÍTULO 1. PRIMEIROS CONTATOS COM O PYTHON 5
>>> type ( a )
< type ’ float ’ >
>>> type ( b )
< type ’ float ’ >
A situação acima mostrada pode causar confusão a princı́pio, porém atribuindo as variáveis
corretamente como mostrado acima ( a=8. , b=5.), obterá o resultado desejado. Neste caso
o ponto ”. ” fará com que o python interprete como tipo de ponto flutuante, sem o ponto
interpretará como inteiro.
Se precisar converter uma variável para inteiro basta usar a função int( ).
Pode também ser conveniente converter um inteiro em ponto flutuante usando a função
float( ).
A função round( ) é utilizado para arredondar o valor já que int( ) pega apenas o inteiro
do valor.
Atribuindo dados entre aspas ’ ’, estará avisando ao python que o dado a atribuir é uma
string.
Observe o exemplo abaixo:
>>> a = 3.5
>>> x = int ( a )
>>> type ( x )
< type ’ int ’ >
>>> x
3
>>> x = int ( round ( a ) )
>>> x
4
>>> b = ’8 ’
>>> type ( b )
< type ’ str ’ >
>>> y = float ( b )
>>> y
8.0
1.2 Sequências
Strings, listas e tuplas, são sequências. Eles podem ser indexados e divididos.
Tuplas e strings são imutáveis. Isso significa que não podemos mudar individualmente
elementos de uma tupla e nem caracteres de uma string. Já listas são mutáveis.
A tabela abaixo apresenta alguns comandos de sequências:
1.2.1 Strings
Strings são ( imutáveis) sequências de caracteres. Uma string pode ser definida usando
aspas simples, dupla ou tripla.
Utiliza-se ’ ’, para atribuir a variável uma string vazia.
O número de caracteres de uma string é obtida pelo comando len( ).
Como qualquer tipo de sequência em python é válido os comandos na tabela 1.1. Observe:
>>> x = ’ teste ’
>>> type ( x )
< type ’ str ’ >
>>> y = ’ este e um ’
>>> z = y + x
>>> z
’ este e um teste ’
>>> k = ’ ’
>>> k
’’
>>> len ( k )
0
>>> len ( z )
15
>>> z [2]
’t ’
>>> z [10:14]
’ test ’
>>> max ( z )
’u ’
>>> min ( z )
’ ’
Strings possui inúmeras funções úteis. Pode-se encontrar usando o comando dir( ) e help.
Não será discutido muitas funções em strings, pois não é o objetivo deste trabalho este
foco. Porém algumas funções são úteis, como: upper( ), split( ), join( ). Observe:
CAPÍTULO 1. PRIMEIROS CONTATOS COM O PYTHON 7
1.2.2 Listas
Listas são sequências mutáveis de objetos. Atribuı́mos uma lista a uma variável entre
colchetes, separando cada objeto por vı́rgula. Os objetos dentro de uma lista, podem ser de
qualquer tipo. Pode-se gerar uma lista vazia apenas por [].
Abaixo alguns exemplos:
>>> a = [0 ,1 ,2 ,3 ,4 ,5 ,6]
>>> b = [7 ,8 ,9]
>>> a+b
[0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9]
>>> c = a [5:] + b
>>> c
[5 , 6 , 7 , 8 , 9]
>>> max ( b )
9
CAPÍTULO 1. PRIMEIROS CONTATOS COM O PYTHON 8
>>> min ( b )
7
>>> 6 in b
False
>>> 6 in a
True
>>> a = [1 ,2 ,3 ,4 ,5]
>>> a [0] = ’u ’
>>> a
[ ’u ’ , 2 , 3 , 4 , 5]
>>> a [4] = ’ python ’
>>> a
[ ’u ’ , 2 , 3 , 4 , ’ python ’]
Pode-se adicionar objetos ao fim de uma lista com o comando append( ), e remover o
primeiro objeto indicado com remove( ):
Um comando muito utilizado para gerar listas de inteiros é o range( ). Veremos adiante
que é muito útil para laços de repetição.
Quando digitamos apenas range( n), na qual n é um número inteiro qualquer, ele gera
uma lista de inteiros começando do 0 até n − 1 com incremento 1.
Com o range, também podemos gerar listas começando com m, terminado em n − 1, com
incremento i, com a sintaxe: range( n,m,i).
Se não indicarmos o incremento, o comando range assumirá 1.
Exemplos:
1.2.3 Tupla
Tuplas são sequências muito parecidas com listas, porém são imutáveis.
Atribuı́mos uma tupla a uma variável, colocando os objetos separados por vı́rgula, po-
dendo estar contidos entre parêntesis.
Assim como as listas, podem ser incluı́dos na tupla objetos de quaisquer tipos de variáveis.
Gera-se uma tupla vazia apenas com parêntesis.
Exemplos:
1.3 Funções
O significado de função na matemática e na programação possui significados diferen-
tes. Na programação significa uma nomeada sequência de operações que executa uma com-
putação.
Um exemplo é a função sqrt( ) do módulo math, a qual computa a raiz quadrada do
argumento inserido entre parêntesis.
>>> def f (x , y ) :
... return x **2 - 4* y **2 - 9
...
>>> f (15 , -2)
200
>>> f ( -20 , 10)
-9
>>> f ( -8 , 5)
-45
Exemplo 2: Defina funções para imprimir uma string centralizado entre asterisco.
>>> def r et or na r_ as te ri sc o ( n ) :
... return n * " * "
...
>>> def imp_string_ast ( string ) :
... comp_linha = 46
... ast_str = re to rn ar _a ste ri sc o (( comp_linha - len ( string ) ) /2)
... print ast_str + string + ast_str
...
>>> imp_string_ast ( ’ Hello World ’)
********* ****** ** Hello World *** ****** ****** **
>>> c = a and b
>>> c
False
>>> True or False
True
>>> not False
True
>>> not True
False
>>> x = 30
>>> x > 15
True
>>> x > 42
False
>>> x == 30
True
>>> x == 42
False
>>> not x == 42
True
>>> x != 42
True
>>> x >= 30
True
>>> a = 17
>>> if a == 0:
... print " a é zero "
... elif a < 0:
... print " a é negativo "
... else :
... print " a é positivo "
...
a é positivo
O a declaração if pode também ter uma parte else, a qual é executado quando a condição
anterior não é satisfeita.
>>> a = 34
>>> if a > 0:
... print " a é positivo "
... else :
CAPÍTULO 1. PRIMEIROS CONTATOS COM O PYTHON 12
Finalmente, tem o elif a qual permite a análise de vários condicionais no mesmo bloco.
>>> a = 17
>>> if a == 0:
... print " a é zero "
... elif a < 0:
... print " a é negativo "
... else :
... print " a é positivo "
...
a é positivo
Junto com o comando range( ), pode-se iterar sobre listas de incrementos inteiros.
Exemplo 2)
Faça um programa para calcular o fatorial de um número inteiro positivo. Calcule o
fatorial do número 15.
Numpy
Exemplos:
>>> x = 2.* pi /3
>>> sin ( x )
0.86602 5 4 03 7 8 44 3 8 71
>>> cos ( x )
-0.49999999999999978
>>> sin ( x ) **2 + cos ( x ) **2
0.999999 9 9 99 9 9 99 9 8 9
>>> log (4)
1.386294 36 11 19 89 06
>>> log ( exp (1) )
1.0
>>> log10 (10)
1.0
>>> log2 (2)
1.0
14
CAPÍTULO 2. NUMPY 15
Exercı́cios
1. Calcule as seguintes funções para os valores (−11, 43, 8976, 0.00036).
a) sin(x) ex/2
cos(x)
b) ln(x) sin2 (x) + log2 (x)
c) ex log10 (x)
2. Faça uma função em python para resolver a Equação de Colebrook descrita abaixo,
sabendo que 0 < f ≤ 1, e que a função deverá ter como argumento mı́nimo as variáveis
D
, Re e f ( def Colebrook(ed, Re, f ))
1 /D 2, 51
√ = −2 log + √
f 3, 7 Re f
Teste sua solução. Para D
= 0.000375 e Re = 1, 37 104 , temos f = 0, 0291
>>> b = -5 -2 j
>>> a + b
( -2+4 j )
>>> a / b
( -0.9310344827586208 -0.8275862068965517 j )
>>> a * b
( -3 -36 j )
>>> c = [a , b ]
>>> c
[(3+6 j ) , ( -5 -2 j ) ]
>>> angle ( c )
array ([ 1.10714872 , -2.76108628])
>>> degrees ( angle ( c ) )
array ([ 63.43494882 , -158.19859051])
>>> real ( a ) + real ( b )
-2.0
>>> imag ( a ) + imag ( b )
CAPÍTULO 2. NUMPY 16
4.0
>>> conj ( a )
(3 -6 j )
Exercı́cios
1. Resolva as seguintes operações:
a) (2 - 5i) + (-3 + 3i)
(5 − 2i)
b) − (2 − 4i).(5 − 2i)
(5 − 6i)
(3 − 6i)2 + (5 + 4i)3
c)
(2 + 5i)2
2. Faça uma função que retorne um número complexo na forma polar. Esta função deverá
retornar um array de dois elementos ao qual o primeiro deverá ser o módulo e o segundo
seu ângulo em graus.
2.2 Arrays
Array é um tipo de conjunto de dados que comporta-se de forma semelhante a listas,
exceto pelo fato de que os elementos devem ser do mesmo tipo.
Exemplos:
Porém existem funções do numpy no qual retornam arrays. As principais estão descritas
na tabela abaixo:
empty( (l,c) ) Cria uma matriz vazia com as dimensões (l,c)
zeros( (l,c) ) Cria uma matriz de zeros com as dimensões (l,c)
ones( (l,c) ) Cria uma matriz de elementos de valor 1 com as dimensões (l,c)
eye( n ) Retorna uma matriz identidade de ordem n
identity( n ) Retorna uma matriz identidade de ordem n
Exemplos:
... a [i , j ]=3
... else :
... a [i , j ]=1
...
>>> a
array ([[ 3. , 1. , 1. , 1.] ,
[ 1. , 3. , 1. , 1.] ,
[ 1. , 1. , 3. , 1.] ,
[ 1. , 1. , 1. , 3.]])
Exercı́cios
1. Crie um array (10,10), com a seguinte condição:
a[i, j] = 5, i > j
a[i, j] = 10, i < j
a[1, j] = 0, i = j
Com o comando matrix(a) onde a é uma sequência como lista e tuplas, atribui-se ao objeto
o tipo matrix ao qual pode-se fazer operações matriciais com os operadores convencionais.
Exercı́cios:
1. Resolva o sistema de equações abaixo, sabendo que R X = Y =⇒ X = R−1 Y , onde
R é a matriz dos coeficientes das equações e Y é a matriz formada pelos números após
a igualdade.
−5x − 2y + 12z − w = −9
x + 3y − 2z + 4w = 10
−x − y − z = −7
3x − 3y + 7z + 9q = −6
Exemplos
>>> cross (v , u )
array ([ -55 , 72 , 23])
Exercı́cios
1. Resolva os produtos abaixo:
a) v × w
b) w · v
c) (v × w) · u
2.4 Polinômios
O módulo polinomial do numpy provê a capacidade de trabalhar com polinômios. Algu-
mas funções deste módulo são mostradas na tabela abaixo:
poly1d( c ou r ) Classe polinomial
polyval( p,x ) Calcula a função polinomial ao valor x
poly( seq de zeros ) Encontra os coeficientes do polinômio com dada sequência de raı́zes
roots( p ) Retorna as raı́zes do polinômio dado os coeficientes p
polyder( p,n ) Retorna a n-derivada do polinômio p
polyint( p,n ) Retorna a n-integral do polinômio p
polyadd( a1,a2 ) Retorna a soma de dois polinômios
polydiv( a1,a2 ) Retorna a divisão de dois polinômios
polymul( a1,a2 ) Retorna a multiplicação de dois polinômios
polysub( a1,a2 ) Retorna a subtração de dois polinômios
polyfit( x,y,n ) fita os dados em x e y com polinômio de grau n
Exemplos
-1.07434076+0. j ])
>>> y . r
array ([ 2 . 0 3 7 1 7 0 3 8 + 2 . 0 5 6 0 0 7 5 8 j , 2.03717038 -2.05600758 j ,
-1.07434076+0. j ])
>>> w = poly ([3 , -2 ,1 ,6])
>>> print w
[ 1 -8 7 36 -36]
>>> w = poly1d ( w )
>>> print w
4 3 2
1 x - 8 x + 7 x + 36 x - 36
>>> polydiv (w , y )
( poly1d ([ 1. , -5.]) , poly1d ([ -12. , 47. , 9.]) )
>>> polymul (w , y )
poly1d ([ 1 , -11 , 35 , -8 , -188 , 315 , 180 , -324])
>>> polyder ( y )
poly1d ([ 3 , -6 , 4])
>>> polyint ( y )
poly1d ([ 0.25 , -1. , 2. , 9. , 0. ])
2.5 Estatı́stica
O numpy fornece as seguintes funções para estatı́stica.
Porém, acaso necessitar de algo mais sofisticado, o python possui bibliotecas especializa-
das em estatı́stica como RPy e Pandas.
Exemplos
Exercı́cios
1. Sabendo que o comando (a−b)∗random sample((l,c)) + b gera um array com dimensões
(l,c), de dados aleatórios num intervalo de a até b. Obtenha um array com 500 dados
aleatórios distribuı́dos de 0 à 10000 e calcule a média aritmética, a variância e seu
desvio padrão.
Capı́tulo 3
Matplotlib
3.1 Pylab
O Pylab é um módulo do Matplotilib que permite a construção de gráficos de ótima
qualidade com possibilidade de edição, sendo possı́vel adicionar legendas, textos, figuras,
anotações, etc...
0.5
Neste passo vamos deixar explicito todas as configurações padrões que estão implı́citas
no exemplo acima.
from pylab import *
figure ( figsize =(8 ,6) , dpi =80)
subplot (1 ,1 ,1)
X = linspace ( - pi , pi ,256)
C , S = cos ( X ) , sin ( X )
plot (X , C , color = " blue " , linewidth =1.0 , linestyle = " -" )
plot (X , S , color = " green " , linewidth =1.0 , linestyle = " -" )
xlim ( -4.0 ,4.0)
xticks ( np . linspace ( -4 ,4 ,9 , endpoint = True ) )
23
CAPÍTULO 3. MATPLOTLIB 24
1.0
0.5
0.0
0.5
1.0
4 3 2 1 0 1 2 3 4
1.0
0.5
0.0
0.5
1.0
4 3 2 1 0 1 2 3 4
1.0
0.5
0.0
0.5
1.0
3 2 1 0 1 2 3
1/2
-1/2
-1
−π −π/2 0 π/2 π
1/2
−π −π/2
0 π/2 π
0
-1/2
-1
cosseno 1
seno
1/2
−π −π/2
0 π/2 π
0
-1/2
-1
Exercı́cios
1. Faça um gráfico simples com o Pylab das funções abaixo:
a) e−x sin(x) x2
b) ln(sin(x))
c) cos(x2 ) xx
2. Faça uma função com argumentos de dados x e dedos y (def p(dadosx, dadosy) para
uma configuração personalizada de um gráfico a qual achou interessante.
Gráficos de dispersão
Gráficos de barras
Gráficos de contorno
Gráficos vetoriais
Gráficos polares
Gráficos 3D
Sympy
>>> # Numpy
>>>
>>> poly1d ([1 , -4 , -9])
2
1 x - 4 x - 9
>>> y = poly1d ([1 , -4 ,9])
>>> y . r
[ 5.60555128 -1.60555128]
>>>
>>> # sympy
>>>
>>> import sympy as sy
>>> sy . var ( ’x ’)
>>> Y = x **2 -4* x -9
>>> sy . solve (Y , x )
>>> [2 + sqrt (13) , - sqrt (13) + 2]
O sympy nos oferece a possibilidade de trabalhar com integrais, derivadas, limites, resol-
ver equações, trabalhar com matrizes com elementos simbólicos, isto e muito mais.
34
CAPÍTULO 4. SYMPY 35
4.2.1 Substituições
Uma das coisas mais comuns que você pode querer fazer é a substituição. Como o próprio
nome diz, é a ação de substituir algo em uma expressão com outro valor ou outra expressão.
Faremos isso com o método subs.
Exemplos
a)
b)
>>> expr = x ** y
>>> expr
x ** y
>>> expr = expr . subs (y , x ** y )
>>> expr
x **( x ** y )
>>> expr = expr . subs (y , x ** x )
>>> expr
x **( x **( x ** x ) )
c)
evalf
Para avaliar uma expressão numérica como ponto flutuante (float), use evalf.
SymPy pode calcular uma expressão numérica com precisão arbitrária. Por padrão 15
digitos de precisão são usados, mas você pode usar qualquer número de precisão como argu-
mento ao evalf. Como exemplo vamos calcular os 100 primeiros digitos do π.
Para calcular numéricamente uma expressão simbólica substituindo às variáveis numeros
de ponto flutuantes, basta usar o evalf seguido do subs. Observem:
4.2.2 lambdify
subs e evalf são bons quando se quer um simples cálculo. Mas se você pretende calcular
uma função com muitos valores (utilizando um array) existem meios mais eficientes. Por
exemplo, se você deseja calcular uma função com uma sequência de milhares de elementos,
com SymPy provavelmente deverá ser muito lento, sendo uma ótima alternativa a utilização
das bibliotecas NumPy ou SciPy para resolvê-la.
O meio mais fácil de converter uma expressão SymPy em uma que pode ser numerica-
mente calculada é fazendo o uso da função lambdify. lambdify atua como um conversor a qual
troca-se a expressão SymPy para uma biblioteca numérica, usualmente NumPy ou SciPy.
A uilização da função lambdify é descrita no exemplo abaixo:
-0.95892427
-0.2794155 0.6569866 0.98935825 0.41211849]
4.3 Simplificações
Agora vamos começar a fazer uso de uma das habilidades mais interessantes da com-
putação simbólica, que é a simplificação de expressões matemáticas. O SymPy possui dezenas
de funções para executar vários tipos de simplificações. Aqui vamos conhecer as principais.
Para acesso a todas as funções de simplificações consulte [Link]
Para continuar nesta seção vamos deixar algumas variáveis disponı́veis para a utilização nos
exemplos.
4.3.1 simplify
simplify é uma função geral que possui a habilidade de utilizar todas as funções de
simplificação inteligentemente para obter expressões simplificadas. Observem:
Mas tomem cuidado pois a função apenas tona as expressões simples e não a menor
possı́vel, para isso deve-se utilizar a função correta para cada caso. Por exemplo a função
x2 + 2x + 1 aplicada a simplify não retorna (x + 1)2 , mas factor sim. Vejam:
>>> y = x **2 + 2* x + 1
>>> simplify ( y )
x **2 + 2* x + 1
>>> factor ( y )
( x + 1) **2
factor
A função factor fatora a expressão polinomial.
colect
Esta função provê deixar em evidência algum fator na expressão.
apart
A função apart decompõe a expressão em frações parciais.
>>> expr = (4* x **3 + 21* x **2 + 10* x + 12) /( x **4 + 5* x **3 + 5* x **2
+ 4* x )
>>> expr
(4* x **3 + 21* x **2 + 10* x + 12) /( x **4 + 5* x **3 + 5* x **2 + 4* x )
>>> apart ( expr )
(2* x - 1) /( x **2 + x + 1) - 1/( x + 4) + 3/ x
expand trig
Para expandir funções trigonométricas com entidades de soma ou ângulos múltiplos.
diff pode efetuar derivadas múltiplas. Para efetuar derivadas múltiplas basta adicionar
n-vezes a variável como argumento, ou adicionar após o argumento da variável a quantidade
de vezes a qual deverá derivar.
Esta função também efetua derivadas de várias variáveis, bastando adicionar as variáveis
como argumento da função, lembrando que a ordem de derivação será seguida da esquerda
para a direita.
4.4.2 Integrais
Para calcular integrais usamos a função integrate. Podemos com a função, calcular uma
integral indefinida colocando como argumento apenas as variáveis, e também pode-se calcular
uma integral definida colocando como argumento uma sequência com a variável, o limite
inferior e o limite superior. Observe:
Também pode-se calcular integrais multiplas apenas adicionando as informações das ou-
tras variáveis como argumento. Vejam:
4.5 Limites
SymPy pode calcular o limite de expressões simbólicas como
lim f (x)
x→x0
Para calcular o limites laterais basta adicionar ”+”ou ”−”como um terceiro argumento
ao limite.
vwnifqwoief
1 PYTHON SCIENTIFIC LECTURE NOTES. In: EUROSCIPY 2012., 2012/3. Disponı́vel
em: <[Link] Acesso em: 21 dez de 2012.
2 FANGOHR, H. Python for Computational Science and Engineering. 1. ed. Nova York:
Cambridge, 2006.
41