/ / MATLAB: = Syntaxe? - matlab, syntaxe, wolfram-mathematica

MATLAB: = Syntaxe? - matlab, syntaxe, wolfram-mathematica

Je ne parviens pas à déboguer du code (nouveau dans MATLAB). J'ai rencontré la ligne de code suivante:

CC[theta_] := {{Cos[theta],I Sin[theta]},{I Sin[theta], Cos[theta]}}

Je reçois une erreur en disant:

Erreur d'analyse à ":": l'utilisation peut être une syntaxe MATLAB non valide.

Quand je retire le :, Je reçois exactement le même message, mais dans ce cas, il est écrit "Erreur d’analyse à" = "". Est-ce qu'il y a un moyen de réparer ceci? C’est un code MATLAB assez ancien et je ne sais pas si le style de syntaxe a changé.

Réponses:

4 pour la réponse № 1

Le code fourni provient clairement de Mathematica. Pour faire la même chose dans Matlab, nous pouvons définir un descripteur de fonction:

CC = @(theta) [cos(theta), 1i*sin(theta); 1i*sin(theta), cos(theta)]

1i est l’unité imaginaire dans Matlab (I dans Mathematica). Matlab utilise [a,b;c,d] définir un 2x2-matrice ({{a,b},{c,d}} dans Mathematica). La définition := n'est pas possible dans Matlab. Une poignée de fonction (comme dans l'exemple) ou une fonction symbolique peut être utilisée.

Évalué à theta=pi/4 avec la commande CC(pi/4) donne ce résultat:

 0.7071 + 0.0000i   0.0000 + 0.7071i
0.0000 + 0.7071i   0.7071 + 0.0000i