CB2325NumericaG1.interpolacao package¶
Submodules¶
CB2325NumericaG1.interpolacao.interpolacao_linear module¶
- CB2325NumericaG1.interpolacao.interpolacao_linear.lin_interp(x: list, y: list, plot: bool = False) Callable[código-fonte]¶
Interpolação linear por partes a partir dos pontos dados.
Essa função ordena pontos a partir da ordem crescente das coordenadas x. Em seguida, cria retas descritas pela nova função f, que ‘ligam’ os pontos descritos pelas coordenadas x e y. É permitida extrapolação. Por fim, caso ‘plot = True’, há uma plotagem do gráfico correspondente.
- Parâmetros:
x – lista das coordenadas x, em x[i], de cada ponto i.
y – lista das coordenadas y, em y[i], de cada ponto i.
plot – indica se deve haver a plotagem (True) ou não (False).
- Retorna:
função de interpolação linear por partes
- Tipo de retorno:
f
- Levanta:
ValueError – Caso ‘x’ e ‘y’ tenham tamanhos diferentes, caso as listas
estejam vazias, ou caso as coordenadas em 'x' não sejam distintas. –
TypeError – caso ‘x’ ou ‘y’ não sejam listas, ou caso ‘plot não seja bool’.
CB2325NumericaG1.interpolacao.interpolacao_polinomial module¶
- CB2325NumericaG1.interpolacao.interpolacao_polinomial.poly_interp(x_val: list, y_val: list, plot: bool = False, res: int = 100, pcolor: str = '#234883', ccolor: str = '#4287f5', titulo: str = 'Interpolação Polinomial de Lagrange') Callable[código-fonte]¶
Gera um polinômio interpolador usando o método de Lagrange.
Esta função recebe um conjunto de pontos (x, y) e retorna uma função (polinômio) que passa exatamente por todos esses pontos.
- Parâmetros:
x_val (list) – Uma lista de coordenadas x dos pontos. Os valores devem ser todos distintos entre si.
y_val (list) – Uma lista de coordenadas y dos pontos. Deve ter o mesmo tamanho de x_val.
plot (bool, optional) – Se True, exibe um gráfico do polinômio e dos pontos originais. O padrão é False.
res (int, optional) – Resolução (número de pontos) usada para desenhar a curva do polinômio no gráfico. O padrão é 100.
pcolor (str, optional) – Cor dos pontos originais no gráfico. O padrão é “#234883”.
ccolor (str, optional) – Cor da curva do polinômio no gráfico. O padrão é “#4287f5”.
titulo (str, optional) – Título do gráfico. O padrão é “Interpolação Polinomial de Lagrange”.
- Retorna:
Uma função P(x) que recebe um número (int ou float) e retorna o valor do polinômio interpolador avaliado naquele ponto x.
- Tipo de retorno:
Callable
- Levanta:
ValueError –
Se x_val e y_val tiverem tamanhos diferentes. - Se as listas de entrada estiverem vazias. - Se x_val contiver valores duplicados. - Se res não for um inteiro. - Se pcolor ou ccolor não forem strings. - Se titulo não for uma string.
Exemplos
>>> x = [0, 1, 2] >>> y = [1, 3, 2] >>> pol = poly_interp(x, y) >>> print(pol(1.5)) 2.625
CB2325NumericaG1.interpolacao.interpolacao_polinomial_hermite module¶
- CB2325NumericaG1.interpolacao.interpolacao_polinomial_hermite.hermite_interp(x_pontos: list, y_pontos: list, dy_pontos: list, f_real: Callable | None = None, titulo: str = 'Interpolação de Hermite', plot: bool = False) Callable[código-fonte]¶
Cria e plota uma função de interpolação polinomial de Hermite.
- Parâmetros:
x_pontos – Coordenadas x (n valores).
y_pontos – Coordenadas y (n valores).
dy_pontos – Derivadas dy/dx em cada x (n valores).
f_real – (Opcional) A função ‘verdadeira’ para plotar junto e calcular o gráfico de erro.
titulo – Título para o gráfico.
plot – indica se deve haver a plotagem (True) ou não (False).
- Retorna:
Função de interpolação de Hermite. Se f_real for fornecida, imprime o erro médio e máximo
Notas
Sobre a Extrapolação: Esta função sempre permite a extrapolação (avaliar valores de x fora do intervalo de dados [min(x_pontos), max(x_pontos)]). O usuário é responsável por verificar os resultados, pois polinômios podem crescer rapidamente e produzir valores imprevisíveis fora do intervalo de interpolação.
CB2325NumericaG1.interpolacao.interpolacao_polinomial_vandermond module¶
- CB2325NumericaG1.interpolacao.interpolacao_polinomial_vandermond.vandermond_interp(x: list, y: list, plot: bool = False, f_ideal: Callable | None = None) Callable[código-fonte]¶
Interpolação polinomial pelo método de Vandermonde
Essa função ordena pontos a partir da ordem crescente das coordenadas x. Em seguida, cria matriz de Vandermonde e retorna a solução algébrica para, assim, conseguir os coeficientes do polinômio interpolado. Caso haja uma função ideal, também é calculado o erro, que é representado no plot. Por fim, caso ‘plot = True’, há uma plotagem do gráfico correspondente. Por padrão, ‘plot = False’, ou seja, por padrão não há a plotagem.
- Parâmetros:
x – lista das coordenadas x, em x[i], de cada ponto i.
y – lista das coordenadas y, em y[i], de cada ponto i.
plot – indica se deve haver a plotagem (True) ou não (False).
f_ideal – função ideal, caso queira fazer comparação de erros.
- Retorna:
função de interpolação linear por partes.
- Tipo de retorno:
f
- Levanta:
ValueError – Caso ‘x’ e ‘y’ tenham tamanhos diferentes, caso as listas
estejam vazias, ou caso as coordenadas em 'x' não sejam distintas. –
TypeError – caso ‘x’ ou ‘y’ não sejam listas, caso ‘f_ideal’ não seja
callable, ou caso 'plot não seja bool'. –