Tax-Calculator CalcFunctions#

Tax-Calculator CalcFunctions

taxcalc.calcfunctions#

Tax-Calculator functions that calculate payroll and individual income taxes.

These functions are imported into the Calculator class.

Note: the parameter_indexing_CPI_offset policy parameter is the only policy parameter that does not appear here; it is used in the policy.py file to possibly adjust the price inflation rate used to index policy parameters (as would be done in a reform that introduces chained-CPI indexing).

taxcalc.calcfunctions.AGI(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AGIsurtax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ALD_InvInc_ec_base(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AMT(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AdditionalCTC(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AdditionalMedicareTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.Adj(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AfterTaxIncome(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.AmOppCreditParts(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.BenefitLimitation(calc)[source]#

Limits the benefits of select itemized deductions to a fraction of deductible expenses.

Parameters:

calc (Calculator object) – calc represents the reform while self represents the baseline

Returns:

The function modifies calc

Return type:

None

taxcalc.calcfunctions.BenefitPrograms(calc)[source]#

Calculate total government cost and consumption value of benefits delivered by non-repealed benefit programs.

Parameters:

calc (Calculator object) – calc represents the reform while self represents the baseline

Returns:

The function modifies calc

Return type:

None

taxcalc.calcfunctions.BenefitSurtax(calc)[source]#

Computes itemized-deduction-benefit surtax and adds the surtax amount to income tax, combined tax, and surtax liabilities.

Parameters:

calc (Calculator object) – calc represents the reform while self represents the baseline

Returns:

The function modifies calc

Return type:

None

taxcalc.calcfunctions.C1040(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.CTC_new(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.CapGains(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.CharityCredit(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ChildDepTaxCredit(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ComputeBenefit(calc, ID_switch)[source]#

Calculates the value of the benefits accrued from itemizing.

Parameters:
  • calc (Calculator object) – calc represents the reform while self represents the baseline

  • ID_switch (list) – Deductions subject to the surtax on itemized deduction benefits

Returns:

benefit – Imputed benefits from itemizing deductions

Return type:

float

taxcalc.calcfunctions.DependentCare(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.EITC(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.EITCamount(basic_frac, phasein_rate, earnings, max_amount, phaseout_start, agi, phaseout_rate)[source]#

Returns EITC amount given specified parameters. English parameter names are used in this function because the EITC formula is not available on IRS forms or in IRS instructions; the extensive IRS EITC look-up table does not reveal the formula.

Parameters:
  • basic_frac (float) – Fraction of maximum earned income credit paid at zero earnings

  • phasein_rate (float) – Earned income credit phasein rate

  • earnings (float) – Earned income for filing unit

  • max_amount (float) – Maximum earned income credit

  • phaseout_start (float) – Earned income credit phaseout start AGI

  • agi (float) – Adjusted Gross Income (AGI)

  • phaseout_rate (float) – Earned income credit phaseout rate

Returns:

eitc – Earned Income Credit

Return type:

float

taxcalc.calcfunctions.EI_PayrollTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.EducationTaxCredit(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ExpandIncome(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.F2441(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.FairShareTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.GainsTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.IITAX(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ItemDed(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.ItemDedCap(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.LumpSumTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.NetInvIncTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.NonrefundableCredits(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.PersonalTaxCredit(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.RefundablePayrollTaxCredit(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.SSBenefits(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.SchR(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.SchXYZ(taxable_income, MARS, e00900, e26270, e02000, e00200, PT_rt1, PT_rt2, PT_rt3, PT_rt4, PT_rt5, PT_rt6, PT_rt7, PT_rt8, PT_brk1, PT_brk2, PT_brk3, PT_brk4, PT_brk5, PT_brk6, PT_brk7, II_rt1, II_rt2, II_rt3, II_rt4, II_rt5, II_rt6, II_rt7, II_rt8, II_brk1, II_brk2, II_brk3, II_brk4, II_brk5, II_brk6, II_brk7, PT_EligibleRate_active, PT_EligibleRate_passive, PT_wages_active_income, PT_top_stacking)[source]#

Returns Schedule X, Y, Z tax amount for specified taxable_income.

Parameters:
  • taxable_income (float) – Taxable income

  • MARS (int) – Filing (marital) status. (1=single, 2=joint, 3=separate, 4=household-head, 5=widow(er))

  • e00900 (float) – Schedule C business net profit/loss for filing unit

  • e26270 (float) – Schedule E: combined partnership and S-corporation net income/loss

  • e02000 (float) – Schedule E total rental, royalty, parternship, S-corporation, etc, income/loss

  • e00200 (float) – Wages, salaries, and tips for filing unit net of pension contributions

  • PT_rt1 (float) – Pass through income tax rate 1

  • PT_rt2 (float) – Pass through income tax rate 2

  • PT_rt3 (float) – Pass through income tax rate 3

  • PT_rt4 (float) – Pass through income tax rate 4

  • PT_rt5 (float) – Pass through income tax rate 5

  • PT_rt6 (float) – Pass through income tax rate 6

  • PT_rt7 (float) – Pass through income tax rate 7

  • PT_rt8 (float) – Pass through income tax rate 8

  • PT_brk1 (list) – Pass through income tax bracket (upper threshold) 1

  • PT_brk2 (list) – Pass through income tax bracket (upper threshold) 2

  • PT_brk3 (list) – Pass through income tax bracket (upper threshold) 3

  • PT_brk4 (list) – Pass through income tax bracket (upper threshold) 4

  • PT_brk5 (list) – Pass through income tax bracket (upper threshold) 5

  • PT_brk6 (list) – Pass through income tax bracket (upper threshold) 6

  • PT_brk7 (list) – Pass through income tax bracket (upper threshold) 7

  • II_rt1 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 1

  • II_rt2 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 2

  • II_rt3 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 3

  • II_rt4 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 4

  • II_rt5 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 5

  • II_rt6 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 6

  • II_rt7 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 7

  • II_rt8 (float) – Personal income (regular/non-AMT/non-pass-through) tax rate 8

  • II_brk1 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 1

  • II_brk2 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 2

  • II_brk3 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 3

  • II_brk4 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 4

  • II_brk5 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 5

  • II_brk6 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 6

  • II_brk7 (list) – Personal income (regular/non-AMT/non-pass/through) tax bracket (upper threshold) 7

  • PT_EligibleRate_active (float) – Share of active business income eligible for PT rate schedule

  • PT_EligibleRate_passive (float) – Share of passive business income eligible for PT rate schedule

  • PT_wages_active_income (bool) – Wages included in (positive) active business eligible for PT rates

  • PT_top_stacking (bool) – PT taxable income stacked on top of regular taxable income

Returns:

  • reg_tax (float) – Individual income tax liability on non-pass-through income

  • pt_tax (float) – Individual income tax liability from pass-through income

taxcalc.calcfunctions.SchXYZTax(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.StdDed(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.TaxInc(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.

taxcalc.calcfunctions.Taxes(income, MARS, tbrk_base, rate1, rate2, rate3, rate4, rate5, rate6, rate7, rate8, tbrk1, tbrk2, tbrk3, tbrk4, tbrk5, tbrk6, tbrk7)[source]#

Taxes function returns tax amount given the progressive tax rate schedule specified by the rate* and (upper) tbrk* parameters and given income, filing status (MARS), and tax bracket base (tbrk_base).

Parameters:
  • income (float) – Taxable income

  • MARS (int) – Filing (marital) status. (1=single, 2=joint, 3=separate, 4=household-head, 5=widow(er))

  • tbrk_base (float) – Amount of income used to determine the braket the filer is in

  • rate1 (list) – Income tax rate 1

  • rate2 (list) – Income tax rate 2

  • rate3 (list) – Income tax rate 3

  • rate4 (list) – Income tax rate 4

  • rate5 (list) – Income tax rate 5

  • rate6 (list) – Income tax rate 6

  • rate7 (list) – Income tax rate 7

  • rate8 (list) – Income tax rate 8

  • tbrk1 (list) – Income tax bracket (upper threshold) 1

  • tbrk2 (list) – Income tax bracket (upper threshold) 2

  • tbrk3 (list) – Income tax bracket (upper threshold) 3

  • tbrk4 (list) – Income tax bracket (upper threshold) 4

  • tbrk5 (list) – Income tax bracket (upper threshold) 5

  • tbrk6 (list) – Income tax bracket (upper threshold) 6

  • tbrk7 (list) – Income tax bracket (upper threshold) 7

Return type:

None

taxcalc.calcfunctions.UBI(*args, **kwargs)#

wrapper function nested in make_wrapper function nested in iterate_jit decorator.