Odeint Scipy

Odeint Scipy
Este artigo foi projetado em torno da função odeint da biblioteca ccepy. Neste guia, aprenderemos a resolver as equações diferenciais usando a função Odeint fornecida pela Scipy Library da Python. A linguagem de programação do Python tem muitas funções simples e úteis que tornam a vida dos programadores descomplicados e fáceis. Os desenvolvedores estão se tornando especialistas no campo da programação usando as funções internas e as bibliotecas gratuitas da linguagem de programação Python. Neste artigo, exploraremos a função Odeint da biblioteca cipy para ajudá -lo a aprender como implementar a função Odeint em um programa Python.

O que é odeint?

O odeint é a abreviação da integração de equações diferenciais ordinárias e é usada para resolver os diferentes tipos de equações diferenciais. É um pacote completo que contém uma coleção de algoritmos numéricos avançados que são usados ​​para resolver as equações diferenciais ordinárias e problemas de valor inicial. Refere -se à solução de equações diferenciais que envolvem derivados sem derivado parcial.

Neste tutorial, ligaremos para a biblioteca scipy para usar a função Odeint e faremos com que você aprenda e entenda como implementar a função Odeint em um programa Python. Vamos entender a sintaxe da função de odeint primeiro. Em seguida, avançaremos para a seção Exemplo e aprenderemos a implementar a função Odeint.

Sintaxe da função Odeint

A função odeint integra e resolve o sistema de equações diferenciais comuns usando o pacote de bibliotecas ODEPACK da Fortran, ISODA. A sintaxe da função Odeint é a seguinte:

A função Odeint leva três parâmetros necessários e uma lista de parâmetros opcionais. As funções Y e T são os parâmetros necessários que devem ser fornecidos para implementar a função de odeint para a função especificada. O *args representa a lista de parâmetros opcionais que podem ser fornecidos e usados ​​de acordo com o requisito do usuário.

No entanto, o parâmetro "função" é usado para chamar a função que calcula a derivada do parâmetro "Yo" no parâmetro "T". O parâmetro "yo" é o tipo de matriz que define a condição inicial da matriz "y". O parâmetro "T" é usado para definir a sequência de pontos de tempo na matriz que é usada para resolver a matriz "y".

A função odeint retorna a matriz que contém o valor de "y" de cada vez "t" com o valor inicial de "yo". Ele também retorna um dicionário que contém as informações de saída adicionais. Agora, vamos demonstrar alguns exemplos para mostrar como implementar a função odeint em um programa Python.

Exemplo 1:

Vamos começar com um exemplo simples e muito básico. Aqui, guiaremos você sobre como você pode usar a função Odeint em um programa Python e passar os parâmetros necessários. Considere o seguinte código de amostra para sua compreensão:

importar numpy como np
de Scipy.integrar o odeint de importação
def dydt (y, t):
dy = y + 2*t
Retornar Dy
y0 = 4
t = np.Linspace (0,4)
y = odeint (dydt, y0, t)
impressão (y)

Usamos as duas bibliotecas neste programa - Bibliotecas Numpy e Scipy. A biblioteca Numpy nos permite usar a função linspace (). Scipy nos permite usar a função odeint (). Uma vez chamando todas as bibliotecas, declaramos a função "dydt" que é usada para encontrar o derivado da função pela função odeint (). O valor inicial é definido como y0 = 4 e a hora é definida como linspace (0, 4). Passando todos esses valores e nomes de funções para a função odeint (), implementamos a função Odeint em um programa Python. A saída é a seguinte:

Exemplo 2:

Para demonstrar a saída da função odeint e explicar melhor como ela opera em um aplicativo Python, anteriormente imprimimos toda a matriz. Agora, vamos desenhar um gráfico dos mesmos dados para fornecer uma imagem clara de como é a saída da função de odeint. Considere o seguinte código de amostra que mostra a saída da função ODEINT em um gráfico:

importar numpy como np
importar matplotlib.pyplot como plt
de Scipy.integrar o odeint de importação
def dydt (y, t):
dy = y + 2*t
Retornar Dy
y0 = 4
t = np.Linspace (0,4)
y = odeint (dydt, y0, t)
plt.trama (t, y)
plt.xlabel ("tempo")
plt.ylabel ("y")
plt.mostrar()

O programa é exatamente o mesmo que é usado no exemplo anterior. Somente o código para plotar a saída no gráfico é adicionado aqui. A biblioteca Matplotlib é usada para mostrar a saída em um gráfico. A função da plotagem da biblioteca Matplotlib é usada para gerar o gráfico dos dados. O gráfico resultante da função odeint é o seguinte:

Exemplo 3:

Agora aprendemos como a função odeint é implementada em um programa Python e como ela é plotada em um gráfico. Vamos ver outro exemplo da função odeint e resolver outra equação diferencial. Considere o seguinte código de amostra. Aqui, usamos a seguinte equação diferencial:

Esta equação é resolvida pela função odeint no exemplo a seguir:

importar numpy como np
importar matplotlib.pyplot como plt
de Scipy.integrar o odeint de importação
def dydt (y, t):
DY = 2*NP.exp (t) - 13*y
Retornar Dy
y0 = 2
t = np.Linspace (0,4)
y = odeint (dydt, y0, t)
plt.trama (t, y)
plt.xlabel ("tempo")
plt.ylabel ("y")
plt.mostrar()

Novamente, três bibliotecas são chamadas no programa - Scipy, Numpy e Matplotlib - para importar as funções odeint (), linspace () e plot (), respectivamente, respectivamente. A função DYDT é declarada fornecendo a equação diferencial mencionada anteriormente. O valor inicial e o tempo associado para cada item são definidos. Todos os parâmetros definidos são passados ​​para a função odeint (). Usando o módulo PLT da biblioteca Matplotlib, o resultado da função odeint () é plotado no gráfico. Vamos ver a representação gráfica aqui:

Exemplo 4:

Vamos demonstrar um exemplo prático complexo para mostrar que o Odeint pode lidar com os diferentes tipos de dados facilmente. No exemplo anterior, declaramos apenas um valor inicial para a função. Aqui, usamos as múltiplas condições iniciais para a equação diferencial. É para ajudá -lo a aprender a lidar com uma equação diferencial quando tiver várias condições iniciais. Considere o seguinte código de amostra:

importar numpy como np
importar matplotlib.pyplot como plt
de Scipy.integrar o odeint de importação
def dydt (y, t):
dy = ((1.1 - y) / (1.45 - y)) - (S / (0.02 + y))
Retornar Dy
y0 = [1, 2, 4]
t = np.Linspace (1, 10)
y = odeint (dydt, y0, t)
plt.trama (t, y)
plt.xlabel ("tempo")
plt.ylabel ("y")
plt.mostrar()

Observe que as bibliotecas e outros processos de declaração de dados são os mesmos dos exemplos anteriores, apenas as condições iniciais são fornecidas como uma matriz. O gráfico de saída da função odeint com várias condições iniciais é a seguinte:

Conclusão

Este guia teve como objetivo explicar o que é o Odeint e como ele pode ser implementado em um programa Python. O odeint significa integração de equações diferenciais ordinárias. É usado principalmente para resolver as equações diferenciais. Os programas de amostra demonstraram como implementar a função de odeint e como plotar o resultado da função de odeint em um gráfico. Além disso, os exemplos também demonstraram como resolver a equação diferencial com várias condições iniciais.