[Calcul scientifique / technique par Python] Marche aléatoire 2D (problème de marche ivre), calcul numérique

[Marche aléatoire] bidimensionnelle utilisant des nombres aléatoires (https://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3% 82% A6% E3% 82% A9% E3% 83% BC% E3% 82% AF) est simulée.

Un pas est mis à 1, en partant de l'origine (0,0) et en marchant au hasard sur le plan bidimensionnel.


import numpy as np
from random import random
import matplotlib.pyplot as plt
from math import *
"""
Marche aléatoire 2D
"""

N_calc_list = [10]
x, y, r = 0, 0, 0
R_list=[]

N=100000

x_list=[0]
y_list=[0]
for n in range(N):
    theta=2.0*pi*random()#Angle θ(Unité 2pi)Aléatoire à faire()Avec[0,1]Génère un nombre aléatoire uniforme.
    x = x+cos(theta) #Déplacez-vous dans la direction x. cos(θ)。
    y = y+sin(theta) #Déplacez-vous dans la direction y. péché(θ)
    x_list.append (x) #La valeur de x est x_Stocker dans la liste
    y_list.append(y) #La valeur de y est x_Stocker dans la liste
   
# for plot
plt.plot( x_list,y_list) # (x,y)Terrain
plt.xlabel('X ') #étiquette de l'axe des x
plt.ylabel('Y') #étiquette de l'axe y
plt.xlim([-120,120])  #plage de l'axe des x
plt.ylim([-120,120]) #plage de l'axe y
plt.show()

résultat

t.png

Avec (0,0) comme position de départ, la trajectoire de 100 000 pas

t2.png La relation entre la distance R de l'origine (0,0) et le nombre de pas de déplacement N. L'axe des abscisses est tracé à $ N ^ {1/2} $. La ligne orange est la valeur théorique obtenue par $ N ^ {1/2} -> ∞ $.

Recommended Posts

[Calcul scientifique / technique par Python] Marche aléatoire 2D (problème de marche ivre), calcul numérique
[Calcul scientifique / technique par Python] Calcul de somme, calcul numérique
[Calcul scientifique / technique par Python] Interpolation de Lagrange, calcul numérique
[Calcul scientifique / technique par Python] Intégration Monte Carlo, calcul numérique, numpy
[Calcul scientifique / technique par Python] Résolution d'équations linéaires simultanées, calcul numérique, numpy
[Calcul scientifique / technique par Python] Solution numérique d'une équation différentielle ordinaire du second ordre, problème de valeur initiale, calcul numérique
[Calcul scientifique / technique par Python] Solution numérique d'un problème d'oscillateur harmonique unidimensionnel par vitesse Méthode de Berle
[Calcul scientifique / technique par Python] Solution numérique du problème des valeurs propres de la matrice par multiplication de puissance, algèbre linéaire numérique
[Calcul scientifique / technique par Python] Calcul de matrice inverse, numpy
[Calcul scientifique / technique par Python] histogramme, visualisation, matplotlib
[Calcul scientifique / technique par Python] Résolution de problèmes de valeurs propres (généralisés) en utilisant numpy / scipy, en utilisant des bibliothèques
[Calcul scientifique / technique par Python] Résolution de l'équation différentielle ordinaire du second ordre par la méthode Numerov, calcul numérique
[Calcul scientifique / technique par Python] Calcul numérique pour trouver la valeur de la dérivée (différentielle)
[Calcul scientifique / technique par Python] Graphique logistique, visualisation, matplotlib
[Calcul scientifique / technique par Python] Tracer, visualiser, matplotlib des données 2D avec barre d'erreur
[Calcul scientifique / technique par Python] Dessin de surface courbe 3D, surface, fil de fer, visualisation, matplotlib
[Calcul scientifique / technique par Python] Graphique de coordonnées polaires, visualisation, matplotlib
[Calcul scientifique / technique par Python] Résolution du problème de la valeur aux limites des équations différentielles ordinaires au format matriciel, calcul numérique
[Calcul scientifique / technique par Python] Tracé, visualisation, matplotlib de données 2D lues à partir d'un fichier
[Calcul scientifique / technique par Python] Dessin, visualisation, matplotlib de lignes de contour 2D (couleur), etc.
[Calcul scientifique / technique par Python] Fonctionnement de base du tableau, numpy
[Calcul scientifique / technique par Python] Solution numérique d'équations différentielles ordinaires du premier ordre, problème de valeur initiale, calcul numérique
[Calcul scientifique / technique par Python] Liste des matrices qui apparaissent dans Hinpan en algèbre linéaire numérique
[Calcul scientifique / technique par Python] Exemple de visualisation de champ vectoriel, champ magnétique électrostatique, matplotlib
[Calcul scientifique / technique par Python] Transformation de Fourier à grande vitesse discrète en 3D unidimensionnelle, scipy
[Calcul scientifique / technique par Python] Simulation de Monte Carlo par la méthode metropolis de la thermodynamique du système de spin ascendant 2D
Calcul scientifique / technique avec Python] Dessin et visualisation d'isoplans 3D et de leurs vues en coupe à l'aide de mayavi
[Calcul scientifique / technique par Python] Ajustement par fonction non linéaire, équation d'état, scipy
[Calcul scientifique / technique par Python] Calcul du produit de la matrice par l'opérateur @, python3.5 ou supérieur, numpy
[Calcul scientifique / technique par Python] Résolution d'équations différentielles ordinaires, formules mathématiques, sympy
[Calcul scientifique / technique par Python] Solution numérique de l'équation de Laplace-Poisson bidimensionnelle pour la position électrostatique par la méthode Jacobi, équation aux dérivées partielles elliptiques, problème des valeurs aux limites
[Calcul scientifique / technique par Python] Solution analytique sympa pour résoudre des équations
[Calcul scientifique / technique par Python] Résolution de l'équation de Newton unidimensionnelle par la méthode Runge-Kutta du 4ème ordre
Marche aléatoire en Python
[Calcul scientifique / technique par Python] Solution numérique d'équations d'ondes unidimensionnelles et bidimensionnelles par méthode FTCS (méthode explicite), équations aux dérivées partielles bi-courbes
[Calcul scientifique / technique par Python] Génération de nombres aléatoires non uniformes donnant une fonction de densité de probabilité donnée, simulation Monte Carlo
[Calcul scientifique / technique par Python] Résolution de l'équation de Schledinger à l'état stationnaire dans le potentiel d'oscillateur isotrope tridimensionnel par la méthode matricielle, problème des valeurs aux limites, mécanique quantique
Calcul numérique avec Python
[Calcul scientifique / technique par Python] Liste des utilisations des fonctions (spéciales) utilisées en physique en utilisant scipy
[Calcul scientifique et technique par Python] Dessin de figures fractales [Triangle de Shelpinsky, fougère de Bernsley, arbre fractal]
[Calcul scientifique / technique par Python] Vague "gémissement" et vitesse de groupe, superposition des vagues, visualisation, physique du lycée
[Méthode de calcul numérique, python] Résolution d'équations différentielles ordinaires par la méthode Eular
[Calcul scientifique / technique par Python] Solution numérique d'une équation de conduction thermique non stationnaire unidimensionnelle par méthode Crank-Nicholson (méthode implicite) et méthode FTCS (méthode de solution positive)
[Calcul scientifique / technique par Python] Dérivation de solutions analytiques pour équations quadratiques et cubiques, formules, sympy
Premier Python 3 ~ Extra: Fantaisie aléatoire numérique ~
[Calcul scientifique / technique par Python] Résolution de l'équation de Schrödinger unidimensionnelle à l'état stationnaire par méthode de tir (1), potentiel de type puits, mécanique quantique