def g(x): params = (x, -1e-2 * x, tW, tS, tP, N2, tolr, tola, maxEval, eps) r0 = coeffs(params, output=output) params = (x, 1e-2 * x, tW, tS, tP, N2, tolr, tola, maxEval, eps) r1 = coeffs(params, output=output) print(x) print(r0) print(r1) return (r1 - r0) / (2 * 1e-2 * x)
def f(x): params = (theta, x, tB, pB, omega, w, tW, tS, tP, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output) print(x) print(r) return r
def g(latitude, rotation): latitude = np.pi / 2 - np.pi * latitude / 180 params = (rotation, w, tW, latitude, latitude, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output) # r = np.zeros((6,6,1)) return r
def f(x): print(x) r = np.zeros([3, 6, 6, 2]) tB = np.pi / 4 pB = 0 params = (x, tB, pB, omega, w, tW, tS, tP, N2, tolr, tola, maxEval, eps) r[0] = coeffs(params, output=output) print(r[0]) tB = 3 * np.pi / 4 pB = 0 params = (x, tB, pB, omega, w, tW, tS, tP, N2, tolr, tola, maxEval, eps) r[1] = coeffs(params, output=output) print(r[1]) tB = np.pi / 2 pB = np.pi / 2 params = (x, tB, pB, omega, w, tW, tS, tP, N2, tolr, tola, maxEval, eps) r[2] = coeffs(params, output=output) print(r[2]) return r
def h(x): params = (omega, w, tW, x, x, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output) return r
from os.path import dirname, abspath d = dirname(dirname(abspath(__file__))) os.chdir(d) import sys sys.path.append(d + '/Python/') import numpy as np from pyTurb import coeffs from multiprocessing import Pool omega = 0.1 tS = np.pi / 4 tP = np.pi / 4 w = 0.1 tW = np.pi / 2 N2 = -1 tolr = 1e-30 tola = 1e-30 maxEval = 1000000 output = np.zeros((6, 6)) output[3, 4] = 1 output[3, 1] = 1 output[3, 5] = 1 output[3, 2] = 1 params = (omega, w, tW, tS, tP, N2, tolr, tola, maxEval) r = coeffs(params, output=output) print(r)
def f(x): print(x) params = (x, w, tW, tS, tP, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output) print(r) return r
wOverOmega = 10**np.linspace(-6, 0, num=20, endpoint=True) fi = h5py.File('Data/results.dat', 'w') fi['omega'] = omega fi['theta'] = theta fi['wOverOmega'] = wOverOmega omega, theta, w = np.meshgrid(omega, theta, wOverOmega, indexing='ij') w *= omega tW = np.pi / 2 N2 = -1 tolr = 1e-10 tola = 1e-10 results = np.zeros(list(omega.shape) + [6, 6, 2]) for i in range(omega.shape[0]): for j in range(omega.shape[1]): for k in range(omega.shape[2]): print(i, j, k) tS = theta[i, j, k] tP = theta[i, j, k] params = (omega[i, j, k], w[i, j, k], tW, tS, tP, N2, tolr, tola) r = coeffs(params) results[i, j, k] = r fi['results'] = results fi.close()
def f(x): print(x) params = (omega, w, tW, tS + x, tP, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output) return r
def f(x): print(x) params = (omega, x, tW, tS, tP, N2, tolr, tola, maxEval, eps) r = coeffs(params, output=output, order=0) print(r) return r