def f(x): c = correlator(1, x[0] * np.pi, x[1] * 2 * np.pi, 0, 0, 0, omega, w, tW, tS, tP, N2) print(c) if np.sum(np.abs(c[2:, 2:])) > 1e-15: print(1) return 1.0 else: print(0) return 0
import numpy as np from pyTurb import correlator from multiprocessing import Pool omega = 1. tS = np.pi / 4 tP = np.pi / 4 tW = np.pi / 2 N2 = -1 tolr = 1e-30 tola = 1e-30 t = 1. p = 1. w = 0.00001 correl = correlator(1, t, p, 0, 0, 0, omega, w, tW, tS, tP, N2) print(correl) print('---') w = 0.0001 correl = correlator(1, t, p, 0, 0, 0, omega, w, tW, tS, tP, N2) print(correl) print('---') w = 0.001 correl = correlator(1, t, p, 0, 0, 0, omega, w, tW, tS, tP, N2) print(correl) print('---') w = 0.01 correl = correlator(1, t, p, 0, 0, 0, omega, w, tW, tS, tP, N2) print(correl) print('---')
w = 1e-3 * omega N2 = 1 tRan = np.linspace(0, np.pi, num=1000, endpoint=True) pRan = np.linspace(0, 2 * np.pi, num=2000, endpoint=True) correl = np.zeros((len(tRan), len(pRan), 4, 4)) for i, t in enumerate(tRan): for j, p in enumerate(pRan): correl[i, j] = correlator(1., t, p, 0, 0, 0, omega, w, tW, tS, tP, N2, eps=1e-20) # correl[i,j] -= correlator(1., t, p, 0, 0, 0, omega, w, tW, tS, tP, N2, eps=1e-20) #correl /= (w*omega) correl = np.sum(np.sum(np.abs(correl[..., 2:, 2:])**2, axis=-1), axis=-1)**0.5 correl[np.abs(correl) < 1e-20] = 1e-20 correl = np.log10(np.abs(correl)) import matplotlib.pyplot as plt
import numpy as np from pyTurb import correlator B = 1. tB = np.pi / 4 pB = 0 tS = np.pi / 2 tP = 0 tW = np.pi / 2 omega = 1. w = -3. / 2 N2 = 0 eps = 1e-20 kRan = np.linspace(1e-3, 1 - 1e-3, num=40, endpoint=True) tRan = np.linspace(0, np.pi, num=40, endpoint=True) pRan = np.linspace(0, 2 * np.pi, num=40, endpoint=True) correl = np.zeros((len(kRan), len(tRan), len(pRan), 4)) for l, k in enumerate(kRan): for i, t in enumerate(tRan): for j, p in enumerate(pRan): correl[l, i, j, 0] = k / np.max(kRan) correl[l, i, j, 1] = t / np.max(tRan) correl[l, i, j, 2] = p / np.max(pRan) correl[l, i, j, 3] = abs( correlator(k**(-2. / 3), t, p, B, tB, pB, omega, w, tW, tS, tP, N2))[3, 3] np.savetxt('correl3D.txt', correl.reshape((-1, 4)))
N2 = 1 eps = 1e-20 tRan = np.linspace(0, np.pi, num=400, endpoint=True) pRan = np.linspace(0, 2 * np.pi, num=400, endpoint=True) correl = np.zeros((len(tRan), len(pRan), 4, 4)) for i, t in enumerate(tRan): for j, p in enumerate(pRan): correl[i, j] = correlator(1., t, p, B, tB, pB, omega, w, tW, tS, tP, N2, eps=1e-2, order=1) correl = np.sum(np.sum(np.abs(correl[..., 2:, 2:])**2, axis=-1), axis=-1)**0.5 correl[np.abs(correl) < 1e-16] = 0 import matplotlib import matplotlib.pyplot as plt from matplotlib import ticker fig, ax = plt.subplots(figsize=(4, 4)) im = ax.imshow(np.abs(correl),