Inscription / Connexion Nouveau Sujet

1 2 +


Niveau seconde
Partager :

mesure longueur courbe avec python

Posté par
caroleti
28-04-21 à 15:41

Bonjour, j'ai un dm avec python pour calculer une longueur de courbe et j'ai du mal, pas beaucoup de cours avec le COVID

Dans un repère orthonormé, on considère la courbe (Γ) suivante, insérée dans le carré OABC.(Γ) représente la fonction x↦(x−1) 2   sur [0;1].
On place un point M d'abscisse x M   sur (Γ).
Question préliminaire :
Comment peut-on évaluer la longueur L de la courbe (Γ)?

on nous donne le programme python suivant:
from math import sqrt

def LongueurCourbe(n):
  p = 1/n
  xA = 0
  xB = xA + p
  L = 0
  for i in range(1, n+1):
    yA = (xA - 1)**2
    yB = (xB - 1)**2
    L = L + ...
    xA = xA + p
    xB = xB + p
  return L

et on nous pose les questions:
Que représentent la variable n, la variable L et la variable p?

2. Expliquer l'instruction de la ligne 6.

3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).

4. Tester l'algorithme pour n=4,n=10,n=100 et n=1000.

5. En déduire une valeur approchée à 10 exp−2
  près par excès de la longueur de la ligne brisée.

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 16:24

HELP

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 16:48

Bonjour,

1. quel est ton niveau ? iut (ton profil) ou seconde (ton post).....

2. ton énoncé parle d'une courbe "suivante" , poste la !

3. dis ce que tu as fait.

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 28-04-21 à 18:59

Bonjour,

Remarquer tout de même que l'équation de la courbe est donnée
... mais sans aucun rapport avec "le carré OABC" qui, lui, n'est pas défini !
pour joindre une figure (uniquement des figures) :

attentionextrait de c_faq la FAQ du forum :

Q05 - Puis-je insérer une image dans mon message ? Comment faire ? Quelle image est autorisée ?

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 19:04

mathafou,
c'est bien parce que OABC  n'est pas défini que j'ai demandé la figure.
De plus, on ne voit pas ce que le point M vient faire. Il n'est pas mentionné dans la suite de l'énoncé.

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 19:06

enfin, caroleti n'est pas nouveau et a déjà posté des images...

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 20:00

voici la courbe

mesure longueur courbe avec python

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 20:17

OK, merci pour la courbe.
Precise ton niveau,
dis ce que tu as fait,
je t'aiderai ensuite volontiers.

Posté par
pseudodk
re : mesure longueur courbe avec python 28-04-21 à 20:40

Indique ce que tu ne comprends pas.
Pour l'instruction  L = L + ...  à compléter , on pourrait calculer à chaque tour de la boucle, l'hypoténuse d'un triangle rectangle connaissant les deux autres cotés  

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 20:49

merci pseudodk de ta participation, mais j'espérais  que ce soit caroleti  qui réponde.
Il doit mettre à jour son niveau dans son profil ...   tout comme toi, d'ailleurs, je crois.
.. et s'investir  sur son sujet.
Avant de compléter le programme, il faudra que caroleti dise "Comment peut-on évaluer la longueur L de la courbe (Γ)?".
(on programme une fonction après avoir précisé ce qu'elle doit faire).

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 21:09

en fait, je suis en seconde mais j'utilise le compte de ma mère qui a fait IUT il y a longtemps et n'a pas appris Python
pour la question 1
Que représentent la variable n, la variable L et la variable p?

n représente variable
p l'inverse de n
L longueur de la courbe


2. Expliquer l'instruction de la ligne 6.

xB=xA+p

l'abcisse du point B est égal à l'abcisse A + p (1/n)

3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).

L=L +p

4. Tester l'algorithme pour n=4,n=10,n=100 et n=1000.
pour n=4 ?


5. En déduire une valeur approchée à 10 exp−2
  près par excès de la longueur de la ligne brisée.
?[rouge][/rouge]

Je ne sais pas et on a eu peu de cours, j'ai l'impression d'avoir tout faux

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 21:17

il faut d'abord que tu répondes à la question
"Comment peut-on évaluer la longueur L de la courbe (Γ)?".
sur ta figure, avec un point M sur la courbe, tu vois deux segments de droite  [AM] et [CM].
la somme des longueurs de [AM] et [CM] approche la longueur de la courbe, n'est ce pas ?
mais si tu plaçais deux points M et N, tu aurais 3 segments, et leur somme serait un peu plus proche de la longueur de la courbe..
et si tu avais 10 segments, ce serait encore plus proche..

tu es d'accord avec ça ?

à présent, à ton avis, que représente la variable n ?

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 21:20

n représente une variable de longueurs

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 21:23

une variable de longueur de courbe

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 21:30

et le reste
p linverse de n
et L la longueur totale à calculer

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 21:34

??
ben non,   n est le nombre de segments.
L  c'est la longueur calculée de la courbe.
et 1/n , c'est le pas :   OA= 1,    tu divises OA par le nombre de segments, pour trouver le pas.

2. Expliquer l'instruction de la ligne 6.   xB=xA+p

l'abcisse du point B est égal à l'abcisse A + p  : oui, si on a divisé OA en n parties de longueur p, pour chaque segment AB, xB-xA= p  (le pas).


3. Compléter l'instruction de la ligne 11 afin que le programme évalue la longueur de la courbe (Γ).
L=L+p   est faux.    
au départ L=0.
tu calcules la longueur d'un segment AB, et tu l'ajoutes à L.
L = L  +  longueur du segment AB.
comment fais tu pour calculer la longueur d'un segment dont tu connais les coordonnées ?

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:00

AB=racine((xB-xA)2[/sup]+(yB_yA)2[sup])

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:01

AB=racine((xB-xA)[/sup]2+ (yB_yA)[sup]2)

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:02

AB=racine((xB-xA)exp2+(yB_yA)exp2) je n'arrive pas à mettre le carré

Posté par
Leile
re : mesure longueur courbe avec python 28-04-21 à 22:02

oui.

je quitte pour ce soir, je te laisse terminer.

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:07

je ne sais pas trop pour le reste
n=4,n=100 et 1000 la question 4 puis 5

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:14

AB=racine( (p **2+(xB-1)**2-(xA-1)**2)=racine (p**2+xB**2-1-xA**2+1)=racine(xB+xA)=racine(-p)=racine(-1/n)

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:17

L=L+racine(-1/n)?
pour n=4 ?

et pour la question 5?

Posté par
caroleti
re : mesure longueur courbe avec python 28-04-21 à 22:17

OK à demain

Posté par
ZEDMAT
re : mesure longueur courbe avec python 28-04-21 à 23:48

Bonsoir à vous toutes et tous,

En attendant demain...

mesure longueur courbe avec python

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 09:08

Bonjour merci mais comment dois je faire pour présenter mes réponses sur feuille pour questions 4 et 5

Posté par
ZEDMAT
re : mesure longueur courbe avec python 29-04-21 à 10:02

En attendant que Leile reprenne la main....

1) Tu n'as pas explicitement répondu à la question 3...
Pourtant tu as retrouvé la formule qui donne la distance entre 2 points (par exemple A et B) dont on connait les coordonnées.

Si A(xA;yA) et B(xB;yB) alors
AB= \sqrt{(x_B-x_A)^2+(y_B-y_A)^2}

Alors comment vas tu compléter la ligne 11 ?

2) Pour la question 4, il te faut passer à l'action :  mettre ton script dans l'éditeur Python que tu as sur ton ordinateur (EduPython ??). Puis tester ton script (programme) en prenant n = 4, puis 10...

NB : les 3 figures que je t'ai envoyées hier soir on été faites avec GEOGEBRA . Elles te montrent comment en prenant un nombre n de segments de plus en plus grand, on construit une ligne brisée qui "colle" de plus en plus près à la courbe que l'on veut mesurer. (sauf erreur involontaire de saisie, les figures te donnent les... bonnes réponses pour n=2, n=4 et n=10 : tu peux vérifier ce que tu vas obtenir avec Python).

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 12:23

si question 3:
L = L  +   \sqrt{(x_B-x_A)^2+(y_B-y_A)^2}

Pour la question 4 : comment je peux tester en écrivant sur feuille?,
je note les résultats? [rouge]pour n=4,n=10 .... Je ne vais marqué tous les résultats.
ou je marque test OK[/rouge]
Et pour la question5: En déduire une valeur approchée à 10 exp−2
  près par excès de la longueur de la ligne brisée.
Je donne quoi?

dans l'énoncé original, on nous demande de faire avec Python et avec Geogebra.

là, j'ai demandé de l'aide avec Python , je n'ai pas encore regardé avec Geogebra

Posté par
ZEDMAT
re : mesure longueur courbe avec python 29-04-21 à 12:38


question 3: OUI, c'est le bon code
L = L  + [ tex]  \sqrt{(x_B-x_A)^2+(y_B-y_A)^2}[ /tex]
Ta formule Latex ne s'affichait pas bien car tu ne l'avais pas écrite entre les balises. Pour mettre les balises, tu sélectionnes la formule Latex puis tu actives dans la barre d'outils sous la fenêtre du message, l'outil Ltx (celui de gauche) qui positionne les 2 balises. Pour voir l'effet produit, il faut passer en mode Aperçu (juste à coté du bouton  POSTER)

Pour la question 4, il te faut passer en Python et faire tourner ton script recopié dans l'éditeur....
As tu fait cela ? pour n=4, qu'obtiens tu comme réponse ?

Posté par
Leile
re : mesure longueur courbe avec python 29-04-21 à 12:38

Bonjour ZEDMAT,

merci pour ces figures sous Goegebra.
J'ai un imprévu aujourd'hui : peux tu garder la main ? Merci !
Bonne journée à tous.

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 12:43

je suis en train de retélécharger Python, car celui donné sur le PC du lycée à planté.

et comment je fais pour répondre à la question 4, je donne juste le résultat.
En fait mon soucis est la présentation car on doit répondre sur feuille papier et pas d'imprimante

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 13:31

Bonjour,

Q4, on te demande de recopier les quatre valeurs que donnera ton programme Python
pour n = 4, pour n=10, pour n=100 et n=1000.

pour cela il faut faire tourner le programme traduit en Python, sur Python.
(\sqrt{...} et xxx^2, ça ne s'écrit pas comme ça en Python)

question suivante : quel est l'écart entre ces valeurs ?

Posté par
ZEDMAT
re : mesure longueur courbe avec python 29-04-21 à 13:34

@ Leile
Bien volontiers. Bonne journée.

@ caroleti

Citation :
comment je fais pour répondre à la question 4, je donne juste le résultat.

Dans un premier temps, il me semble nécessaire que tu (nous) donnes le résultat ... juste , celui fourni par ton programme en Python .

Questions :
1) De quel environnement Python , disposes tu ? Edupython ?
2) Je suis curieux de voir ce qui t'est demandé avec GEOGEBRA.

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 13:43

Bonjour ZEDMAT
je te laisse poursuivre bien entendu.

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 14:02

oui edupython avec Pyscripter

pour Geogebra:
Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :

Fonction((x-1)**2,0,1)


2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.

g = 0.79
h = 0.66




b. Créer un nombre égal à CM+MA.

k = g + h


c. Déplacer le point M et donner une première estimation de la longueur L.

3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).

4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
  près par excès de la longueur de la ligne brisée.

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 14:21

from math import sqrt

def LongueurCourbe(n):
  p = 1/n
  xA = 0
  xB = xA + p
  L = 0
  for i in range(1, n+1):
    yA = (xA - 1)**2
    yB = (xB - 1)**2
    L = L + sqrt((xB-xA)**2+(yB-yA)**2)
    xA = xA + p
    xB = xB + p
  return L

j'ai écris le programme je n'arrive pas à faire tourner la machine pour n=4 ....

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 14:49

en l'absence de ZEDMAT
as tu bien lancé l'exécution (flèche verte)
que dit il ? normalement :

*** Console de processus distant Réinitialisée ***
>>>


as tu bien ensuite tapé dans la console la commande appelant la fonction
>>> LongueurCourbe(4)
(résultat ici)


Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 14:56

il marque 1,472480

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 14:59

du coup je teste pour les autres valeurs de n
et pour la question 5
je réponds avec la valeur obtenue pour 100 et je marque résultat = 1,48?

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 15:10

parfait.

dans le cadre de l'exo la réponse est correcte et suffit
tu peux comparer avec LongueurCourbe(1000) par exemple pour conforter que ça ne va vraisemblablement pas dépasser cette valeur.
(on ne serait pas embêté s'ils avaient demandé une valeur par défaut !!)

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 15:17

>>> LongueurCourbe(1000)
1.4789427830089976

En déduire une valeur approchée à 10 exp−2
  près par excès de la longueur de la ligne brisée.

je répond donc L= 1.48

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 15:28

oui ai-je dit.
(l'exo n'en demande pas plus)

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 15:33

pardon, merci beaucoup
du coup, je vais m'attaquer à GEOGEBRA

Posté par
ZEDMAT
re : mesure longueur courbe avec python 29-04-21 à 17:13

Merci mathafou d'avoir pris le relai .
Il fait si beau et la nature est si belle !!

Je suis curieux de voir ce que l'énoncé demande de faire avec GEOGEBRA

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 17:57

l'énoncé pour GEOGEBRA est le suivant:

pour Geogebra:
Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :

Fonction((x-1)**2,0,1)


2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.

g = 0.79
h = 0.66




b. Créer un nombre égal à CM+MA.

k = g + h


c. Déplacer le point M et donner une première estimation de la longueur L.

3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).

4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
  près par excès de la longueur de la ligne brisée.

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 18:10

oui on avait lu

fais le, tout est dit pas à pas explicitement ...
et dis précisément ce qui te bloque

Posté par
ZEDMAT
re : mesure longueur courbe avec python 29-04-21 à 18:17

Merci pour cet énoncé.

C'est à peu près ce que j'avais fait

Si tu as encore besoin d'aide, on est là.
Sinon bonne continuation et bon courage

Posté par
alb12
re : mesure longueur courbe avec python 29-04-21 à 18:47

salut,

caroleti @ 29-04-2021 à 15:17

>>> LongueurCourbe(1000)
1.4789427830089976

A comparer avec la valeur exacte: \dfrac{\sqrt{5}}{2}+\dfrac{1}{4} \left(\sqrt{5}+2\right)\approx1.47894285754

Cette valeur exacte s'obtient avec GeoGebra en tapant
Simplifier(Longueur((x-1)^2,0,1))
dans une ligne de commande du module Calcul formel.

Posté par
mathafou Moderateur
re : mesure longueur courbe avec python 29-04-21 à 18:53


hors sujet tant que l'exo n'est pas terminé.
caroleti : ne tiens pas compte de "ça"
ça ne fait pas partie de l'exo

Posté par
caroleti
re : mesure longueur courbe avec python 29-04-21 à 19:05

Ouvrir le logiciel GeoGebra et placer les points A(1;0),B(1;1) et C(0;1). Tracer le carré OABC et la courbe (Γ), en tapant dans la barre de saisie l'instruction suivante :

Fonction((x-1)**2,0,1)

réponse: p(x) = Si(0<x<1;(x-1)**2)[/code] il faut lire < ou egal je n'ai pas le symbole
2. a. Placer un point M sur la courbe (Γ) et observer la longueur CM et MA dans la fenêtre Algèbre.

g = 0.79
g=Point(p)
(0.79,0.04)

h = 0.66
h = Point(p)
(0.66,0.12)
Jene sais pas si c'est la réponse qu'on attend, j'ai appuyer sr lecture et attendu que le point M descende à la valeur 0.79 et 0.66, je n'ai pas compris la fenêtre algèbre?



b. Créer un nombre égal à CM+MA.

k = g + h
cela fait un vecteur avec ses corodonnées (1.45 en dessous 0.16)
je ne crois pas que c'est bon à mon avis je ne sais pas comment faire la question 2 avec g et h


c. Déplacer le point M et donner une première estimation de la longueur L.

3. Réitérer le processus en plaçant deux points, puis trois points, et ensuite dix points sur (Γ).

4. En utilisant l'outil distance, déduire une valeur approchée à 10
−2
  près par excès de la longueur de la ligne brisée.

1 2 +




Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1488 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !