traduire une fonction de matlab vers C++ Builder
Bonjour
Alors voila mon problème j’ai fait une fonction on matlab et je veux la récrire sur C++ builder mai j’arrive pas a la faire jusque maintenant es que vous pouvez m’aider a la réécrire on C++ ? car je me bloque et je suis vraiment debutante en C++
Code:
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
| y=[ 0.123 1.45 0.67];
%------------- propriéterde signal --------
long = length(y); % longeur de signal exple = 3
x = (1:long); % némorité le nombre x= [ 1 2 3]
var=1;
presition = 10 ;
% ----------- variable constante de morlet ---------
precis = 10;
[val_WAV,xWAV] = intwave('morl',precis);
stepWAV = xWAV(2)-xWAV(1);
xMaxWAV=16;
%---------------- Clacule de cofisiant ---------------
signal = y' ;
coefs = zeros(3,3);
ind=1;
for i=1:3
a=i;
j = 1+floor((0:a*16)/(a*stepWAV));
size(j)
f = fliplr(val_WAV(j));
coefs(ind,:) = -sqrt(a)*wkeep1(diff(wconv1(y,f)),3);
ind = ind +1 ;
end
%-------------
coefs |
avec matlab ça donne cette résultat :
Code:
1 2 3 4 5
| coefs =
0.1611 -0.1142 -0.2464
-0.3223 0.0428 0.3312
-0.6138 0.2950 0.6813 |
et voila mon essé sur C++ builder
Code:
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 32 33
| Void __fastcall TForm1::Button1Click(TObject *Sender)
{
double signal[3];
double *buffer;
// ------------------ propriéter de signal --------------
int longeur;
int x[3] ;
int var=1;
int presition = 10 ;
signal[1]= 0.123;
signal[2]= 1.45;
signal[3]= 0.67;
longeur=3;
for (int i=0; i<longeur ; i++)
x[i]=i+1;
//---------------------------------------------------------
//----------------- variable constante de morlet----------
int xMaxWAV=16;
// ---------------- Calcule de cofessiant -----------
double Coef[3][3];
int indicateur
int var
indicateur=1;
for (int i=0; i<17 ; i++)
buffer[i]=i+1;
for ( i=1;i<4;i++ )
{
var=i;
int decimal =1+floor
....
}
} |
je suis bloqué