web-dev-qa-db-fra.com

Comment représenter e ^ (- t ^ 2) dans MATLAB?

Je suis un débutant dans MATLAB, et je dois représenter e(-t2).

Je sais que, par exemple, pour représenter ex J'utilise exp(x), et j'ai essayé ce qui suit

1) tp = t ^ 2;/tp = t * t; x = exp (-tp);

2) x = exp (-t ^ 2);

3) x = exp (- (t * t));

4) x = exp (-t) * exp (-t);

Quelle est la bonne façon de procéder?

7
user573382

Si t est une matrice, vous devez utiliser la multiplication ou l'exponentiation par élément. Notez le point.

x = exp( -t.^2 )

ou

x = exp( -t.*t )
14
Tim

Les 3 premières voies sont identiques. Vous devez vous assurer que si t est une matrice, vous ajoutez . avant d'utiliser la multiplication ou la puissance.

pour matrice:

t= [1 2 3;2 3 4;3 4 5];
tp=t.*t;
x=exp(-(t.^2));
y=exp(-(t.*t));
z=exp(-(tp));

donne les résultats:

x =

0.3679    0.0183    0.0001
0.0183    0.0001    0.0000
0.0001    0.0000    0.0000

y =

0.3679    0.0183    0.0001
0.0183    0.0001    0.0000
0.0001    0.0000    0.0000

z=

0.3679    0.0183    0.0001
0.0183    0.0001    0.0000
0.0001    0.0000    0.0000

Et en utilisant un scalaire:

p=3;
pp=p^2;
x=exp(-(p^2));
y=exp(-(p*p));
z=exp(-pp);

donne les résultats:

x =

1.2341e-004

y =

1.2341e-004

z =

1.2341e-004
5
SIMEL