Simulação da Queda de Corpos Pedro Barahona DI/FCT/UNL Março 2004 17 Março de 2005 Simulação da Queda de Corpos 1 Bases Físicas do Problema • Sem contar com a resistência do ar, um corpo em queda livre é sujeito à aceleração (constante) da gravidade com o valor de 9.8 ms-2. • A resistência do ar pode ser modelada através de uma força, logo de uma aceleração, proporcional à velocidade e de sentido contrário, que depende do objecto em queda. • Denotando por a a aceleração instantânea (no instante t), e tendo em conta os sentidos no referencial, temos a=g-k·v 17 Março de 2005 Simulação da Queda de Corpos a g v x 2 Bases Físicas do Problema • Adicionalmente sabemos que – a velocidade é a variação da distância com o tempo – a aceleraçao é a variação da velocidade com o tempo • Desta forma temos que v = dx/dt e que a = dv/dt • Juntando esta equação com as anteriores obtemos o sistema de equações a=g-k·v v = dx/dt a = dv/dt • Problema: Determinar os valores de x, v e a ao longo do tempo. 17 Março de 2005 Simulação da Queda de Corpos 3 Resolução Informal • Problema: Obter o valor de um conjunto de funções (a, v, x) ao longo do tempo. • Informalmente podemos simular a variação de uma função f ao logo do tempo da seguinte forma: – Sabendo o valor de f no instante t, vamos determinar o valor de f num “instante” Δt posterior, ou seja no instante t + Δt – Ora, se o tempo avança para um valor posterior de uma quantidade Δt, o valor de f vai igualmente variar nesse instante posterior de um valor df, ou seja para f + Δf. • Como se relacionam os valores de Δf e de Δt? 17 Março de 2005 Simulação da Queda de Corpos 4 Resolução Informal • Graficamente podemos ilustrar a relação de Δf e de Δt como se segue f Δf Δt t • Em geral, é uma boa aproximação considerar que a razão Δf /Δt se aproxima da tangente da curva f(t), isto é Δf /Δt ≈ df/dt e por conseguinte podemos fazer Δf = df/dt * Δt 17 Março de 2005 Simulação da Queda de Corpos 5 Modelação Formal de Equações Diferenciais • Sabendo o valor da função f no ponto t, f(t), podemos obter o seu valor num instante “seguinte”, t+dt, pelo valor da derivada em relacão ao tempo, df/dt, num ponto θ compreendido entre t e t + dt. Com efeito, temos (série de Taylor) f(t+dt) = f(t) + df(θ)/dt · dt e em determinadas condições (continuidades da função, ...) é assegurado existir o ponto θ. f f(t+dt) f(t) t 17 Março de 2005 θ t+dt Simulação da Queda de Corpos t 6 Modelação Formal de Equações Diferenciais • Mais formalmente podemos usar o desenvolvimento em série de Taylor de até ao tremo de 2ª ordem e obtemos f(t+δ) = f(t) + df(t)/dt · dt + ½ d2f(θ)/dt2 · dt2 em que t θ t+dt. • Para pequenos valores de dt, temos que dt2 << dt e portanto o último termo pode ser desprezado sem grande erro, obtendo-se f(t+dt) f(t) + df(t)/dt · dt e que pode ser descrito mais informalmente por f(t+dt) f + df = f + df/dt · dt 17 Março de 2005 Simulação da Queda de Corpos 7 Velocidade e Aceleração • Como vimos, a = dv/dt, ou seja a aceleração é a derivada da velocidade. Mais precisamente, num instante t temos a(t) = dv(t)/dt • Assim podemos determinar v(t+δ), o valor aproximado da velocidade no instante t+δ, conhecendo o seu valor no instante t, v(t), por aplicação do método geral f(t+ δ) f(t) + df(t)/dt · δ ao caso em que a função f é a velocidade, isto é v(t+δ) v(t) + a(t) · δ 17 Março de 2005 Simulação da Queda de Corpos 8 Posição e Velocidade • Como vimos, v = dv/dt, ou seja a velocidade é a derivada da posição. Mais precisamente, num instante t temos v(t) = dx(t)/dt • Assim podemos determinar x(t+δ), o valor aproximado da posição no instante t+δ, conhecendo o seu valor no instante t, x(t), por aplicação do método geral f(t+ δ) f(t) + df(t)/dt · δ ao caso em que a função f é a posição, isto é x(t+ δ) x(t) + v(t) · δ 17 Março de 2005 Simulação da Queda de Corpos 9 Aceleração, Velocidade e Posição Em resumo, dados os valores da velocidade e posição no instante t, o seu valor aproximado no instante t+δ, é x(t+ δ) x(t) + v(t) · δ v(t+ δ) v(t) + a(t) · δ sendo a aceleração do corpo em queda livre dada por a(t) = g - k · v(t) Uma vez esboçada a forma de calcular os sucessivos valores da altura, velocidade e aceleração, podemos especificar o problema. 17 Março de 2005 Simulação da Queda de Corpos 10 Especificação do Problema Dada uma altura inicial, determinar com base no coeficiente de resistência do ar e para uma dada precisão do intervalo de tempo, o tempo que dura a queda, bem como as velocidades e aceleração no solo. Entrada Resistência do Ar Altura Inicial Intervalo de Tempo 17 Março de 2005 Algoritmo de Queda de Corpos Simulação da Queda de Corpos Resultados Tempo da Queda Velocidade Final Aceleração Final 11 Variáveis Utilizadas Èm geral, na especificação de um algoritmo definem-se as variáveis e constantes que vão ser utilizadas, bem como o seu significado. Neste problema, apenas existe uma constante • g = 9.8 a aceleração da gravidade (na Terra) As variáveis a utilizar são, naturalmente, as seguintes • t: o tempo • δ: o valor do intervalo de tempo usado na simulação • x : a altura do corpo em cada instante t • v : a velocidade do corpo no instante t • a: a aceleração do corpo no instante t • k: o coeficiente de resistência do ar (dependente da forma do corpo) 17 Março de 2005 Simulação da Queda de Corpos 12 Estrutura do Algoritmo O algoritmo para simulação da queda dos corpos pode ser decomposto em 3 “componentes” 1. Inicialização de Variáveis 2. Ciclo de Simulação da Queda 3. Apresentação de Resultados Cada uma destas separadamente 17 Março de 2005 componentes pode Simulação da Queda de Corpos ser considerada 13 Inicialização de Variáveis • Em qualquer algoritmo é necessário garantir que as variáveis são inicializadas e as constantes definidas antes de poderem ser referidas em expressões. • Assumindo que a queda começa na origem do tempo, a partir de repouso, as condições iniciais são expressas por g = 9.8; v = 0; t = 0; a = g; x = 0 • Quer a altura inicial, quer o valor do coeficiente da resistência do ar, quer o intervalo de tempo utilizados, devem ser especificados pelo utilizador através de instruções de entrada. 17 Março de 2005 Simulação da Queda de Corpos 14 Inicialização de Variáveis 1. Inicialização de Variáveis Entra h; Entra k; Entra δ; g ← 9.8; v ← 0; t ← 0; a ← g; x ← 0; 17 Março de 2005 % % % % Altura inicial Coeficiente de Atrito Intervalo de Tempo Aceleração da Gravidade Simulação da Queda de Corpos 15 Ciclo de Simulação A parte fundamental do algoritmos é um ciclo em que se vão calculando os sucessivos valores de tempo t, da altura x, da velocidade v e da aceleração a, em tempos espaçados de um intervalo δ enquanto ... fazer t t + δ ; x x + v· δ ; v v + a· δ ; a g - k·v ; fim enquanto 17 Março de 2005 % x(t+ δ) x(t) + v(t) · δ % v(t+ δ) v(t) + a(t) · δ % a(t) = g - k · v(t) Simulação da Queda de Corpos 16 Condições de Entrada no Ciclo • Em qualquer ciclo é necessário especificar em que condições é que o ciclo é executado. • Neste caso, estamos interessados em estudar a queda até se atingir o solo (x = h). A condição de controle do ciclo é pois x < h, donde enquanto x < h fazer t t + δ ; x x + v· δ ; v v + a· δ ; a g - k·v ; fim enquanto 17 Março de 2005 Simulação da Queda de Corpos 17 Ciclo de Simulação 2. Ciclo de Simulação enquanto x < h fazer t t + δ ; x x + v·δ ; v v + a·δ ; a g - k·v ; fim enquanto 17 Março de 2005 Simulação da Queda de Corpos 18 Apresentação de Resultados 3. Apresentação de Resultados O tempo de duração da queda, a velocidade final com que se atinge o solo, e a aceleração nesse ponto, são simplesmente o valor das variáveis t, v e a no final do ciclo. A apresentação de resultados resume-se pois a Sai t; Sai v; Sai a; 17 Março de 2005 % Tempo de duração da Queda % Velocidade de chegada ao solo % Aceleração na chegada ao solo Simulação da Queda de Corpos 19 Algoritmo Completo % Inicialização de Variáveis Entra h; % Altura inicial Entra k; % Coeficiente de Atrito Entra δ; % Intervalo de Tempo g 9.8; % Aceleração da Gravidade v 0; t 0; a g; x 0; % Ciclo de Simulação enquanto x < h fazer t t + δ ; x x + v· δ ; v v + a· δ ; a g - k·v ; fim enquanto % Apresentação de Resultados Sai t; % Tempo de duração da Queda Sai v; % Velocidade de chegada ao solo Sai a; % Aceleração de chegada ao solo 17 Março de 2005 Simulação da Queda de Corpos 20 Progama Octave g = h = k = dt= t = x = v = a = 9.8 ; % aceleração da gravidade input(" Qual a altura inicial (em metros) ? ") input(" e o coeficiente de atrito (1/s) ? "); input(" e o intervalo de tempo (em segs) ? "); 0; h; 0; g; while x < h t = t + x = x + v = v + a = g endwhile; dt; v * dt; a * dt; k * v; disp(" O tempo de queda (em segundos) foi de "), disp(t) disp(" e a velocidade final (em m/s) foi de "), disp(v) disp(" e a aceleração final (em m/s2) foi de "), disp(a) 17 Março de 2005 Simulação da Queda de Corpos 21 Progama Octave • O programa pode ser testado com vários valores dos parâmetros de entrada (h, k e dt). • A altura inicial h tipica é da ordem dos 1000 metros. • Realçar a importância de dt tomar valores pequenos, de forma a garantir que erros cometidos pela aproximação das equações diferenciais não sejam muito significativos (dt 0.1 seg). • Tipicamente k toma valores no intervalo • 0 – sem resistência do ar • 1 – resistência muito alta 17 Março de 2005 Simulação da Queda de Corpos 22