O último passo que finaliza a construção do progama de DM é a inclusão da condição de contorno, que implica em construir um potencial infinito para que a partícula ou átomo ao ir de encontro à parede da caixa com um velocidade reflita retornando com velocidade .
Poderíamos incluir também outro tipo de condição de contorno simulando um sistema infinito. Esta condição consiste em replicar a caixa infinita vezes em todas as direções, assim um átomo ao chegar em um extremo da caixa consegue sair da caixa, mas na verdade ao exceder os limites da caixa a partícula/átomos entra novamente na caixa pela parede oposta na qual ela saiu.
Para resolver o problema da condição da parede da caixa ser um potencial infinito repulsivo (como um parede sólida), se uma das coordenadas exceder os limites da caixa trocamos o sinal da componente da velocidade. Esta solução permite que o átomo reflita ao ser chocar com a parede da caixa sofrendo uma colisão completamente elástica. Devemos prestar a atenção que esta solução não é 100% Física, mas resolve o nosso problema. Esta subrotina deve ser chamada sempre que calcular as componentes das velocidades para o tempo ( ).
!... do i = 1, natom if ( (x(i) + 0.5d0*sigma) > lx ) vx(i)=-vx(i) if ( (x(i) - 0.5d0*sigma) < 0.d0 ) vx(i)=-vx(i) if ( (y(i) + 0.5d0*sigma) > ly ) vy(i)=-vy(i) if ( (y(i) - 0.5d0*sigma) < 0.d0 ) vy(i)=-vy(i) if ( (z(i) + 0.5d0*sigma) > lz ) vz(i)=-vz(i) if ( (z(i) - 0.5d0*sigma) < 0.d0 ) vz(i)=-vz(i) end do !...