Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5260 connectés 

 


Dernière réponse
Sujet : [FORTRAN] Question toute conne !
tgrx Euh... dans ce cas, gardez la (fiere) chandelle...  :sarcastic:
 
 
 
 
 
:D

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
tgrx Euh... dans ce cas, gardez la (fiere) chandelle...  :sarcastic:
 
 
 
 
 
:D
mystereetbouledegomme T'inquietes on t'enverra la facture  :D  :D  ;)
tgrx Merci a tous. Vous venez de me rendre une fiere chandelle. :hello:
BENB Juste un detail, en FORTRAN les indices de tableaux commencent a 1 alors qu'en C ils commencent a 0...
donc x(i,j,kkk) => x[i-1][j-1][kkk-1]
de plus il manque les declarations qui ne sont pas toutes indispensables en FORTRAN :
 
int i,j,k,k2,k3,kkk;
x,y,z,xc,yc,zc doivent etre des reels mais en FORTRAN il doit au moins y avoir une clause DIMENSION pour definir leur taille.
mystereetbouledegomme Pas grave bien vu pour les tableaux... ca m'est passe sous le nez
wpk t'as ete plus rapide(j'ai vu ton post apres avoir posté), sorry, en plus, y'a une legere faute,
xc(i-1,j,k) c'est des tableux donc xc[i-1][j][k]
mystereetbouledegomme WPK-> Tu te fous de ma geule c'est le meme code que moi sauf que je suis a peu pres sur que la borne sup est atteinte
wpk si mes souvenirs sont bons ca doit donner a peu pres ca en c:
for (k=1;k<k2;k+=k3)
{
  if(k==1)
  {
    kkk=1;
  }
  else
  {
    kkk=k1;
  }
 
  for (j=2;j<m2;j++)
  {
    for(i=2;i<l2;i++)
    {
      x[i][j][kkk]=0.25*(xc[i-1][j-1][k]+....
      y[i][j][kkk]=...
      ...
    }
  }
}
 
La ou je ne suis pas sur c'est sur les bornes des for, je ne me rappele plus si la borne sup est atteint ie si par exemple i<l2 ou i<=l2
mystereetbouledegomme Je te le traduit en C :
for(k=1;k<=k2,k+=k3)
{
  if(k==1) kkk=1;
  else kkk=k1;
  for(j=2;j<=m2;j++)
    for(i=2;i<=l2;++i)
    {
      x[i][j][kkk]=0.25*(xc(i-1,j-1,k)+xc(i-1,j,k)+xc(i,j,k)+xc(i,j-1,k))
      y[i][j][kkk]=0.25*(yc(i-1,j-1,k)+yc(i-1,j,k)+yc(i,j,k)+yc(i,j-1,k))
      z[i][j][kkk]=0.25*(zc(i-1,j-1,k)+zc(i-1,j,k)+zc(i,j,k)+zc(i,j-1,k))
    }
}
tgrx Voila, j'ai jamais fait de fortran, est-ce que quelqu'un peut me traduire precisement ce passage ? Merci.
 
      do 250 k=1,k2,k3
      if(k.eq.1) then
        kkk=1
      else
        kkk=k1
      endif
      do 250 j=2,m2
      do 250 i=2,l2
       x(i,j,kkk)=0.25*(xc(i-1,j-1,k)+xc(i-1,j,k)+xc(i,j,k)+xc(i,j-1,k))
       y(i,j,kkk)=0.25*(yc(i-1,j-1,k)+yc(i-1,j,k)+yc(i,j,k)+yc(i,j-1,k))
       z(i,j,kkk)=0.25*(zc(i-1,j-1,k)+zc(i-1,j,k)+zc(i,j,k)+zc(i,j-1,k))
  250  continue

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)