Heat Method (Crane et Al) Comment vous choisissons-nous ?
La méthode de la chaleur est un papier très intéressant pour le calcul de distance :
https://www.cs.cmu.edu/~kmcrane/Projects/HeatMethod/paperCACM.pdf
L'idée derrière le papier est que la chaleur se déplace le long de la surface d'un objet essentiellement de manière géodésique. Ainsi, le temps nécessaire à la chaleur pour se déplacer d'un point chaud à n'importe quel point d'une surface est corrélé de manière irréconciliable avec la distance géodésique.
L'article considère d'abord le cas analytique général, puis suggère des approches de discrétisation. Ce qui me perturbe beaucoup, c'est la mention de la fonction de flux de chaleur$u$à travers le papier. Considérez cette équation par exemple:
C'est l'opérateur laplacien discret appliqué à$u$ou$\Delta u$. Il y a plusieurs autres sections dans le document qui mentionnent$u$. De ma lecture,$u$semble être une fonction appropriée qui se rapproche du flux de chaleur à la surface d'un collecteur ?
Je ne vois pas vraiment d'équation de la forme$u = \text{expression}$je ne vois pas non plus de descriptions de ses propriétés ni de suggestions pour un bien$u$fonction. Qu'est-ce que$u$? Où est-ce que$u$viens de? Où est-ce que$u$aller? Où est-ce que$u$viens de? cotan, je, o?
Réponses
D'après ma lecture, u semble être une fonction appropriée qui se rapproche du flux de chaleur à la surface d'un collecteur ?
$u$est la fonction qui décrit comment votre quantité se comporte/évolue dans un certain domaine. Dans le papier, la quantité est la température ou le flux de chaleur, je suppose. Cependant, la plupart du temps, il n'existe pas de solution/formule analytique pour$u$. C'est là que des méthodes comme les éléments finis (FEM) entrent en jeu. En discrétisant votre champ, vous pouvez approximer par morceaux votre fonction$u$.
Dans votre cas, vous utiliseriez votre maillage, qui est déjà une discrétisation de votre surface. Vos éléments sont les triangles et vous devez définir comment les quantités nodales sont interpolées à l'intérieur de chaque triangle. --- Ici, l'interpolation linéaire est probablement la voie à suivre. Sinon, vous devez remailler votre géométrie ou introduire des nœuds supplémentaires pour des approximations d'ordre supérieur.
Ensuite, vous devez attribuer à chaque Node/Vertex une valeur initiale$u_0$comme écrit dans la réponse de gilgamec. Ensuite, vous construisez et résolvez votre système d'éléments finis et obtenez la distribution nodale de$u$qui résout réellement votre équation ou votre système d'équations. Plus votre maillage est fin, meilleure est la solution. Les interpolations d'ordre supérieur aideront également à la précision.
Alors$u$ou ses valeurs nodales sont ce que vous recherchez réellement comme lightxbulb l'a dit dans son commentaire. C'est votre quantité inconnue.
Si cela ne vous aide pas, vous voudrez peut-être lire de la littérature sur la méthode des éléments finis. Je ne peux pas dire à quel point les liens suivants sont utiles, mais un bref aperçu semblait prometteur. Vous verrez qu'ils utilisent$u$partout. J'espère donc que l'un d'entre eux vous aidera :
- Une introduction en douceur à la méthode des éléments finis
- PE281 Notes de cours sur la méthode des éléments finis
- Introduction à la méthode des éléments finis
- analyse par éléments finis à la main
J'avais aussi un lien vers un bon tutoriel en ligne similaire au dernier lien que j'ai fourni qui m'a beaucoup aidé à comprendre les principes fondamentaux. Si je trouve le lien, je l'ajouterai à ma réponse.
J'ai trouvé le lien dont je parlais. Malheureusement, c'est en allemand :
- FEM Handrechnung
Oui, le terrain$u$est dans ce cas une diffusion de chaleur approchée à travers la surface. Il est trouvé en commençant par "l'ensemble initial" de sommets ; ceux-ci seront la source de la diffusion, et finiront comme des minima locaux dans le champ de distance. Une première diffusion$u_0$est mis en place, avec la valeur 1 sur l'ensemble initial et 0 partout ailleurs. (Ceci est décrit à la page 92 de l'article que vous avez lié, immédiatement sous l'algorithme 1.)
La première étape de l'algorithme consiste à exécuter une seule étape de l'équation de la chaleur en résolvant l'équation linéaire$(I - t\nabla)u = u_0$(équation 3 dans l'article). Le champ$u$vous y arrivez est la diffusion de chaleur approximative que vous traitez ensuite pour obtenir le champ de distance.