Você está aqui: Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular vetor unitário em Python - Python para Física e EngenhariaQuantidade de visualizações: 622 vezes |
Um vetor unitário ou versor num espaço vetorial normado é um vetor (mais comumente um vetor espacial) cujo comprimento ou magnitude é 1. Em geral um vetor unitário é representado por um "circunflexo", assim: __$\hat{i}__$. O vetor normalizado __$\hat{u}__$ de um vetor não zero __$\vec{u}__$ é o vetor unitário codirecional com __$\vec{u}__$. O termo vetor normalizado é algumas vezes utilizado simplesmente como sinônimo para vetor unitário. Dessa forma, o vetor unitário de um vetor __$\vec{u}__$ possui a mesma direção e sentido, mas magnitude 1. Por magnitude entendemos o módulo, a norma ou comprimento do vetor. Então, vejamos a fórmula para a obtenção do vetor unitário: \[\hat{u} = \dfrac{\vec{v}}{\left|\vec{v}\right|}\] Note que nós temos que dividir as componentes do vetor pelo seu módulo de forma a obter o seu vetor unitário. Por essa razão o vetor nulo não possui vetor unitário, pois o seu módulo é zero, e, como sabemos, uma divisão por zero não é possível. Veja agora o código Python que pede as coordenadas x e y de um vetor 2D ou R2 e retorna o seu vetor unitário: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos precisar do módulo Math import math # função principal do programa def main(): # vamos ler os valores x e y x = float(input("Informe o valor de x: ")) y = float(input("Informe o valor de y: ")) # o primeiro passo é calcular a norma do vetor norma = math.sqrt(math.pow(x, 2) + math.pow(y, 2)) # agora obtemos as componentes x e y do vetor unitário u_x = x / norma u_y = y / norma # mostra o resultado print("O vetor unitário é: (x = {0}; y = {1})".format(u_x, u_y)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe o valor de x: -4 Informe o valor de y: 6 O vetor unitário é: (x = -0.5547001962252291; y = 0.8320502943378437) Veja agora uma modificação deste código para retornarmos o vetor unitário de um vetor 3D ou R3, ou seja, um vetor no espaço: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos precisar do módulo Math import math # função principal do programa def main(): # vamos ler os valores x, y e z x = float(input("Informe o valor de x: ")) y = float(input("Informe o valor de y: ")) z = float(input("Informe o valor de z: ")) # o primeiro passo é calcular a norma do vetor norma = math.sqrt(math.pow(x, 2) + math.pow(y, 2) + math.pow(z, 2)) # agora obtemos as componentes x, y e z do vetor unitário u_x = x / norma u_y = y / norma u_z = z / norma # mostra o resultado print("O vetor unitário é: (x = {0}; y = {1}; z = {2})".format( u_x, u_y, u_z)) if __name__== "__main__": main() Ao executarmos este novo código nós teremos o seguinte resultado: Informe o valor de x: 3 Informe o valor de y: 7 Informe o valor de z: 5 O vetor unitário é: (x = 0.329292779969071; y = 0.7683498199278324; z = 0.5488212999484517) |
Link para compartilhar na Internet ou com seus amigos: |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Engenharia Civil - Cálculo Estrutural |
Exercícios Resolvidos de Python - Como calcular as reações de apoio, momento de flexão máxima e forças cortantes em uma viga bi-apoiada com carga distribuída retangular usando PythonQuantidade de visualizações: 805 vezes |
Pergunta/Tarefa: Veja a seguinte figura: Nesta imagem temos uma viga bi apoiada com uma carga q distribuída de forma retangular a uma distância l. Para fins didáticos, vamos considerar que a carga q será em kN/m e a distância l será em metros. O apoio A é de segundo gênero e o apoio B é de primeiro gênero. Escreva um programa Python que solicita ao usuário que informe o valor da carga q e a distância l entre os apoios A e B. Em seguida mostre os valores das reações nos apoios A e B, o momento de flexão máxima da viga e o momento de flexão para uma determinada distância (que o usuário informará) a partir do apoio A. Mostre também as forças cortantes nos apoios A e B. Lembre-se de que, para uma carga distribuída de forma retangular, o diagrama de momento fletor é uma parábola, enquanto o diagrama de cortante é uma reta (com o valor zero para a força cortante no meio da viga). Sua saída deve ser parecida com: Valor da carga em kN/m: 10 Distância em metros: 13 A reação no apoio A é: 65.000000 kN A reação no apoio B é: 65.000000 kN O momento fletor máximo é: 211.250000 kN Informe uma distância a partir do apoio A: 4 O momento fletor na distância informada é: 180.000000 kN A força cortante no apoio A é: 65.000000 kN A força cortante no apoio B é: -65.000000 kN Veja a resolução comentada deste exercício usando Python: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # Algoritmo que calcula reação de apoio, momento fletor # e força cortante em uma viga bi-apoiada em Python # vamos importar o módulo Math import math # função principal do programa def main(): # vamos pedir para o usuário informar o valor da carga carga = float(input("Valor da carga em kN/m: ")) # vamos pedir para o usuário informar a distância entre os apoios distancia = float(input("Distancia em metros: ")) # vamos calcular a reação no apoio A reacao_a = (1.0 / 2.0) * carga * distancia # vamos calcular a reação no apoio B reacao_b = reacao_a # vamos calcular o momento fletor máximo flexao_maxima = (1.0 / 8.0) * carga * math.pow(distancia, 2.0) # e mostramos o resultado print("\nA reação no apoio A é: {0} kN".format(reacao_a)) print("A reação no apoio B é: {0} kN".format(reacao_b)) print("O momento fletor máximo é: {0} kN".format(flexao_maxima)) # vamos pedir para o usuário informar uma distância a # partir do apoio A distancia_temp = float(input("\nInforme uma distância a partir do apoio A: ")) # vamos mostrar o momento fletor na distância informada if distancia_temp > distancia: print("\nDistância inválida.") else: flexao_distancia = (1.0 / 2.0) * carga * distancia_temp * \ (distancia - distancia_temp) print("O momento fletor na distância informada é: {0} kN".format( flexao_distancia)) # vamos mostrar a força cortante no apoio A cortante_a = (1.0 / 2.0) * carga * distancia print("\nA força cortante no apoio A é: {0} kN".format(cortante_a)) # vamos mostrar a força cortante no apoio B cortante_b = cortante_a * -1 print("A força cortante no apoio B é: {0} kN".format(cortante_b)) if __name__== "__main__": main() |
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como pesquisar uma substring em uma string usando a função find() da linguagem PythonQuantidade de visualizações: 12251 vezes |
Nesta dica mostrarei como podemos usar o método find() do objeto string da linguagem Python para pesquisar uma substring em uma string. A assinatura dessa função é: find(substring[, start[, end]]) onde substring é a substring a ser pesquisada e start e end são argumentos opcionais que definem os índices de início e fim da pesquisa. Se a substring não for encontrada, o valor -1 é retornado. Se for encontrada, o índice do primeiro caractere é retornado. Veja um exemplo completo do seu uso: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): frase = "Gosto de Python e JavaScript" indice = frase.find("Python") if indice != -1: print("A palavra foi encontrada no índice", indice) else: print("A palavra não foi encontrada") if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: A palavra foi encontrada no índice 9. |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é primo em PythonQuantidade de visualizações: 3613 vezes |
O Número Primo é o número maior que 1 e que só pode ser dividido por 1 e por ele mesmo, ou seja, números primos não podem ser divididos por outros números, a não ser por ele mesmo e pelo número 1. Dessa forma, 2, 3, 5, 7, 11, 13, 17, etc, são todos números primos. É importante observar que 0 e 1 não são números primos, e que o número 2 é o único número primo par. Veja agora um código Python completo que pede para o usuário informar um número inteiro positivo e mostra uma mensagem indicando se o número informado é primo ou não: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): primo = True # vamos assumir que o número é primo # vamos solicitar um número inteiro positivo numero = int(input("Informe um número inteiro positivo: ")) # o número é negativo? if numero < 0: print("Número inválido.") # é 0 ou 1? elif (numero == 0) or (numero == 1): print("Número válido, mas não é primo.") # passou até aqui. Vamos testar se o número é primo else: for i in range(2, int((numero / 2))): # se passar no teste, não é primo if numero % i == 0: primo = False # recebe false break if primo: print("O número informado é primo") else: print("O número informado não é primo") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe um número inteiro positivo: 9 O número informado não é primo |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Ações em estruturas: apresentação dos principais carregamentos na análise de estruturas convencionais É exemplo de ação permanente direta: A) Peso próprio da estrutura. B) Vento. C) Terremoto. D) Deslocamentos de apoios. E) Mobiliário. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Princípios específicos do Direito do Consumidor No rol dos princípios que podem ser aplicados às relações de consumo reguladas pelo Código de Defesa do Consumidor se inclui: A) Força obrigatória dos contratos. B) Confiança. C) Autonomia da vontade. D) Efeito relativo do contrato. E) In dubio pro fornecedor. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Cisalhamento e detalhamento de vigas A NBR 6118 (ABNT, 2014) determina que todos os elementos lineares submetidos à força cortante devem conter armadura transversal mínima (ρSW) constituída por estribos. Nesse contexo, marque a alternativa correta: A) O diâmetro da barra que constitui o estribo não pode exceder 20% da menor largura da viga. B) O diâmetro da barra que constitui o estribo deve ser exatamente de 5mm ou menor. C) Nos estribos em que as barras são lisas, o diâmetro não pode ser superior a 10mm. D) O espaçamento máximo entre as barras transversais dos estribos não deve ser superior a 20cm. E) O espaçamento mínimo adequado dos estribos deve ser aquele que permita a introdução do vibrador. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
JavaScript é o mesmo que Java? A) Sim B) Não Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Formas: Confecção e colocação O artifício chamado de contraflecha, usual no processo de execução de formas para estruturas em concreto armado, é utilizado para impedir o quê? A) A tração. B) A compressão. C) A flexão. D) A torção. E) O cisalhamento. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Python - Como usar a biblioteca Pandas do Python em seus projetos de Data Science e Machine Learning |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |