En électricité, la relation entre U et I dans une résistance est relativement bien connue.
A comparer avec ta courbe, et il faut sûrement en déduire quelque chose sur l'interpolation de Lagrange et ses limites.
En électricité, la relation entre U et I dans une résistance est relativement bien connue.
A comparer avec ta courbe, et il faut sûrement en déduire quelque chose sur l'interpolation de Lagrange et ses limites.
Finalement, en fait ce qui n'a pas l'air de fonctionner c'est quand tu prends un point en dehors des mesures donc de ce qui est passé à la fonction lagrange, par exemple si tu prends 600, ta fonction l renvoie -479 c'est pour cela que tu as une courbe aberrante.
Si tu limites à 400 au lieu de 600 la plage w, la courbe et l'échelle sont beaucoup plus correctes.
Bonsoir
Voici les premières indications de l'exercice.
Les mesures de l’intensité de courant I et de la tension U aux bornes d’une résistance de 220 Ohms à 5%.
Peut-être qu'il faut modifier les données avant de réaliser le graphique.
A bientôt
Si U = RI et que R = 220ohms, on devrait avoir pour chaque mesure de U et de I le rapport U / I égal à 220 (à 5% près).
L'interpolation de Lagrange fabrique un polynome dont le degré sera le nombre de mesures/points.
Si la fonction n'est pas trop fausse dans l'intervalle des mesures, ça n'a aucune chance d'être linéaire en dehors.
note: dit autrement "interpolation" c'est qu'on peut appliquer la fonction à des points de l'intervalle. Pouvoir l'appliquer en dehors s'appelle extrapolation (et pour faire ça on n'utilisera pas l'interpolation de...).
- W
Bonsoir
Voici mes dernières modifications.
Il semble qu'il y ait toujours un souci avec P(W).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 def tracer(): R = 220 u = R*i w = np.arange(0,600, 2) P=lagrange([0, 51, 101, 151, 203, 252, 303, 356, 406, 456], [0, 1.11, 2.11, 3.28, 4.42, 5.5, 6.68, 7.73, 8.92, 9.91]) plt.title("Les mesures de lintensité de courant I et de la tension U aux bornes dune résistance") plt.scatter(i,u, label=" UI") plt.plot(w, P(w), label="P(W)", color ='red') plt.grid() plt.ylabel('U(V)') plt.xlabel('I(A)') plt.legend() plt.show()
A bientôt
Vous devez essayer de répondre à ce genre de question par vous même.
On peut lancer l'interpréteur Python et y taper:
Le polynome sera "correct" si appliqué a A on retrouve B:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 >>> from scipy.interpolate import lagrange >>> A = [0, 51, 101, 151, 203, 252, 303, 356, 406, 456] >>> B = [0, 1.11, 2.11, 3.28, 4.42, 5.5, 6.68, 7.73, 8.92, 9.91] >>> p = lagrange(A, B)
Ce qui est le cas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >>> p(A) array([0. , 1.11, 2.11, 3.28, 4.42, 5.5 , 6.68, 7.73, 8.92, 9.91]) >>>
Reste qu'on a déjà remarqué les unités utilisés pour le courant.... et de vous questionner sur ce qu'étaient tension et courant dans vos données (pour avoir un rapport de 220 entre les 2).
Dit autrement, faire des calculs avec un ordinateur ne vous dispense pas de savoir ce que sont les mesures utilisées et leur cohérence avec les réalités physiques qui sont dessous. Mais comme en général les exercices de programmations n'utilisent les réalités de tous les jours que pour être plus vivants (moins abstraits), ça n'a pas grande importance.
- W
Bonjour
I(mA): [0, 51, 101, 151, 203, 252, 303, 356, 406, 456]
U(V) : [0, 1.11, 2.11, 3.28, 4.42, 5.5, 6.68, 7.73, 8.92, 9.91]
Si P(W) représente la puissance, c'est la que je bloque, à moins que je fasse erreur la puissance P = U x I.
Comment aligner la courbe de P(W) avec les points ?
A bientôt
Dans le calcul que vous avez fait, P donne la tension en fonction de l'intensité.... (et doit vérifier U = RI).
Calculer la puissance pourquoi pas... mais si vous ne faites rien pour ça, çà ne va pas sortir tout seul d'un chapeau magique.
Réfléchir à ce que vous voulez faire et à comment l'obtenir... Là vous vous contentez de demander à la machine d'afficher des graphiques que vous ne savez pas interpréter.... et en plus vous ne tenez pas compte des remarques qui vous ont été faites.
note: c'est bien de raconter que I est en mA mais c'est à vous d'en faire quelque chose.
- W
Hello,
si c'est un truc comme cela que tu veux obtenir, il y a des choses à revoir dans ton code :
1 - Si tu veux voir la puissance (en watts) dans ton graphique , ton axe des ordonnées doit être en watt et la fonction à représenter u*i et les points en ordonnées aussi u*i.
2 - il faut diviser par 1000 tes mesures de i ou autre chose car les mesures sont bizarres si la résistance est de 220 ohms.
3 - La plage w ne doit pas dépasser la mesure la plus grande.
Ami calmant, J.P
Si on reprends ce que tu as dis sur la question à résoudre:
Il n'est nul question de puissance au autre (a priori). A voir ce que l'on entend par 'image de ce vecteur par le polynôme de Lagrange".
Si c'est utilisé le polynôme précédent pour tracer u(w) alors ta courbe était bonne et montre les limites de l'interpolation (qui permet de trouver des polynômes pour tracer une courbe passant par les points fournis; en dehors de ces points, rien ne dit que l'interpolation sera correcte, on pourrait d'ailleurs trouver plusieurs équations de courbes qui peuvent passer par ces points).
Si tu veux la puissance, il faut faire une multiplication terme à terme des vecteurs u et i p=u*i va donner les bonnes valeurs.
Comme tu veux en fonction du nouveau vecteur w, l(w) (avec l = lagrange(i,u) ) devrait te donner les valeurs u pour ce vecteur. Et ainsi permettre de calculer P(w) via w*l(w) (en gardant à l'esprit les limites de l'interpolation faite)
PS: vérifie quand même cette histoire d'unité quand même (ou de valeur de R)
PS2: et comme i serait en mA, la puissance sera en mW (milliWatt) (et ne pas confondre le W de Watt avec w le nom de la variable du nouveau vecteur de courant.
Bonsoir
Là la droite est alignée avec les points.
La question est, est-ce que le graphique est correct ?
Voici le code complet:
A bientôt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 import numpy as np import matplotlib.pyplot as plt from scipy.interpolate import lagrange i = np.array([0, 51, 101, 151, 203, 252, 303, 356, 406, 456]) v = np.array([0, 1.11, 2.11, 3.28, 4.42, 5.5, 6.68, 7.73, 8.92, 9.91] * 220) R = 220 u = R*i def tracer(): w = np.arange(0,600, 2) P=lagrange(i, u) plt.subplots(figsize=(10, 8), layout='constrained') plt.title("Les mesures de lintensité de courant I et de la tension U aux bornes dune résistance") plt.scatter(i,u, label=" UI") plt.plot(w, P(w), label="P(W)", color ='red') plt.grid() plt.ylabel('U(V)') plt.xlabel('I(mA)') plt.legend() plt.show() def afficher(): print('Calcul de P(W)') print(lagrange(i, u)) tracer() afficher()
Oui 120000V c'est logique
Apprend déjà l'électronique ou l'électricité avant le développement informatique ou ne développe pas sur des sujets que tu ne maîtrises pas...
Soit tu as un problème de vue, soit aucune notion dans ce métier (ou peut-être même les mathématiques de base).
Essaye de calculer la résistance R !
Bonsoir
A l'aide d'une lecture graphique de (UI), j'ai sélectionné un point pour trouver tension et courant (sans la droite P(W)). Et en suite j'ai trouvé la résistance.
Voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 import numpy as np import matplotlib.pyplot as plt from scipy.interpolate import lagrange i = np.array([0, 51, 101, 151, 203, 252, 303, 356, 406, 456]) v = np.array([0, 1.11, 2.11, 3.28, 4.42, 5.5, 6.68, 7.73, 8.92, 9.91]) R = 0.02193 u = R*i def tracer(): w = np.arange(0,600, 2) P=lagrange(i, u) plt.subplots(figsize=(10, 8), layout='constrained') plt.title("Les mesures de lintensité de courant I et de la tension U aux bornes dune résistance") plt.scatter(i,v, label=" UI") plt.plot(w, P(w), label="P(W)", color ='red') plt.grid() plt.ylabel('U(V)') plt.xlabel('I(mA)') plt.legend() plt.show() def afficher(): print('Calcul de P(W)') print(lagrange(i, u)) tracer() afficher()
A bientôt
Si on fait une interpolation, c'est parce (a priori) on ne connait de la fonction que les 10 "mesures" (données par les variables i et v). Si on doit "calculer" la valeur de la tension en fonction de l'intensité en d'autres points (de l'intervalle), on calcule le polynôme de Lagrange qui servira de fonction.
Bien sûr ici on connait la fonction U = R*I mais calculer le polynôme de Lagrange pour les 230 points fabriqués par cette fonction n'a aucun intérêt (sauf à vérifier que le polynôme de Lagrange fabriqué à partir des 10 vraies mesures donne des résultats semblables à ceux de la fonction connue).
- W
Et rien ne te choque entre la valeur de R que tu as trouvé (qui s'exprime en KOhms donc 0.02193KOhms=21.93Ohms) et la valeur que l'on te donne dans l'exercice (d'après tes dires)?
Partager