Alysson pesa 81 quilos (os dados são meramente ilustrativos...). Ele quer perder peso por meio de um progama de dieta e exercícios. Após consultar a tabela 1, ele monta o programa de exercícios na tabela 2. quantas calorias ele vai queimar por dia se seguir esse progama?
Peso | Andar a 3km/h | Correr a 9km/h | Andar de bicicleta a 9km/h | Jogar Tênis(Moderado) |
---|---|---|---|---|
69 | 213 | 651 | 304 | 420 |
73 | 225 | 688 | 321 | 441 |
77 | 237 | 726 | 338 | 468 |
81 | 249 | 764 | 356 | 492 |
# importando a biblioteca numpy do Python
import numpy as np
# importando a biblioteca de funções do Python matplotlib
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline
# definindo a matriz A a partir da tabela 1
A = np.array([[213, 651, 304, 420],
[225, 688, 321, 441],
[237, 726, 338, 468],
[249, 764, 356, 492]])
# imprimindo a matriz A
print("A matriz A é\n\n", A)
A matriz A é [[213 651 304 420] [225 688 321 441] [237 726 338 468] [249 764 356 492]]
Dias da Semana | Andar | Correr | Andar de Bicicleta | Jogar Tênis |
---|---|---|---|---|
Segunda-feira | 1.0 | 0.0 | 1.0 | 0.0 |
Terça-feira | 0.0 | 0.0 | 0.0 | 2.0 |
Quarta-feira | 0.4 | 0.5 | 0.0 | 0.0 |
Quinta-feira | 0.0 | 0.0 | 0.5 | 2.0 |
Sexta-feira | 0.4 | 0.5 | 0.0 | 0.0 |
# definindo a matriz B a partir da tabela 2
B = np.array([[1.0, 0.0, 1.0, 0.0],
[0.0, 0.0, 0.0, 2.0],
[0.4, 0.5, 0.0, 0.0],
[0.0, 0.0, 0.5, 2.0],
[0.4, 0.5, 0.0, 0.0]])
# imprimindo a matriz B
print("A matriz B é\n\n", B)
A matriz B é [[1. 0. 1. 0. ] [0. 0. 0. 2. ] [0.4 0.5 0. 0. ] [0. 0. 0.5 2. ] [0.4 0.5 0. 0. ]]
A informação pertinente para Alysson está localizada na quarta linha da matriz A, pois são os dados referentes a quem pesa 81 quilos.
Vamos criar uma nova matriz x do tipo vetor-coluna baseado nos dados contidos na 4º linha da matriz A.
# x recebe a quarta linha de A
x = A[3]
# x é transposta para se tornar um vetor-coluna
x = np.transpose(x)
Para resolver o problema, basta multiplicar a matriz $B_{5_{x}4}$ pela matriz $x_{4_{x}1}$.
# realizando a multiplicação da matriz B com a matriz x
Calorias = np.dot(B,x)
# imprimindo a matriz de calorias gastas por semana
print("A matriz com valores de calorias gastas é:\n\n", Calorias)
A matriz com valores de calorias gastas é: [ 605. 984. 481.6 1162. 481.6]
# esquematizando as etiquetas do gráfico no eixo x
DiasdaSemana = ['Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira']
Dessa forma, vemos que Alysson, seguindo sua rotina de atividades físicas, queimara as respectivas calorias durante a semana:
Dias da Semana | Calorias Gastas |
---|---|
Segunda-feira | 605.0 calorias |
Terça-feira | 984.0 calorias |
Quarta-feira | 481.6 calorias |
Quinta-feira | 1162.0 calorias |
Sexta-feira | 481.6 calorias |
Assim, podemos ter o seguinte gráfico:
# definindo as dimensões do gráfico
plt.figure(figsize=(8,5))
# definindo a legenda do eixo x
plt.xlabel('Dias da Semana')
# definindo as legendas do eixo y
plt.ylabel('Calorias Gastas')
# plotando o gráfico e definindo uma legenda
plt.plot(DiasdaSemana, Calorias, label = 'Calorias Gastas/Dia')
# chamando a legenda para ser exposta no gráfico
plt.legend()
# definindo um input diferente de 0 para entrada verdadeira na grade do gráfico
plt.grid(True)
# definindo o título do gráfico
plt.title('Gráfico de Calorias Gastas por Alysson')
Text(0.5, 1.0, 'Gráfico de Calorias Gastas por Alysson')
A visualização não ficou muito adequada com esse gráfico. Talvez um gráfico de barras fosse mais adequado para essa situação.
# definindo as dimensões do gráfico
plt.figure(figsize=(8,5))
# definindo a legenda do eixo x
plt.xlabel('Dias da Semana')
# definindo as legendas do eixo y
plt.ylabel('Calorias Gastas')
# plotando o gráfico e definindo uma legenda
plt.barh(DiasdaSemana, Calorias, label = 'Calorias Gastas/Dia')
# chamando a legenda para ser exposta no gráfico
plt.legend()
# definindo um input diferente de 0 para entrada verdadeira na grade do gráfico
plt.grid(True)
# definindo o título do gráfico
plt.title('Gráfico de Calorias Gastas por Alysson')
Text(0.5, 1.0, 'Gráfico de Calorias Gastas por Alysson')
Uma empresa fabrica três produtos. Suas despesas de produção estão divididas em três categorias. Em cada uma dessas categorias, faz-se uma estimativa do custo de produção de um único exemplar de cada produto. Faz-se, também, uma estimativa da quantidade de cada produto a ser fabricado por trimestre. Essas estimativas são dadas na tabela 3 e na tabela 4. A empresa gostaria de apresentar a seus acionistas uma única tabela mostrando o custo total por trimestre de cada uma das três categorias: matéria- prima, pessoal e despesas gerais.
Gastos | Produto A | Produto B | Produto C |
---|---|---|---|
Matéria-prima | 0.10 | 0.30 | 0.15 |
Pessoal | 0.30 | 0.40 | 0.25 |
Despesas-gerais | 0.10 | 0.20 | 0.15 |
# definindo a matriz C baseada na tabela 3
C = np.array([[0.10, 0.30, 0.15],
[0.30, 0.40, 0.25],
[0.10, 0.20, 0.15]])
# imprimindo a matriz C
print("A matriz C é:\n\n", C)
A matriz C é: [[0.1 0.3 0.15] [0.3 0.4 0.25] [0.1 0.2 0.15]]
Produto | Verão | Outono | Inverno | Primavera |
---|---|---|---|---|
A | 4000 | 4500 | 4500 | 4000 |
B | 2000 | 2600 | 2400 | 2200 |
C | 5800 | 6200 | 6000 | 6000 |
# definindo a matriz D baseado na tabela 4
D = np.array([[4000, 4500, 4500, 4000],
[2000, 2600, 2400, 2200],
[5800, 6200, 6000, 6000]])
print("A matriz D é:\n\n", D)
A matriz D é: [[4000 4500 4500 4000] [2000 2600 2400 2200] [5800 6200 6000 6000]]
Se fizermos o produto CD, teremos o custo de cada categoria por trimestre.
# realizando a multiplicação da matriz C com a matriz D
Custos = np.dot(C, D)
# imprime a matriz de custos por trimeste em cada categoria, em reais
print("A matriz de Custos é:\n\n", Custos)
A matriz de Custos é: [[1870. 2160. 2070. 1960.] [3450. 3940. 3810. 3580.] [1670. 1900. 1830. 1740.]]
Custos de cada Categoria por Trimeste | Verão | Outono | Inverno | Primavera |
---|---|---|---|---|
Matéria-prima | 1870 | 2160 | 2070 | 1960 |
Pessoal | 3450 | 3940 | 3810 | 3580 |
Despesas Gerais | 1670 | 1900 | 1830 | 1740 |
# esquematizando as etiquetas do gráfico no eixo x
Trimestres = ['Verão', 'Outono', 'Inverno', 'Primaveira']
# definindo os valores gastos apenas na categoria Matéria-Prima
MateriaPrima = Custos[0]
# definindo os valores gastos apenas na categoria Pessoal
Pessoal = Custos[1]
# definindo os valores gastos apenas na categoria Despesas Gerais
DespesasGerais = Custos[2]
# definindo as dimensões do gráfico
plt.figure(figsize=(12,8))
# definindo a legenda do eixo x
plt.xlabel('Trimestres')
# definindo a legenda do eixo y
plt.ylabel('Dinheiro(R$)')
# plotando o gráfico para a categoria Matéria-Prima, com sua respectiva legenda
plt.plot(Trimestres, MateriaPrima, label = 'Matéria-Prima')
# plotando o gráfico para a categoria Pessoal, com sua respectiva legenda
plt.plot(Trimestres, Pessoal, label = 'Pessoal')
# plotando o gráfico para a categoria Despesas Gerais, com sua respectiva legenda
plt.plot(Trimestres, DespesasGerais, label = 'Despesas Gerais')
# chamando a legenda para ser exposta no gráfico
plt.legend()
# definindo um input diferente de 0 para entrada verdadeira na grade do gráfico
plt.grid(True)
# definindo o título do gráfico
plt.title('Gráfico de Custos por Categoria em cada Trimestre')
Text(0.5, 1.0, 'Gráfico de Custos por Categoria em cada Trimestre')
Desse modo, observe que a álgebra linear pode estar presente em diversas situações do nosso dia a dia, das mais simples até as situações mais complexas da engenharia. Por esse motivo, a disciplina deve ser levada a sério e merece ser estudada com um maior grau de profundidade por parte dos estudantes.