matlab function调用m文件,matlab下编写和调用函数(在同一个m文件中)

一般情况下,一个函数对应一个m文件,且文件名与函数名相同。

由于c写习惯了,尝试将主函数和函数写在同一个m文件中。

格式如下:

function name

主函数主体

end

function s=name(x)

函数主体

end

注意:主函数前不能有代码,比如close all;clear all;之类的。

附 例程

book2_2.m

%数值计算课本第二章计算实习第二题

function book2_2

n=20;

length = n+1;

x_in = -1:2/100:1;

t = 1:size(x_in,2);

x = -1:2/10:1;

y = 1./(1+25*x.^2)

y_out = 1./(1+25*x_in.^2);

%lagrange

y_out_lag = lagrange(x,y,x_in);

%spline

S=csapi(x,y);

y_out_s = fnval(S,x_in);

plot(t,y_out,'r',t,y_out_lag,'b',t,y_out_s,'y');

title('n=20');

end

function y_out=lagrange(x,y,x_in)

ii=1:length(x)

y_out = zeros(size(x_in))

for i=ii

ij=find(ii~=i);

y1=1;

for j=1:length(ij)

y1=y1.*(x_in-x(ij(j)));

end

y_out=y_out+y1*y(i)/prod(x(i)-x(ij));

end

end

你可能感兴趣的:(matlab,function调用m文件)