Bien le bonjour,
Question assez générale que l'organisation de données ! Je voudrais connaître le point de vue de personnes plus expérimentées que moi sur le sujet. J'ai un nombre important de simulations à effectuer (à peu de choses près 13000), avec des caractéristiques différentes pour chaque simulation. Le problème c'est que j'ai plusieurs "degrés de libertés", c'est à dire que j'ai pas 13000 cas d'un seul événement, mais 40 cas, et dans ces 40 cas ensuite j'en aurais 20, et dans ces 20 après je peux en avoir de 3 à 127 cas différents... et dans chaque cas j'obtiens 4 matrices de résultats. Je pensais organiser ça sous forme de structure comme ça :
mastructure.lelieu.lemodèle.leparamétragedumodèle.M1
mastructure.lelieu.lemodèle.leparamétragedumodèle.M2
mastructure.lelieu.lemodèle.leparamétragedumodèle.M3
mastructure.lelieu.lemodèle.leparamétragedumodèle.M4
Je me contentais de cette solution mais je n'arrive pas à l'imbriquer correctement dans une boucle parfor. Mon code synthétique :
Sauf que ça c'est, il semblerait, non compatible avec du parfor. Si je fais un parfor sur le lieu par exemple, je cache tout ce qu'il y a dans la boucle dans une fonction fonction_pour_parfor() pour "déglobaliser" les variables du load(info_sur_le_lieu) et que celles-ci soient propres à la fonction fonction_pour_parfor().
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 for i=1:numel(lelieu) load(info_sur_le_lieu) for j=1:numel(lemodèle) for k=1:numel(leparamétragedumodèle) [M1 M2 M3 M4 ]=mafonction(......) mastructure.lelieu.... end end end
Donc je pensais sortir une structure provisoire pour ensuite faire ma "vraie structure" comme ça :
Mais y'a plein de réstriction quant à l'assignation d'un nom dynamique et l'écriture d'une structure dans une boucle parfor.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 parfor i=1:numel(lelieu) [struc_temp]=fonction_pour_parfor mastructure.(char(fieldnames(struc_temp)))=struc_temp end
OUF, c'était long comme explication ! Donc si vous avez des idées qui sont compatibles avec une écriture dans un parfor et qui me permettent de retrouver rapidement les données d'un lieu, d'un modèle, d'une configuration... je suis preneur !
Partager