Compre o e-book deste material aqui!
O uso de arrays é uma das formas mais adequadas para fazermos a modelagem computacional de vetores. Entretanto, devemos ficar atentos que vetores e arranjos não são equivalentes. Embora, a soma/subtração e multiplicação por escalar são similares, a multiplicação e potenciação envolvendo vetores não estão definidas, mas para arranjos são operações elemento-a-elemento.
No que segue, vamos assumir que a biblioteca NumPy está importada, i.e.
A soma dos vetores é uma operação elemento-a-elemento
(5.10a) | ||||
(5.10b) | ||||
(5.10c) |
e a dos arrays é equivalente
A subtração dos vetores também é uma operação elemento-a-elemento
(5.11a) | ||||
(5.11b) | ||||
(5.11c) |
e a dos arrays é equivalente
Ainda, a multiplicação por escalar
(5.12a) | ||||
(5.12b) | ||||
(5.12c) |
também é feita elemento-a-elemento, assim como com arrays
Agora, para vetores, a multiplicação , divisão , potenciação não são operações definidas. Diferentemente, para arranjos são operações elemento-a-elemento
Funções vetoriais e funcionais também podem ser adequadamente modeladas com o emprego de arrays do NumPy. A biblioteca também conta com várias funções matemáticas predefinidas, consulte
(Função Vetorial.) A implementação da função vetorial
(5.13) |
para , pode ser feita da seguinte forma
Verifique!
O produto interno (ou, produto escalar) é a operação entre vetores definida por
(5.14) |
A função numpy.dot computa o produto interno dos arrays.
Consideramos os vetores
(5.15) | |||
(5.16) |
O produto interno desses vetores é
(5.17a) | ||||
(5.17b) | ||||
(5.17c) |
Usando arrays, temos
A norma de um vetor é definida por
(5.18) |
O submódulo de álgebra linear numpy.linalg contém a função numpy.linalg.norm para a computação da norma de arrays.
O produto vetorial entre dois vetores é definido por
(5.20d) | ||||
(5.20g) | ||||
(5.20j) | ||||
(5.20m) |
A função numpy.cross computa o produto vetorial entre arrays (unidimensionais de 3 elementos).
Dica: use a função e verifique as computações calculando os resultados esperados.
Dica: use a função numpy.linalg.norm e verifique as computações calculando os resultados esperados.
Dados vetores e , temos que
(5.28) |
onde é o ângulo entre esses vetores. Implemente uma função que recebe dois vetores e retorna o ângulo entre eles. Teste seu código para diferentes vetores.
A projeção ortogonal do vetor na direção do vetor é definida por
(5.29) |
Implemente uma função que recebe dois vetores , e retorne a projeção de na direção de . Teste seu código para diferentes vetores.
Considere os vetores
(5.30) | |||
(5.31) |
Usando arrays do NumPy, compute os seguintes produtos vetoriais:
Dica: use a função numpy.cross e verifique as computações calculando os resultados esperados.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a Política de Uso de Dados para mais informações. Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!