Tópico 25 · Tempo de Rayleigh 2/2

Da propriedade individual à matriz equivalente

No script, declaram-se propriedades por tipo de átomo: raio (via particletemplate/sphere), densidade (que gera a massa), dureza (E) e Poisson individuais. Quando a esfera de vidro (Tipo 1) bate na parede de aço (Tipo 2), o modelo (pair_style gran/hertz/history) exige a propriedade equivalente do par.

Propriedades equivalentes do par
Raio: 1/R* = 1/R1 + 1/R2 (contra a parede, R* = Rpartícula)
Massa: 1/m* = 1/m1 + 1/m2
Young: 1/E* = (1−ν1²)/E1 + (1−ν2²)/E2 (dominado pelo material mais macio)
Cisalhamento: módulo equivalente usado no torque e no atrito tangencial
Quando as equivalências são calculadas: o papel do run

Com 1.000.000 de partículas, o software detecta cerca de 3.000.000 de contatos por passo. Aplicar a fórmula de E* a cada contato e a cada passo (100.000 vezes por segundo) desperdiçaria processamento, já que a dureza do material não muda no tempo.

1
Leitura
O software lê E=2.5e7 e anota na memória. Ainda não existe E*.
2
Gatilho
O comando run 100000 ao fim do script.
3
Inicialização (setup)
Antes do primeiro passo, a classe PropertyRegistry percebe que há dois materiais e executa as fórmulas de equivalência uma única vez, montando uma tabela de consulta (matriz 2×2 em cache): vidro×vidro e vidro×aço com os valores prontos de E*.
4
Loop de integração
Quando a partícula Tipo 1 bate no Tipo 2, o algoritmo não recalcula E*; consulta a tabela [1][2] e usa o valor pronto na força de Hertz (Fn = 4/3·E*·√R*·δ3/2).
📐
Conceito — ordem dos cálculos: por isso o script exige que todas as definições (material, densidade, Young, Poisson) venham antes do pair_style hertz e muito antes do run. O run congela o cenário, resolve a criação das matrizes equivalentes no instante 0 e usa esses valores ao longo das iterações seguintes.
Prof. Cláudio Roberto Duarte — UFU · DEM & LIGGGHTS Fonte: dem_detalhamento.php — Tópico 25