class Meson2ptParser(ObjectParser): """ Test meson two point correlator table. The source and sink interpolating operators are not checked to be the same on purpose. """ model = Meson2pt _tree = { "propagator0": "OneToAll", **{ f"propagator0.{key}": OneToAllDWParser.get_tree()[key] for key in OneToAllDWParser.get_tree() }, "propagator1": "OneToAll", **{ f"propagator1.{key}": OneToAllDWParser.get_tree()[key] for key in OneToAllDWParser.get_tree() }, "sourcewave": "Hadron", "sinkwave": "Hadron", } _parameters = { "propagator0": OneToAllDWssParser.get_parameters(), "propagator1": OneToAllDWssParser.get_parameters(), "sourcewave": MesonParser.get_parameters(), "sinkwave": MesonParser.get_parameters(), } _consistency_check_changes = []
class Baryon2ptParser(ObjectParser): model = Baryon2pt _tree = { "propagator0": "OneToAll", **{ f"propagator0.{key}": OneToAllDWParser.get_tree()[key] for key in OneToAllDWParser.get_tree() }, "propagator1": "OneToAll", **{ f"propagator1.{key}": OneToAllDWParser.get_tree()[key] for key in OneToAllDWParser.get_tree() }, "propagator2": "OneToAll", **{ f"propagator2.{key}": OneToAllDWParser.get_tree()[key] for key in OneToAllDWParser.get_tree() }, "sourcewave": "Hadron", "sinkwave": "Hadron", } _parameters = { "propagator0": OneToAllDWssParser.get_parameters(), "propagator1": OneToAllDWssParser.get_parameters(), "propagator2": OneToAllDWssParser.get_parameters(), "sourcewave": HadronParser.get_parameters(), "sinkwave": HadronParser.get_parameters(), } _consistency_check_changes = []
def test_sinksmear_id_consistency(self): prop0 = OneToAllDWParser.create_instance() prop1 = OneToAllDWssParser.create_instance() prop2 = OneToAllDWssParser.create_instance(fail_if_exists=False) sourcewave = MesonParser.create_instance() sinkwave = MesonParser.create_instance(fail_if_exists=False) parameters = dict() parameters["propagator0"] = prop0 parameters["propagator1"] = prop1 parameters["propagator2"] = prop2 parameters["sourcewave"] = sourcewave parameters["sinkwave"] = sinkwave with self.assertRaises(ConsistencyError) as context: self.model.objects.create(**parameters) print(context.exception.error)
class DWFTuningParser(ObjectParser): """Tests creation of the Unsmeared link smear. """ model = DWFTuning _tree = { "propagator": "OneToAll", **{ f"propagator.{key}": OneToAllDWssParser.get_tree()[key] for key in OneToAllDWssParser.get_tree() }, "wave": "Hadron", } _parameters = { "propagator": OneToAllDWssParser.get_parameters(), "wave": MesonParser.get_parameters(), "sink5": "False", } _consistency_check_changes = []
def test_sinksmear_id_consistency(self): sourcewave = HadronParser.create_instance() current = LocalParser.create_instance() seqpropagator = BaryonCoherentSeqParser.create_populated_instance() propagator = OneToAllDWssParser.create_instance() parameters = dict() parameters["current"] = current parameters["seqpropagator"] = seqpropagator parameters["propagator"] = propagator with self.assertRaises(ConsistencyError) as context: self.model.objects.create(**parameters) print(context.exception.error)
def check_sinksmear_id_consistency(self): sourcewave = HadronParser.create_instance() sinkwave = HadronParser.create_instance(fail_if_exists=False) fhpropagator = FeynmanHellmannParser.create_instance() propagator0 = OneToAllDWParser.create_instance() propagator1 = OneToAllDWssParser.create_instance() parameters = dict() parameters["sourcewave"] = sourcewave parameters["sinkwave"] = sinkwave parameters["fhpropagator"] = fhpropagator parameters["propagator0"] = propagator0 parameters["propagator1"] = propagator1 with self.assertRaises(ConsistencyError) as context: self.model.objects.create(**parameters) print(context.exception.error)