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

MATLAB Discussion :

Angle solide sphère


Sujet :

MATLAB

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur Photonique
    Inscrit en
    Mars 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Photonique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 124
    Points : 126
    Points
    126
    Par défaut Angle solide sphère
    Bonjour à tous,

    Je ne suis pas sûr d'être sur le bon forum pour cette question. Mais étant habitué à celui-ci je préfère tenter ma chance avant d'essayer ailleurs.
    Pour comprendre mon problème je vous invite directement à regarder la pièce jointe.

    Je cherche à déterminer l'angle solide de cette tâche.

    Le problème est autant informatique que mathématique car :
    - cette tâche ne forme pas un cercle parfait, elle a une forme variable, ainsi l'angle solide prendrait en compte une partie de la sphère non-peuplée par mes points.
    Je fais donc appel aux mathématiciens de ce forum, auriez-vous connaissance d'un paramètre permettant l'étude de la taille/forme de cette tâche (comme le moment d'ordre 2 pour les distributions par exemple) ?

    - pour résoudre temporairement mon problème j'ai effectué une translation de cette tâche vers un des pôles de la sphère, j'ai calculé la calotte sphérique via le cercle que j'ai dessiné à partir du point le plus éloigné du pôle sur lequel j'ai fixé la tâche. C'est assez laborieux pour tout vous dire.
    - en ce qui est de calculer l'angle solide via Matlab, à part le faire à la main en comparant les angles sur la sphère que les vecteurs forment entre eux, je ne vois pas comment faire. Existe-t-il une fonction permettant de le faire directement ?

    A terme, avec mon programme, je souhaite pouvoir comparer l'évolution de la taille/forme de cette tâche dans le temps sur une vingtaine d'itérations : pouvoir calculer rapidement un paramètre (tel que l'angle solide) sans à avoir à remanier toute la figure avant peut m'être d'un réel avantage.

    Merci en tout cas pour votre attention
    Images attachées Images attachées  

  2. #2
    Membre éprouvé
    Inscrit en
    Août 2010
    Messages
    1 124
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 1 124
    Points : 1 277
    Points
    1 277
    Par défaut
    Bonjour,

    Voici comment je procéderai:
    - Déterminer le vecteur central du nuage (soit par ACP, soit simplement [0,g], ou g est le centre de gravité)
    - Calculer pour chaque point x l'angle a= angle(x,g) (via produit scalaire et arccos)
    - Prendre le max des valeurs absolues de ces angles. Cela te fournit le plus petit cône (lisse) enveloppant tes données
    - Exprimer ce cône en angle solide.

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur Photonique
    Inscrit en
    Mars 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Photonique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 124
    Points : 126
    Points
    126
    Par défaut
    Merci VV33D pour ta réponse.

    je ne connaissais pas la méthode ACP donc j'ai regardé en quoi ca consistait ; c'est-à-dire décorréler des variables qui l'étaient initialement.
    J'ai testé des exemples de cette méthode mais pas moyen de voir comment l'utiliser pour mon problème en fait ou pour juste trouver le vecteur du centre de gravité ...
    Mon niveau de maths n'est peut être pas suffisant.

    Dans tous les cas ta technique ressemble pour ainsi dire à la mienne qui était de trouver le cercle qui comprenait tous les points.

    Je suis en train de me renseigner sur la fonction "contour" et voir si cette fonction peut être appliquée à une sphère et si oui, si je peux récupérer la surface du contour dessiné sur la sphère.

    Je ne sais pas si ca te parle ?

  4. #4
    Membre éprouvé
    Inscrit en
    Août 2010
    Messages
    1 124
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 1 124
    Points : 1 277
    Points
    1 277
    Par défaut
    Oublie l'ACP, le centre de gravité semble être plus adapté.

    Le problème de contour() est qu'il peut te renvoyer une ellipsoide plutôt qu'un cercle, alors que l'ange solide est en bijection avec des sphère et non des ellipses. Mais peut être n'est ce pas l'angle solide qui t'intéresse réellement, par exemple si ton nuage n'est pas isotrope autour de sa direction principale.

    La formule pour la dernière étape se déduit de http://fr.wikipedia.org/wiki/Angle_solide, section "Angle solide en coordonnées sphériques"

  5. #5
    Membre habitué
    Homme Profil pro
    Ingénieur Photonique
    Inscrit en
    Mars 2013
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Photonique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 124
    Points : 126
    Points
    126
    Par défaut
    le calcul de l'angle solide me permet d'avoir une idée de la variation de la largeur maximale de ma tâche sur la sphère mais il est vrai que pour une même largeur sa forme peut être très différente : il peut y avoir un point "aberrant" qui se promène hors de la tâche centrale et là le calcul perd toute crédibilité.

    Je regarde ton lien et je te tiens au courant.
    Merci.

Discussions similaires

  1. Texture sur d'une sphère
    Par Yellowmat dans le forum OpenGL
    Réponses: 1
    Dernier message: 16/12/2004, 10h59
  2. Conversion distance , angle vers coordonnées de points
    Par mat.M dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 26/03/2004, 22h55
  3. calculer un angle
    Par m.nico dans le forum Langage
    Réponses: 7
    Dernier message: 05/11/2003, 20h55
  4. Problème avec le rendu de sphère
    Par Francky033 dans le forum DirectX
    Réponses: 10
    Dernier message: 29/08/2003, 22h00
  5. angle entre 2 segments
    Par tane dans le forum Mathématiques
    Réponses: 4
    Dernier message: 25/09/2002, 16h47

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