1 / 98

Carlos André Vaz Junior cavazjunior@gmail eq.ufrj.br/links/h2cin/carlosandre

Carlos André Vaz Junior cavazjunior@gmail.com http://www.eq.ufrj.br/links/h2cin/carlosandre. Mais de 1 milhão de resultados. http://newsreader.mathworks.com. ?. Agora a = 2, faço tudo de novo?!. Tipos Básicos. Matriz. Estrutura. Char Array. Case Sensitive!. CaSe SeNsItIvE!.

skip
Télécharger la présentation

Carlos André Vaz Junior cavazjunior@gmail eq.ufrj.br/links/h2cin/carlosandre

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Carlos André Vaz Junior cavazjunior@gmail.com http://www.eq.ufrj.br/links/h2cin/carlosandre

  2. Mais de 1 milhão de resultados

  3. http://newsreader.mathworks.com ?

  4. Agora a = 2, faço tudo de novo?!

  5. Tipos Básicos Matriz Estrutura Char Array Case Sensitive! CaSe SeNsItIvE!

  6. Criando uma matriz:

  7. Criando um “char array”:

  8. Banco de Dados da “Turma”: Alunos: Carla, João, Bruno, Luis, Marcela Professor: Marcelo Horário: 13h Sala: 221 Estrutura: turma.alunos.nomes=strvcat( 'carla',’joao','bruno', ... 'luis', 'marcela‘ ); turma.professor.nome=(‘Marcelo‘) turma.horario=1300 turma.sala=221

  9. Comando “who” e “whos”

  10. Use “;” para evitar que o resultado apareça na tela. Use A=0:0.5:10 para gerar matrizes com dados em seqüência. Use “clear A” para apagar a variável A. Use “clear all” para apagar todas as variáveis armazenadas. Use “size(A) ” para identificar as dimensões da matriz. A maior dimensão é dada pelo comando “length(A) ” Dicas!

  11. i) Soma e subtração: soma (ou subtrai) elemento por elemento da matriz. A+B A-B ii) Multiplicação e Divisão de matrizes: atenção às regras da álgebra, pois as dimensões das matrizes têm que ser coerentes! A * B A / B iii) Multiplicação e divisão elemento por elemento: A .* B A ./ B

  12. iv) Matriz Transposta: A’ v) Cria Matriz Identidade: eye(número de linhas, número de colunas) vi) Cria Matriz Zeros: zeros(número de linhas, número de colunas) vii) Cria Matriz Uns: ones(número de linhas, número de colunas) viii) Cria Matriz Randômica (composta de números aleatórios): rand(número de linhas, número de colunas)

  13. ix) Determinante: det(matriz) x) Inversa: inv(matriz) xi) Dimensões da matriz: size(matriz) lenght(matriz) numel(matriz) Veja também: flipud e fliplr

  14. Elemento = Matriz(2,3) ou Matriz(10)

  15. Programa Principal / Workspace global C C=100 D=22 Função Alfa Função Beta A=1 B=2 global C C=100 E=15 F=55 C=23

  16. Achando a posição do menor valor de uma matriz: x=[1 2 3 4 5 6; 2 1 3 3 2 1]; %Forma linear: xmin=min(x); xmin=min(xmin); [i,j]=find(x==xmin); %Forma condensada: [i,j]=find(x==(min(min(x))));

  17. Achando o menor valor de uma função: X = fzero('sin',2) função estimativa inicial Veja também: fsolve e fmin

  18. if:

  19. AND OR

  20. Verdadeiro Falso AND a b resultado 1 1 1 0 0 1 1 0 0 0 0 0 OR a b resultado 1 1 1 0 1 1 1 1 0 0 0 0

  21. Case: switch I case 1, disp('I vale 1') case 2, disp('I vale 2') otherwise disp('I nao eh nem 1 nem 2') end

  22. While: while I < 10, disp(‘oi’); I=I+1; end Manipule o ponteiro I na rotina executada pelo “while”

  23. For: for J = 1:100, A(1,J) = 1/(I+J-1); end Incremento automático do ponteiro J a cada loop

  24. >> figure(1) >> figure(2) >> t=0:0.01:10; >> y=sin(t); >> plot(t,y) >> z=cos(t); >> plot(t,z)

  25. Use “[x,y]=ginput(2)” para capturar dois pontos no gráfico Use “close all” para fechar todas as figuras Use “clf” para apagar a figura atual Dica!

  26. >> figure(3) >> plot(t,y) >> subplot(1,2,2) >> plot(t,z) >> subplot(1,2,1)

  27. >> t=0:0.25:10; >> y=sin(t); >> plot(t,y,'r+') >> xlabel('tempo') >> ylabel('seno') >> title('Seno vs. Tempo') >> Axis([0 10 -2 2])

  28. >> t=0:0.01:10; >> y=sin(t); >> z=cos(t); >> plot(t,y,'g-',t,z,'r-') >> legend('seno','cosseno') Ou... >> t=0:0.01:10; >> y=sin(t); >> z=cos(t); >> plot(t,y,'g-‘) >> hold on >> plot(t,z,'r-') >> legend('seno','cosseno')

  29. xx=0:0.01:1; yy=0:0.01:1; [X,Y]=meshgrid(xx,yy); Z=exp(-0.5*(X.^2+Y.^2)); colormap jet figure(1);surf(X,Y,Z); rotate3d on; shading interp;

  30. %Malha triangular da base %malha da base xx=0:0.01:1; yy=0:0.01:1; [X,Y]=meshgrid(xx,yy); Z=1-X-Y; %aplica a restrição para usar só a base do triangulo %onde existe consistência física (o que nao tem vira "Not a Number") iz=find(Z<0);Z(iz)=nan;

  31. Composição (3 componentes) %Malha triangular da base %malha da base xx=0:0.01:1; yy=0:0.01:1; [X,Y]=meshgrid(xx,yy); Z=1-X-Y; %aplica a restrição para usar só a base do triangulo %onde existe consistência física (o que não tem vira "Not a Number") iz=find(Z<0);Z(iz)=nan;

  32. Alguns Z são negativos! Não pode! %Malha triangular da base %malha da base xx=0:0.01:1; yy=0:0.01:1; [X,Y]=meshgrid(xx,yy); Z=1-X-Y; %aplica a restrição para usar só a base do triangulo %onde existe consistência física (o que não tem vira "Not a Number") iz=find(Z<0);Z(iz)=nan;

  33. vv1=(X.*log(X))+(Y.*log(Y))+(Z.*log(Z)); %gráfico da superfície colormap jet figure(1);surf(X,Y,vv1); rotate3d on; shading interp; xlabel('X1');ylabel('X2');zlabel('DeltaGi/RT');

  34. Exemplos

  35. Exemplo 1

More Related