Quelqu'un peut-il m'aider à trouver les livres sur les solutions numériques (différences finies et méthodes de Crank-Nicolson) des équations de Poisson et de diffusion, y compris des exemples sur la géométrie irrégulière, comme un domaine composé de l'aire entre un rectangle et un cercle (en particulier des livres ou des liens) sur les exemples de code MATLAB dans ce cas)?
pde
finite-difference
liona
la source
la source
Réponses:
La clé pour faire fonctionner un schéma de différences finies sur une géométrie irrégulière est d'avoir une matrice de «forme» avec des valeurs qui dénotent des points à l'extérieur, à l'intérieur et sur la frontière du domaine. Disons que nous avions une forme comme celle-ci:
Le vrai domaine (où se trouvent toutes les entrées non nulles de la matrice) forme un triangle pointé vers le bas. Les 1 représentent des points sur la frontière, tandis que les 2 représentent des points intérieurs (inconnus, généralement) Nous pouvons attribuer des numéros de nœuds comme suit:
Ici, les -1 représentent les emplacements des limites. Ensuite, vous pouvez exécuter un schéma de différences finies sur toutes les entrées de la matrice, mais utilisez une instruction if pour exécuter votre schéma uniquement sur les nœuds intérieurs (de 1 à 12). Cette approche n'est pas le moyen le plus efficace de le faire, mais elle fera le travail ... si vous pouvez vous permettre la mémoire, il pourrait être bon de stocker les entrées (i, j) de tous les nœuds intérieurs et d'exécuter une boucle for uniquement sur ces nœuds.
Pour créer directement la géométrie, vous pouvez faire l'une des deux choses suivantes:
1. Créez une image en noir et blanc manuellement et importez-la dans votre programme (plus facile à implémenter, mais impossible d'affiner votre résolution spatiale dx ou dy).
2. Écrivez du code qui créera des représentations discrètes des formes de base que vous souhaitez pour toute résolution spatiale que vous choisissez (plus difficile à implémenter, mais plus robuste pour les schémas généraux de différences finies de toute résolution spatiale dx ou dy).
Si vous souhaitez en savoir plus sur la façon de procéder, vous pouvez envisager de regarder ces vidéos:
Cours d'infographie NPTEL, Vidéo 2 (Graphiques raster)
Cours d'infographie NPTEL, Vidéo 3 (Graphiques raster, suite)
Consultez-les, et faites-moi savoir si cela répond à votre question.
la source
Je pense qu'un bon livre au tout début est le livre de Hackbusch:
http://books.google.com/books/about/Elliptic_differential_equations.html?id=-ZPc_JYJFHgC&redir_esc=y
En particulier ch. 4.8, "Discrétisation dans un domaine arbitraire" pourrait vous intéresser. La version allemande de ce livre peut être téléchargée gratuitement (légalement). Je ne sais pas si cela vaut également pour la version anglaise.
la source
Je suggère les papiers suivants:
La méthode des différences finies aux grilles irrégulières arbitraires et son application en mécanique appliquée - Liszka Orkisz
http://www.sciencedirect.com/science/article/pii/0045794980901492
Techniques de différences finies pour les grilles variables - Jensen
http://www.mendeley.com/research/finite-difference-techniques-variable-grids-7/
Résolution d'équations paraboliques et hyperboliques par la méthode des différences finies généralisées - Benito Urena Gavete
http://www.sciencedirect.com/science/article/pii/S037704270600687X
Fondamentalement, ils décrivent comment générer des différences stenciales finies pour les maillages non structurés / irréguliers. Je ne connais aucun livre qui traite ce sujet en profondeur, mais le livre de Randall LeVeque pourrait avoir quelque chose à ce sujet. Voici le lien vers la page Web de l'auteur, qui contient des fichiers m Matlab pour les différences finies.
http://faculty.washington.edu/rjl/booksnotes.html
la source
Je pense que rendre le maillage ajusté à la frontière et donc s'écarter du maillage carré standard du fdm est probablement une solution mais a néanmoins de sérieuses implications quant à l'utilisation d'algorithmes d'ordre élevé - difficile, sinon impossible. J'ai adopté une approche différente, à savoir garder la grille rectangulaire sur la géométrie de la courbe courbe, créer des algorithmes d'ordre élevé, interpoler à partir de la frontière pour définir les valeurs "en dehors" de la géométrie, et c'est tout ce qu'il y a. nous avons obtenu des précisions dans les géométries de test de sphère concentrique de ~ 1e-12 avec cette méthode en utilisant un algorithme d'ordre 8. si vous allez sur Google "Edwards, fdm Curved Border", vous trouverez des références à mon travail.
la source
Serait-il possible pour vous d'utiliser le raffinement adaptatif du maillage? Une recherche rapide sur Google fera apparaître de nombreux liens. L'AMR est utilisé, par exemple, en dynamique des fluides pour modéliser l'écoulement au-delà de formes compliquées; ainsi que de nombreuses autres applications. Voici un exemple de résolution de systèmes de lois de conservation hyperboliques qui surviennent lors de la formation d'étoiles. Les géométries sont très complexes. La première partie de l'article est un joli tutoriel. http://www.mpa-garching.mpg.de/lectures/ADSEM/SS05_Homann.pdf
la source
Cette question ouvre une boîte de vers, comme en témoigne la variété des réponses données. Beaucoup d’entre elles soulèvent des points utiles, mais une réponse vraiment utile tiendrait compte de considérations qui n’ont pas été soulevées. En plus de préciser la nature exacte de la géométrie, il serait utile de savoir a) De quel type de précision avez-vous besoin? b) Voulez-vous rester avec des mailles carrées régulières? c) Combien êtes-vous prêt à investir dans l'apprentissage de nouvelles technologies?
Les maillages carrés réguliers rendent difficile la définition précise de la frontière, de sorte que de nombreuses personnes changent en maillages conformes. Les maillages conformes avec une connectivité rectangulaire ont du mal à s'adapter à des formes très irrégulières, donc beaucoup de gens adoptent des maillages non structurés (triangles / tetraheda ou plus généraux).
Pour toutes les données n'ayant pas de structure cartésienne régulière, il est difficile d'évaluer les dérivées, donc beaucoup de gens reformulent leurs problèmes sous forme intégrale, ce qui conduit à des méthodes d'éléments finis / de volumes finis (qui PEUVENT atteindre un ordre élevé). Il existe des méthodes sans maillage. Il existe des méthodes d'éléments de frontière. Il existe des méthodes aux limites immergées. Il existe des méthodes à cellules coupées. Il existe souvent une méthode qui est populaire dans certaines applications mais pas dans d'autres, pour des raisons essentiellement historiques.
Je vous souhaite bonne chance dans la navigation dans ce labyrinthe, mais vous devez comprendre qu'il n'y a pas de solution universelle à votre question.
la source