Coleta de mais estatísticas

Após a coleta do número de quadros por segundo, passou-se à coleta de estatísticas referentes à difusão: número de colisões por segundo e coeficiente de difusão. Para tanto, foi feita uma pequena refatoração no modo como o número de quadros por segundo era calculado e exibido na tela, de modo a flexibilizar a inserção de novas estatísticas na tela e facilitar a seleção de quais estatísticas mostrar.

Para implementar a coleta do número de colisões numa atualização da simulação, utilizou-se o padrão de projeto Observer, onde a classe responsável pelo cálculo desta estatística observa o simulador, o qual envia um sinal para todas as classes registradas como observadoras de colisão toda vez que uma colisão ocorre.

Já o coeficiente de difusão exigiu poucas mudanças na arquitetura: depois de refatorar a coleta de estatístitcas, bastou criar uma classe para seu cálculo e criar um atributo na classe Molecule que armazena a posição inicial da molécula. O coeficiente de difusão calculado por esta classe é o escalar $D$ obtido pela equação de Einstein ([*]).

Luiz Fernando Oliveira Corte Real 2008-11-28