Formule de calcul
Nombre de parts
Source : source (consulté le lundi 1 janvier 1)
Ce dispositif est peut-être obsolète !
La dernière date de relecture du dispositif est mardi 1 janvier 2008.
Formule de calcul OpenFisca à compter du 2008-01-01 :
Notes : Modification de la prise en compte des enfants à charge du conjoint décédé et du veuf.
def formula_2008_01_01(foyer_fiscal, period, parameters): ''' Modification de la prise en compte des enfants à charge du conjoint décédé et du veuf. ''' nb_pac = foyer_fiscal('nb_pac', period) maries_ou_pacses = foyer_fiscal('maries_ou_pacses', period) celibataire_ou_divorce = foyer_fiscal('celibataire_ou_divorce', period) veuf = foyer_fiscal('veuf', period) jeune_veuf = foyer_fiscal('jeune_veuf', period) nbG = foyer_fiscal('nbG', period) nbH = foyer_fiscal('nbH', period) nbI = foyer_fiscal('nbI', period) nbR = foyer_fiscal('nbR', period) nbN = foyer_fiscal('nbN', period) # noqa F841 caseP = foyer_fiscal('caseP', period) caseW = foyer_fiscal('caseW', period) caseG = foyer_fiscal('caseG', period) caseE = foyer_fiscal('caseE', period) caseK = foyer_fiscal('caseK', period) caseN = foyer_fiscal('caseN', period) caseF = foyer_fiscal('caseF', period) caseS = foyer_fiscal('caseS', period) caseL = foyer_fiscal('caseL', period) caseT = foyer_fiscal('caseT', period) quotient_familial = parameters(period).impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial no_pac = nb_pac == 0 # Aucune personne à charge en garde exclusive has_pac = not_(no_pac) no_alt = nbH == 0 # Aucun enfant à charge en garde alternée has_alt = not_(no_alt) # nombre de parts liées aux enfants à charge # parts des enfants en résidence alternée quand il n'y a que des enfants en résidence alternée enf_a = (no_pac & has_alt) * ( quotient_familial.cas_general.enf1 * min_(nbH, 1) + quotient_familial.cas_general.enf2 * max_(min_(nbH - 1, 1), 0) + quotient_familial.cas_general.enf3_et_sup * max_(nbH - 2, 0) ) * 0.5 # parts des enfants en résidence alternée quand il y a aussi des enfants entièrement à charge enf_b = (has_pac & has_alt) * ( (nb_pac == 1) * ( quotient_familial.cas_general.enf2 * min_(nbH, 1) + quotient_familial.cas_general.enf3_et_sup * max_(nbH - 1, 0) ) * 0.5 + (nb_pac > 1) * (quotient_familial.cas_general.enf3_et_sup * nbH * 0.5) ) # parts des enfants entièrement à charge enf_c = ( quotient_familial.cas_general.enf1 * min_(nb_pac, 1) + quotient_familial.cas_general.enf2 * max_(min_(nb_pac - 1, 1), 0) + quotient_familial.cas_general.enf3_et_sup * max_(nb_pac - 2, 0) ) enf = enf_a + enf_b + enf_c # # note 2 : nombre de parts liées aux invalides (enfant + adulte) n2 = quotient_familial.couple_ou_pers_a_charge.inv1 * (nbG + nbI / 2) + quotient_familial.couple_ou_pers_a_charge.inv2 * nbR # # note 3 : Pas de personne à charge # - invalide n31a = quotient_familial.sans_pers_a_charge.not31a * (no_pac & no_alt & caseP) # - ancien combatant n31b = quotient_familial.sans_pers_a_charge.not31b * (no_pac & no_alt & (caseW | caseG)) n31 = max_(n31a, n31b) # - personne seule ayant élevé des enfants n32 = quotient_familial.sans_pers_a_charge.not32 * (no_pac & no_alt & ((caseE | caseK | caseL) & not_(caseN))) n3 = max_(n31, n32) # # note 4 Invalidité de la personne ou du conjoint pour les mariés ou # # jeunes veuf(ve)s n4 = max_(quotient_familial.couple_ou_pers_a_charge.not41 * (1 * caseP + 1 * caseF), quotient_familial.couple_ou_pers_a_charge.not42 * (caseW | caseS)) # # note 5 # - enfant autre et parent isolé n5 = quotient_familial.couple_ou_pers_a_charge.isol * caseT * (((no_pac & has_alt) * ((nbH == 1) * 0.5 + (nbH >= 2))) + 1 * has_pac) # # note 6 invalide avec personne à charge n6 = quotient_familial.couple_ou_pers_a_charge.not6 * (caseP & (has_pac | has_alt)) # # note 7 Parent isolé n7 = quotient_familial.couple_ou_pers_a_charge.isol * caseT * ((no_pac & has_alt) * ((nbH == 1) * 0.5 + (nbH >= 2)) + 1 * has_pac) # # Régime des mariés ou pacsés nb_parts_famille = 1 + quotient_familial.cas_general.conj + enf + n2 + n4 # # veufs hors jeune_veuf nb_parts_veuf = 1 + quotient_familial.cas_general.veuf * (has_pac | has_alt) + enf + n2 + n3 + n5 + n6 # # celib div nb_parts_celib = 1 + enf + n2 + n3 + n6 + n7 return (maries_ou_pacses | jeune_veuf) * nb_parts_famille + (veuf & not_(jeune_veuf)) * nb_parts_veuf + celibataire_ou_divorce * nb_parts_celib
Formule OpenFisca sur GithubVariables et paramètres inscrits dans la formule :
Paramètres :
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.conj
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf1
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf2
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf3_et_sup
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.veuf
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.inv1
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.inv2
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.isol
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not41
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not42
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not6
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not31a
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not31b
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not32
Variables utilisées par le cas type :
Situation pouvant donner droit à une demi-part supplémentaire: vous vivez seul au 1er janvier de l'année de perception des revenus et vous avez élevé un enfant pendant au moins 5 ans durant la période où vous viviez seul (définition depuis 2009) - Un au moins de vos enfants à charge ou rattaché est issu du mariage avec votre conjoint décédé (définition avant 2008)
Déclaration d’impôts n°1
Formule initiale de calcul OpenFisca :
Notes : Nombre de parts du foyer fiscal note 1 enfants et résidence alternée (formulaire 2041 GV page 10) quotient_familial.cas_general.conj : nb part associées au conjoint d'un couple marié ou pacsé quotient_familial.cas_general.enf1 : nb part premier enfant quotient_familial.cas_general.enf2 : nb part deuxième enfant quotient_familial.cas_general.enf3_et_sup : nb part enfants de rang 3 ou plus quotient_familial.couple_ou_pers_a_charge.inv1 : nb part supp enfants invalides (I, G) quotient_familial.couple_ou_pers_a_charge.inv2 : nb part supp adultes invalides (R) quotient_familial.sans_pers_a_charge.not31 : nb part supp note 3 : cases W ou G pour veuf, celib ou div quotient_familial.sans_pers_a_charge.not32 : nb part supp note 3 : personne seule ayant élevé des enfants quotient_familial.couple_ou_pers_a_charge.not41 : nb part supp adultes invalides (vous et/ou conjoint) note 4 quotient_familial.couple_ou_pers_a_charge.not42 : nb part supp adultes anciens combattants (vous et/ou conjoint) note 4 quotient_familial.couple_ou_pers_a_charge.not6 : nb part supp note 6 quotient_familial.couple_ou_pers_a_charge.isol : demi-part parent isolé (T) quotient_familial.edcd : enfant issu du mariage avec conjoint décédé;
def formula(foyer_fiscal, period, parameters): ''' Nombre de parts du foyer fiscal note 1 enfants et résidence alternée (formulaire 2041 GV page 10) quotient_familial.cas_general.conj : nb part associées au conjoint d'un couple marié ou pacsé quotient_familial.cas_general.enf1 : nb part premier enfant quotient_familial.cas_general.enf2 : nb part deuxième enfant quotient_familial.cas_general.enf3_et_sup : nb part enfants de rang 3 ou plus quotient_familial.couple_ou_pers_a_charge.inv1 : nb part supp enfants invalides (I, G) quotient_familial.couple_ou_pers_a_charge.inv2 : nb part supp adultes invalides (R) quotient_familial.sans_pers_a_charge.not31 : nb part supp note 3 : cases W ou G pour veuf, celib ou div quotient_familial.sans_pers_a_charge.not32 : nb part supp note 3 : personne seule ayant élevé des enfants quotient_familial.couple_ou_pers_a_charge.not41 : nb part supp adultes invalides (vous et/ou conjoint) note 4 quotient_familial.couple_ou_pers_a_charge.not42 : nb part supp adultes anciens combattants (vous et/ou conjoint) note 4 quotient_familial.couple_ou_pers_a_charge.not6 : nb part supp note 6 quotient_familial.couple_ou_pers_a_charge.isol : demi-part parent isolé (T) quotient_familial.edcd : enfant issu du mariage avec conjoint décédé; ''' nb_pac = foyer_fiscal('nb_pac', period) maries_ou_pacses = foyer_fiscal('maries_ou_pacses', period) celibataire_ou_divorce = foyer_fiscal('celibataire_ou_divorce', period) veuf = foyer_fiscal('veuf', period) jeune_veuf = foyer_fiscal('jeune_veuf', period) nbF = foyer_fiscal('nbF', period) nbG = foyer_fiscal('nbG', period) nbH = foyer_fiscal('nbH', period) nbI = foyer_fiscal('nbI', period) nbR = foyer_fiscal('nbR', period) nbJ = foyer_fiscal('nbJ', period) nbN = foyer_fiscal('nbN', period) # noqa F841 caseP = foyer_fiscal('caseP', period) caseW = foyer_fiscal('caseW', period) caseG = foyer_fiscal('caseG', period) caseE = foyer_fiscal('caseE', period) caseK = foyer_fiscal('caseK', period) caseN = foyer_fiscal('caseN', period) caseF = foyer_fiscal('caseF', period) caseS = foyer_fiscal('caseS', period) caseL = foyer_fiscal('caseL', period) caseT = foyer_fiscal('caseT', period) quotient_familial = parameters(period).impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial no_pac = nb_pac == 0 # Aucune personne à charge en garde exclusive has_pac = not_(no_pac) no_alt = nbH == 0 # Aucun enfant à charge en garde alternée has_alt = not_(no_alt) # nombre de parts liées aux enfants à charge # parts des enfants en résidence alternée quand il n'y a que des enfants en résidence alternée enf_a = (no_pac & has_alt) * ( quotient_familial.cas_general.enf1 * min_(nbH, 1) + quotient_familial.cas_general.enf2 * max_(min_(nbH - 1, 1), 0) + quotient_familial.cas_general.enf3_et_sup * max_(nbH - 2, 0) ) * 0.5 # parts des enfants en résidence alternée quand il y a aussi des enfants entièrement à charge enf_b = (has_pac & has_alt) * ( (nb_pac == 1) * ( quotient_familial.cas_general.enf2 * min_(nbH, 1) + quotient_familial.cas_general.enf3_et_sup * max_(nbH - 1, 0) ) * 0.5 + (nb_pac > 1) * (quotient_familial.cas_general.enf3_et_sup * nbH * 0.5) ) # parts des enfants entièrement à charge enf_c = ( quotient_familial.cas_general.enf1 * min_(nb_pac, 1) + quotient_familial.cas_general.enf2 * max_(min_(nb_pac - 1, 1), 0) + quotient_familial.cas_general.enf3_et_sup * max_(nb_pac - 2, 0) ) enf = enf_a + enf_b + enf_c # # note 2 : nombre de parts liées aux invalides (enfant + adulte) n2 = quotient_familial.couple_ou_pers_a_charge.inv1 * (nbG + nbI / 2) + quotient_familial.couple_ou_pers_a_charge.inv2 * nbR # # note 3 : Pas de personne à charge # - invalide n31a = quotient_familial.sans_pers_a_charge.not31a * (no_pac & no_alt & caseP) # - ancien combatant n31b = quotient_familial.sans_pers_a_charge.not31b * (no_pac & no_alt & (caseW | caseG)) n31 = max_(n31a, n31b) # - personne seule ayant élevé des enfants n32 = quotient_familial.sans_pers_a_charge.not32 * (no_pac & no_alt & ((caseE | caseK | caseL) & not_(caseN))) n3 = max_(n31, n32) # # note 4 Invalidité de la personne ou du conjoint pour les mariés ou # # jeunes veuf(ve)s n4 = max_(quotient_familial.couple_ou_pers_a_charge.not41 * (1 * caseP + 1 * caseF), quotient_familial.couple_ou_pers_a_charge.not42 * (caseW | caseS)) # # note 5 # - enfant du conjoint décédé n51 = quotient_familial.couple_ou_pers_a_charge.cdcd * (caseL & ((nbF + nbJ) > 0)) # - enfant autre et parent isolé n52 = quotient_familial.couple_ou_pers_a_charge.isol * caseT * (((no_pac & has_alt) * ((nbH == 1) * 0.5 + (nbH >= 2))) + 1 * has_pac) n5 = max_(n51, n52) # # note 6 invalide avec personne à charge n6 = quotient_familial.couple_ou_pers_a_charge.not6 * (caseP & (has_pac | has_alt)) # # note 7 Parent isolé n7 = quotient_familial.couple_ou_pers_a_charge.isol * caseT * ((no_pac & has_alt) * ((nbH == 1) * 0.5 + (nbH >= 2)) + 1 * has_pac) # # Régime des mariés ou pacsés nb_parts_famille = 1 + quotient_familial.cas_general.conj + enf + n2 + n4 # # veufs hors jeune_veuf nb_parts_veuf = 1 + enf + n2 + n3 + n5 + n6 # # celib div nb_parts_celib = 1 + enf + n2 + n3 + n6 + n7 return (maries_ou_pacses | jeune_veuf) * nb_parts_famille + (veuf & not_(jeune_veuf)) * nb_parts_veuf + celibataire_ou_divorce * nb_parts_celib
Formule OpenFisca sur GithubVariables et paramètres inscrits dans la formule :
Paramètres :
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.conj
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf1
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf2
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.cas_general.enf3_et_sup
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.cdcd
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.inv1
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.inv2
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.isol
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not41
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not42
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.couple_ou_pers_a_charge.not6
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not31a
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not31b
- impot_revenu.calcul_impot_revenu.plaf_qf.quotient_familial.sans_pers_a_charge.not32
Variables utilisées par le cas type :
Situation pouvant donner droit à une demi-part supplémentaire: vous vivez seul au 1er janvier de l'année de perception des revenus et vous avez élevé un enfant pendant au moins 5 ans durant la période où vous viviez seul (définition depuis 2009) - Un au moins de vos enfants à charge ou rattaché est issu du mariage avec votre conjoint décédé (définition avant 2008)
Déclaration d’impôts n°1
Variables et dispositifs influencés par la formule :
La formule du dispositif "Nombre de parts" peut avoir une influence sur d'autres dispositifs et variables :
- casa
- condition_rfr_exoneration_th
- crds_chomage
- crds_retraite
- creimp_exc_2008
- csg_deductible_chomage
- csg_deductible_retraite
- csg_imposable_chomage
- csg_imposable_retraite
- degrevement_office_taxe_habitation
- depart1825_eligibilite
- ir_brut
- ir_plaf_qf
- ir_tranche
- jeunes_ind
- livret_epargne_populaire_plafond
- pass_colo
- plafond_taxe_habitation
- plafond_taxe_habitation_eligibilite
- ppe_elig
- reduction_impot_exceptionnelle
- reduction_ss_condition_revenus
- taux_effectif