Ajout bonus "sport": bonus_direct

This commit is contained in:
Emmanuel Viennet 2021-05-19 11:48:00 +02:00
parent e943e7f283
commit 66859c53ba
1 changed files with 28 additions and 50 deletions

View File

@ -45,9 +45,16 @@ def bonus_iutv(notes_sport, coefs, infos=None):
return bonus return bonus
def bonus_iut_stdenis(notes_sport, coefs, infos=None): def bonus_direct(notes_sport, coefs, infos=None):
"""Semblable à bonus_iutv mais sans coefficients et total limité à 0.5 points. """Un bonus direct et sans chichis: les points sont directement ajoutés à la moyenne générale.
Les coefficients sont ignorés: tous les points de bonus sont sommés.
(rappel: la note est ramenée sur 20 avant application).
""" """
return sum(notes_sport)
def bonus_iut_stdenis(notes_sport, coefs, infos=None):
"""Semblable à bonus_iutv mais sans coefficients et total limité à 0.5 points."""
points = sum([x - 10 for x in notes_sport if x > 10]) # points au dessus de 10 points = sum([x - 10 for x in notes_sport if x > 10]) # points au dessus de 10
bonus = points * 0.05 # ou / 20 bonus = points * 0.05 # ou / 20
return min(bonus, 0.5) # bonus limité à 1/2 point return min(bonus, 0.5) # bonus limité à 1/2 point
@ -62,7 +69,7 @@ def bonus_colmar(notes_sport, coefs, infos=None):
sur 20 obtenus dans chacune des matières optionnelles sont cumulés sur 20 obtenus dans chacune des matières optionnelles sont cumulés
dans la limite de 10 points. 5% de ces points cumulés s'ajoutent à dans la limite de 10 points. 5% de ces points cumulés s'ajoutent à
la moyenne générale du semestre déjà obtenue par l'étudiant. la moyenne générale du semestre déjà obtenue par l'étudiant.
""" """
# les coefs sont ignorés # les coefs sont ignorés
points = sum([x - 10 for x in notes_sport if x > 10]) points = sum([x - 10 for x in notes_sport if x > 10])
@ -73,7 +80,7 @@ def bonus_colmar(notes_sport, coefs, infos=None):
def bonus_iutva(notes_sport, coefs, infos=None): def bonus_iutva(notes_sport, coefs, infos=None):
"""Calcul bonus modules optionels (sport, culture), règle IUT Ville d'Avray """Calcul bonus modules optionels (sport, culture), règle IUT Ville d'Avray
Les étudiants de l'IUT peuvent suivre des enseignements optionnels Les étudiants de l'IUT peuvent suivre des enseignements optionnels
de l'Université Paris 10 (C2I) non rattachés à une unité d'enseignement. de l'Université Paris 10 (C2I) non rattachés à une unité d'enseignement.
Si la note est >= 10 et < 12, bonus de 0.1 point Si la note est >= 10 et < 12, bonus de 0.1 point
@ -93,42 +100,13 @@ def bonus_iutva(notes_sport, coefs, infos=None):
return 0 return 0
# XXX Inutilisé (mai 2020) ? à confirmer avant suppression XXX
# def bonus_iut1grenoble_v0(notes_sport, coefs, infos=None):
# """Calcul bonus sport IUT Grenoble sur la moyenne générale
#
# La note de sport de nos étudiants va de 0 à 5 points.
# Chaque point correspond à un % qui augmente la moyenne de chaque UE et la moyenne générale.
# Par exemple : note de sport 2/5 : chaque UE sera augmentée de 2%, ainsi que la moyenne générale.
#
# Calcul ici du bonus sur moyenne générale et moyennes d'UE non capitalisées.
# """
# # les coefs sont ignorés
# # notes de 0 à 5
# points = sum([x for x in notes_sport])
# factor = (points / 4.0) / 100.0
# bonus = infos["moy"] * factor
# # Modifie les moyennes de toutes les UE:
# for ue_id in infos["moy_ues"]:
# ue_status = infos["moy_ues"][ue_id]
# if ue_status["sum_coefs"] > 0:
# # modifie moyenne UE ds semestre courant
# ue_status["cur_moy_ue"] = ue_status["cur_moy_ue"] * (1.0 + factor)
# if not ue_status["is_capitalized"]:
# # si non capitalisee, modifie moyenne prise en compte
# ue_status["moy"] = ue_status["cur_moy_ue"]
#
# # open('/tmp/log','a').write( pprint.pformat(ue_status) + '\n\n' )
# return bonus
def bonus_iut1grenoble_2017(notes_sport, coefs, infos=None): def bonus_iut1grenoble_2017(notes_sport, coefs, infos=None):
"""Calcul bonus sport IUT Grenoble sur la moyenne générale (version 2017) """Calcul bonus sport IUT Grenoble sur la moyenne générale (version 2017)
La note de sport de nos étudiants va de 0 à 5 points. La note de sport de nos étudiants va de 0 à 5 points.
Chaque point correspond à un % qui augmente la moyenne de chaque UE et la moyenne générale. Chaque point correspond à un % qui augmente la moyenne de chaque UE et la moyenne générale.
Par exemple : note de sport 2/5 : la moyenne générale sera augmentée de 2%. Par exemple : note de sport 2/5 : la moyenne générale sera augmentée de 2%.
Calcul ici du bonus sur moyenne générale Calcul ici du bonus sur moyenne générale
""" """
# les coefs sont ignorés # les coefs sont ignorés
@ -162,14 +140,14 @@ def bonus_lille(notes_sport, coefs, infos=None):
def bonus_iutlh(notes_sport, coefs, infos=None): def bonus_iutlh(notes_sport, coefs, infos=None):
"""Calcul bonus sport IUT du Havre sur moyenne générale et UE """Calcul bonus sport IUT du Havre sur moyenne générale et UE
La note de sport de nos étudiants va de 0 à 20 points. La note de sport de nos étudiants va de 0 à 20 points.
m2=m1*(1+0.005*((10-N1)+(10-N2)) m2=m1*(1+0.005*((10-N1)+(10-N2))
m2 : Nouvelle moyenne de l'unité d'enseignement si note de sport et/ou de langue supérieure à 10 m2 : Nouvelle moyenne de l'unité d'enseignement si note de sport et/ou de langue supérieure à 10
m1 : moyenne de l'unité d'enseignement avant bonification m1 : moyenne de l'unité d'enseignement avant bonification
N1 : note de sport si supérieure à 10 N1 : note de sport si supérieure à 10
N2 : note de seconde langue si supérieure à 10 N2 : note de seconde langue si supérieure à 10
Par exemple : sport 15/20 et langue 12/20 : chaque UE sera multipliée par 1+0.005*7, ainsi que la moyenne générale. Par exemple : sport 15/20 et langue 12/20 : chaque UE sera multipliée par 1+0.005*7, ainsi que la moyenne générale.
Calcul ici de la moyenne générale et moyennes d'UE non capitalisées. Calcul ici de la moyenne générale et moyennes d'UE non capitalisées.
""" """
# les coefs sont ignorés # les coefs sont ignorés
points = sum([x - 10 for x in notes_sport if x > 10]) points = sum([x - 10 for x in notes_sport if x > 10])
@ -205,8 +183,8 @@ def bonus_tours(notes_sport, coefs, infos=None):
def bonus_iutr(notes_sport, coefs, infos=None): def bonus_iutr(notes_sport, coefs, infos=None):
"""Calcul du bonus , regle de l'IUT de Roanne (contribuée par Raphael C., nov 2012) """Calcul du bonus , regle de l'IUT de Roanne (contribuée par Raphael C., nov 2012)
Le bonus est compris entre 0 et 0.35 point. Le bonus est compris entre 0 et 0.35 point.
cette procédure modifie la moyenne de chaque UE capitalisable. cette procédure modifie la moyenne de chaque UE capitalisable.
""" """
# modifie les moyennes de toutes les UE: # modifie les moyennes de toutes les UE:
@ -260,7 +238,7 @@ def bonus_saint_etienne(notes_sport, coefs, infos=None):
"""IUT de Saint-Etienne (jan 2014) """IUT de Saint-Etienne (jan 2014)
Nous avons différents types de bonification Nous avons différents types de bonification
bonfication Sport / Associations bonfication Sport / Associations
coopératives de département / Bureau Des Étudiants coopératives de département / Bureau Des Étudiants
/ engagement citoyen / Langues optionnelles / engagement citoyen / Langues optionnelles
Nous ajoutons sur le bulletin une bonification qui varie entre 0,1 et 0,3 ou 0,35 pour chaque item Nous ajoutons sur le bulletin une bonification qui varie entre 0,1 et 0,3 ou 0,35 pour chaque item
la bonification totale ne doit pas excéder les 0,6 point. la bonification totale ne doit pas excéder les 0,6 point.
@ -278,9 +256,9 @@ def bonus_saint_etienne(notes_sport, coefs, infos=None):
def bonus_iutTarbes(notes_sport, coefs, infos=None): def bonus_iutTarbes(notes_sport, coefs, infos=None):
"""Calcul bonus modules optionnels """Calcul bonus modules optionnels
(sport, Langues, action sociale, Théâtre), règle IUT Tarbes (sport, Langues, action sociale, Théâtre), règle IUT Tarbes
Les coefficients ne sont pas pris en compte, Les coefficients ne sont pas pris en compte,
seule la meilleure note est prise en compte seule la meilleure note est prise en compte
le 1/30ème des points au-dessus de 10 sur 20 est retenu et s'ajoute à le 1/30ème des points au-dessus de 10 sur 20 est retenu et s'ajoute à
la moyenne générale du semestre déjà obtenue par l'étudiant. la moyenne générale du semestre déjà obtenue par l'étudiant.
@ -408,7 +386,7 @@ def bonus_iutbethune(notes_sport, coefs, infos=None):
def bonus_demo(notes_sport, coefs, infos=None): def bonus_demo(notes_sport, coefs, infos=None):
"""Fausse fonction "bonus" pour afficher les informations disponibles """Fausse fonction "bonus" pour afficher les informations disponibles
et aider les développeurs. et aider les développeurs.
Les informations sont placées dans le fichier /tmp/scodoc_bonus.log Les informations sont placées dans le fichier /tmp/scodoc_bonus.log
qui est ECRASE à chaque appel. qui est ECRASE à chaque appel.
*** Ne pas utiliser en production !!! *** *** Ne pas utiliser en production !!! ***
""" """