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.
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.
run 100000 ao fim do script.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*.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.