Skip to content
3 changes: 1 addition & 2 deletions src/_gettsim/arbeitslosengeld_2/inputs.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@

@policy_input(start_date="2023-01-01")
def bezug_im_vorjahr() -> bool:
"""Whether the person received Arbeitslosengeld 2 / Bürgergeld in the previous
calendar year."""
"""Person received Arbeitslosengeld 2 / Bürgergeld in the last 12 months."""


# TODO(@MImmesberger): Remove input variable eigenbedarf_gedeckt once
Expand Down
26 changes: 4 additions & 22 deletions src/_gettsim/sozialversicherung/arbeitslosen/arbeitslosengeld.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
from ttsim.tt_dag_elements import (
get_consecutive_int_lookup_table_param_value,
param_function,
piecewise_polynomial,
policy_function,
)

Expand All @@ -16,7 +15,6 @@

from ttsim.tt_dag_elements import (
ConsecutiveIntLookupTableParamValue,
PiecewisePolynomialParamValue,
)


Expand Down Expand Up @@ -120,10 +118,8 @@ def mean_nettoeinkommen_für_bemessungsgrundlage_bei_arbeitslosigkeit_y(
sozialversicherung__rente__beitrag__beitragsbemessungsgrenze_y: float,
einkommensteuer__einkünfte__aus_nichtselbstständiger_arbeit__bruttolohn_y: float,
sozialversicherungspauschale: float,
einkommensteuer__parameter_einkommensteuertarif: PiecewisePolynomialParamValue,
einkommensteuer__einkünfte__aus_nichtselbstständiger_arbeit__arbeitnehmerpauschbetrag: float,
solidaritätszuschlag__parameter_solidaritätszuschlag: PiecewisePolynomialParamValue,
xnp: ModuleType,
lohnsteuer__betrag_y: float,
lohnsteuer__betrag_soli_y: float,
) -> float:
"""Approximate the income relevant for calculating unemployment insurance benefits.

Expand All @@ -140,26 +136,12 @@ def mean_nettoeinkommen_für_bemessungsgrundlage_bei_arbeitslosigkeit_y(
pauschalisierte_sozialversicherungsbeiträge = (
sozialversicherungspauschale * berücksichtigungsfähige_einnahmen
)
# TODO(@MImmesberger): This should likely be Lohnsteuer/Soli Lohnsteuer. However,
# not implemented before 2015 yet.
# https://github.com/iza-institute-of-labor-economics/gettsim/issues/793
approximierte_einkommensteuer = piecewise_polynomial(
x=berücksichtigungsfähige_einnahmen
- einkommensteuer__einkünfte__aus_nichtselbstständiger_arbeit__arbeitnehmerpauschbetrag,
parameters=einkommensteuer__parameter_einkommensteuertarif,
xnp=xnp,
)
approximierter_soli = piecewise_polynomial(
x=approximierte_einkommensteuer,
parameters=solidaritätszuschlag__parameter_solidaritätszuschlag,
xnp=xnp,
)
return max(
(
berücksichtigungsfähige_einnahmen
- pauschalisierte_sozialversicherungsbeiträge
- approximierte_einkommensteuer
- approximierter_soli
- lohnsteuer__betrag_y
- lohnsteuer__betrag_soli_y
),
0.0,
)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
info:
precision_atol: 0.01
source: Regression test.
inputs:
assumed:
einkommensteuer:
einkünfte:
aus_nichtselbstständiger_arbeit:
bruttolohn_m:
- 3000.0
lohnsteuer:
steuerklasse:
- 1
sozialversicherung:
pflege:
beitrag:
hat_kinder:
- false
kindergeld:
ist_leistungsbegründendes_kind:
- false
alter:
- 30
arbeitsstunden_w:
- 0.0
familie:
p_id_elternteil_1:
- -1
p_id_elternteil_2:
- -1
geburtsjahr:
- 1989
hh_id:
- 1
p_id:
- 1
outputs:
sozialversicherung:
arbeitslosen:
mean_nettoeinkommen_für_bemessungsgrundlage_bei_arbeitslosigkeit_y:
- 25181.24
Loading