![]() | Télécharger l'aide (Windows uniquement) |
Classe propriétaire : ode
Requiert : Module MathScript RT
[t, y] = ode_rosen(fun, times, y0)
[t, y] = ode-rosen(fun, times, y0, options)
Ancien nom : ode23s
Utilise la résolution d'ÉDO par la méthode de Rosenbrock pour déterminer les valeurs de y dans un système d'ÉDO. ode_rosen(fun, times, y0) utilise des paramètres par défaut ou des paramètres définis par odepset(name1, value1, ..., nameN, valueN) pour la résolution d'ÉDO. ode_rosen(fun, times, y0, options) utilise des paramètres spécifiés dans les options pour la résolution d'ÉDO.
Nom | Description |
---|---|
fun | Spécifie le nom de la fonction, définie et enregistrée dans un fichier .m, qui décrit le système d'ÉDO. La fonction doit avoir le format suivant : function dy = fun(times, y). fun est une chaîne. |
times | Spécifie le point de départ ou point final de l'intervalle de temps comme, par exemple, [0, 20], ou les points temporels, comme 1:20. times doit être strictement monotone et est un vecteur double précision réel. |
y0 | Spécifie la valeur y au temps de départ. y0 est un vecteur double précision réel. |
options | Spécifie les paramètres pour la résolution d'ÉDO. options est une structure qui contient les paramètres de la résolution d'ÉDO. |
Nom | Description |
---|---|
t | Renvoie les valeurs de temps auxquelles LabVIEW évalue les valeurs y. t est un vecteur double précision réel. |
y | Renvoie les valeurs y pour lesquelles LabVIEW calcule une approximation. y est une matrice de réels double précision. |
Si vous spécifiez le temps de départ et le temps final de l'intervalle de temps dans times, LabVIEW ajuste automatiquement la taille de l'incrément de temps dans les calculs pour que l'erreur par incrément reste à une tolérance absolue et relative donnée. De même, si vous spécifiez les points temporels dans times, LabVIEW ajuste automatiquement la taille de l'incrément de temps pour obtenir un calcul plus précis. Cependant, LabVIEW ne renvoie que les valeurs y aux points que vous spécifiez et t est égal à times.
Cette fonction est supportée dans le moteur d'exécution de LabVIEW et sur les cibles RT si le fichier .m que vous avez défini et enregistré pour le paramètre fun est une constante chaîne.
Le tableau suivant répertorie les caractéristiques de support de cette fonction.
Supportée par le moteur d'exécution LabVIEW | Oui (si vous demandez une sortie) |
Supportée sur les cibles RT | Oui (si vous demandez une sortie) |
Compatible avec les durées d'exécution limitées sur RT | Non caractérisée |
% The lorenz function is defined by:
% function DY = lorenz(times, y)
% DY = zeros(3, 1);
% DY(1) = 10*(y(2)-y(1));
% DY(2) = 28*y(1)-y(2)-y(1)*y(3);
% DY(3) = y(1)*y(2)-8/3*y(3);
[T, Y] = ode_rosen('lorenz', [0, 5], [1; 1; 1])
odepset('AbsTol', 1E-3, 'MinStep', 1E-8, 'MaxStep', 1)
[T2, Y2] = ode_rosen('lorenz', [0, 5], [1; 1; 1])
options = odepset
[T3, Y3] = ode_rosen('lorenz', [0, 5], [1; 1; 1], options)
Utile
Pas utile