1 / 17

Conclusão

Conclusão. DI/FCT/UNL 1º Semestre 2004/2005. Ciclos de Simulação. A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas (ou três dimensões). Em geral, para cada ciclo é necessário Utilizar uma coluna (ou linha) para as variáveis que estão a ser simuladas

meg
Download Presentation

Conclusão

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Conclusão DI/FCT/UNL 1º Semestre 2004/2005

  2. Ciclos de Simulação • A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas (ou três dimensões). • Em geral, para cada ciclo é necessário • Utilizar uma coluna (ou linha) para as variáveis que estão a ser simuladas • Inicializar a “linha de cima” • Na linha seguinte obter os valores das variáveis a partir dos valores anteriores (i.e. da linha anterior). • Tendo em atenção as referências relativas e/ou absolutas, copiar a 2ª linha para as linhas seguintes. • Copiar tantas linhas quantas as necessárias

  3. Exemplo: Trajectória 2 dimensões

  4. Exemplo: Trajectória 2 dimensões

  5. Ciclos de Simulação • Uma vez obtidas as tabelas de simulação, podem obter-se gráficos, seleccionando as colunas apropriadas e inserindo um gráfico (insert graph) com base nessa tabela.

  6. Ajuste de Parâmetros • Em geral, se forem dados os parâmetros de um modelo físico pode ser simulado o seu comportamento. Mas se se pretender determinar os parâmetros que conduzem a um certo comportamento a situação não é em geral simples. • Em muitos casos, a melhor solução é tentar as várias alternativas (em um ou mais ciclos encadeados) e verificar qual a adequada. Por exemplo o maior alcance pode ser tentado variando a ângulo. • Nestas situações uma folha de cálculo não é muito adequada para resolver o problema pois exige que o utilizador tente (manualmente) os vários parâmetros. • No caso do alcance podem existir 31 ângulos para testar (entre 30º e 60º). No caso do tiro poderá haverá 30 (ângulos) * 21 (velocidades de 10 a 20) * 11 (coeficientes de atrito de 0 a 1) = 7161 possibilidades!!!

  7. Tratamento de Dados • O tratamento de dados numéricos, nomeadamente por regressão linear entre duas variáveis X e Y, pode igualmente ser feito através da folha de cálculo. • Para esse efeito deverão ser utilizadas duas colunas (uma para a variável) onde se guardam os valores X e Y observados • Para se obter os parâmetros da recta que melhor aproxima os pontos observados devem calcular-se esses valores de acordo com as fórmulas indicadas (ou utilizando as funções slope, intercept e correl). • Pode depois construir-se uma nova coluna, com os valores dos Y esperados, baseados nos valores dos X e dos parâmetros da recta. • Finalmente pode obter-se o gráfico dos valores dos Xs e Ys observados e dos Ys esperados.

  8. Tratamento de Dados Nota: O Excel permite obter uma ideia qualitativa da recta através da utilização da tendência no desenho do gráfico (opção add trendline).

  9. Tratamento da Informação • A informação não numérica ou mista, como a que se pode organizar em tabelas, pode igualmente ser tratada por folhas de cálculo. • Por exemplo, para cada elemento da tabela podem fazer-se cálculos a partir dos dados individuais (eventualmente através de fórmulas condicionais) ou obterem-se medidas de agregação (totais, médias, etc.). • Podem ainda encontrar-se os valores máximos e mínimos de vectores e tabelas. • Para todas estas operações podem ser utilizadas funções predefinidas das folhas de cálculo, algumas das quais condicionais.

  10. Tratamento da Informação • A tabela abaixo calcula a nota final dos alunos, obtida por 2 testes e exame. Um aluno tem frequência se a soma dos testes for maior ou igual a 9.5. A nota de frequência é a média dos testes. A nota final é obtida pela média ponderada da nota de frequência (peso 5) e do exame (peso 15). São ainda calculados os alunos com notas positivas e as médias da turma e dos alunos com nota positiva).

  11. Tratamento da Informação • As tabelas podem ser ordenadas por alguns dos campos (pelo nome dos alunos, pelo número dos alunos, pela nota, etc...). • A mesma tabela anterior, ordenada por ordem (crescente) do nome dos alunos é mostrada abaixo. • È igualmente determinada a nota máxima e nota mínima.

  12. Tratamento da Informação • Existem outras operações que envolvem operações de selecção e que não são tão fáceis de implementar com uma folha de cálculo. Por exemplo, escrever uma tabela apenas com os alunos passados. Numa folha de cálculo podem ordenar-se por notas, mas a selecção tem de ser feita “manualmente”.

  13. Tratamento da Informação • Operações deste tipo podem ser executadas através de programas apropriados, que leiam os ficheiros de entrada e produzam os ficheiros de saída. • Em situações mais complexas, a informação pode estar distribuída por várias tabelas e os programas podem tornar-se muito complexos. • É para estes casos que são criados os sistemas de bases de dados (relacionais), em que • Se estabelecem metodologias para organizar os dados em tabelas (normalização) • Se utilizam linguagens de acesso (ex. SQL) para tornar as questões (queries) mais simples.

  14. Algoritmos e Complexidade • Os modernos sistemas informáticos (folhas de cálculo, bases de dados) e linguagens de programação (funções e classes pré-definidas), disponibilizam facilidades em que procuram acomodar as necessidades mais comuns dos utilizadores. • Outras necessidades específicas, requerem o desenvolvimento de algoritmos (em programas, funções, etc.) especializados (special-purpose). • Ao desenvolver um algoritmo, e não obstante a rapidez dos modernos computadores, há que ter em atenção a sua complexidade, que mede os recursos (tempo e espaço) requeridos pelo algoritmo para terminar • Informalmente os algoritmos podem ser divididos em duas grandes classes: polinomiais ou exponenciais.

  15. Algoritmos Exponenciais • Um algoritmo que para n variáveis com d valores procure um valor adequado, pode no pior caso ter de ser implementado com ciclos encadeados: para X1 de 1 a d para X2 de 1 a d para X3 de 1 a d ... para Xn de 1 a d testar (X1, X2, X3, ..., Xn) fimpara; ... fimpara; • Como é fácil de calcular, o teste é executado d*d* *d = dn vezes, pelo que um algoritmo deste tipo é exponencial em n (número de variáveis).

  16. Algoritmos Polinomiais • Outros algoritmos são polinomiais. Tal é o caso da ordenação de um vector A com n valores, pelo método bubblesort: para k = n-1 até 1 (passo -1) para i de 1 a k se A(i+1) < A(i)então trocar (A(i+1),A(i)) fimse fimpara; fimpara; • O número de trocas máximo é de (n-1)+(n-2)+(n-3)+...+1 = n * ((n-1)+1)/2 = ½ n2 pelo que o algoritmo é polinomial (quadrático) em n – dimensão do vector.

  17. Comparação da Complexidade • A diferença qualitativa entre estes algoritmos é importante. Se assumirmos que cada operação básica leva 1μs, podemos escrever a seguinte tabela ... o que justifica que a maioria das funções predefinidas (tais como ordenações, máximo, etc.) sejam do tipo polinomial!

More Related