[MATLAB] - temps d'exécution d'une variable
Fermé
smo8000
Messages postés
5
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
4 septembre 2008
-
22 août 2008 à 15:33
mich62120 Messages postés 631 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 21 janvier 2010 - 22 août 2008 à 17:30
mich62120 Messages postés 631 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 21 janvier 2010 - 22 août 2008 à 17:30
A voir également:
- [MATLAB] - temps d'exécution d'une variable
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Vba range avec variable ✓ - Forum VB / VBA
- Vue satellite en temps réel gratuit ✓ - Forum Satellite
- Erreur d'execution 1004 - Forum Programmation
- Un administrateur vous a refusé l'execution de cette application - Forum Windows 10
2 réponses
mich62120
Messages postés
631
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
21 janvier 2010
6
22 août 2008 à 17:30
22 août 2008 à 17:30
Je suis tombé sur cela:
4. Optimisation des calculs
Les calculs sont accélérés de façon spectaculaire en utilisant des opérations vectorielles en
lieu et place de boucles. Comparons les deux fonctions suivantes (la commande tic déclenche
un chronomètre ; toc arrête le chronomètre et retourne le temps écoulé depuis tic) :
function [t,b] = test1(n)
% détermine le temps mis pour créer la liste
% des racines carrées des entiers compris entre 1 et n
m = 0 ;
tic ;
for k = 1 : 1 : n
b(k) = m+sqrt(k) ;
end
t = toc ;
function [t,b] = test2(n)
% détermine le temps mis pour créer la liste
% des racines carrées des entiers compris entre 1 et n
tic ;
a = 1 : 1 : n ;
b = sqrt(a) ;
t = toc ;
Tu peux faire un chrono et ajouter a chaque boucle le temps pour avoir le temps écoulé
Je suis parti du principe que cela retourne des seconde mais à vérifier.
Ce n'est pas précis à la seconde étant donné que des charge seront utilisé hors du compteur mais c'est une diée.
Mich
4. Optimisation des calculs
Les calculs sont accélérés de façon spectaculaire en utilisant des opérations vectorielles en
lieu et place de boucles. Comparons les deux fonctions suivantes (la commande tic déclenche
un chronomètre ; toc arrête le chronomètre et retourne le temps écoulé depuis tic) :
function [t,b] = test1(n)
% détermine le temps mis pour créer la liste
% des racines carrées des entiers compris entre 1 et n
m = 0 ;
tic ;
for k = 1 : 1 : n
b(k) = m+sqrt(k) ;
end
t = toc ;
function [t,b] = test2(n)
% détermine le temps mis pour créer la liste
% des racines carrées des entiers compris entre 1 et n
tic ;
a = 1 : 1 : n ;
b = sqrt(a) ;
t = toc ;
Tu peux faire un chrono et ajouter a chaque boucle le temps pour avoir le temps écoulé
V=15;
t=0;
while(<condition d'arrêt>)
tic
ton traitement
t=t+toc
if (t<=30*60)
t=0
if(V=15)
V=5;
else V=15;
end
end
end
Je suis parti du principe que cela retourne des seconde mais à vérifier.
Ce n'est pas précis à la seconde étant donné que des charge seront utilisé hors du compteur mais c'est une diée.
Mich
@nGel_974
Messages postés
3163
Date d'inscription
dimanche 28 octobre 2007
Statut
Membre
Dernière intervention
25 avril 2010
159
22 août 2008 à 15:45
22 août 2008 à 15:45
Bon vu que tu ne précises pas de langage vais faire un petit algo, ça fait longtemps que je n'en ai pas fait :)
Je te laisse le soin d'effectuer la conversion ;)
timer = 0
V1 = 10
V2 = 5
Vitesse = 0
tempsDebut = 0
While (timer < 30) do
timer = tempsDebut + getTime()
EndWhile
timer = 0
tempsDébut = 0
While (timer < 30) do
timer = tempsDebut + getTime()
EndWhile
Je te laisse le soin d'effectuer la conversion ;)
mich62120
Messages postés
631
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
21 janvier 2010
6
22 août 2008 à 16:30
22 août 2008 à 16:30
Le language c'est MatLab.
Dsl j'ai pas trouvé comment faire, il y a bien une fonction pause mais elle arrêtera toute exécution au lieu de seulement compté.
Il faut faire une sorte d'interruption si tu veux un comptage du temps parallèle à ton application principale et je vois pas comment faire avec mon peu de connaissance en Matlab.
Bon courage Mich
Dsl j'ai pas trouvé comment faire, il y a bien une fonction pause mais elle arrêtera toute exécution au lieu de seulement compté.
Il faut faire une sorte d'interruption si tu veux un comptage du temps parallèle à ton application principale et je vois pas comment faire avec mon peu de connaissance en Matlab.
Bon courage Mich