Les acteurs¶
Les fonctions d’acteurs permettent de déclarer les profils.
Personnes¶
- class srd.Person(age=50, male=True, earn=0, rpp=0, cpp=0, net_cap_gains=0, prev_cap_losses=0, cap_gains_exempt=0, othtax=0, othntax=0, inc_rrsp=0, self_earn=0, div_elig=0, div_other_can=0, con_rrsp=0, con_non_rrsp=0, con_rpp=0, union_dues=0, donation=0, gift=0, years_can=None, disabled=False, widow=False, med_exp=0, ndays_chcare_k1=0, ndays_chcare_k2=0, asset=0, oas_years_post=0, months_cerb_cesb=0, student=False, essential_worker=False, emp_temp_constraints=False, hours_month=None, prev_inc_work=None, dep_senior=False, home_support_cost=0, months_ei=0, months_crb=0, pub_drug_insurance=False, tax_shield=False, rent=0, prop_tax=0)¶
Classe pour définir une personne.
Ceci définit une personne et son profil en termes de revenus et d’actifs.
- Paramètres
age (int) – âge de l’individu
male (bool) – prend la valeur True si l’individu est un homme
earn (float) – revenu de travail
rpp (float) – revenu de régime complémentaire de retraite (RCR)
cpp (float) – revenu du Régime de rentes du Québec (RRQ) ou du Régime de pensions du Canada (RPC)
net_cap_gains (float) – gains (ou pertes si valeur négative) nets en capital réalisés dans l’année
prev_cap_losses (float) – pertes en capital nettes d’autres années (avec facteur d’inclusion partielle déjà appliqué)
cap_gains_exempt (float) – exonération des gains en capital admissibles demandée (sur gains en capital nets); soumis à un plafond à vie
othtax (float) – autre revenu imposable
othntax (float) – autre revenu non-imposable
inc_rrsp (float) – revenu de REER (retrait de fonds)
self_earn (float) – revenu de travail autonome
div_elig (float) – montant réel des dividendes déterminés (canadiens)
div_other_can (float) – montant réel des dividendes ordinaires (canadiens)
con_rrsp (float) – cotisation REER
con_non_rrsp (float) – cotisation autre que REER (p.ex. à un CELI ou à des comptes non enregistrés)
con_rpp (float) – cotisation à un régime de pension agréé (RPA)
union_dues (float) – cotisations syndicales, professionnelles ou autres
donation (float) – don de bienfaisance et autres dons
gift (float) – dons de biens culturels et écosensibles
years_can (int) – nombre d’années vécues au Canada depuis l’âge de 18 ans lorsque la Pension de la sécurité de la vieillesse (PSV) est demandée
disabled (boolean) – statut d’invalidité selon les règles fiscales (le même statut est utilisé pour l’ensemble des mesures fiscales modélisées)
widow (boolean) – statut de veuf/veuve selon le Programme de la sécurité de la vieillesse
med_exp (float) – montant des dépenses en santé admissibles selon les règles fiscales (le même montant est utilisé pour tous les paliers de gouvernement)
ndays_chcare_k1 (float) – nombre de jours de garde du premier enfant
ndays_chcare_k2 (float) – nombre de jours de garde du second enfant
asset (float) – valeur marchande des actifs (avoirs liquides) comptabilisés aux fins d’admissibilité à l’aide sociale (vérifier la définition selon la province)
oas_years_post (int) – nombre d’années de report pour la PSV (après 65 ans)
months_cerb_cesb (int) – nombre de mois pour lesquels la PCU ou la PCUE est demandée
student (boolean) – statut d’étudiant aux fins d’admissibilité à la PCUE
essential_worker (boolean) – True si travailleur essentiel (au Québec seulement)
hours_month (float) – nombre d’heures travaillées par mois
prev_inc_work (float) – revenu du travail de l’année précédente
dep_senior (boolean) – True si la personne aînée n’est pas autonome aux du crédit d’impôt pour maintien à domicile des aînés
home_support_cost (float) – dépenses engagées pour des services de maintien à domicile rendus ou à être rendus à partir du jour du 70e anniversaire
months_ei (int) – nombre de mois pour lesquels l’Assurance-Emploi sont demandée
months_crb (int) – nombre de mois pour lesquels la PCRE est demandée
pub_drug_insurance (boolean) – True si la personne doit cotiser à l’Assurance médicaments du Québec (pas d’assurance médicaments privée)
tax_shield (boolean) – True si la personne demande le crédit d’impôt bouclier ficscal au Québec
rent (float) – dépense de logement
prop_tax (float) – dépense sur taxe foncière
- attach_prev_work_inc()
- srd.Person.attach_prev_work_inc(self, prev_work_inc)¶
Fonction qui ajoute le revenu du travail de l’an passé s’il est disponible, ou l’approxime avec le revenu du travail de l’année courante sinon.
- Paramètres
prev_work_inc (float) – revenu de travail de l’année précédente
- attach_inc_work_month()
- srd.Person.attach_inc_work_month(self, earn, self_earn)¶
Fonction qui convertit le revenu de travail annuel en revenu mensuel et vice versa.
On entre le revenu de travail annuel ou mensuel (liste avec 12 éléments) et le revenu de travail annuel et mensuel deviennent des attributs de la personne.
- Paramètres
earn (float or list) – revenu de travail salarié
self_earn (float or list) – revenu de travail autonome
- inc_work()
- srd.Person.inc_work()¶
Fonction qui retourne le revenu de travail.
Inclut le revenu de travail autonome.
- Renvoie
Revenu de travail.
- Type renvoyé
float
- inc_non_work()
- srd.Person.inc_non_work()¶
Fonction qui retourne le total des revenus autres que les revenus du travail.
- Renvoie
Revenu provenant de sources autres que le travail.
- Type renvoyé
float
- inc_tot()
- srd.Person.inc_tot()¶
Fonction qui retourne le revenu total.
Ce revenu total contient les montants réels des dividendes de sociétés canadiennes (et non les montants imposables).
- Renvoie
Revenu total.
- Type renvoyé
float
- compute_months_cerb_cesb()
- srd.Person.compute_months_cerb_cesb(self, months_cerb_cesb, student)¶
Fonction qui établit le nombre de mois de PCU ou de PCUE selon le nombre de mois pour lesquels la personne demande la prestation et selon son statut d’étudiant.
- Paramètres
months_cerb_cesb (int) – nombre de mois pour lesquels la prestation est demandée
student (boolean) – True si la personne est étudiante (ou l’était en décembre 2019)
- copy()
- srd.Person.copy(self)¶
Fonction qui produit une copie des attributs de la personne.
- reset()
- srd.Person.reset(self)¶
Fonction qui utilise la copie des attributs de la personne pour réinitialiser l’instance de la personne.
Dépendants (enfant ou proche à charge)¶
- class srd.Dependent(age, disa=False, child_care=0, school=None, home_care=None, med_exp=0)¶
Classe pour définir un dépendant.
Ceci définit un dépendant et son profil.
- Paramètres
age (int) – âge de l’individu
disa (boolean) – statut d’invalidité
child_care (float) – dépenses réelles de frais de garde
school (float) – dépenses de scolarité
home_care (float) – dépenses engagées pour des services de maintien à domicile rendus ou à être rendus à partir du jour du 70e anniversaire
med_exp (float) – dépenses en santé admissibles
Ménages¶
- class srd.Hhold(first, second=None, prov='qc', n_adults_in_hh=None, prev_fam_net_inc_prov=None)¶
Classe pour définir un ménage.
Ceci définit un ménage et son profil.
- adjust_n_adults()
- srd.Hhold.adjust_n_adults(self, n_adults_in_hh)¶
Fonction qui calcule le nombre d’adultes dans le ménage si celui-ci n’est pas fourni.
- Paramètres
n_adults_in_hh (float) – nombre d’adultes dans le ménage s’il est fourni, None sinon
- Renvoie
Nombre d’adultes dans le ménage.
- Type renvoyé
float
- fam_inc_work()
- srd.Hhold.fam_inc_work()¶
Fonction qui calcule le revenu de travail du ménage.
- Renvoie
Revenu de travail du ménage.
- Type renvoyé
float
- fam_inc_non_work()
- srd.Hhold.fam_inc_non_work(self)¶
Fonction qui calcule le revenu familial de sources autres que le travail.
- Renvoie
Revenu familial de sources autres que le travail.
- Type renvoyé
float
- fam_inc_tot()
- srd.Hhold.fam_inc_tot()¶
Fonction qui calcule le revenu familial total.
- Renvoie
Revenu familial total.
- Type renvoyé
float
- fam_after_tax_inc()
- srd.Hhold.fam_after_tax_inc()¶
Fonction qui calcule le revenu familial après impôts.
- Renvoie
Revenu familial après impôts.
- Type renvoyé
float
- fam_disp_inc()
- srd.Hhold.fam_disp_inc()¶
Fonction qui additionne les revenus disponibles du conjoint pour obtenir le revenu disponible familial.
Il s’agit du revenu disponible après impôts, cotisations sociales, épargne (positive ou négative) et prestations.
- Renvoie
Revenu familial disponible, après impôts et cotisations.
- Type renvoyé
float
- child_care_exp()
- srd.Hhold.child_care_exp()¶
Fonction qui calcule la dépense en frais de garde pour le ménage.
- Renvoie
Montant total des dépenses de frais de garde.
- Type renvoyé
float
- fam_net_inc_prov()
- srd.Hhold.fam_net_inc_prov()¶
Fonction qui calcule le revenu familial net pour l’impôt et les programmes provinciaux.
- Renvoie
Revenu familial net provincial.
- Type renvoyé
float
- fam_net_inc_fed()
- srd.Hhold.fam_net_inc_fed()¶
Fonction qui calcule le revenu familial net pour l’impôt et les programmes fédéraux.
- Renvoie
Revenu familial net fédéral.
- Type renvoyé
float
- add_dependent()
- count()
- srd.Hhold.count(self)¶
Fonction pour calculer le nombre d’enfants dans différentes catégories d’âge.
- compute_max_split()
- srd.Hhold.compute_max_split(self)¶
Fonction qui calcule le montant maximal de revenu de pension pouvant être fractionné, et qui l’attache à chaque conjoint du ménage dans l’attribut max_split.
- assess_elig_split()
- srd.Hhold.assess_elig_split(self)¶
Fonction qui établit si le ménage est admissible pour le fractionnement du revenu de pension, et qui l’attache au ménage dans l’attribut elig_split.
- copy()
- srd.Hhold.copy(self)¶
Fonction qui produit une copie des attributs du ménage et des personnes dans le ménage.
- reset()
- srd.Hhold.reset(self)¶
Fonction qui utilise la copie des attributs du ménage et des personnes pour réinitialiser l’instance du ménage.