|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Bonjour,
j'ai peur d'etre legerement hors sujet avec cette question, et je m'en excuse par avance, mais de memoire je sais qu'il y a sur le forum des specialistes des elements finis, a qui j'aimerai demander conseil. Voila j'ai un peu de temps en cette periode festive, je me suis donc fait un petit mailleur ainsi qu'un solveur en elements finis. Cependant une question me turlupine, je la crois stupide, mais la je seche. Le but du jeu avec cette methode est de reecrire une equation differentielle sous sa forme faible, ceci etant fait de discretiser et de reecrire le systeme d'equations tel que : A.X=F, avec A la matrice de rigidite, X le vecteur solution tel que X=A^(-1).F et F le vecteur second membre. En gros si je connais A et F je determine X, jusqu'ici pas de probleme. Cependant, comment procede-on dans le cas ou : laplacien U = exp(U), c'est a dire dans le cas ou F depend explicitement de U ? Merci par avance, et desole pour les accents je n'ai sous la main qu'un vieu clavier georgien... Yann. |
|
|
00
|
|
|
#2 | ||
![]() ![]() Jean-Marc Blanc Inscription : avril 2007 Messages : 2 657 ![]() |
Salut!
Citation:
Citation:
__________________
Calcul numérique de processus industriels Formation, conseil, développement Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux) |
||
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Bonjour,
merci beaucoup pour votre reponse. Ma question etait sans doute mal posee. Mais je pense avoir compris entre temps. Apres reecriture de cette equation sous forme variationelle discrete, le systeme est self consistant. Il est donc impossible de factoriser la matrice de rigidite par le champ de vecteur U. J'espere ne pas dire de betise. N'etant pas familie de ce genre de methode je me demandais comment traiter ce genre de cas. Mais il semble que la reponse soit dans la question, il suffit de le traiter de facon self consistant, n'est pas ? Cordialement, Yann. |
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() ![]() Jean-Michel BORLOTFabricant et casseur d'avions Inscription : avril 2004 Messages : 2 984 ![]() |
Salut
Je ne suis pas familier non plus, j'interviens plus facilement en aval de la théorie (je suis un peu allergique au laplacien depuis que j'ai brulé mes notes d'école!), mais ça ne serait pas le genre de problème à traiter en différences finies plutôt qu'en éléments finis?
__________________
"Errare humanum est, sed perseverare diabolicum" Si vous avez un terrain constructible dans l'est du Gers à vendre pas trop cher, contactez-moi par MP. Ma page sur DVP.com : articles Java/Jogl Mon site www.plegat.org |
|
00
|
|
|
#5 | |
![]() ![]() Jean-Marc Blanc Inscription : avril 2007 Messages : 2 657 ![]() |
Salut!
Citation:
Jean-Marc Blanc
__________________
Calcul numérique de processus industriels Formation, conseil, développement Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux) |
|
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Salut a vous, oui l'idee est de me construire un outil capable d'integrer des geometrie de maillage non-lineaire, d'ou mon idee des elements finis. Je continue a prospecter et je posterai un message quand tout sera au point. Merci a vous en tout cas.
Yann. |
|
|
00
|
|
|
#7 | |
![]() ![]() Jean-Marc Blanc Inscription : avril 2007 Messages : 2 657 ![]() |
Salut!
Citation:
Jean-Marc Blanc
__________________
Calcul numérique de processus industriels Formation, conseil, développement Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux) |
|
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Bonjour,
oui absolument cette équation est non linéaire. Je sais que la méthode de Newton est applicable avec les éléments finis cependant, ma matrice de masse n'est pas factorisable dans ce cas précis. Je précise : Si on part de l'équation suivante : Laplacien(u)+exp(-u)= 0 je réécris cette équation sous sa forme variationnelle avec w la fonction test : \int_V grad(w).grad(u) dV + \int_V w.exp(u) dV = f la question est donc de savoir comment réécrire ce système sous cette forme : K_ij . u_j = f_i C'est ce point qui me pose problème pour le moment. Merci d'avance Yann. |
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Salut,
finalement j'ai bouquiné un peu il semble que la méthode de Newton-Raphson fonctionne, cependant est-elle efficace et existe-il une méthode qui permette de converger plus rapidement ? Cordialement, Yann. |
|
|
00
|
|
|
#10 | |
|
Membre émérite
![]() Chercheur Inscription : mars 2010 Messages : 733 ![]() |
Bonsoir,
Citation:
\int_V grad(w).grad(u) dV + \int_V w.exp(u) dV = \int_V w.g dV Dans ton problème, la solution u appartient à un espace de Hilbert H. C'est dans cet espace que tu as dû choisir tes fonctions tests. Cet espace est de dimension infinie. Pour obtenir un système matriciel, il faut d'abord trouver une formulation variationnelle discrète de ton problème, c'est-à-dire un espace X_h de dimension finie qu'on appelle espace d'éléments finis (le paramètre h reflétant la densité de ton maillage). Evidemment, l'espace X_h est choisi de manière à ce qu'il tende vers H quand h tend vers 0 : plus les cellules de ton maillage sont "petites", plus l'erreur faite en approchant H par X_h est petite également. En d'autres termes, on va approcher la fonction u de H par une fonction u_h de X_h. De même, les fonctions tests vont être prises dans X_h; on les notes w_h pour l'homogénéité des notations. La formulation discrète de ton problème est : trouver u_h dans X_h telle que \int_V grad(w_h).grad(u_h) dV + \int_V w_h.exp(u_h) dV = \int_V w_h.g dV, pour tout w_h de X_h. Le fait de projeter ton problème posé dans l'espace infini H dans un espace fini X_h est ce qu'on appelle la méthode de Galerkin. Tout l'intérêt du procédé est que, en se retrouvant en dimension finie, on peut choisir les fonctions w_h de manière à ce qu'ils forment une base de X_h. Posons N=dim(X_h) et soit (w1,w2,...,wN) une base de X_h. Pour 1<=i<=N, on a \int_V grad(wi).grad(u_h) dV + \int_V wi.exp(u_h) dV = \int_V wi.g dV. De plus, la fonction u_h se décompose de manière unique dans la base de X_h : u_h = somme des aj*wj pour j allant de 1 à N (les aj sont des scalaires). On obtient : somme sur j de (\int_V grad(wi).grad(wj) dV + \int_V wi.exp(wj) dV)a_j = \int_V wi.g dV. Voilà, tu as obtenu ton système matriciel K.a= f, avec Kij = \int_V grad(wi).grad(wj) dV + \int_V wi.exp(wj) dV, fi = \int_V wi.g dV, a le vecteur formé par les scalaires aj. La question qui reste en suspens est comment choisir l'espace X_h et sa base. Cela dépend (des cellules) de ton maillage et de l'espace H. |
|
|
|
00
|
|
|
#11 | |
|
Membre émérite
![]() Chercheur Inscription : mars 2010 Messages : 733 ![]() |
Citation:
Oui, si la solution initiale dont tu pars est suffisamment proche de la solution du problème que tu cherches. Dans le cas contraire, elle diverge (oups!). Quand elle converge, la méthode de Newton a un taux de convergence quadratique. A ma connaissance, on ne sait pas faire mieux dans le cas vectoriel. On peut un peu adapter l'algorithme aux équations pour aller un peu plus vite mais ça restera quadratique. Cela dit, le taux de convergence ne fait pas tout. Il faut aussi considérer la complexité de chaque itération de l'algorithme. Il est parfois intéressant de choisir une méthode qui converge moins rapidement mais dont les itérations coûtent moins cher. Dans certains cas, le temps de calcul global est inférieur à celui de la méthode de Newton. Sur ce sujet, je t'invite à te documenter sur les variantes de la méthode de Newton, et notamment sur les méthodes dites "quasi-Newton". |
|
|
|
00
|
|
|
#12 |
|
Nouveau Membre du Club
![]() Inscription : septembre 2007 Messages : 82 ![]() |
Salut,
merci beaucoup pour toutes ces précisions, sympa. Je regarde ça demain, Yann. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com