Levy harmonic.py

From Werner KRAUTH

(Difference between revisions)
Jump to: navigation, search
Revision as of 18:13, 19 February 2025
Werner (Talk | contribs)

← Previous diff
Revision as of 18:13, 19 February 2025
Werner (Talk | contribs)
(Python program)
Next diff →
Line 19: Line 19:
Iter = 1000000 Iter = 1000000
- +
for iter in range(Iter): for iter in range(Iter):
xstart = random.uniform(0.0, L) xstart = random.uniform(0.0, L)

Revision as of 18:13, 19 February 2025

Contents

Context

This page is part of my 2025 Oxford Lectures

Python program

import math, random

def U(x):
    U = 0.0
    for k in range(N):
        k_minus = (k - 1) % N
        x_minus = x[k_minus]
        if k == 0: x_minus -= L
        U += (x[k] - x_minus) ** 2 / 2.0
    return U

N = 8
L = 16
delta = 1.0

Iter = 1000000

for iter in range(Iter):
    xstart = random.uniform(0.0, L)
    xend = xstart + L
    x = [xstart]
    for k in range(1, N):        # loop over internal slices
        x_mean = ((N - k) * x[k - 1] + xend) / (1.0 + N - k)
        sigma = math.sqrt(1.0 / (1.0  + 1.0 / (N - k) ))
        x.append(random.gauss(x_mean, sigma))
    x.append(xend)

Further information

References

Krauth, W. XXX

Personal tools