Bonjour, j'aimerais paralléliser mon code avec MPI. Mon pb physique est simple : j'ai un domaine découpé en plusieurs zones. Dans chaque zone je dois résoudre une équation différentielle. Si j'ai 4 zones alors j'obtiens 4 vecteurs solutions correspondant à la solution de chaque zone. Puis j'effectue qq opérations sur ces vecteurs. J'obtiens donc 4 autres vecteurs et ces derniers me servent de conditions initiales pour mon prochain pas de temps et je recommence une nouvelle résolution des équations différentielles. En gros ça donne
Si j'ai 4 zones et 10 inconnues par zones j'ai donc un vecteur de taille 4*10=40.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 1) détermination des conditions initiales 2) pour t=0 à tfin faire résoudre les N équations différentielles (N étant le nb de zones) effectuer les opérations sur les vecteurs solutions fin
Ma question est : comment récupérer les indices du vecteur suivant la zone lorsque je parallélise mon code ? Si j'ai une variable numzone elle ne doit pas être modifiée suivant le numéro du PC que j'utilise.
Merci
Partager