IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

Calcul de courbure à partir de coordonnées


Sujet :

Mathématiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 3
    Par défaut Calcul de courbure à partir de coordonnées
    Bonjour,

    je cherche actuellement à développer un code de calcul me permettant de retrouver la courbure, de l'approcher tout du moins, d'une courbe définie par des points. En gros, j'ai un fichier contenant des coordonnées mais je n'ai pas d'équation. J'ai bien vu que cela était possible dans d'autres langages (typiquement Matlab mais je n'y entend pas grand chose) et que certaines méthodes existaient mais je suis encore un peu "jeune" en programmation. J'ai une expression géométrique que je pourrais programmer facilement mais je voudrais faire quelque chose de plus propre. J'ai un peu fouillé le numerical recipes cela y est peut-être et je ne suis pas tombé dessus xD
    Néanmoins, si quelqu'un pouvait me donner des indications ou une méthode vers laquelle me tourner cela m'aiderait beaucoup.

    En vous remerciant par avance!

    PS: j'ai des coordonnées 3D

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut
    Salut!
    Ta question n'a rien à voir avec le langage Fortran, En conséquence, je transfère cette discussion dans le forum algo/maths.
    Jean-Marc Blanc

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    je suis plus familier avec le 2D, mais je crois que ça existe aussi en 3D : les splines..

    par exemple Splines 3D (Paul Bourke)

    Tu as aussi une pplication intéressante avec de l'ADN :

    Optimisation du calcul de la courbure d’ADN (pdf)

    'fin bref, il y a pas mal de possibilités.. Il faut rechercher un peu..

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Plouest Voir le message
    En gros, j'ai un fichier contenant des coordonnées mais je n'ai pas d'équation
    Connais-tu également le parcours à suivre de ces coordonnées ? Si oui, je plussoie la méthode de souviron34.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur R&D en apprentissage statistique
    Inscrit en
    Juin 2009
    Messages
    447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur R&D en apprentissage statistique

    Informations forums :
    Inscription : Juin 2009
    Messages : 447
    Par défaut
    N'est-il pas simplement possible de faire une régression de moindres carrés. On chercherait à trouver les paramètre x,y et r tels que:

    E = sum_i (sqrt((xi-x)^2 + (yi-y)^2) - r)^2

    soit minimum.

    en posant ri = sqrt((xi-x)^2 + (yi-y)^2)

    On a le gradient

    dE/dx = -2 sum_i (xi-x) (ri-r)/ri
    dE/dy = -2 sum_i (yi-y) (ri-r)/ri
    dE/dr = -2 sum_i ri-r

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 3
    Par défaut
    Bonjour,

    D'abord, désolé pour le post mal-placé ^^'

    J'étais bien tombé sur le rapport l'optimisation du calcul de la courbure ADN mais je concède que je n'ai pas eu le courage d'aller bien bien loin. J'ai un peu plus regardé et je vais continuer.
    Dans un premier temps je pensais le faire à position fixée donc sans connaître le chemin à suivre de mes coordonnées sans prendre en compte ce qui s'est passé avant et sans savoir ce qu'il se passera après. Néanmoins, quand j'ai jeté un coup d'oeil à la méthode de Souviron34, effectivement ça me parait faisable ^^' L'unique problème est que je suis en fortran 90. Je vais fouiller un peu le site, il me semble que je pourrais y trouver mon bonheur.

    J'ai aussi pas mal fouillé avant de revenir lire vos réponses et j'ai vu que effectivement j'avais pas mal de possibilités comme celle que propose Alexis. M. J'avais aussi repérer les courbes de Bézier mais je ne sais pas si c'est vraiment adapté à mon problème :s
    Je vais donc continuer à fouiller avec ce que vous m'avez donné. Je vois que je peux m'en sortir ^^

    Merci!

  7. #7
    Membre émérite
    Homme Profil pro
    Ingénieur R&D en apprentissage statistique
    Inscrit en
    Juin 2009
    Messages
    447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur R&D en apprentissage statistique

    Informations forums :
    Inscription : Juin 2009
    Messages : 447
    Par défaut
    Si tu es intéressé par une mesure du "degré de courbure" plus que par le rayon de courbure lui même tu peux aussi calculer la plus petite valeur propre de la matrice de covariance des points dans un voisinage. Quand cette valeur propre est proche de zero, la courbe et plate sinon, le vecteur propre associé te donne une estimation de la normale à la courbe.

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    autre note 1 : les courbes de Béziers ne passent pas par les points (si on cherche à déterminer une interpolation. C'est autre chose quand on trace une courbe connue et dans ce cas ça passe par les points, mais ce sont des points caractéristiques)..

    autre note 2 : Paul Burke doit avoir ça quelque part en Fortran.. Et je suis certain sinon que dans les lines donnés en global ici sur ce forum tu trouveras ton bonheur quelque part dans GraphicsGems ou dans les liens pointés par Scientific Computing and Numerical Analysis FAQ

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/08/2010, 18h13
  2. Calcul du SNR à partir d'une trame 802.11
    Par Kingdomofh dans le forum Développement
    Réponses: 2
    Dernier message: 12/03/2007, 08h45
  3. calcul de date à partir du numero de semaine
    Par @rkane dans le forum Access
    Réponses: 2
    Dernier message: 03/01/2007, 17h28
  4. Dessin à partir de coordonnées
    Par gids01 dans le forum 2D
    Réponses: 3
    Dernier message: 30/10/2006, 10h41
  5. Une infobulle à partir des coordonnées sur une image
    Par dark_vidor dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/01/2006, 21h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo