MATLAB Bsico Carlos Andr Vaz Junior cavazjuniorgmail com
MATLAB Básico Carlos André Vaz Junior cavazjunior@gmail. com http: //www. eq. ufrj. br/links/h 2 cin/carlosandre
MATLAB Básico Mais de 1 milhão de resultados
MATLAB Básico ? http: //newsreader. mathworks. com
MATLAB Básico
MATLAB Básico
MATLAB Básico
MATLAB Básico
MATLAB Básico Agora a = 2, faço tudo de novo? !
MATLAB Básico
MATLAB Básico
MATLAB Básico
Tipos Básicos MATLAB Básico Matriz Case Sensitive! Char Array Estrutura Ca. Se Se. Ns. It. Iv. E!
MATLAB Básico Criando uma matriz:
MATLAB Básico Criando um “char array”:
Banco de Dados da “Turma”: Alunos: Carla, João, Bruno, Luis, Marcela Professor: Marcelo Horário: 13 h Sala: 221 MATLAB Básico Estrutura: turma. alunos. nomes=strvcat( 'carla', ’joao', 'bruno', . . . 'luis', 'marcela‘ ); turma. professor. nome=(‘Marcelo‘) turma. horario=1300 turma. sala=221
MATLAB Básico Comando “who” e “whos”
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. MATLAB Básico Use “size(A) ” para identificar as dimensões da matriz. A maior dimensão é dada pelo comando “length(A) ” Dicas!
MATLAB Básico 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
MATLAB Básico 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)
MATLAB Básico 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
MATLAB Básico 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 Elemento = Matriz(2, 3) ou Matriz(10)
MATLAB Básico
Programa Principal / Workspace global C C=100 D=22 MATLAB Básico Função Alfa A=1 B=2 global C C=100 Função Beta E=15 F=55 C=23
Achando a posição do menor valor de uma matriz: x=[1 2 3 4 5 6; 2 1 3 3 2 1]; MATLAB Básico %Forma linear: xmin=min(x); xmin=min(xmin); [i, j]=find(x==xmin); %Forma condensada: [i, j]=find(x==(min(x))));
Achando o menor valor de uma função: X = fzero('sin', 2) MATLAB Básico função estimativa inicial Veja também: fsolve e fmin
MATLAB Básico if:
MATLAB Básico AND OR
Falso Verdadeiro MATLAB Básico AND a b 1 1 0 OR resultado a b resultado 1 1 1 0 0 1 0 0 0
MATLAB Básico 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
While: MATLAB Básico while I < 10, disp(‘oi’); I=I+1; end Manipule o ponteiro I na rotina executada pelo “while”
For: for J = 1: 100, MATLAB Básico A(1, J) = 1/(I+J-1); end Incremento automático do ponteiro J a cada loop
MATLAB Básico >> figure(1) >> figure(2) >> t=0: 0. 01: 10; >> y=sin(t); >> plot(t, y) >> z=cos(t); >> plot(t, z)
Use “[x, y]=ginput(2)” para capturar dois pontos no gráfico Use “close all” para fechar todas as figuras MATLAB Básico Use “clf” para apagar a figura atual Dica!
MATLAB Básico >> figure(3) >> plot(t, y) >> subplot(1, 2, 1) >> subplot(1, 2, 2) >> plot(t, z)
MATLAB Básico >> 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])
>> t=0: 0. 01: 10; >> y=sin(t); >> z=cos(t); >> plot(t, y, 'g-', t, z, 'r-') >> legend('seno', 'cosseno') MATLAB Básico 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')
MATLAB Básico
xx=0: 0. 01: 1; yy=0: 0. 01: 1; [X, Y]=meshgrid(xx, yy); Z=exp(-0. 5*(X. ^2+Y. ^2)); MATLAB Básico colormap jet figure(1); surf(X, Y, Z); rotate 3 d on; shading interp;
MATLAB Básico
MATLAB Básico
MATLAB Básico %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;
Composição (3 componentes) MATLAB Básico %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;
Alguns Z são negativos! Não pode! MATLAB Básico %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;
vv 1=(X. *log(X))+(Y. *log(Y))+(Z. *log(Z)); MATLAB Básico %gráfico da superfície colormap jet figure(1); surf(X, Y, vv 1); rotate 3 d on; shading interp; xlabel('X 1'); ylabel('X 2'); zlabel('Delta. Gi/RT');
MATLAB Básico
MATLAB Básico Exemplos
MATLAB Básico Exemplo 1
MATLAB Básico
MATLAB Básico
MATLAB Básico
MATLAB Básico
MATLAB Básico % Definição das constantes do modelo R = 1; % h/m 2 A = 2; % m 2 Fe = 10; % m 3/h % Tempo de simulação t = 0. 0 : 0. 01 : 10. 0; % h % Simulação da altura de líquido h = R*Fe*(1 - exp(-t/(R*A))); % m % Visualização da simulação plot(t, h); title('Simulação do tanque de nível'); xlabel('Tempo (h)'); ylabel('Altura (m)');
MATLAB Básico Verifique a consistência do calculo: a matriz “h” gerada também deve ser 1 x 1000, já que cada instante “t” gerou um valor “h”. É sempre útil conferir a dimensão das variáveis, principalmente a medida que as rotinas forem tornando-se complexas. Dica!
MATLAB Básico Exemplo 2
MATLAB Básico Muitas vezes é muito trabalhoso, ou mesmo impossível, encontrar a solução analítica para o conjunto de equações diferenciais. Nesse caso temos que simular usando solução numérica das equações diferenciais. Vamos assumir que o modelo do exemplo 1 não tivesse solução analítica, e então usar o Matlab para estudar o comportamento da altura do nível com o tempo. A equação diferencial será:
MATLAB Básico % Definição das constantes do modelo R = 1; % h/m 2 A = 2; % m 2 Fe = 10; % m 3/h % Tempo de simulação t = 0. 0 : 0. 01 : 10. 0; % h % Simulação da altura de líquido [t, h] = ode 45('dhdt', t, 0, [], [R A Fe]); % Visualização da simulação plot(t, h); title('Simulação do tanque de nível'); xlabel('Tempo (h)'); ylabel('Altura (m)'); function dh = dhdt(t, h, flag, par) R = par(1); A = par(2); Fe = par(3); dh = (Fe-(h/R))/A;
Nesse caso temos uma equação diferencial, então deveremos usar uma função Matlab específica para a resolução de eq. diferenciais. No caso temos a ODE 45. A função ODE 45 implementa um esquema de solução de sistemas de EDO’s por método de Runge-Kutta de ordem média (consulte o help sobre ODE 45 para maiores detalhes). MATLAB Básico [t, h] = ode 45('dhdt', t, 0, [], [R A Fe]);
MATLAB Básico Os parâmetros enviados entre parênteses são aqueles que devemos passar para a ODE 45: -1º argumento de ode 45 é uma string contendo o nome do arquivo. m com as equações diferenciais. Neste caso, o arquivo chama-se dhdt. m. -2º argumento é um vetor que pode conter (i) dois elementos: os tempos inicial e final da integração, ou (ii) todos os valores de tempo para os quais deseja-se conhecer o valor da variável integrada. -3º argumento é o vetor contendo as condições iniciais das variáveis dependentes das EDO’s. Os valores dos elementos do vetor de condições iniciais precisam estar na mesma ordem em que as variáveis correspondentes são calculadas na função passada como 1º argumento para ode 45 (neste caso, dhdt. m). Nesse caso em particular só temos uma variável dependente, assim temos uma única condição inicial.
-4º argumento é o vetor de opções de ode 45. Há várias opções do método que podem ser ajustadas. Entretanto, não deseja-se alterar os valores-padrão. Neste caso, é passado um vetor vazio, apenas para marcar o lugar das opções. -5º argumento é um vetor contendo parâmetros de entrada para a função dhdt. m. Observe que a função. m deve ler esses parâmetros na ordem correta (recebe como variável local “par”). MATLAB Básico Os resultados da simulação são obtidos nos dois parâmetros entre colchetes (t , h).
A codificação do arquivo. m segue o mesmo formato já explicado para funções porém com algumas particularidades. No caso específico de um arquivo. m que deve ser chamado por uma função de solução EDO’s (todas as ODExx), a declaração deste arquivo deve seguir a sintaxe: MATLAB Básico function dy = nomefun(t, y, flag, arg 1, . . . , arg. N) onde • dy é o valor da(s) derivada(s) retornadas • t e y são as variáveis independente e dependente, respectivamente. • Opcional: caso deseje-se receber outros parâmetros, a função deve receber um argumento marcador de lugar chamado flag. Após este, ela recebe quaisquer outros parâmetros.
MATLAB Básico Exemplo 3
MATLAB Básico
MATLAB Básico
MATLAB Básico Traduzindo as equações diferenciais para o Matlab: Matlab Real dy(1) dh/dt y(1) h dy(2) d. T/dt y(2) T
MATLAB Básico % Definição das constantes do modelo R = 1; % h/m 2 A = 2; % m 2 Fe = 10; % m 3/h Cp = 0. 75; % k. J/(kg. K) Ro = 1000; % kg/m 3 U = 150; % k. J/(m 2. s. K) Te = 530; % K Th = 540; % K % Tempo de simulação t = 0. 0 : 0. 01 : 10. 0; % h % Simulação do modelo [t, y]=ode 45('dydt', t, [(5/A) Th], [U A Ro Cp Fe R Te Th]);
MATLAB Básico % Visualização da simulação figure(1); plot(t, y(: , 1)); title('Tanque de aquecimento'); xlabel('Tempo (h)'); ylabel('Altura (m)'); figure(2); plot(t, y(: , 2)); title('Tanque de aquecimento'); xlabel('Tempo (h)'); ylabel('Temperatura (K)');
A única modificação em relação ao exemplo anterior é que estamos passando duas condições iniciais (pois existem duas variáveis dependentes): MATLAB Básico [t, y]=ode 45('dydt', t, [(5/A) Th], [U A Ro Cp Fe R Te Th]);
MATLAB Básico A função. m tem o código apresentado a seguir: function dy = dydt(t, y, flag, par); U = par(1); A = par(2); Ro = par(3); Cp = par(4); Fe = par(5); R = par(6); Te = par(7); Th = par(8); dy(1) = (Fe-(y(1)/R))/A; dy(2) = (1/y(1))* ( ((Fe*Te/A)+(U*Th/(Ro*Cp))). . . - ( y(2)*((Fe/A)+(U/(Ro*Cp)))) ); dy = dy(: );
O vetor dy é criado como vetor linha (dy(1)) e (dy(2)). Porém temos que retornar como vetor coluna. Use o comando: MATLAB Básico matriz coluna = matriz linha (: ) Dica!
Quando for fazer os gráficos no programa principal lembre-se que a primeira coluna de “dy” refere-se a “h” e a segunda a “T”. Então para graficar h vs. tempo faça: MATLAB Básico figure(1); plot(t, y(: , 1)); title('Tanque de aquecimento'); xlabel('Tempo (h)'); ylabel('Altura (m)'); Dica!
MATLAB Básico Exemplo 4
Na compra de uma calculadora gráfica, a loja ofereceu duas propostas de financiamento – proposta A e B. A proposta A é composta por 7 parcelas mensais iguais de 114 reais cada. Já a proposta B prevê 10 parcelas mensais iguais de 98 reais cada. Qual é a melhor opção de compra considerando a taxa de juros oferecida em investimentos denominados “renda fixa”? MATLAB Básico A princípio poderia resolver o problema simplesmente multiplicado 114 x 7 e 10 x 98, achando o valor final pago. Os valores encontrados seriam 798 e 980. Logo, a Proposta A parece mais favorável para o comprador. É importante lembrar, porém, que essa forma de resolução não considera que o dinheiro desvaloriza-se ao longo dos meses. Ou seja, o poder de compra de 100 reais hoje, é superior ao poder de compra de 100 reais daqui a 10 meses. Outra forma de pensar é considerar o “custo de oportunidade” – a taxa de retorno livre de que conseguiria para o meu dinheiro caso, ao invés de pagar agora, investisse. De uma forma ou de outra o que precisamos é do VALOR PRESENTE (VP) de cada série de pagamentos, sendo os pagamentos descontados a dada taxa de juros. Para trazer VALOR FUTURO (VF) para valor presente usa-se a fórmula: VP = VF / ( 1 + i )n Onde “i” é a taxa de juros mensal e “n” o número de meses entre o VF e o VP.
MATLAB Básico
MATLAB Básico clc close all clear all ivetor=0: 0. 01: 0. 50; VPvetor 114=[]; VPvetor 98=[]; prompt{1}='Número de meses do pagamento da serie A: '; prompt{2}='Número de meses do pagamento da serie B: '; prompt{3}='Valor de cada parcela da serie A: '; prompt{4}='Valor de cada parcela da serie B: '; resposta=inputdlg(prompt, 'Calculo da taxa de equilibrio'); nummeses 114=str 2 num(char(resposta(1))); nummeses 98=str 2 num(char(resposta(2))); v 114=str 2 num(char(resposta(3))); v 98=str 2 num(char(resposta(4)));
MATLAB Básico for J = 1: length(ivetor), i=ivetor(J); VP=[]; for K = 1: nummeses 114, VP(K)=v 114/(1+i)^K; end VPfinal=sum(VP); VPvetor 114=[VPvetor 114, VPfinal]; VP=[]; for K = 1: nummeses 98, VP(K)=v 98/(1+i)^K; end VPfinal=sum(VP); VPvetor 98=[VPvetor 98, VPfinal]; end
MATLAB Básico plot(ivetor*100, VPvetor 114, '-b') hold on plot(ivetor*100, VPvetor 98, '-r') title('Valor presente das parcelas a serem pagas') legend( [ num 2 str(nummeses 114), ' parc de ', num 2 str(v 114) , ' reais cada'] , . . . [ num 2 str(nummeses 98), ' parc de ', num 2 str(v 98) , ' reais cada' ] ) xlabel('Taxa de juros mensal') ylabel('Valor presente em Reais') if (VPvetor 114(1)<VPvetor 98(1)), posicoes=VPvetor 114<VPvetor 98; acha. Zero=find(posicoes==0); acha. Primeiro. Zero=min(acha. Zero); plot(100*ivetor(acha. Primeiro. Zero), VPvetor 114(acha. Primeiro. Zero), 'ok') else posicoes=VPvetor 98<VPvetor 114; acha. Zero=find(posicoes==0); acha. Primeiro. Zero=min(acha. Zero); plot(100*ivetor(acha. Primeiro. Zero), VPvetor 114(acha. Primeiro. Zero), 'ok') end text(100*ivetor(acha. Primeiro. Zero), 50+VPvetor 114(acha. Primeiro. Zero), . . . ['Juros de equilibrio (a. m. ) = ', num 2 str(100*ivetor(acha. Primeiro. Zero)), ' %'] )
MATLAB Básico Exemplo 5
MATLAB Básico Determinado processo possui função custo definida pela equação: Y=((x-3)2)-6 É necessário encontrar x que minimize o valor de Y. Não é difícil de visualizar que a solução do problema é fazer x=3, de modo a levar Y um mínimo (-6). Mesmo sabendo previamente a solução, vamos resolver através do MATLAB. Utilizamos então a função “fminsearch”.
MATLAB Básico %Calculo do valor de x que minimiza a funcao custo xmin = fminsearch('((x-3). ^2)-6', 4) %Gráfico da funcao custo x=0: 0. 01: 5; y=((x-3). ^2)-6; plot(x, y); hold on %Marca o ponto de minimo: ymin=((xmin-3). ^2)-6; plot(xmin, ymin, 'or')
MATLAB Básico Ou. . .
MATLAB Básico %Calculo do valor de x que minimiza a funcao custo %Gráfico da funcao custo x=0: 0. 01: 5; y=((x-3). ^2)-6; plot(x, y); hold on drawnow xmin = fminsearch('custo', 4) %Marca o ponto de minimo: ymin=((xmin-3). ^2)-6; plot(xmin, ymin, 'or') function [y] = custo(x) y=((x-3). ^2)-6; plot(x, y, 'ob') hold on pause(0. 1)
MATLAB Básico Exemplo 6
MATLAB Básico Quando ajustamos uma curva a um conjunto de pontos experimentais, estamos minimizando a distância entre a curva e os dados. Definindo essa distância como “erro”, estamos manipulando os parâmetros que definem a curva de modo a minimizar o erro. Nesse caso “erro” é a minha “função objetivo” a ser minimizada. É através dessa ótica que se torna possível usar “fminsearch” para encontrar o valor ótimo dos parâmetros de ajuste de uma curva aos dados experimentais. global yexp xexp %pontos experimentais yexp=[1. 1 2. 12 2. 85 4. 4 5. 0 6. 5]; xexp=[1 2 3 4 5 6]; Parametros = fminsearch('custo', [1, 2]);
MATLAB Básico function [saida] = custo(x) global yexp xexp a=x(1); b=x(2); yteo=a. *xexp + b; %calcula o valor teorico %para cada pto experimental yerro=abs(yexp-yteo); %calculo do erro saida=sum(yerro); plot(xexp, yexp, 'r*', xexp, yteo, 'b-') drawnow pause(0. 3)
MATLAB Básico Exemplo 7
MATLAB Básico
MATLAB Básico As equações diferenciais que descrevem o processo são: O modelo matemático do nosso reator CSTR tende ao estado estacionário. Ou seja, seus parâmetros tendem a ficar constantes no tempo infinito. Seria interessante introduzir perturbações em algumas variáveis e observar como o reator se comporta.
Uma perturbação degrau em uma entrada u do sistema é tal que: MATLAB Básico u = u 0 , u = u 0 + du, t < tdegrau t > tdegrau Ou seja: antes do degrau a entrada u vale u 0. Após o tempo determinado para que o degrau ocorra (tdegrau) temos que u passa a valer u 0 + du.
Programa principal: % Definição das constantes do modelo U =50; % BTU/(h. ft 2. R) A = 120; % ft 2 DH = -30000; % BTU/lbm Ro = 50; % lb/ft 3 Cp = 0. 75; % BTU/(lbm. R) E = 30000; % BTU/lbm R = 1. 99; % BTU/(lbm. R) k 0 = 7. 08 e 10; % 1/h V =48; % ft 3 Te = 580; %R Th = 550; %R Fe = 18; % ft 3/h Cre = 0. 48; % lbm/ft 3 MATLAB Básico % Tempo de simulação t = 0. 0 : 0. 01 : 10. 0; %h % Perturbação na vazão de entrada td = 5. 0; %Tempo onde ocorre o degrau fd = 2*Fe; %Valor assumido após o degrau continua. . .
MATLAB Básico Programa principal (continuação): % Condições iniciais Cr 0 = 0. 16; % lbm/ft 3 T 0 = 603; %R % Simulação do modelo [t, y] = ode 45('dcstrdeg', t, [Cr 0 T 0], [U A DH Ro Cp E R k 0 V Te Th … Fe Cre], [td fd]); % Visualização da simulação figure(1); plot(t, y(: , 1)); title('CSTR com Reação Exotérmica'); xlabel('Tempo (h)'); ylabel('Concentração de Reagente (lbm/ft 3)'); figure(2); plot(t, y(: , 2)); title('CSTR com Reação Exotérmica'); xlabel('Tempo (h)'); ylabel('Temperatura (R)');
Função “dcstrdeg”: function dy = dcstrdeg(t, y, flag, par, deg); U = par(1); A = par(2); DH = par(3); Ro = par(4); Cp = par(5); E = par(6); R = par(7); k 0 = par(8); V = par(9); Te = par(10); Th = par(11); MATLAB Básico continua. . .
Função “dcstrdeg” (continuação): %Verifica a ocorrência de degrau: if t >= deg(1) Fe = deg(2); else Fe = par(12); end; Cre = par(13); MATLAB Básico dy(1) = (Fe/V)*(Cre-y(1)) - k 0*exp(-E/(R*y(2)))*y(1); dy(2) = (Fe/V)*(Te-y(2)) + ((DH*k 0*exp(-E/(R*y(2)))*y(1))/(Ro*Cp)) -. . . (U*A*(y(2)-Th)/(V*Ro*Cp)); dy = dy(: );
MATLAB Básico Exemplo 8
MATLAB Básico Uma das grandes vantagens no uso de ferramentas computacionais é reduzir o nosso esforço repetitivo, tarefa para a qual o computador é muito eficiente. Supomos que temos um processo no qual gostaríamos de testar uma série de condições iniciais. Para cada nova condição inicial teríamos de refazer todas as contas. Um esforço enorme! As linguagens de programação, e o Matlab em particular, resolvem esse problema facilmente usando o já apresentado comando “for”. Usaremos o mesmo reator CSTR do exemplo anterior.
MATLAB Básico Programa principal: % Definição das constantes do modelo U =50; % BTU/(h. ft 2. R) A = 120; % ft 2 DH = -30000; % BTU/lbm Ro = 50; % lb/ft 3 Cp = 0. 75; % BTU/(lbm. R) E = 30000; % BTU/lbm R = 1. 99; % BTU/(lbm. R) k 0 = 7. 08 e 10; % 1/h V =48; % ft 3 Te = 580; %R Th = 550; %R Fe = 18; % ft 3/h Cre = 0. 48; % lbm/ft 3 % Tempo de simulação t = 0. 0 : 0. 01 : 10. 0; %h % Condições iniciais Cr 0 = [0. 16 0. 32 0. 48 0. 64]; % lbm/ft 3 T 0 = 603; %R continua. . .
Programa principal (continuação): MATLAB Básico % Simulação e visualização do modelo em batelada cor = 'brmk'; leg = ['Cr 0=0. 16'; 'Cr 0=0. 32'; 'Cr 0=0. 48'; 'Cr 0=0. 64']; for aux = 1 : length(Cr 0) [t, y] = ode 45('dcstr', t, [Cr 0(aux) T 0], [U A DH Ro Cp E R k 0 V… Te Th Fe Cre]); % Visualização da simulação figure(1); hold on; plot(t, y(: , 1), cor(aux)); title('CSTR com Reação Exotérmica'); xlabel('Tempo (h)'); ylabel('Concentração de Reagente (lbm/ft 3)'); figure(2); hold on; plot(t, y(: , 2), cor(aux)); title('CSTR com Reação Exotérmica'); xlabel('Tempo (h)'); ylabel('Temperatura (R)'); end; continua. . .
Programa principal (continuação): figure(1); legend(leg); figure(2); legend(leg); hold off; MATLAB Básico A seqüência de cores usadas é dada pelo vetor “cor”, “letra a letra” através da flag. Consulte o comando “plot” para detalhes. Dica!
MATLAB Básico Carlos André Vaz Junior cavazjunior@gmail. com http: //www. eq. ufrj. br/links/h 2 cin/carlosandre
- Slides: 98