diff --git a/docs/src/berendsen.md b/docs/src/berendsen.md index 412ee79..096676b 100644 --- a/docs/src/berendsen.md +++ b/docs/src/berendsen.md @@ -35,7 +35,7 @@ Pruebe diferentes parámetros, con `20_000` pasos de simulación. Entre los cual | 300 | 3000| | | | -Observe los gráficos de energía resultantes, usando los mismos comandos de antes: +Observe los gráficos de energia resultantes, usando los mismos comandos de antes: ```julia-repl julia> using Plots @@ -46,8 +46,8 @@ julia> plot( ) ``` -Observe la suavidad, o no, de la curva de energía total. Observe si la -energía cinética se aproximó de la energía media deseada ($kT=60$). +Observe la suavidad, o no, de la curva de energia total. Observe si la +energia cinética se aproximó de la energia media deseada ($kT=60$). ## 5.2. Código completo resumido diff --git a/docs/src/isokinetic.md b/docs/src/isokinetic.md index 1ae9c7a..9e68c1a 100644 --- a/docs/src/isokinetic.md +++ b/docs/src/isokinetic.md @@ -9,7 +9,7 @@ Su ejecución demanda la definición de dos parámetros adicionales: el intervalo de tiempo entre dos escalonamientos de velocidades, y el tiempo de equilibración. El tiempo de equilibración es el tiempo dentro del cual los escalonamientos son realizados. El -objetivo debe ser obtener una simulación estable, con energía cinética +objetivo debe ser obtener una simulación estable, con energia cinética media adecuada a la deseada (60 unidades), después de la equilibración. # 4.1. Control de parámetros y termalización diff --git a/docs/src/langevin.md b/docs/src/langevin.md index 86e86ac..9b64450 100644 --- a/docs/src/langevin.md +++ b/docs/src/langevin.md @@ -30,7 +30,7 @@ fluctuación-disipación, que describe el movimiento Browniano. # 6.1. Control de parámetros y termalización -El coeficiente de fricción, $\lambda$, controla el comportamiento de una dinámica de Langevin. En este caso, programa inicializa las velocidades en cero, para que el efecto del termostato sea destacado. Vamos a imprimir la trayectoria con más frecuencia para que se note el efecto de la fricción al início: +El coeficiente de fricción, $\lambda$, controla el comportamiento de una dinámica de Langevin. En este caso, el programa inicializa las velocidades en cero, para que el efecto del termostato sea destacado. Vamos a imprimir la trayectoria con más frecuencia para que se note el efecto de la fricción al início: Por ejemplo, ```julia-repl @@ -47,9 +47,9 @@ Ejecute el programa con diversos parámetros, en particular estos: | 10. | 0.001| | | | -En seguida de cada ejecución, observe los gráficos de energía y las -trayectorias. Discuta si la temperatura llegó al valor deseado (energía -cinética igual a 60 unidades), y si la energía total es en media +En seguida de cada ejecución, observe los gráficos de energia y las +trayectorias. Discuta si la temperatura llegó al valor deseado (energia +cinética igual a 60 unidades), y si la energia total es en media constante. Observe el movimiento de las partículas en cada trayectoria. La consistencia del termostato depende del paso de integración, en particular para acoplamientos grandes. diff --git a/docs/src/montecarlo.md b/docs/src/montecarlo.md index 4a1d905..0db5bbc 100644 --- a/docs/src/montecarlo.md +++ b/docs/src/montecarlo.md @@ -47,7 +47,7 @@ Una vez elegida la perturbación, ejecute el programa con número de pasos de 200.000, lo que implica que aproximadamente 60.000 pasos van a ser aceptados (para una tasa de 30\%). -Observe la evolución de la energía potencial, haciendo gráficos con: +Observe la evolución de la energia potencial, haciendo gráficos con: ```julia-repl plot(out,ylim=[-100,100], label="Potential", xlabel="step") diff --git a/docs/src/simple.md b/docs/src/simple.md index 70cc73d..6eb5c87 100644 --- a/docs/src/simple.md +++ b/docs/src/simple.md @@ -29,7 +29,7 @@ La simulación no tiene control de temperatura o de presión. Es una propagació ## 3.1. Paso de integración -Para realizar una MD simple, con un paso de integración de `dt=1.0`, ejecute le comando: +Para realizar una MD simple, con un paso de integración de `dt=1.0`, ejecute el comando: ```julia-repl julia> out = md(sys,Options(dt=0.1)); diff --git a/docs/src/sistema.md b/docs/src/sistema.md index 55c729a..7d2f536 100644 --- a/docs/src/sistema.md +++ b/docs/src/sistema.md @@ -8,13 +8,13 @@ potencial de Lennard-Jones, en un sistema bi-dimensional, periódico. $V = 4\epsilon \left( \frac{\sigma^{12}}{r^{12}} - \frac{\sigma^6}{r^6} \right)$ Abra el archivo [potential.jl](https://github.com/m3g/FundamentosDMC.jl/blob/master/src/potential.jl) y entienda la implementación del -cálculo de la energía potencial. Note que el cálculo depende de 3 +cálculo de la energia potencial. Note que el cálculo depende de 3 parámetros: $\epsilon$, $\sigma$, y el tamaño del sistema periódico. Los parámetros están definidos en la estructura de datos `opt`, de entrada (veremos más tarde como usarla). El archivo [forces.jl](https://github.com/m3g/FundamentosDMC.jl/blob/master/src/forces.jl) contiene el cálculo de las fuerzas (el gradiente del potencial), y el archivo [kinetic.jl](https://github.com/m3g/FundamentosDMC.jl/blob/master/src/kinetic.jl) contiene el cálculo -de la energía cinética. Como el sistema usa condiciones periódicas de +de la energia cinética. Como el sistema usa condiciones periódicas de contorno, las coordenadas tienen que siempre ser calculadas en relación a la imagen mínima. El cálculo de la imagen mínima está implementado en el archivo [image.jl](https://github.com/m3g/FundamentosDMC.jl/blob/master/src/image.jl). Es interesante entender la @@ -39,7 +39,7 @@ que genera `100` puntos en 2 dimensiones, aleatórios, con coordenadas entre `[- ## 2.1. Parámetros y opciones de la simulación -Los parámetros de las simulaciones son controlados en la estructura `Options`, por ejemplo, para ajustar el paso de tiempo, pasamos el parámetro `dt` a la estructura. Esto puede ser echo en la llamada de las funciones de simulación, como veremos. +Los parámetros de las simulaciones son controlados en la estructura `Options`, por ejemplo, para ajustar el paso de tiempo, pasamos el parámetro `dt` a la estructura. Esto puede ser hecho en la llamada de las funciones de simulación, como veremos. ```julia-repl julia> Options(dt=0.1) @@ -62,18 +62,18 @@ Options ``` -En este caso, ajustamos el paso de tiempo manualmente, y mantuvimos todas las otras opciones con valores default. Cada uno de estos parámetros será discutido oportunamente. Note que definen el tamaño, campo de fuerza ($\epsilon$ y $\sigma$), energía cinética objetivo (temperatura), y los nombres de los archivos de salida. +En este caso, ajustamos el paso de tiempo manualmente, y mantuvimos todas las otras opciones con valores default. Cada uno de estos parámetros será discutido oportunamente. Note que definen el tamaño, campo de fuerza ($\epsilon$ y $\sigma$), energia cinética objetivo (temperatura), y los nombres de los archivos de salida. ## 2.3. Minimización de la energia En seguida, el punto inicial va a ser modificado usando -el Método del Gradiente para minimizar la energía. El +el Método del Gradiente para minimizar la energia. El método consiste en mover las partículas según la aproximación de Taylor -de orden uno, en la dirección de descenso de energía: +de orden uno, en la dirección de descenso de energia: $\vec{x}_{i+1} = \vec{x}_i - \nabla V(\vec{x}_i) \Delta x$ -Si la energía en el punto $\vec{x}_{i+1}$ es menor que la energía en el +Si la energia en el punto $\vec{x}_{i+1}$ es menor que la energia en el punto $\vec{x}_i$, se acepta el punto $\vec{x}_{i+1}$ y el proceso es repetido. Si no, $\Delta x$ es disminuido ($\Delta x = \Delta x / 2$), y un nuevo punto $\vec{x}_{i+1}$ es calculado. Como la aproximación debe @@ -123,7 +123,7 @@ Este punto inicial de energia mínima será usado en nuestras simulaciones. La temperatura del sistema es un parámetro también definido internamente en el programa (puede ser modificado a gusto, pero no lo haremos). La -temperatura se define a partir energía cinética media asociada a cada +temperatura se define a partir de la energia cinética media asociada a cada grado de libertad de movimiento del sistema. En el caso que todos los movimientos pueden ser escritos como traslaciones, la definición es @@ -146,13 +146,13 @@ $\left< \frac{1}{2}m |\vec{v}|^2 \right> = 2\left< \frac{1}{2}m v_x^2 \right> = kT$ En los códigos de dinámica molecular, la definición de temperatura se -da, así, por la definición de la energía cinética media o, en este caso, +da, así, por la definición de la energia cinética media o, en este caso, por $kT$. En el código de Monte-Carlo la definición de temperatura se da por la tasa de aceptación, con la misma definición. En todos los códigos fue escogido que se objetiva simular el sistema a la temperatura que corresponde a $kT = 0.6$ unidades. Los sistemas -simulados tiene 100 partículas, por lo tanto la energía cinética media +simulados tiene 100 partículas, por lo tanto la energia cinética media es $100kT=60$ unidades. Las velocidades iniciales van a ser generadas aleatoriamente al princípio de la simulación. ## 2.5. Código completo resumido