2010-12-02 26 views
1

Mon application a quelques équations aux dérivées partielles paraboliques ... qui sont interdépendantes et utilisent certaines variables que l'utilisateur saisit via une interface utilisateur à partir d'une application de bureau.
Pouvez-vous me dire quel logiciel ou quelle bibliothèque ou quelle langue servirait le mieux à ce qui précède?équations aux dérivées partielles paraboliques

+1

Voulez-vous des solutions numériques ou symboliques? (Bien sûr, la plupart des EDP n'ont pas de solutions symboliques, mais c'est une autre affaire.) –

+0

Je serai en mesure de vous répondre mais vous devez d'abord en dire plus sur vos EDP. Sont-ils linéaires? Sur quel domaine, combien de variables spatiales? Quelles sont les conditions aux limites? Quelles conditions initiales? Quelle régularité des conditions initiales? Qu'attendez-vous: précision, stabilité, robustesse, rapidité? Il n'y a pas de solveur PDE à usage général, même pour les équations paraboliques, vous devez donc fournir beaucoup plus d'informations. Plus important encore, vous devez spécifier ce que vous savez sur les EDP (paraboliques), et combien de code vous êtes prêt à écrire. –

+0

Avez-vous déjà essayé le langage Modelica? Il existe également des implémentations open source OpenModelica et Jmodelica. – Foad

Répondre

3

Puisque vous avez dit "équations", je suppose qu'il y en a plus d'un et qu'ils sont couplés. Il est hautement improbable que vous trouviez une solution fermée pour un problème aussi difficile. Quand j'entends "PDE parabolique", le prototype pour moi est la diffusion transitoire. Cela signifie généralement une intégration numérique dans le temps à l'aide d'un schéma d'intégration explicite d'Euler (petits pas, instable), implicite ou Crank-Nicholson. Je discrétiserais en utilisant des méthodes d'éléments finis et des résidus pondérés. C'est ainsi que vous transformez ces EDP en équations matricielles. Une fois ces deux décisions prises, vous aurez un ensemble de problèmes d'algèbre linéaire à résoudre de façon répétée pour chaque pas de temps. Vous pouvez utiliser toute bonne bibliothèque d'algèbre linéaire disponible dans la langue de votre choix.

Peut-être MATLAB ou Octave, son cousin open source, pourrait vous aider ici.

+0

Comment pouvez-vous donner un tel conseil sans voir les équations? Crank Nicholson peut être assez instable pour des données initiales non lisses. Vous ne pouvez pas suggérer des différences finies si vous ne connaissez pas le domaine. –

+0

En fait, pour les systèmes * linéaires * d'EDP paraboliques, vous trouverez probablement une "solution de forme fermée" comme une convolution avec un noyau. –

+0

Je n'ai pas suggéré de différences finies; J'ai dit éléments finis et résidus pondérés. Et je préférais toutes mes remarques en disant ce à quoi je pensais quand j'ai entendu des EDP paraboliques qui évoquaient un transfert de chaleur transitoire; Je n'ai jamais laissé entendre que je pouvais lire dans l'esprit de quelqu'un et connaître des équations qui n'étaient pas répertoriées. Et j'ai offert CN OU Euler OU implicite sans en spécifier un. Où allez-vous m'envoyer des reproches au sujet du CN? Personne n'a dit linéaire ou non linéaire, donc votre solution peut ne pas s'appliquer.J'aurais aimé que tu aies le courage d'offrir une réponse pour que tu puisses te salir et te rabaisser. Pas de courage. – duffymo