Comment déclarer le j (j*j = -1) en C

Résolu
airstrik Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
airstrik Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

En fait j'ai déja travaillé avec les nombres complexes sur C en defnissant des structures avec réel et imaginaire de type float.

Bah la dans mon projet il y a une partie ou je dois multiplier deux matrices H et F, F est de la forme suivante F=[1, 0, 0, exp(j*theta)];
je ne sais pas trop comment faire et meme la déclaration de F en C me pose problème.

Si quelqu'un peut me filer un coup de main ce serait sympa. Merci d'avance



2 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Pourquoi ne pas utiliser le header complex.h tout simplement ?
Pour la matrice, cela ne pose pas problème, il te suffit d'utiliser des tableaux 2D.
Et tu peux séparer les matrices en deux matrices réels.
Par exemple : F = A + j*B avec A et B deux matrices dans IR.
En remarquant que e^(j theta)= cos theta + j sin theta, tu devrais t'en sortir ;-)))
2
airstrik Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
mERCI C COM TU AS DIT IL FALLAIT ecrire cos(theta)+j sin(theta) et utiliser le complex.h et les tableaux 2D et le tour est joué
ca fé plus de 4 ans que je n'est pas travailler sur le C c'est comme si je reprenais tout a zéro
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
En maths c'est i qui est solution de 1+i²=0, car j est la solution de l'équation 1+j+j²=0 => j=exp(2i.pi/3)
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
En math oui. Mais, parfois on utilise j à la place de i en physique notamment. Dans son cas, je doute que ça soit j = exp(2ipi/3) car sinon le dernier terme de sa matrice aurait une sale tête ^^.
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
oui, i est une convention. Particulièrement en électronique on utilise "j", pour ne pas confondre avec l'intensité du courant "i".
0