Al simular una ecuación de Langevin, ¿cómo se maneja una barrera de potencial vertical?
Tengo la evolución sobreamortiguada en el tiempo de la posición. , descrito por
dónde es el potencial, el arrastre, y el ruido térmico. Cuando quiero simular una trayectoria particular, discretizo el tiempo en pasos de un pequeño finito , y uso simplemente iteraciones con
dónde es el coeficiente de difusión, y un número aleatorio
Ahora, imagina tiene una barrera infinitamente alta, cuya pendiente se puede ajustar (y hacer vertical). Me preguntaba: si la partícula por casualidad golpea la barrera, allí el valor de la derivada puede ser indefinidamente grande. En la simulación, esto significa que puede ser seriamente "rechazado" por el término . Parece poco físico.
Supongo que reduciendo el used ayuda, pero ¿hay una forma estándar de manejar esto? ¿O no se pueden simular demasiadas barreras verticales?
Una barrera infinita de potencial refleja el hecho de que la partícula no puede entrar en una determinada región del espacio. Resolver la ecuación de Langevin con una barrera de este tipo significa que debe encontrar una manera de establecer que la partícula no puede ingresar al dominio, pero también debe describir lo que sucede en el límite, porque son posibles varios escenarios:
la partícula se detiene cuando alcanza el límite (absorción)
la partícula se refleja en el borde, con velocidad opuesta
la partícula se detiene durante un tiempo de espera (determinado o aleatorio) antes de retroceder
la partícula se refleja con un cambio de velocidad
la partícula sigue cualquier escenario 1.-4. con ciertas probabilidades
El comportamiento en el límite es extremadamente importante.
Si ejecuta una simulación numérica
es fácil de codificar con una prueba de posición
se puede imitar fácilmente en una dimensión extendiendo el dominio y plegándolo. Por ejemplo, si tiene una barrera en , extender el dominio a y luego sumar las probabilidades de presencia en y . La distribución de velocidades se obtiene por sustracción, por supuesto.
se obtiene sumando el tiempo de espera al tiempo de simulación usando el truco del Escenario 2.
también utiliza el truco Escenario 2, la velocidad se modifica al cruzar el límite como en el Escenario 3.
también es bastante fácil de codificar en una simulación numérica utilizando las técnicas anteriores.
¡Espero que sea de ayuda!
Es posible que aquí no haya una respuesta completa, pero puede brindarle a usted (y a mí) algunos consejos y quizás alguna solución alternativa.
El esquema de Euler no debería funcionar, incluso para la ecuación determinista donde el ruido se establece en cero. Esto se debe a que en el esquema de Euler, uno siempre requiere pequeño para que el es pequeño. Cuando es grande, uno se topa con la inestabilidad numérica de la solución. Este problema es bien conocido para las EDO (consulte, por ejemplo, Recetas numéricas, sección sobre "Sistemas rígidos").
Creo que una forma de evitar esto es usar simulación de espacio discretizado. Aquí se divide el espacio en pasos discretos y se simula el proceso de Markov discreto con tasas de transición entre sitios vecinos proporcionales a la diferencia de potencial entre los sitios.
Otra opción es utilizar una simulación subamortiguada. Tenga en cuenta que el problema surge porque su ecuación sobreamortiguada es de primer orden. [No me queda claro que la aproximación sobreamortiguada sea válida para una fuerza tan infinitamente fuerte; aunque la ecuación sobreamortiguada parece estar matemáticamente bien definida.] Para la ecuación subamortiguada, puede simular suavemente, mientras salta cada vez que la partícula cruza el paso del potencial.
honeste_vivere
scrx2
honeste_vivere
NDSolve
que pueden tratar este problema y evitar resultados divergentes (siempre que sea un susurrador de Mathematica )...cnguyén