Programme en c

bonjour, je suis étudiant en physique, dans l'éventulité où un physicien pourrait m'aider, j'ai besoin de réaliser un programme simple en c basé sur la dynamique moléculaire avec deux particules.

3 réponses

  1. Et alors, quelle est ta question ?
    1. je voudrais un exemple d'algorythme entre 2 ou plus particules ds le cadre donc de dynamique moléculaire, ces particules étant soumises au potentiel de lennard jones
    2. Salut,

      il faudrait que tu expliques le fonctionnement de ton "système" sans ça, impossible de t'aider.
  2. J' ai exactement la meme recherche a faire qu' Alex
    Le but du jeu est de calculer la trajectoire des plusieurs particules (8 pour moi) grace a la méthode de verlet et du potentiel de Lennard-Jones;

    Si vous voulez sa donner sa

    Il faut imaginer qu' il y a 8 particules dans un cube (un cube imaginaire biensure, les particules peuvent sortir ou rentrer biensur) et les particules intéregissent entre elles: la particules 2 envoie une forces sur la particule 1, la particules 3 envoie une forces sur la particule 1, la particules 4 envoie une forces sur la particule 1, ...
    ainsi de suite sur les autre molécules

    Voici une parti de mon prgramme ( qui est en fortran est qui ne marche pas encore )
    !d2 corespond a la distance entre la particule i et la particule j
    !h est le pas de temps pour (dans le l' utilisation d ela méthode de verlet)
    !r est la coordonnées de la particules n

    do t=0,pmax-2

    do i=1,nmax
    do j=1,nmax

    d2(i,j)= (r(t+h,1,j)-r(t+h,1,i))**2 + (r(t+h,2,j)-r(t+h,2,i))**2 + (r(t+h,3,j)-r(t+h,3,i))**2
    !d2(j,i)= (r(t+h,1,i)-r(t+h,1,j))**2 + (r(t+h,2,i)-r(t+h,2,j))**2 + (r(t+h,3,i)-r(t+h,3,j))**2

    if(i.ne.j) then
    Fij(1,i,j)=(r(t+h,1,j)-r(t+h,1,i)) !* (((d2(i,j))**(-7)) -1.0/2*((d2(i,j))**(-4)))
    Fij(2,i,j)=(r(t+h,2,j)-r(t+h,2,i)) !* (((d2(i,j))**(-7)) -1.0/2*((d2(i,j))**(-4)))
    Fij(3,i,j)=(r(t+h,3,j)-r(t+h,3,i)) !* (((d2(i,j))**(-7)) -1.0/2*((d2(i,j))**(-4)))
    endif

    F(1,i)=-h2*sum (Fij(1,i,:))
    F(2,i)=-h2*sum (Fij(2,i,:))
    F(3,i)=-h2*sum (Fij(3,i,:))

    r(t+2*h,1,j)=2*r(t+h,1,j)-r(t,1,j) +F(1,j)
    r(t+2*h,2,j)=2*r(t+h,2,j)-r(t,2,j) +F(2,j)
    r(t+2*h,3,j)=2*r(t+h,3,j)-r(t,3,j) +F(3,j)

    end do
    end do

    Normalement, on doit trouvrer des particules qui se repoussent puis qui s' éloigent

    Moi j' obtient des lignes droites, donc sa marche pas ... Si qql pouvait me filer un coup de pouce

    merci ciao
    1. bonjour Alex, je suis etudiant en physique et je dois simuler la dynamique moléculaire par la methode de verlet( langage C ou C++). j'ai besoin d'aide.
      vous pouvez me joindre sur sanmatiere@yahoo.fr