Incertitudes sur Python

Sur les différentes pratiques pédagogiques et les documents généraux, les évaluations, la didactique, l'épistémologie... Tout ce qui est disciplinaire mais non lié à un niveau donné.

Incertitudes sur Python

Messagede choup78 » 10 Oct 2024, 10:38

Bonjour,

je travaille sur un programme pour faire calculer les incertitudes par Python mais je ne trouve pas comment arrondir un nombre décimal au supérieur (je trouve à l'entier supérieur avec ceil() mais pas à la décimale supérieure....
Par exemple si le calcul de mon incertitude donne 0,0121 j'aimerais l'arrondi à 0,02...

Quelqu'un de calé en Python pour m'aider?

Merci d'avance!
choup78
 
Messages: 231
Inscription: 16 Jan 2013, 19:39
Académie: versailles
Poste: Enseignant en Collège/Lycée

Re: Incertitudes sur Python

Messagede gts2 » 10 Oct 2024, 11:03

Quelque chose du genre :

def arrondi(x):
puiss=math.pow(10,math.floor(math.log10(x)))
y=math.ceil(x/puiss)*puiss
return y

peut-il convenir ?
gts2
 
Messages: 361
Inscription: 19 Fév 2019, 10:49
Académie: Orléans-Tours
Poste: Enseignant en Classes préparatoires

Re: Incertitudes sur Python

Messagede choup78 » 10 Oct 2024, 11:35

je ne comprends pas très bien où coller ça (je suis assez novice)

voilà mon programme:

import numpy as np

# Données: valeurs et incertitudes-types (en mm)
d=0,63
L,u_L = 45, 1
D,u_D = 3000, 2

# calcul de u_d, incertitude de type sur d (en mm)
u_d=d*np.sqrt((u_L/L)**2 + (u_D/D)**2)

# affichage du résultat: phrase réponse et résultat en mm

print("l'incertitude sur le diamètre du cheveu vaut u_d=",u_d,"mm")

Là ça me donne u(d) = 0,014.....

je voudrais que le logiciel me donne u_d=0,02

comment faire?
choup78
 
Messages: 231
Inscription: 16 Jan 2013, 19:39
Académie: versailles
Poste: Enseignant en Collège/Lycée

Re: Incertitudes sur Python

Messagede gts2 » 10 Oct 2024, 12:56

On définit la fonction arrondi au début (def) et on l'utilise ensuite :

import math
import numpy as np

def arrondi(x):
puiss=math.pow(10,math.floor(math.log10(x)))
y=math.ceil(x/puiss)*puiss
return y

# Données: valeurs et incertitudes-types (en mm)
d=0.63
L,u_L = 45, 1
D,u_D = 3000, 2

# calcul de u_d, incertitude de type sur d (en mm)
u_d=d*np.sqrt((u_L/L)**2 + (u_D/D)**2)
u_d=arrondi(u_d)

# affichage du résultat: phrase réponse et résultat en mm

print("l'incertitude sur le diamètre du cheveu vaut u_d=",u_d,"mm")
gts2
 
Messages: 361
Inscription: 19 Fév 2019, 10:49
Académie: Orléans-Tours
Poste: Enseignant en Classes préparatoires

Re: Incertitudes sur Python

Messagede choup78 » 10 Oct 2024, 16:53

Super merci bcp! ça marche! ;-)
choup78
 
Messages: 231
Inscription: 16 Jan 2013, 19:39
Académie: versailles
Poste: Enseignant en Collège/Lycée

Re: Incertitudes sur Python

Messagede yoyo » 10 Oct 2024, 18:06

Pas herpétologue j'essaie d'enseigner ma matière ce qui est déjà bien assez compliqué !
yoyo
 
Messages: 200
Inscription: 07 Nov 2012, 08:37
Localisation: 35
Académie: Rennes
Poste: Enseignant en Lycée

Re: Incertitudes sur Python

Messagede choup78 » 10 Oct 2024, 18:39

(je me fais inspecter cette année alors j'essaie de bien rentrer dans les clous....)
choup78
 
Messages: 231
Inscription: 16 Jan 2013, 19:39
Académie: versailles
Poste: Enseignant en Collège/Lycée

Re: Incertitudes sur Python

Messagede nash06 » 21 Oct 2024, 16:30

J'arrive un peu après la bataille, mais il me semble important de revenir sur un point :

Il n'y a pas de raison d'arrondir les incertitudes-types au supérieur. Il faut les arrondir au plus proche. En effet, dire que X=1,43 avec une incertitude-type de 0,20 par exemple, ça ne veut pas dire que X est compris entre 1,23 et 1,63 (autrement dit, ce n'est pas une "incertitude élargie" à 100%), mais c'est simplement un moyen d'estimer un écart-type des mesures possibles si on les répétait un grand nombre de fois.
Donc si l'incertitude-type calculée est 0,2037 par exemple, on écrit, en gardant 2 chiffres comme recommandé par le GUM (et le document suivant qui se base sur le GUM https://eduscol.education.fr/document/7067/download ) u(X)=0,20.
nash06
 
Messages: 20
Inscription: 16 Aoû 2016, 04:21
Académie: Créteil
Poste: Enseignant en Lycée

Re: Incertitudes sur Python

Messagede den » 18 Déc 2024, 12:33

Pour ton inspection, je te conseille plutôt d'avoir un prog qui donne le résultat sans arrondir, et de demander aux élèves d'arrondir les résultats de manière cohérente. Les inspecteurs aiment bien que l'on ne donne pas tout aux élèves et que ceux-ci puissent réfléchir, prendre des initiatives.
den
 
Messages: 250
Inscription: 15 Sep 2012, 07:56
Académie: CRETEIL
Poste: Enseignant en Lycée


Retourner vers Les cours de Sciences Physiques : Enseigner quoi ? Comment ? Pourquoi ?

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité