[??] Simulation numérique de problèmes physique

Simulation numérique de problèmes physique [??] - Divers - Programmation

Marsh Posté le 09-04-2011 à 12:07:41    

Bonjour,
J'ai fai quelques recherches sur le net mais je n'ai absolument rien trouvé :(
 
En premier lieu j'aimerais créer un petit programme capable de calculer des figures d'interferences. Je sais parfaitement le faire de manière analytique. Mais le fait de créer un petit programme comme celui ci pourra être un bon point de départ pour en créer d'autres pour des problèmes que je ne sais pas résoudre analytiquement.
 
J'ai quelques notions de programmation mais je ne sais pas du tout comment aborder le problème et quel langage utiliser.
 
J'éspère que quelqu'un pourra m'aider ou m'indiquer des liens utiles vers des cours ou des livres traitant du sujet.
 
Merci d'avance.

Reply

Marsh Posté le 09-04-2011 à 12:07:41   

Reply

Marsh Posté le 09-04-2011 à 14:08:29    

doltox a écrit :

Bonjour,
J'ai fai quelques recherches sur le net mais je n'ai absolument rien trouvé :(
 
En premier lieu j'aimerais créer un petit programme capable de calculer des figures d'interferences. Je sais parfaitement le faire de manière analytique. Mais le fait de créer un petit programme comme celui ci pourra être un bon point de départ pour en créer d'autres pour des problèmes que je ne sais pas résoudre analytiquement.
 
J'ai quelques notions de programmation mais je ne sais pas du tout comment aborder le problème et quel langage utiliser.
 
J'éspère que quelqu'un pourra m'aider ou m'indiquer des liens utiles vers des cours ou des livres traitant du sujet.
 
Merci d'avance.


Quelles interférences? Qu'est ce que tu veux simuler?
 
Pour la question du langage toutes les écoles existent.
Certain vont t'envoyer vers du matlab...Ca permet de se concentrer sur la physique du problème sans avoir à apprendre des notions pointues de langage en même temps. Chaque chose en son temps, je dirais.
 
Ce que tu dis, je devais le faire en pascal à l'époque mais je ne te conseille pas.
Python, matlab?
Si t'es un peu tête brulée, t'apprends le c en même temps, comme ça ça occupera tes nuits?

Reply

Marsh Posté le 09-04-2011 à 16:59:40    

Je voudrais principalement appliquer des transfromés de fourrier a des signaux. Je connais déjà le C et j'ai un peu bossé avec Qt. Pour matlab je n'ai jamais essayé mais il parait que sa ressemble a du fortran simplifié et avec pas mal de lib. Donc je ne pense pas que ce soit le coté programmation qui me pose problème mais plutot convertir des formules de physique en quelque chose d'exploitable pour un programme.

Reply

Marsh Posté le 09-04-2011 à 17:48:55    

doltox a écrit :

Je voudrais principalement appliquer des transfromés de fourrier a des signaux. Je connais déjà le C et j'ai un peu bossé avec Qt. Pour matlab je n'ai jamais essayé mais il parait que sa ressemble a du fortran simplifié et avec pas mal de lib. Donc je ne pense pas que ce soit le coté programmation qui me pose problème mais plutot convertir des formules de physique en quelque chose d'exploitable pour un programme.


Oh ça me rappelle une histoire de plan focal image et de TF de l'objet diffractant, quand j'étais dans une autre vie.
Si tu as des TF et des trucs comme ça, c'est peut-être réellement plus simple en matlab.
 
J'ai utilisé fftw en c++ il y a quelques jours, ça n'a pas posé de problème.
 
Je viens de regarder, la TF en python c'est simple.
Laisse tomber QT pour ça, c'est clairement pas fait pour.
 
Bon bah voilà, tu discrétise ton problème, tu choisis un pas pour aller de 0 à 2Pi, tu te fais ta grille de points, tes boucles for dessus dans tes 2-3 directions et ça roule  :D

Reply

Marsh Posté le 09-04-2011 à 17:55:59    

Merci beaucoup, tu me donnes enfin de l'espoir ^^
 

Citation :

Bon bah voilà, tu discrétise ton problème, tu choisis un pas pour aller de 0 à 2Pi, tu te fais ta grille de points, tes boucles for dessus dans tes 2-3 directions et ça roule  :D


 
Tu pourrais détailler un peu ce passage ? C'est justement ça qui me pose le plus de problème. Merci d'avance ;)

Reply

Marsh Posté le 09-04-2011 à 18:07:22    

doltox a écrit :

Merci beaucoup, tu me donnes enfin de l'espoir ^^
 


Citation :

Bon bah voilà, tu discrétise ton problème, tu choisis un pas pour aller de 0 à 2Pi, tu te fais ta grille de points, tes boucles for dessus dans tes 2-3 directions et ça roule  :DTu pourrais détailler un peu ce passage ? C'est justement ça qui me pose le plus de problème. Merci d'avance ;)


Bein si on prend l'exemple d'un réseau de diffraction. (aux erreurs de maths près  :whistle: , ça fait trop longtemps que je pratique plus)
 
Sur une dimension, tes rayures elles ont l'équation sin(ax+phi), de période 2pi/a
Tu dis que ton faisceau il tape sur 10 fentes, donc il faut que tu décrives ton réseau de 0 à 20pi/a.
Tu discrétises ton problème en te choisissant un petit pas, par exemple pi/1000
tu te crées un tableau avec "plein de points", tu fais ta boucle  
for i=0;i<20pi/a;i+=pi/1000
{
   reseau[i]=sin(a*i+phi)
}
et roule ta tf dessus
Pareil dans les autres dimensions. Si t'es 2D tu te retrouves avec un réseau[i][j] qui est le produit de tes deux dims
 
 
aux erreurs près, et je le fais pas  :o

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed