« Découvrir Scilab/Calcul numérique » : différence entre les versions

Contenu supprimé Contenu ajouté
m Formatage, ajout de strong
Ligne 3 :
 
<br />
<big><big><bigspan style="font-size:25px;">3. Calcul numérique</big></big></bigspan>
----
 
Ligne 18 :
== Définition de fonctions extérieures ==
 
Une <font id="exterieure3">fonction extérieure</fontspan> est une fonction numérique définie par l'utilisateur (notez la différence entre « externe » et « extérieure »).
 
Pour les cas simples, la commande <code id="deff2">deff</code> permet de définir de nouvelles fonctions pouvant s’exprimer avec les opérateurs déjà prédéfinis (les « fonctions internes » ou « primitives »). On passe deux chaînes de caractères comme paramètre :
Ligne 192 :
 
De manière générale, les fonctions de répartition commencent par <code>cdf…</code> ''(cumulative distribution function)'', par exemple :
* <code>P = cdfchi("PQ", x, k)</code> : loi du <font style="font-family: serif">χ</fontspan><sup>2</sup> à ''k'' degrés de liberté ;
* <code>P = cdfnor("PQ", x, mu, sigma)</code> : loi normale d'espérance ''mu'' et d'écart type ''sigma'' ;
* <code>P = cdfpoi("PQ", k, lambda)</code> : loi de Poisson de paramètre ''lambda'' ;
Ligne 213 :
Les mêmes fonctions permettent de rechercher les quantiles ou fractiles :
* <code>k = cdfbin("S", n, P, 1-P, p, 1-p)</code> : nombre de succès ''k'' sur ''n'' épreuves ayant pour paramètre ''p'', donnant une probabilité cumulée P ;
* <code>x = cdfchi("X", k, P, 1-P)</code> : valeur de ''x'' pour laquelle on a une probabilité cumulée P avec une loi du <font style="font-family: serif">χ</fontspan><sup>2</sup> à ''k'' degrés de liberté ;
* <code>x = cdfnor("X", mu, sigma, P, 1-P)</code> : valeur de ''x'' pour laquelle on a une probabilité cumulée P avec une loi normale d'espérance ''mu'' et d'écart type ''sigma'' ;
* <code>k = cdfpoi("S", lambda, P, 1-P)</code> : valeur de ''k'' pour laquelle on a une probabilité cumulée P avec une loi de Poisson de paramètre ''lambda'' ;
Ligne 238 :
** <code>n = cdfbin("Xn", p, 1-p, P, 1-P, k)</code> : nombre d'épreuves ayant pour paramètre ''p'' afin d'avoir un quantile P valant ''k'',
** <code>[p, q] = cdfbin("PrOmpr", P, 1-P, k, n)</code> : paramètre ''p'' de chaque épreuve afin d'avoir un quantile P pour ''k'' succès parmi ''n'' ;
* loi du <font style="font-family: serif">χ</fontspan><sup>2</sup> :<br /> <code>k = cdfchi("Df", P, 1-P, x)</code> : valeur du nombre de degrés de liberté ''(degrees of freedom)'' ''k'' pour avoir un quantile P valant ''x'' ;
* loi normale :
** <code>mu = cdfnor("Mean", sigma, P, 1-P, x)</code> : valeur de l'espérance (moyenne) pour avoir un quantile P valant ''x'' si l'on a un écart type ''sigma'',
Ligne 1 029 :
=== Intégrale numérique ===
 
Scilab peut calculer <font id="integration1">l'intégrale numérique</fontspan> d'une fonction entre deux bornes :
<source lang="scilab" id="integrate1">
integrate("expression", "x", x0, x1)
Ligne 1 083 :
== Résolution d'équations ==
 
Scilab dispose de plusieurs primitives permettant la <font id="solveur1">résolution d'équations</fontspan>. Nous présentons ci-après quatre fonctions internes, mais il en existe d'autres pour des systèmes spécifiques.
 
=== Équation polynomiale ===
Ligne 1 216 :
Si le système n'admet pas de solution, Scilab affiche le message d'erreur : <code>WARNING:Conflicting linear constraints!</code>.
 
Scilab permet également la résolution symbolique d'un système linéaire avec la fonction <font id="solve1"><code>solve</code></fontspan>
<source lang="scilab">
w = solve(A, c)
Ligne 1 339 :
=== Équation différentielle ordinaire ===
 
Une d'équation différentielle ordinaire ''(ordinary differential equation)'', en abrégé EDO ''(ODE)'', peut être résolue de manière numérique avec la fonction <font id="ode1"><code>ode</code></fontspan>. Soit une fonction ''y''(''t'') ; si l'équation différentielle est
: ''dy''/''dt'' = ƒ(''t'',''y''),
alors ƒ ayant été définie (fonction externe), la syntaxe pour déterminer ''y''(''t'') est
Ligne 1 346 :
* ''y0'' et ''t0'' sont les valeurs initiales du système, ''y''(''t0'') = ''y0'',
* ''t'' est un vecteur de valeurs pour lesquelles on calcule les solutions, et
* ''y'' est le vecteur de solutions (<font id="plot1"><code>plot(''t'',''y'')</code></fontspan> permet de tracer le graphique des solutions).
La fonction interne <code>ode</code> admet des arguments permettant de résoudre des situations spécifiques :
* <code>"roots"</code> pour rajouter une équation ''g''(''t'',''y'') = 0,