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 № 1Le 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