A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Funções do Usuário em Matlab

Apresentações semelhantes


Apresentação em tema: "Funções do Usuário em Matlab"— Transcrição da apresentação:

1 Funções do Usuário em Matlab
Criando arquivo de funções na Janela do EDITOR

2 Funções em Matlab Para além das funções pré-definidas no Matlab, o usuário pode também criar as suas próprias funções. Use o EDITOR para tal. O comando function permite criá-las. Uma função deve ser definida da seguinte forma: function y = nomefuncao(par1,par2) % o código da função é escrito aqui y = par1 + sqrt(par2) O(s) valor(es) dos parâmetros de entrada da função deve(m) ser associado(s) ao(s) parâmetro(s) de saída. sqrt(...) é a função pré-definida que calcula a raiz quadrada de um número real, no caso par2.

3 Funções em Matlab A função pode ter vários parâmetros de entrada e de saída (no exemplo anterior apenas há um parâmetro de saída (y). Caso houvesse mais do que um parâmetro de saída, em vez de function y = seria function [y1, y2, y3] = .... O código relativo à função deve ser gravado num arquivo .m De modo mais simples, use o nome do arquivo .m como tendo o nome da função.

4 Funções em Matlab A função pode depois ser chamada a partir da janela de comando, no prompt: >> .... do Matlab ou a partir do interior de um arquivo .m, tal como se tratasse de uma função pré-definida do Matlab.

5 Funções em Matlab NOTAS IMPORTANTES:
• Caso o nome dado à função seja diferente do nome do arquivo .m criado quando da definição da mesma, é este último nome que deve ser usado para invocar a função!!! • As variáveis definidas no interior da função não serão acessíveis a partir do espaço de trabalho do Matlab (workspace). • Tenha em mente que uma função não atribui nenhum valor a nenhuma variável. • A excepção a esta regra acontece se definirmos variáveis globais no corpo da função.

6 Funções em Matlab Eis um exemplo de uma função definida pelo usuário, que recebe como parâmetro de entrada um conjunto de pontos t e representa uma espiral a três dimensões: function [x,y,z] = spir3(t) x = cos(20*t).*exp(-t.^2); y = sin(20*t).*exp(-t.^2); z = exp(-t.^2); plot3(x,y,z); plot3 é o nome da função para plotar o gráfico da espiral (experimente). cos(..), sin(..), exp(..) são as funções pré-definidas coseno, seno e exponencial.

7 Funções em Matlab A função vai ser gravada no arquivo spir3.m e invocada a partir da janela de comando do Matlab da seguinte forma: >> spir3(0:0.01:5); Onde o ponto inicial é 0. O ponto final é 5. E o passo dentro do intervalo [0, 5] é 0.01. Caso se deseje ter os valores de x, y e z, deve-se invocar a função da seguinte forma [x,y,z] = spir3(0:0.01:5);

8 Funções em Matlab Quando se invoca (chama-se) a função na janela de comando (>>), o que ocorre é que os valores fornecidos na chamada da função, são passados por valor a cada um dos parâmetros de entrada, enquanto os valores calculados dos parâmetros de saída são passados aos correspondentes valores de saída, definidas para saída da função no prompt (>>) da janela de comando. Por exemplo: >> [a,b,c] = spir3(0:0.01:5); 0:0.01:5 é passado a t, e [x, y, z] é passado a [a,b,c] , respectivamente, passando x para a, y para b, z para c. Neste caso poderíamos também ter >> [x,y,z] = spir3(0:0.01:5);

9 Funções em Matlab Exemplo, na janela do EDITOR crie o arquivo valor_absoluto.m com o seguinte conteúdo: function v = valor_absoluto(x) if x >= 0 v = x; else v = -x; Experimente na janela de comando, chamar a função valor_absoluto : >> v = valor_absoluto(-9) ans = 9, onde -9 é o valor de x. >> v = valor_absoluto(107) ans = 107, onde é o valor de x. >> w = valor_absoluto(-19) ans = 19, onde é o valor de x. >> y = valor_absoluto(13) ans= 13, onde 13 é o valor de x.

10 Integração Numérica em Matlab
Para efetuar uma integração numérica no Matlab, usam-se habitualmente dois comandos: • quad • quadl Como exemplo, pretende-se calcular o integral de uma dada função. Comecemos por definir a função F(x)=3x^2+5 da seguinte forma: function y = F(x) y = 3*x.^2 + 5; E armazenar a função F num arquivo F.m

11 Integração Numérica em Matlab
A integral da função anterior, no intervalo [5,10], pode então ser calculado através de: >> quad(‘F',5,10) O método de cálculo: adaptação recursiva da regra de Simpson ans =


Carregar ppt "Funções do Usuário em Matlab"

Apresentações semelhantes


Anúncios Google