![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Ética e Legislação Profissional |
||
|
||
|
|
||
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como converter Coordenadas Cartesianas para Coordenadas Polares usando PythonQuantidade de visualizações: 6461 vezes |
|
Nesta nossa série de Python para Geometria Analítica e Álgebra Linear, mostrarei um código 100% funcional para fazer a conversão entre coordenadas cartesianas e coordenadas polares. Esta operação é muito frequente em computação gráfica e é parte integrante das disciplinas dos cursos de Engenharia (com maior ênfase na Engenharia Civil). Na matemática, principalmente em Geometria e Trigonometria, o sistema de Coordenadas no Plano Cartesiano, ou Espaço Cartesiano, é um sistema que define cada ponto em um plano associando-o, unicamente, a um conjuntos de pontos numéricos. Dessa forma, no plano cartesiano, um ponto é representado pelas coordenadas (x, y), com o x indicando o eixo horizontal (eixo das abscissas) e o y indicando o eixo vertical (eixo das ordenadas). Quando saímos do plano (espaço 2D ou R2) para o espaço (espaço 3D ou R3), temos a inclusão do eixo z (que indica profundidade). Já o sistema de Coordenadas Polares é um sistema de coordenadas em duas dimensões no qual cada ponto no plano é determinado por sua distância a partir de um ponto de referência conhecido como raio (r) e um ângulo a partir de uma direção de referência. Este ângulo é normalmente chamado de theta (__$\theta__$). Assim, um ponto em Coordenadas Polares é conhecido por sua posição (r, __$\theta__$). Antes de prosseguirmos, veja uma imagem demonstrando os dois sistemas de coordenadas: ![]() A fórmula para conversão de Coordenadas Cartesianas para Coordenadas Polares é: __$r = \sqrt{x^2+y2}__$ __$\theta = \\arctan\left(\frac{y}{x}\right)__$ E aqui está o código Python completo que recebe as coordenadas cartesianas (x, y) e retorna as coordenadas polares (r, __$\theta__$):
# importamos a bibliteca NumPy
import numpy as np
import math as math
def main():
# vamos ler as coordenadas cartesianas
x = float(input("Valor de x: "))
y = float(input("Valor de y: "))
# vamos calcular o raio
raio = math.sqrt(math.pow(x, 2) + math.pow(y, 2))
# agora calculamos o theta (ângulo) em radianos
theta = np.arctan2(y, x)
# queremos o ângulo em graus também
angulo_graus = 180 * (theta / math.pi)
# e exibimos o resultado
print("As Coordenadas Polares são:")
print("raio = %0.4f, theta = %0.4f, ângulo em graus = %0.2f"
% (raio, theta, angulo_graus))
if __name__== "__main__":
main()
Ao executar este código nós teremos o seguinte resultado: Valor de x: -1 Valor de y: 1 As Coordenadas Polares são: raio = 1.4142, theta = 2.3562, ângulo em graus = 135.00 Veja que as coordenadas polares equivalentes são (__$\sqrt{2}__$, __$\frac{3\pi}{4}__$), com o theta em radianos. Sim, os professores das disciplinas de Geometria Analítica e Álgebra Linear, Física e outras gostam de escrever os resultados usando raízes e frações em vez de valores reais. |
Python ::: wxPython ::: Controles Visuais Básicos do wxPython |
Como usar a função GetDefaultSize() para obter o tamanho padrão dos botões wx.Button em uma determinada plataforma e um determinado tamanho de fonteQuantidade de visualizações: 6891 vezes |
|
Quando estamos escrevendo interfaces wxPython para múltiplas plataformas, é interessante usar o método GetDefaultSize() para obter as dimensões padrão dos botões. Isso permite que o próprio sistema determine o tamanho dos botões baseado no tamanho da fonte usada. Este método retorna um objeto da classe wx.Size e as dimensões podem ser obtidas com o auxílio das propriedades width (largura) e height (altura). Veja um exemplo wxPython completo:
# vamos importar a biblioteca wxPython
import wx
class Janela(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1,
"Usando wx.Button", size=(350, 200))
# Cria um painel
panel = wx.Panel(self)
# Cria um botão e o adiciona no painel
self.btn = wx.Button(panel, label="Clique Aqui",
pos=(10, 10), size=(100, 25))
# Anexa um evento ao botão
self.Bind(wx.EVT_BUTTON, self.OnBtnClick, self.btn)
# Método que será chamado ao clicar o botão
def OnBtnClick(self, event):
# obtém o tamanho padrão dos botões
# nesta plataforma
dimensoes = self.btn.GetDefaultSize()
dlg = wx.MessageDialog(None, u"A largura padrão é: "
+ str(dimensoes.width) + u" pixels e a altura " +
u"padrão é: " + str(dimensoes.height) + " pixels",
"Usando wx.Button", wx.OK | wx.ICON_INFORMATION)
result = dlg.ShowModal()
dlg.Destroy()
if __name__ == "__main__":
app = wx.App()
janela = Janela()
janela.Show(True)
app.MainLoop()
|
GNU Octave ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o comprimento da hipotenusa em GNU Octave dadas as medidas do cateto oposto e do cateto adjascenteQuantidade de visualizações: 1314 vezes |
Nesta dica mostrarei como é possível usar a linguagem GNU Octave para retornar o comprimento da hipotenusa dadas as medidas do cateto oposto e do cateto adjascente. Vamos começar analisando a imagem a seguir:![]() Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos a fazer a converter esta fórmula para código GNU Octave (um script do GNU Octave). Veja:
a <- 20 # medida do cateto oposto
b <- 30 # medida do cateto adjascente
# agora vamos calcular o comprimento da hipotenusa
c <- sqrt(power(a, 2) + power(b, 2))
# e mostramos o resultado
fprintf("O comprimento da hipotenusa é: %f\n\n", c)
Ao executar este código GNU Octave nós teremos o seguinte resultado: O comprimento da hipotenusa é: 36.056000 Como podemos ver, o resultado retornado com o código GNU Octave confere com os valores da imagem apresentada. |
C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como pesquisar um valor em um vetor C# e retornar seu índice usando a função IndexOf() da classe ArrayQuantidade de visualizações: 14543 vezes |
|
Nesta dica mostrarei como pesquisar um valor em um array C# e retornar o índice de sua primeira ocorrência usando o método IndexOf() da classe Array. Este método recebe uma referência ao array que queremos pesquisar e o valor a ser pesquisado. Neste exemplo queremos pesquisar um valor inteiro. Veja o código C# completo:
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
// cria e inicializa um array de inteiros
int[] valores = { 14, 69, 21, 30, 17, 23, 14 };
Console.Write("Informe o valor a ser pesquisado: ");
string valor = Console.ReadLine();
int pos = Array.IndexOf(valores, Convert.ToInt32(valor));
if (pos > -1) {
Console.WriteLine("O valor pesquisado foi encontrado no índice: " + pos);
}
else {
Console.WriteLine("O valor pesquisado não foi encontrado.");
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: Informe o valor a ser pesquisado: 17 O valor pesquisado foi encontrado no índice: 4 |
Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como ordenar um array em Ruby usando as funções sort e sort!Quantidade de visualizações: 12686 vezes |
|
Em várias situações nós precisamos ordenar arrays na linguagem Ruby. Para isso nós podemos usar a função sort, que ordenará os elementos do array em ordem crescente. Veja o código Ruby a seguir: =begin Este trecho de código mostra como ordenar um array de inteiros usando o método sort da classe Array. =end # define um array de inteiros valores = [10, 3, 56, 100, 34, 0, 4] # exibe os valores na ordem original puts "Ordem original:" for valor in valores print valor.to_s + " " end # array ordenado puts "\n\nOrdenado do menor para o maior:" valores = valores.sort # ordena o array for valor in valores print valor.to_s + " " end Ao executar este código Ruby nós teremos o seguinte resultado: Ordem original: 10 3 56 100 34 0 4 Ordenado do menor para o maior: 0 3 4 10 34 56 100 Se quisermos que a ordenação seja feita no array original, sem criar uma cópia, podemos usar a função sort!. Veja: =begin Este trecho de código mostra como ordenar um array de inteiros usando o método sort da classe Array. =end # define um array de inteiros valores = [10, 3, 56, 100, 34, 0, 4] # exibe os valores na ordem original puts "Ordem original:" for valor in valores print valor.to_s + " " end # array ordenado puts "\n\nOrdenado do menor para o maior:" valores.sort! # ordena o array for valor in valores print valor.to_s + " " end |
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






