diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 7df32441..99b8d91e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -19,14 +19,14 @@ repos: - id: end-of-file-fixer - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.11.11" + rev: "v0.12.1" hooks: - id: ruff args: ["--fix", "--show-fixes"] - id: ruff-format - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.15.0 + rev: v1.16.1 hooks: - id: mypy files: '^src/decaylanguage/(decay|dec|utils)/' diff --git a/src/decaylanguage/modeling/goofit.py b/src/decaylanguage/modeling/goofit.py index c861df6d..b8fc54c1 100644 --- a/src/decaylanguage/modeling/goofit.py +++ b/src/decaylanguage/modeling/goofit.py @@ -209,7 +209,7 @@ def make_pars(cls): header = "" for name, par in cls.pars.iterrows(): - pname = programmatic_name(name) + pname = programmatic_name(name, is_nucleus=False) if not par.fix: headerlist.append( f' Variable {pname} {{"{name}", {par.value}, {par.error} }};' @@ -221,7 +221,11 @@ def strip_pararray(pars, begin, convert=lambda x: x): mysplines = pars.index[pars.index.str.contains(begin, regex=False)] vals = convert(mysplines.str.slice(len(begin))).astype(int) series = pd.Series(mysplines, vals).sort_index() - return ",\n".join(series.map(lambda x: " " + programmatic_name(x))) + return ",\n".join( + series.map( + lambda x: " " + programmatic_name(x, is_nucleus=False) + ) + ) if not GooFitChain.consts.empty: splines = GooFitChain.consts.index[ @@ -236,7 +240,7 @@ def strip_pararray(pars, begin, convert=lambda x: x): for spline in splines: header += ( "\n std::vector " - + programmatic_name(spline) + + programmatic_name(spline, is_nucleus=False) + "_SplineArr {{\n" ) header += strip_pararray(GooFitChain.pars, f"{spline}::Spline::Gamma::") @@ -283,7 +287,9 @@ def make_lineshape(self, structure, masses): min_ = self.__class__.consts.loc[f"{self.name}::Spline::Min", "value"] max_ = self.__class__.consts.loc[f"{self.name}::Spline::Max", "value"] N = self.__class__.consts.loc[f"{self.name}::Spline::N", "value"] - AdditionalVars = programmatic_name(self.name) + "_SplineArr" + AdditionalVars = ( + programmatic_name(self.name, is_nucleus=False) + "_SplineArr" + ) return f"""new Lineshapes::GSpline("{name}", {par}_M, {par}_W, {L}, {masses}, FF::BL2, {radius}, {AdditionalVars}, Lineshapes::spline_t({min_},{max_},{int(N)}))""" @@ -546,7 +552,7 @@ def make_pars(cls): header = "" for name, par in cls.pars.iterrows(): - pname = programmatic_name(name) + pname = programmatic_name(name, is_nucleus=False) if not par.fix: headerlist.append( f'{pname} = Variable("{name}", {par.value}, {par.error} )' @@ -558,7 +564,11 @@ def strip_pararray(pars, begin, convert=lambda x: x): mysplines = pars.index[pars.index.str.contains(begin, regex=False)] vals = convert(mysplines.str.slice(len(begin))).astype(int) series = pd.Series(mysplines, vals).sort_index() - return ",\n".join(series.map(lambda x: " " + programmatic_name(x))) + return ",\n".join( + series.map( + lambda x: " " + programmatic_name(x, is_nucleus=False) + ) + ) if not GooFitPyChain.consts.empty: splines = GooFitPyChain.consts.index[ @@ -571,7 +581,11 @@ def strip_pararray(pars, begin, convert=lambda x: x): ) for spline in splines: - header += "\n" + programmatic_name(spline) + "_SplineArr = [\n" + header += ( + "\n" + + programmatic_name(spline, is_nucleus=False) + + "_SplineArr = [\n" + ) header += strip_pararray( GooFitPyChain.pars, f"{spline}::Spline::Gamma::" ) @@ -620,7 +634,9 @@ def make_lineshape(self, structure, masses): min_ = self.__class__.consts.loc[f"{self.name}::Spline::Min", "value"] max_ = self.__class__.consts.loc[f"{self.name}::Spline::Max", "value"] N = self.__class__.consts.loc[f"{self.name}::Spline::N", "value"] - AdditionalVars = programmatic_name(self.name) + "_SplineArr" + AdditionalVars = ( + programmatic_name(self.name, is_nucleus=False) + "_SplineArr" + ) return f"""Lineshapes.GSpline("{name}", {par}_M, {par}_W, {L}, {masses}, FF.BL2, {radius}, {AdditionalVars}, ({min_},{max_},{int(N)}))""" diff --git a/tests/dec/test_dec.py b/tests/dec/test_dec.py index 05eaf288..1c4cbf33 100644 --- a/tests/dec/test_dec.py +++ b/tests/dec/test_dec.py @@ -49,7 +49,7 @@ def test_constructor_multiple_files(): # The following parse() command issues the warning # UserWarning: Corresponding 'Decay' statement for 'CDecay' statement(s) of following particle(s) not found: anti-Xi_cc-sig. # Skipping creation of these charge-conjugate decay trees. - with pytest.warns(UserWarning) as record: + with pytest.warns(UserWarning, match="anti-Xi_cc-sig") as record: p.parse() assert len(record) == 1 @@ -78,7 +78,7 @@ def test_double_parsing(): # The second call to parse() issues the warning # UserWarning: Input file being re-parsed ... # warnings.warn("Input file being re-parsed ...") - with pytest.warns(UserWarning) as record: + with pytest.warns(UserWarning, match="Input file being re-parsed ...") as record: p.parse() assert len(record) == 1 @@ -332,7 +332,9 @@ def test_duplicated_global_photos_flag(): # The following call issues the warning # UserWarning: PHOTOS flag re-set! Using flag set in last ... # warnings.warn("PHOTOS flag re-set! Using flag set in last ...") - with pytest.warns(UserWarning) as record: + with pytest.warns( + UserWarning, match="PHOTOS flag re-set! Using flag set in last ..." + ) as record: assert p.global_photos_flag() == PhotosEnum.yes assert len(record) == 1 @@ -352,7 +354,9 @@ def test_duplicated_global_photos_flag_take_last(): # The following call issues the warning # UserWarning: PHOTOS flag re-set! Using flag set in last ... # warnings.warn("PHOTOS flag re-set! Using flag set in last ...") - with pytest.warns(UserWarning) as record: + with pytest.warns( + UserWarning, match="PHOTOS flag re-set! Using flag set in last ..." + ) as record: assert p.global_photos_flag() == PhotosEnum.yes assert len(record) == 1 @@ -391,7 +395,7 @@ def test_with_missing_info(): `` """ p = DecFileParser(DIR / "../data/test_Xicc2XicPiPi.dec") - with pytest.warns(UserWarning) as record: + with pytest.warns(UserWarning, match="anti-Xi_cc-sig") as record: p.parse() assert len(record) == 1 @@ -538,7 +542,7 @@ def test_custom_model_name(): def test_duplicate_decay_definitions(): p = DecFileParser(DIR / "../data/duplicate-decays.dec") - with pytest.warns(UserWarning) as w: + with pytest.warns(UserWarning, match="(1775)") as w: p.parse() assert len(w) == 2 @@ -570,7 +574,7 @@ def test_list_decay_modes_on_the_fly(): on the fly from the non-CC. decay. """ p = DecFileParser(DIR / "../data/test_Xicc2XicPiPi.dec") - with pytest.warns(UserWarning) as record: + with pytest.warns(UserWarning, match="anti-Xi_cc-sig") as record: p.parse() assert len(record) == 1