Apprendre Maple Index du Forum Apprendre Maple
Site dédié au logiciel de calcul formel Maple
 
  Page d'accueilPage d'accueil   FAQFAQ    RechercherRechercher    Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs 
S'enregistrerS'enregistrer    ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Trouver les points d'une hyper-surface

 
Poster un nouveau sujet   Répondre au sujet    Apprendre Maple Index du Forum -> Maple en géométrie
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
boirac



Inscrit le: 12 Sep 2006
Messages: 10
Localisation: Londres, Royaume Uni

MessagePosté le: 14 Mai 2007 20:54    Sujet du message: Trouver les points d'une hyper-surface Répondre en citant

Bonjour a tous,

Je voudrais trouver un certain nombres de points, disons 50, qui soient distribués sur une hypersphère de rayon donné.

Donc le problème peut s'énoncer tel que:

trouver [x,y,z,t] tels que x^2+y^2+z^2+t^2+ = 4 par exemple.
J'ai pensé a generer des points aléatoires dans la 4-boule en question, quelque chose de la sorte de:

Code:

points:=[]:
for i from 1 to 10000 while nops(points)<50 do
L:=evalf(1/15*Generate(list(integer(range=0..10),4)),3);
if evalf(L[1]^2+L[2]^2+L[3]^2+L[4]^2,4)=evalf(2,3) then
points:=[op(points),L];
else
fi:
od:


Mais c'est loin d'être éficace.
Meci pour toute suggestion ou conseil,

Alvaro
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
ALS



Inscrit le: 11 Sep 2006
Messages: 647

MessagePosté le: 15 Mai 2007 14:17    Sujet du message: Répondre en citant

Bonjour Alvaro,
Je pense en effet qu'en paramétrant la 4-sphère (S), et en choisissant des valeurs aléatoires pour chacun des 3 paramètres, on peut construire très rapidement une suite de 50 points de (S).

Code:

> S:=(R,alpha,theta,phi)->[R*cos(alpha)*cos(phi)*cos(theta),R*cos(alpha)*cos(phi)*sin(theta),R*cos(alpha)*sin(phi),R*sin(alpha)];
 
> R:=2: points:=[]:
> for k to 50 do
>   alpha:=evalf(2*Pi/100*rand(1..100)()):
>   theta:=evalf(2*Pi/100*rand(1..100)()):
>   phi:=evalf(2*Pi/100*rand(1..100)()):
>   points:=[op(points),S(R,alpha,theta,phi)]
> end do:
> points;


Est-ce que cela convient?
A bientôt.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
boirac



Inscrit le: 12 Sep 2006
Messages: 10
Localisation: Londres, Royaume Uni

MessagePosté le: 15 Mai 2007 16:02    Sujet du message: Parametriser la 4 sphere Répondre en citant

Bonjour ALS,

Merci pour votre suggestion. Bien sûr la parametrisation fonctionne.
J'ai trouvé un peu plus d'information sur arXiv:quant-ph/0012101.

Il arrive qu' une distribution aléatoire des angles ne resulte pas en une distribution aléatoire des points sur la sphère. Pour avoir une distribution uniforme, si on emploie la parametrisation de Hurwitz,

Code:

(R,alpha,theta,phi)->[cos(theta[3]), sin(theta[3])*cos(theta[2]), sin(theta[3])*sin(theta[2])*cos(theta[1]), sin(theta[3])*sin(theta[2])*sin(theta[1])];


il faut transformer des variables aléatoires

Code:
 eta
distribuées uniforméments sur 0..1
en
Code:

theta[i]:=arcsin(eta^(1/(2*i)));

pour obtenir nos [x,y,z,t] distribuées uniformément sur la 4-sphère.
Merci de vôtre réponse!
à bientôt.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Apprendre Maple Index du Forum -> Maple en géométrie Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


phpBB

Développé par phpBB © 2001, 2006 phpBB Group
Traduction par : phpBB-fr.com


Apprendre Maple - ©  - Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.