Bonjour,
Je suis en charge du développement d'un projet d'envergure : Un outil de calcul de mécanique des fluides 1D/3D. NE PRENEZ PAS PEUR A CAUSE DE LA TAILLE DE CE POST !!! Seulement j'essaie de poser correctement le contexte pour avoir les meilleurs retours possibles.
Mon projet sera décomposé en 3 modules (comme souvent pour ce genre d'outil) :
- un pré-processeur : module permettant la saisie du contexte physique et géométrique.
- un processeur : le noyau numérique solveur des lois fondamentales de la dynamique des fluides.
- un post-processeur : module d'étude et de présentation des résultats.
Il existe déjà plusieurs outils de ce type en opensource et je voudrais utiliser au maximum ce qui existe déjà pour ne pas réinventer la roue. Le codage (idéalement) devrait se résumer dans l'interfacage de modules existants. Mais faut pas rêver ... ! Pouquoi redévelopper un tel outil ? : Parcequ'on a pas trouvé celui qui répondait exactement à nos attentes. Je pense avoir fait un tour d'horizon assez large pour pouvoir le dire, mais j'ai pu passer à coté de quelque chose, alors n'hésitez pas à me donner des références.
Dernièrement j'ai beaucoup travaillé sous WinDev pour développer des applis de gestion. J'ai déjà développé sous Delphi et C++ mais il y a longtemps. Donc de premier abord, je serais plutôt partant pour développer avec WinDev. Je n'ai pas d'expérience avec WinDev pour du développement "industriel". D'où les questions suivantes :
1 - Est ce quelqu'un a déjà développé ce genre d'appli avec WinDev ? Quels serait les pièges à éviter, les recommandations à suivre ?
2 - Le PRE-PROCESSEUR se résume en une interface conviviale permettant la saisie de tous les paramètres d'entrés: données physiques des matériels et des matériaux rentrant dans l'étude, contraintes extérieures, éléments perturbateurs dans le réseau et données géométrique du système. Je dois faire une modélisation filaire(1D) et 3D de la géométrie de mon système d'étude : un réseau tunnelier et son système de ventilation. La modélisation 3D se fera seulement sur des tronçons choisis du système pour explorer en détail les évènements. J'ai dans l'idée de faire une modélisation 3D du système en utilisant OpenGL, et pour représenter la 1D, simplement je prendrait des dimensions infiniments plus petite sur 2 des axes. Est ce que je suis à coté de la plaque ? Ensuite, un outil de maillage 3D fera son boulot sur les tronçons choisis. A la sortie du pré-processeur, un ou plusieurs fichiers texte doivent décrire tout le système, sur le plan physique et géométrique. Je pense éventuellement utiliser le format XML pour ces fichiers afin de faciliter la sauvegarde et la restauration d'une étude en cours tout en gardant possible la lecture des données produites.
3 – Le PROCESSEUR : Je dois utiliser des bibliothèques existantes, notamment pour tout ce qui est des calculs numériques. Ces bibliothèques sont principalement écrites en Fortran et C, avec régulièrement du Python pour interfacer tout ça. Ces bibliothèques sont exclusivement issues du monde libre Linux (heureusement qu'il existe celui là ). WinDev me permettra-il d'exploiter ces bibliothèques ? Y a t-il des difficultés ou des contraintes dont il faut avoir conscience ?
4 – Toujours concernant le PROCESSEUR, les temps de calcul sont relativement long, plusieurs jours, même avec des machines de dingue : malheureusement nous n'avons pas des calculateurs comme dans les gros labos gouvernementaux. J'ai vu que l'on pouvait lancer des processus sur plusieurs machines en réseau et ainsi multiplier les capacités de calcul. Mais là, j'avoue ne pas savoir comment ça fonctionne. Est ce qu'il existe des liens qui me permettrait de m'initier, et est ce possible avec WinDev de mettre en oeuvre ce genre de technique, et comment ?
5 - Dans la mesure où j'en ai le temps, j'aimerais m'attarder sur le POST-PROCESSEUR pour offrir une interface conviviale et autrement plus évoluée que des fichiers ascii avec des milliers de lignes. J'ai dans l'idée de faire une modélisation 3D du système d'étude avec des échelles de couleur pour représenter les divers paramètres(pression, température, vitesse et sens des flux, ...). Je pense là encore qu'avec openGL ça doit pouvoir se faire, mais comment habiller les volumes avec différentes couleurs ? Comment l'utilisateur pourra interagir avec la modélisation : comment peut-on sélectionner un élément de volume dans l'interface graphique dédié à l'affichage d'OpenGL. Je ne suis pas à proprement parlé un expert de l'OpenGL. Est ce que cet outil est facile à prendre en main ?
Voilà pour l'instant.
Bien sûr je suis à l'écoute de toutes suggestions alors n'hésitez pas.
Merci d'avoir pris le temps de me lire et merci d'avance pour vos contributions.
Partager