C MIMO
matrix.h
1 #ifndef _H_MYCOMPLEX
2 #define _H_MYCOMPLEX
3 
4 #include <stdlib.h>
5 
10 typedef struct complexo {
11  double real;
12  double img;
13 } complexo;
14 //Função: Teste de todas as funções de álgebra matricial do código.
15 void teste_todos(void);
16 //Função: Transposição de uma matriz.
17 complexo** transposta(complexo **mtx, int linhas, int colunas);
18 //Função: Conjugada de uma matriz complexa.
19 complexo** conjugada(complexo **mtx, int linhas, int colunas);
20 //Função: Hermitiana de uma matriz complexa.
21 complexo** hermitiana(complexo **mtx, int linhas, int colunas);
22 //Função: Soma entre duas matrizes complexas.
23 complexo** soma(complexo **mtx_a, complexo **mtx_b, int linhas, int colunas);
24 //Função: Subtração entre duas matrizes complexas.
25 complexo** subtracao(complexo **mtx_a, complexo **mtx_b, int linhas, int colunas);
26 //Função: Produto interno entre dois vetores complexos.
27 complexo produto_interno(complexo **v1, complexo **v2, int linhas, int colunas);
28 //Função: Produto matricial entre duas matrizes complexas.
29 complexo** produto_matricial(complexo **mtx_a, complexo **mtx_b, int linhas, int colunas);
30 //Função: Multiplicação por um escalar k.
31 complexo** produto_por_escalar(complexo **mtx, int linhas, int colunas, int k);
32 //Funções de teste.
33 void teste_transposta(void);
34 void teste_conjugada(void);
35 void teste_hermetiana(void);
36 void teste_soma(void);
37 void teste_subtracao(void);
38 void teste_produto_interno(void);
39 void teste_produto_matricial(void);
40 //Manipulação de memória.
41 complexo** allocateComplexMatrix(int linhas, int colunas);
42 void LiberarMatriz(complexo **mtx, int linhas);
43 //Manipulação de números complexos.
44 void printComplex(complexo c);
45 complexo soma_complexo(complexo c1, complexo c2);
46 complexo multcomp(complexo c1, complexo c2);
47 void calc_svd(complexo** mtx, int linhas, int colunas);
48 #endif
Definition: matrix.h:10
double real
Parte real.
Definition: matrix.h:11
double img
Parte imaginária.
Definition: matrix.h:12