Trabalhando com matrizes em matlab
Você pode executar todos os tipos de operações matemáticas com matrizes no MATLAB. Você pode encontrar-se a necessidade de criar poderes de matrizes ou usando números complexos. MATLAB para o resgate!
Conteúdo
Criando poderes de matrizes
Às vezes você precisa para obter o poder ou a raiz de uma matriz. O método mais comum é usar o circunflexo (^) Para separar a matriz do poder para o qual pretende aumentá-lo. Para ver como isso funciona, tipo v = [1, 2- 3, 4] ^ 2 e pressione Enter. A saída é a matriz original quadrado, como mostrado aqui:
v = 7 1015 22
Você pode obter o mesmo resultado usando o mpower () função. Tente-lo digitando w = mpower ([1, 2- 3, 4], 2) e pressionar enter. Você vê a mesma saída que ao usar o circunflexo.
Para obter a raiz de uma matriz, você pode usar um valor fracionário como entrada. Por exemplo, para obter a raiz quadrada do exemplo anterior, você usa um valor de 0,5. Para ver este recurso em ação, tipo x = [1, 2- 3, 4] ^ 0,5 e pressione Enter. Você vê o seguinte resultado:
x = 0,5537 + 0,8070 0.4644i - 0.2124i1.2104 - 0.3186i 1,7641 + 0.1458i
É ainda possível obter a inversão de uma matriz, utilizando uma potência negativa. Por exemplo, tente digitar z = [1, 2- 3, 4] ^ (- 1) e pressionando Enter (notar que o -1 está dentro de parêntesis para evitar confusão). Você vê o seguinte resultado:
z = -2,0000 -0,5000 1.00001.5000
MATLAB também proporciona os meios para realizar um poder de elemento por elemento raiz ou de uma matriz usando o bsxfun () função e a pega @power. Para ver como isso funciona, tipo aa = bsxfun (@power, [1, 2- 3, 4], 2) e pressione Enter. Você vê o seguinte resultado, em que cada elemento é multiplicado por si mesmo:
aa = 1 49 16
elemento de trabalho por elemento
Você pode usar o bsxfun () função para executar tarefas elemento por elemento. Por exemplo, para encontrar a praça da matriz [1, 2- 3, 4], você digita aa = bsxfun (@power, [1, 2- 3, 4], 2) e pressione Enter. Claro, o bsxfun () função fornece todos os tipos de alças de função, e você pode vê-los todos, digitando ajuda ( ‘bsxfun’) e pressionar enter.
O problema é que o bsxfun () função requer um pouco de digitação, para que você não pode querer usá-lo o tempo todo. Uma alternativa para utilizar esta função envolve usando o operador ponto (.). Por exemplo, para obter a praça da matriz anterior usando o operador ponto, você digita ab = [1, 2- 3, 4]. ^ 2 e pressione Enter. A saída é como você espera:
AB = 1 49 16
Observe que o ponto vai entre a matriz e o circunflexo. Você pode usar o operador ponto em cada outra circunstância que você pode pensar para modificar o comportamento MATLAB para trabalhar elemento por elemento. Por exemplo, para executar elemento por elemento de multiplicação, você coloca o operador ponto na frente do operador de multiplicação. Para tentar a multiplicação, tipo AC = [1, 2- 3, 4]. * [5, 6 e 7, 8] e pressione Enter.
Você vê o seguinte resultado:
ac = 5 1221 32
Utilizando números complexos
Os números complexos consistem de uma parte real e uma parte imaginária. MATLAB usa a Eu e j constantes para especificar a parte imaginária do número. Por exemplo, quando você calcular a raiz quadrada da matriz [1, 2- 3, 4], -lo a obter uma saída que contém números imaginários. Para ver isso por si mesmo, tipo ad = [1, 2- 3, 4] ^ 0,5 e pressione Enter. Você vê o seguinte resultado:
Video: MATLAB - Aula 1.5 - Manipulações com Matrizes
ad = 0,5537 + 0,8070 0.4644i - 0.2124i1.2104 - 0.3186i 1,7641 + 0.1458i
A primeira coluna da primeira linha contém um valor real de 0,5537 e um valor imaginário de 0.4644i. O i que aparece após o valor 0,4644 diz que este é um número imaginário. A constante j significa a mesma coisa que a constante de i, excepto que a constante j é utilizado em trabalho electrónica.
Você pode executar tarefas com números imaginários, tal como faria qualquer outro número. Por exemplo, você pode quadratura do de Anúncios matriz por tipagem ae = ad ^ 2 e pressionar enter. O resultado pode não ser o que você realmente queria, no entanto:
ae = 1,0000 + 2,0000 0.0000i + 0.0000i3.0000 - 0.0000i 4,0000 + 0.0000i
Depois de uma matriz inclui números imaginários, você precisa convertê-los para obter um formato desejado. Por exemplo, se você digitar af = int32 (ad ^ 2) e pressione Enter, você obter o resultado desejado, mostrado aqui:
AF = 1 23 4
o int32 () função executa o processo de conversão necessário para você. Claro, usando int32 (), ou qualquer outra função do mesmo tipo, na hora errada pode resultar em perda de dados. Por exemplo, se você digitar ag = int32 ([1, 2- 3, 4] ^ 0,5) e pressione Enter, você perde não só a parte imaginária do número, mas a parte fracionária bem. A saída parecido com este:
ag = 11 1 2
MATLAB pressupõe que você saiba o que está fazendo, por isso não impedi-lo de cometer erros críticos. As funções de conversão de saída são
Duplo()
solteiro()
int8 ()
Video: [Matlab] Aula 06 - Trabalhando com Matrizes - Parte 3
int16 ()
Video: [Matlab] Aula 05 - Trabalhando com Matrizes - Parte 2
int32 ()
Video: MATLAB
int64 ()
uint8 ()
uint16 ()
Uint32 ()
uint64 ()
Trabalhar com expoentes
Você usa matriz exponencial para executar tarefas, tais como a resolução de equações diferenciais. MATLAB fornece duas funções para trabalhar com expoentes. O primeiro é o EXPM () função, que executa um exponencial matriz padrão. Por exemplo, quando você digita ah = EXPM ([1, 2- 3, 4]) e pressione Enter, você vê este resultado:
ah = 51,9690 164,0738 74.7366112.1048
MATLAB também torna mais fácil de executar elemento por elemento exponencial usando o exp () função. Para ver como isso funciona, tipo AI = exp ([1, 2- 3, 4]) e pressione Enter. Você vê o seguinte resultado:
AI = 2,7183 54,5982 7.389120.0855