Articles of montecarlo

Número de iteraciones grandes de Python falla

Escribí un simple progtwig de cálculo monte-carlo π en Python, usando un módulo de multiprocesamiento. Funciona bien, pero cuando paso 1E + 10 iteraciones para cada trabajador, ocurre un problema y el resultado es incorrecto. ¡No puedo entender cuál es el problema, porque todo está bien en las iteraciones 1E + 9! import sys from […]

Directamente “trazar” segmentos de línea para numpy array

Uno de mis primeros proyectos realizados en python es la simulación de percolación de palo de Monte Carlo. El código creció continuamente. La primera parte fue la visualización de la percolación del palo. En un área de ancho * largo, una densidad definida (palos / área) de palos rectos con una cierta longitud se traza […]

Error de hilo: no se puede iniciar un nuevo hilo

Aquí hay un MWE de un código mucho más grande que estoy usando. Realiza una integración de Monte Carlo sobre un KDE ( estimación de la densidad del kernel ) para todos los valores ubicados por debajo de un cierto umbral (el método de integración se sugirió en esta pregunta: Integrar la estimación de la […]

Modelo de Ising en Python

Actualmente estoy trabajando en escribir código para el modelo Ising usando Python3. Todavía soy bastante nuevo en la encoding. Tengo un código de trabajo, pero el resultado de salida no es el esperado y parece que no puedo encontrar el error. Aquí está mi código: import numpy as np import random def init_spin_array(rows, cols): return […]

Modelo Dinámico Simple en PyMC3

Estoy tratando de armar un modelo de un sistema dynamic en PyMC3, para inferir dos parámetros. El modelo es el SIR básico, comúnmente utilizado en epidemiología: dS / dt = – r0 * g * S * I dI / dt = g * I (r * S – 1) donde r0 y g son […]

Diferentes resultados de integración usando Monte Carlo vs scipy.integrate.nquad

El MWE a continuación muestra dos formas de integrar la misma estimación de densidad de kernel 2D, obtenida para estos datos mediante la función stats.gaussian_kde() . La integración se realiza para todos (x, y) por debajo del punto de umbral (x1, y1) , que define los límites de integración superiores (los límites de integración más […]

Encontrando dígitos PI usando Monte Carlo

He probado muchos algoritmos para encontrar π utilizando Monte Carlo. Una de las soluciones (en Python) es esta: def calc_PI(): n_points = 1000000 hits = 0 for i in range(1, n_points): x, y = uniform(0.0, 1.0), uniform(0.0, 1.0) if (x**2 + y**2) <= 1.0: hits += 1 print "Calc2: PI result", 4.0 * float(hits) / […]

Calcular el área de superposición de dos funciones

Necesito calcular el área donde se superponen dos funciones. Utilizo distribuciones normales en este ejemplo simplificado en particular, pero necesito un procedimiento más general que también se adapte a otras funciones. Vea la imagen a continuación para tener una idea de lo que quiero decir, donde el área roja es lo que busco: Este es […]

Python Distribución uniforme de puntos en esfera 4 dimensional.

Necesito una distribución uniforme de puntos en una esfera de 4 dimensiones. Sé que esto no es tan trivial como escoger 3 angularjs y usar coordenadas polares. En 3 dimensiones utilizo from random import random u=random() costheta = 2*u -1 #for distribution between -1 and 1 theta = acos(costheta) phi = 2*pi*random x=costheta y=sin(theta)*cos(phi) x=sin(theta)*sin(phi) […]

Acelerar el muestreo de la estimación del kernel

Aquí hay un MWE de un código mucho más grande que estoy usando. Básicamente, realiza una integración de Monte Carlo sobre un KDE ( estimación de densidad de kernel ) para todos los valores ubicados por debajo de un cierto umbral (el método de integración se sugirió en esta pregunta BTW: Integrar la estimación de […]