Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1713 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  matlab timer timeout?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

matlab timer timeout?

n°1847501
salocin49
Posté le 05-02-2009 à 12:02:08  profilanswer
 

Bonjour,  
 
J'ai un problème de temps de calcul et de fonction qui ne converge dans un programme MATLAB que j'écris.  
 
Le morceau de codes qui m'intéresse ressemble à cela grosso modo:  
 
%input est une matrice de LG (valeur sans intérêt ici) sur N par exemple  
x=[] % est créé au départ pout stocker les résultats  
%paraini sont les paramètres initiaux de ma fonction.  
% Si je les modifie, assouplis, ma fonction devrait converger et me produire mon output que je veux stocker dans x  
%La fonction doit s'appliquer N fois (souvent plus de 100 ou 200 fois)  
% j'ai besoin de commencer par les paraini contraignants pour avoir un output de la meilleure qualité possible  
% chaque étape peut prendre plusieurs secondes (dizaines de secondes)  
% au global ça peut durer plusieurs heures  
 
for i=1:N  
x(i)=mafonction(input(:,i),paraini);  
end  
 
le problème est que pour certaines des itérations sur i, mon programme bugge  
tout se coupe  
j'obtiens un "maximum recursionlimit of 1000 reached"  
changer ce paramètre n'est pas une solution satisfaisante, parfois ça ne converge vraiment pas  
ça m'arrangerait vraiment de pas faire le travail bloc par bloc et de devoir éventuellement rependre les itérations problèmatiques une par une.  
 
il y a assurément une solution mais je n'arrive pas à la trouver/comprendre  
Objectif  
Que j'obtienne un output à chaque itération sur i en autorisant un assouplissement de paraini pour les itérations qui posent problème.  
la solution doit passer par des stop, des timer, des stopFcn  
En gros, il faut que la séquence à problème stoppe (sans planter tout le programme) si un temps limite de calcul est dépassé ou que l'on approche de la borne recursionlimit et que je puisse modifier/abaisser les paramètres (s'il le faut plusieurs fois) afin de donner des conditions plus favorables à mafonction et ainsi obtenir un ouput.  
 
En espérant avoir été clair  
 
Merci par avance de votre aide et idées  
 
Nicolas

mood
Publicité
Posté le 05-02-2009 à 12:02:08  profilanswer
 

n°1847955
salocin49
Posté le 06-02-2009 à 14:04:14  profilanswer
 

C'est bon!!!
j'ai trouvé une solution
Il suffit de mettre une structure avec des "try" et des "catch" pour pouvoir changer de paramètres si besoin
 
Nicolas


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  matlab timer timeout?

 

Sujets relatifs
Traduction de [IDL] en [Matlab] d'un petit programmeQuestionnement sur Matlab
[PHP] timeout 0 dans le php.ini, quelques questionsMacro excel called from Matlab?
[Octave] La librairie Matlab libre (C++ inside)graphes sur matlab
[MATLAB][Optimization Toolbox][fmincon] Signification des options ?Matlab matrices
Matlabcomment faire équivalent d'un timer avec qtdesigner ?
Plus de sujets relatifs à : matlab timer timeout?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR