Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
fsolve
résout un système d'équations non-linéaires
Séquence d'appel
[x, v, info] = fsolve(x0, fct) [x, v, info] = fsolve(x0, fct, fjac) [x, v, info] = fsolve(x0, fct, fjac, tol) [x, v, info] = fsolve(x0, fct, tol)
Paramètres
- x0
- vecteur réel (vecteur initial). 
- fct
- fonction externe (fonction Scilab ou chaîne de caractères ou liste). 
- fjac
- fonction externe (fonction Scilab ou chaîne de caractères ou liste). 
- tol
- scalaire. Tolérance : l'algorithme s'arrête lorsque l'erreur relative estimée entre x et la solution est inférieure à tol ( - tol=1.d-10par défaut).
- x :
- vecteur réel (solution estimée). 
- v :
- vecteur réel facultatif: valeur de la fonction en x. 
- info
- indicateur d'arrêt de l'algorithme : - 0 - Paramètres d'entrée incorrects. - 1 - L'erreur relative estimée entre x et la solution est inférieure à tol. - 2 - Nombre maximal autorisé d'appels à fct atteint. - 3 - tol est trop petite. L'algorithme stationne. - 4 - les itérations n'améliorent pas assez la solution. 
Description
Résout un système de n équations non linéaires à n inconnues avec un algorithme du type méthode hybride de Powell. La Jacobienne peut être fournie (c'est fortement conseillé).
0 = fct(x)
fct est une fonction "externe" Cette fonction
            renvoie v=fct(x) pour x
            donné.
La séquence d'appel de fct est :
[v]=fct(x).
Si fct est une chaîne de caractères, elle désigne
            le nom d'une subroutine Fortran ou C liée dynamiquement à Scilab, avec
            comme liste d'appel Fortran :
fct(n,x,v,iflag) integer n,iflag double precision x(n),v(n)
ou alors pour une routine C :
(voir link).
jac est une fonction "externe" aussi. Cette
            fonction renvoie v=d(fct)/dx (x) pour
            x donné.
La séquence d'appel de jac est :
[v]=jac(x).
Si jac est une chaîne de caractères, elle désigne
            le nom d'une subroutine Fortran ou C liée dynamiquement à Scilab. Les
            séquences d'appel sont les mêmes que pour fct (attention v doit être un
            tableau n x n).
Exemples
// un exemple simple a=[1,7;2,8];b=[10;11]; deff('[y]=fsol1(x)','y=a*x+b'); deff('[y]=fsolj1(x)','y=a'); [xres]=fsolve([100;100],fsol1); a*xres+b [xres]=fsolve([100;100],fsol1,fsolj1); a*xres+b // voir SCI/modules/optimization/sci_gateway/fortran/Ex-fsolve.f [xres]=fsolve([100;100],'fsol1','fsolj1',1.e-7); a*xres+b
Voir aussi
| Report an issue | ||
| << Semidefinite Programming | Optimisation et Simulation | karmarkar >> |