Minimiser une fonction avec Matlab

Minimiser une fonction avec Matlab - Divers - Programmation

Marsh Posté le 21-03-2009 à 20:31:28    

Salut,
j'ai une fonction à minimiser (équilibrage d'un vilebrequin) qui est la suivante :
 
SOMME pour j=1 à 6 de [2(6-j).sin(4PI/11 * Kj)]
Les conditions sont Ki!=Kj et Ki+Kj!=11 Kj appartient à [1;10]
 
Je ne sais pas du tout comment faire...

Reply

Marsh Posté le 21-03-2009 à 20:31:28   

Reply

Marsh Posté le 22-03-2009 à 12:32:12    

Code :
  1. i=1;
  2. j=1;
  3. for b=1:10
  4.     k(1)=b;
  5.     for c=1:10
  6.         k(2)=c;
  7.         for d=1:10
  8.             k(3)=d;
  9.             for e=1:10
  10.                 k(4)=e;
  11.                 for f=1:10                                                                         
  12.                     k(5)=f;
  13.                     if ((fonction(k)<10e-3)&&(fonction(k)>-10e-3)&&(b~=c~=d~=e~=f))
  14.                         A(j)=fonction(k);
  15.                         if (j==1)                   
  16.                             K=[b c d e f];
  17.                         else
  18.                             K=[K;b c d e f];
  19.                         end
  20.                         j=j+1;
  21.                     end
  22.                     i=i+1;
  23.                 end
  24.             end
  25.         end
  26.     end
  27. end
  28. [Y,I] = min(A)


 
Voila ce que j'ai fait, avec fonction la fonction à minimiser.
Mais j'ai un gros problème : si je change la condition d'écriture du résultat dans le vecteur, la minimum change lui aussi...

Reply

Marsh Posté le 22-03-2009 à 13:19:13    

...
ne me tapez pas.
 
min(abs(A))... !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed