J'essaie de résoudre le système d'équations suivant pour les variables et x 2 (toutes les autres sont des constantes):
Je peux voir que je peux transformer ce système d'équations en une seule équation d'une seule variable en résolvant respectivement les équations 1 et 2 pour x 1 et x 2 et en les remplaçant par l'équation 3. Ce faisant, je suis capable de utilisez la commande de matlab pour trouver la solution. En utilisant les paramètres k 1 = k 2 = 1 , r 1 = r 2 = 0,2 et A = 2 , j'ai trouvé que la vraie solution était P = x 1 = xfzero
.
Cependant, lorsque j'utilise la méthode de newton appliquée au système d'équation 3 variate - 3 original, les itérations ne convergent jamais vers la solution, peu importe à quel point je commence à la vraie solution .
Au début, je soupçonnais mon bug dans mon implémentation de la méthode de newton. Après avoir vérifié plusieurs fois, je n'ai trouvé aucun bug. Ensuite, j'ai essayé d'utiliser une supposition initiale , et voici: le jacobien est singulier. Je sais qu'un jacobien singulier peut réduire l'ordre de convergence, mais je ne pense pas qu'il empêche nécessairement la convergence vers la vraie solution.
Donc, ma question est, étant donné que le jacobien du système à la vraie solution est singulier:
Quelles autres conditions sont nécessaires pour prouver que la méthode de newton ne convergera pas vers la racine?
Une stratégie de mondialisation (par exemple la recherche en ligne) garantirait-elle la convergence malgré le jacobien singulier?