mirror of
https://github.com/fjosw/pyerrors.git
synced 2025-05-15 20:13:41 +02:00
Merge branch 'develop' into documentation
This commit is contained in:
commit
c0039dff1f
5 changed files with 16 additions and 24 deletions
|
@ -39,7 +39,7 @@ class Corr:
|
|||
region indentified for this correlator.
|
||||
"""
|
||||
|
||||
if isinstance(data_input, np.ndarray): # Input is an array of Corrs
|
||||
if isinstance(data_input, np.ndarray):
|
||||
|
||||
# This only works, if the array fulfills the conditions below
|
||||
if not len(data_input.shape) == 2 and data_input.shape[0] == data_input.shape[1]:
|
||||
|
@ -95,7 +95,6 @@ class Corr:
|
|||
# An undefined timeslice is represented by the None object
|
||||
self.content = [None] * padding[0] + self.content + [None] * padding[1]
|
||||
self.T = len(self.content)
|
||||
|
||||
self.prange = prange
|
||||
|
||||
self.gamma_method()
|
||||
|
@ -160,9 +159,6 @@ class Corr:
|
|||
raise Exception("Vectors are of wrong shape!")
|
||||
if normalize:
|
||||
vector_l, vector_r = vector_l / np.sqrt((vector_l @ vector_l)), vector_r / np.sqrt(vector_r @ vector_r)
|
||||
# if (not (0.95 < vector_r @ vector_r < 1.05)) or (not (0.95 < vector_l @ vector_l < 1.05)):
|
||||
# print("Vectors are normalized before projection!")
|
||||
|
||||
newcontent = [None if (item is None) else np.asarray([vector_l.T @ item @ vector_r]) for item in self.content]
|
||||
|
||||
else:
|
||||
|
|
|
@ -1301,7 +1301,7 @@ def correlate(obs_a, obs_b):
|
|||
|
||||
Keep in mind to only correlate primary observables which have not been reweighted
|
||||
yet. The reweighting has to be applied after correlating the observables.
|
||||
Currently only works if ensembles are identical. This is not really necessary.
|
||||
Currently only works if ensembles are identical (this is not strictly necessary).
|
||||
"""
|
||||
|
||||
if sorted(obs_a.names) != sorted(obs_b.names):
|
||||
|
@ -1462,7 +1462,7 @@ def covariance(obs1, obs2, correlation=False, **kwargs):
|
|||
|
||||
|
||||
def pseudo_Obs(value, dvalue, name, samples=1000):
|
||||
"""Generate a pseudo Obs with given value, dvalue and name
|
||||
"""Generate an Obs object with given value, dvalue and name for test purposes
|
||||
|
||||
Parameters
|
||||
----------
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import numpy as np
|
||||
import pyerrors as pe
|
||||
import pytest
|
||||
import time
|
||||
|
||||
np.random.seed(0)
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
import autograd.numpy as np
|
||||
import os
|
||||
import random
|
||||
import string
|
||||
import copy
|
||||
import pyerrors as pe
|
||||
import pytest
|
||||
|
@ -142,7 +140,7 @@ def test_overloading_vectorization():
|
|||
assert [o.value for o in b / a] == [o.value for o in [b / p for p in a]]
|
||||
|
||||
|
||||
def test_gamma_method():
|
||||
def test_gamma_method_standard_data():
|
||||
for data in [np.tile([1, -1], 1000),
|
||||
np.random.rand(100001),
|
||||
np.zeros(1195),
|
||||
|
@ -285,7 +283,7 @@ def test_covariance_symmetry():
|
|||
assert np.abs(cov_ab) < test_obs1.dvalue * test_obs2.dvalue * (1 + 10 * np.finfo(np.float64).eps)
|
||||
|
||||
|
||||
def test_gamma_method():
|
||||
def test_gamma_method_uncorrelated():
|
||||
# Construct pseudo Obs with random shape
|
||||
value = np.random.normal(5, 10)
|
||||
dvalue = np.abs(np.random.normal(0, 1))
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
import os,sys,inspect
|
||||
import os
|
||||
import sys
|
||||
import inspect
|
||||
import pyerrors as pe
|
||||
import pyerrors.input.sfcf as sfin
|
||||
import shutil
|
||||
|
||||
current_dir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
|
||||
parent_dir = os.path.dirname(current_dir)
|
||||
sys.path.insert(0, parent_dir)
|
||||
|
||||
import pyerrors as pe
|
||||
import pyerrors.input.openQCD as qcdin
|
||||
import pyerrors.input.sfcf as sfin
|
||||
import shutil
|
||||
|
||||
from time import sleep
|
||||
|
||||
def build_test_environment(env_type, cfgs, reps):
|
||||
if env_type == "o":
|
||||
|
@ -26,7 +26,6 @@ def build_test_environment(env_type, cfgs, reps):
|
|||
|
||||
|
||||
|
||||
|
||||
def clean_test_environment(env_type, cfgs, reps):
|
||||
if env_type == "o":
|
||||
for i in range(1,reps):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue