Skip to content

Commit

Permalink
Renamings to make things clearer/more consistent.
Browse files Browse the repository at this point in the history
  • Loading branch information
hmgaudecker committed Nov 17, 2023
1 parent 9317157 commit 950a776
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 22 deletions.
8 changes: 4 additions & 4 deletions src/_gettsim/parameters/ges_rente.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -854,7 +854,7 @@ altersgrenze_für_frauen_vorzeitig:
2:
upper_threshold: inf # constant 67
rate_linear: 0
abolishment_cohort_rente_für_frauen:
first_birthyear_without_rente_für_frauen:
name:
de: Kohorte Abschaffung Rente für Frauen
en: Cohort abolishment pension for women
Expand Down Expand Up @@ -963,7 +963,7 @@ altersgrenze_arbeitsl_vorzeitig:
6:
upper_threshold: inf
rate_linear: 0
abolishment_cohort_rente_für_arbeitsl:
first_birthyear_without_rente_für_arbeitsl:
name:
de: Kohorte Abschaffung Rente für Arbeitslose
en: Cohort abolishment pension for unemployed
Expand Down Expand Up @@ -1113,7 +1113,7 @@ alignment_cohort_langj_versicherte:
note: https://www.sozialgesetzbuch-sgb.de/sgbvi/236.html
1980-01-01:
scalar: 1950
altersgrenze_besonders_langj_versicherte:
altersgrenze_besond_langj_versicherte:
name:
de: >-
Eintrittsalter für besonders langjährig Versicherte - abschlagsfrei (Rente mit 63)
Expand Down Expand Up @@ -1176,7 +1176,7 @@ altersgrenze_besonders_langj_versicherte:
4:
upper_threshold: inf
rate_linear: 0
implementation_cohort_besonders_langj_versicherte:
first_birthyear_besond_langj_versicherte:
name:
de: Kohorte Implementierung Rente für besonders langjährig Versicherte
en: Cohort implementation pension for very long term insured
Expand Down
39 changes: 21 additions & 18 deletions src/_gettsim/transfers/rente.py
Original file line number Diff line number Diff line change
Expand Up @@ -589,7 +589,7 @@ def ges_rente_frauen_altersgrenze(
returns the lowest full retirement age for women.
"""
if birthdate_decimal < ges_rente_params["abolishment_cohort_rente_für_frauen"]:
if birthdate_decimal < ges_rente_params["first_birthyear_without_rente_für_frauen"]:
out = piecewise_polynomial(
x=birthdate_decimal,
thresholds=ges_rente_params["altersgrenze_für_frauen_abschlagsfrei"][
Expand All @@ -609,8 +609,8 @@ def ges_rente_frauen_altersgrenze(
@dates_active(end="1996-12-31", change_name="_ges_rente_arbeitsl_altersgrenze")
def _ges_rente_arbeitsl_altersgrenze_ohne_vertrauenss(
birthdate_decimal: float,
ges_rente_params: dict,
ges_rente_regelaltersgrenze: float,
ges_rente_params: dict,
) -> float:
"""Calculate the age, at which an unemployed is eligible to claim the full
pension (without deductions). This pension scheme allows for early retirement
Expand All @@ -621,18 +621,21 @@ def _ges_rente_arbeitsl_altersgrenze_ohne_vertrauenss(
----------
birthdate_decimal
See :func:`birthdate_decimal`.
ges_rente_regelaltersgrenze
See :func:`ges_rente_regelaltersgrenze`.
ges_rente_params
See params documentation
:ref:`ges_rente_params <ges_rente_params>`.
ges_rente_regelaltersgrenze
See :func:`ges_rente_regelaltersgrenze`.
Returns
-------
lowest full retirement age for unemployed.
"""
if birthdate_decimal < ges_rente_params["abolishment_cohort_rente_für_arbeitsl"]:
if (
birthdate_decimal
< ges_rente_params["first_birthyear_without_rente_für_arbeitsl"]
):
out = piecewise_polynomial(
x=birthdate_decimal,
thresholds=ges_rente_params["altersgrenze_arbeitsl_abschlagsfrei"][
Expand Down Expand Up @@ -689,7 +692,10 @@ def _ges_rente_arbeitsl_altersgrenze_mit_vertrauenss(
and vertrauenss_arbeitsl
):
out = _ges_rente_arbeitsl_altersgrenze_vertrauenss
elif birthdate_decimal < ges_rente_params["abolishment_cohort_rente_für_arbeitsl"]:
elif (
birthdate_decimal
< ges_rente_params["first_birthyear_without_rente_für_arbeitsl"]
):
out = piecewise_polynomial(
x=birthdate_decimal,
thresholds=ges_rente_params["altersgrenze_arbeitsl_abschlagsfrei"][
Expand All @@ -708,10 +714,10 @@ def _ges_rente_arbeitsl_altersgrenze_mit_vertrauenss(

@dates_active(start="2005-01-01")
def _ges_rente_arbeitsl_altersgrenze_vertrauenss(
ges_rente_params: dict,
ges_rente_regelaltersgrenze: float,
geburtsmonat: int,
geburtsjahr: int,
ges_rente_params: dict,
) -> float:
"""Calculate the age, at which an unemployed is eligible to claim the full
pension (without deductions) if he is covered by Vertrauensschutz. This
Expand All @@ -721,15 +727,15 @@ def _ges_rente_arbeitsl_altersgrenze_vertrauenss(
Parameters
----------
ges_rente_regelaltersgrenze
See :func:`ges_rente_regelaltersgrenze`.
geburtsmonat
See basic input variable :ref:`geburtsmonat <geburtsmonat>`.
geburtsjahr
See basic input variable :ref:`geburtsjahr <geburtsjahr>`.
ges_rente_params
See params documentation
:ref:`ges_rente_params <ges_rente_params>`.
ges_rente_regelaltersgrenze
See :func:`ges_rente_regelaltersgrenze`.
Returns
-------
Expand Down Expand Up @@ -832,22 +838,19 @@ def _ges_rente_besond_langj_altersgrenze(
Full retirement age (without deductions) for very long term insured.
"""
if (
geburtsjahr
< ges_rente_params["implementation_cohort_besonders_langj_versicherte"]
):
if geburtsjahr < ges_rente_params["first_birthyear_besond_langj_versicherte"]:
x = birthdate_decimal
else:
x = geburtsjahr

out = piecewise_polynomial(
x=x,
thresholds=ges_rente_params["altersgrenze_besonders_langj_versicherte"][
thresholds=ges_rente_params["altersgrenze_besond_langj_versicherte"][
"thresholds"
],
rates=ges_rente_params["altersgrenze_besonders_langj_versicherte"]["rates"],
rates=ges_rente_params["altersgrenze_besond_langj_versicherte"]["rates"],
intercepts_at_lower_thresholds=ges_rente_params[
"altersgrenze_besonders_langj_versicherte"
"altersgrenze_besond_langj_versicherte"
]["intercepts_at_lower_thresholds"],
)

Expand Down Expand Up @@ -1008,7 +1011,7 @@ def ges_rente_vorauss_frauen(
weiblich
and ges_rente_wartezeit_15
and y_pflichtbeitr_ab_40 > ges_rente_params["rente_für_frauen_pflichtbeitr_y"]
and geburtsjahr < ges_rente_params["abolishment_cohort_rente_für_frauen"]
and geburtsjahr < ges_rente_params["first_birthyear_without_rente_für_frauen"]
)

return out
Expand Down Expand Up @@ -1050,7 +1053,7 @@ def _ges_rente_vorauss_arbeitsl(
and ges_rente_wartezeit_15
and pflichtbeitr_8_in_10
and birthdate_decimal
< ges_rente_params["abolishment_cohort_rente_für_arbeitsl"]
< ges_rente_params["first_birthyear_without_rente_für_arbeitsl"]
)

return out
Expand Down

0 comments on commit 950a776

Please sign in to comment.