Implement better finding for sfcf projects

This commit is contained in:
Justus Kuhlmann 2025-05-13 09:45:37 +00:00
parent 2bf263679d
commit 4f7d9d71b3
2 changed files with 33 additions and 3 deletions

View file

@ -5,6 +5,7 @@ import json
import pandas as pd import pandas as pd
import numpy as np import numpy as np
from .input.implementations import codes from .input.implementations import codes
from .tools import m2k, k2m
# this will implement the search functionality # this will implement the search functionality
@ -65,9 +66,31 @@ def sfcf_filter(results, **kwargs):
if kwargs.get('offset') != param['offset']: if kwargs.get('offset') != param['offset']:
drops.append(ind) drops.append(ind)
continue continue
if 'quark_masses' in kwargs: if 'quark_kappas' in kwargs:
quark_masses = kwargs['quark_masses'] kappas = kwargs['quark_kappas']
if (not np.isclose(quark_masses[0], param['quarks'][0]['mass']) or not np.isclose(quark_masses[1], param['quarks'][1]['mass'])): if (not np.isclose(kappas[0], param['quarks'][0]['mass']) or not np.isclose(kappas[1], param['quarks'][1]['mass'])):
drops.append(ind)
continue
if 'qm1' in kwargs:
quark_mass1 = kwargs['qm1']
if not isinstance(quark_mass1, list):
if (not np.isclose(quark_mass1, k2m(param['quarks'][0]['mass']))):
drops.append(ind)
continue
else:
if len(quark_mass1) == 2:
if (quark_mass1[0] > k2m(param['quarks'][0]['mass'])) or (quark_mass1[1] < k2m(param['quarks'][0]['mass'])):
drops.append(ind)
continue
if 'qm2' in kwargs:
quark_mass2 = kwargs['qm2']
if not isinstance(quark_mass2, list):
if (not np.isclose(quark_mass2, k2m(param['quarks'][1]['mass']))):
drops.append(ind)
continue
else:
if len(quark_mass2) == 2:
if (quark_mass2[0] > k2m(param['quarks'][1]['mass'])) or (quark_mass2[1] < k2m(param['quarks'][1]['mass'])):
drops.append(ind) drops.append(ind)
continue continue
if 'quark_thetas' in kwargs: if 'quark_thetas' in kwargs:

View file

@ -9,3 +9,10 @@ def list2str(mylist):
return s return s
cached = True cached = True
def m2k(m):
return 1/(2*m+8)
def k2m(k):
return (1/(2*k))-4