Commit 1c45e439 authored by Akdel's avatar Akdel

faster

parent e37cf6de
......@@ -26,13 +26,24 @@ def section_vs_section(section1, section2, fft_molecules, fft_rev_molecules, max
results = np.zeros((number_of_molecules, top), dtype=np.float64)
section2 = np.array(list(section2)).astype(int)
db_molecules = fft_molecules[section2[0]:section2[1]]
multiple_corr_maxes = np.zeros((width, db_molecules.shape[0]), dtype=float)
fft_products1 = np.zeros((db_molecules.shape[0],db_molecules.shape[1]), dtype=complex)
fft_products2 = np.zeros((db_molecules.shape[0],db_molecules.shape[1]), dtype=complex)
corr_maxes = np.zeros(db_molecules.shape[0])
for i in range(section1[0], section1[1], width):
t = time.time()
print(i)
multiple_corr_maxes[:] = 0
fft_products1[:] = 0
fft_products2[:] = 0
corr_maxes[:] = 0
subject_molecules = fft_molecules[i:i+width]
rev_subject_molecules = fft_rev_molecules[i:i+width]
multiple_top_corrs = get_multiple_products(subject_molecules, rev_subject_molecules, db_molecules)
multiple_top_corrs = get_multiple_products(subject_molecules, rev_subject_molecules, db_molecules, multiple_corr_maxes, fft_products1, fft_products2, corr_maxes)
mol_range = np.arange(i, i + width)
normalized_top_corrs = np.zeros(multiple_top_corrs.shape)
numba_normalize_molecule_correlation_array(multiple_top_corrs, maxes, section2, mol_range, normalized_top_corrs)
......@@ -55,11 +66,7 @@ def create_and_link_paired_matrices(period, fft_molecules, fft_rev_molecules, ma
# @nb.jit
def get_multiple_products(fft_subject_molecules, fft_subject_rev_molecules, fft_molecules):
multiple_corr_maxes = np.zeros((fft_subject_molecules.shape[0], fft_molecules.shape[0]), dtype=float)
fft_products1 = np.zeros((fft_molecules.shape[0],fft_molecules.shape[1]), dtype=complex)
fft_products2 = np.zeros((fft_molecules.shape[0],fft_molecules.shape[1]), dtype=complex)
corr_maxes = np.zeros(fft_molecules.shape[0])
def get_multiple_products(fft_subject_molecules, fft_subject_rev_molecules, fft_molecules, multiple_corr_maxes, fft_products1, fft_products2, corr_maxes):
for i in range(fft_subject_molecules.shape[0]):
# print("running numba_get_products")
numba_get_products(fft_subject_molecules[i], fft_subject_rev_molecules[i], fft_molecules, fft_products1, fft_products2)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment