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...
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...
Voila ce que j'ai fait, avec fonction la fonction à minimiser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 i=1; j=1; for b=1:10 k(1)=b; for c=1:10 k(2)=c; for d=1:10 k(3)=d; for e=1:10 k(4)=e; for f=1:10 k(5)=f; if ((fonction(k)<10e-3)&&(fonction(k)>-10e-3)&&(b~=c~=d~=e~=f)) A(j)=fonction(k); if (j==1) K=[b c d e f]; else K=[K;b c d e f]; end j=j+1; end i=i+1; end end end end end [Y,I] = min(A)
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...
...
ne me tapez pas.
min(abs(A))... !
Partager