matlab基础

例1:

t = linspace(0,2*pi,100);	%将0到2pi等分成100段
plot(sin(t));
 

例2:

x = -pi:0.01:pi;
x = x'; %变为列向量plot([x x],[sin(x) cos(x)]);
说明:
    PLOT(Y) plots the columns of Y versus their index.
    If Y is complex, PLOT(Y) is equivalent to PLOT(real(Y),imag(Y)).
    PLOT(X,Y) plots vector Y versus vector X.
还有一些特性设置:'LineStyle','MarkerSize','Color','LineWidth'		如:polt(x,y,'r*')
           b     blue          .     point              -     solid
           g     green         o     circle             :     dotted
           r     red           x     x-mark             -.    dashdot 
           c     cyan          +     plus               --    dashed   
           m     magenta       *     star             (none)  no line
           y     yellow        s     square
           k     black         d     diamond
           w     white         v     triangle (down)
                               ^     triangle (up)
                               <     triangle (left)
                               >     triangle (right)
                               p     pentagram
                               h     hexagram
 

subplot(m,n,k),在一个绘图区中显示mxn个子图形窗口,并在第k个子窗口绘图

subplot(2,2,1); %也可以为subplot 221
plot(sin(0:0.1:2*pi),'k:');
box off;        %隐藏坐标轴外框
subplot(2,2,2);
plot(sin(0:0.1:2*pi),'r-');
grid on;        %添加主网格
subplot(2,2,[3 4]);     %这个比较有意思,在第三第四个绘图区绘图
plot(cos(0:0.1:2*pi),'r-');
grid minor;

结果如下:

图形注释:

t = 0:0.1:2*pi;
plot(t,sin(t),':');
hold on;        %保持
plot(t,cos(t));
hold off;
axis([0 8 -1.5 1.5]);
title('正弦与余弦曲线');
xlabel('时间');       %X轴标签
ylabel('信号');       %Y轴标签
legend('正弦','余弦');          %图例
text(3,1,'sin(t)与cos(t)');      %创建文本对象





另外:

gtext 在鼠标单击处放置一个文本

axis 也有很多种用法
AXIS([XMIN XMAX YMIN YMAX])
AXIS SQUARE  坐标轴为正方形
AXIS EQUAL  设置横纵比,数据单位在x轴y轴上一致

数值函数:

使用 function定义函数;使用inline
如:g = inline('x.^y-3','x','y')

>> g = inline('x.^y-3','x','y')


g =


     Inline function:
     g(x,y) = x.^y-3


>> g(2,3)


ans =


     5


数值函数的图形
x = 0:0.01:2;
y = 1 ./ ((x-0.3).^2+0.01);
plot(x,y,'linewidth',2);
grid;
如图:


也可以使用 fplot
f = inline('1 ./ ((x-0.3).^2+0.01)');
fplot(f,[0 2]);
结果同上,仅线宽不一样。
 
数值函数零点:fzero
数值函数最小值:fminbnd,若要找最大值,则求-f的最小值

数值函数的积分:

一元函数f(x)在[a,b]上积分低阶方法:quad(f,a,b); 高阶方法:quadl(f,a,b);

二元函数f(x,y)在[a,b]x[c,d]上的二重积分:dblquad(f,a,b,c,d);
三元:triplequad

当函数表达式未知时,可采用梯形近似方法:trapz(X,Y);

示例:
ln2的值是1/(1+x)在[0,1]的积分
X = 0:0.01:1;
Y = 1./(1+X);
a = trapz(X,Y) ; %梯形法积分
ln2 = vpa(a,10)%显示a小数点后10位

f = inline('1./(1+x)');
a = quad(f,0,1);
ln2 = vpa(a,10)
b=quadl(f,0,1);
ln2 = vpa(b,10)


符号运算

使用 syms
syms x y n %必须用空格分开
z = x^2+sin(x*y^n);

或直接:f = sym('x^2+sin(x*y^n)');
若要计算数值,需要使用 eval函数

极限运算:limit(fx,v,a) 函数fx 自变量v 趋于a时的极限,‘right’或‘left’ 右极限左极限
求导运算:diff(fx,v,n) 求函数fx关于自变量v的n阶导数
积分运算:int(fx,v,a,b) 求函数当自变量从a到b的积分,可以是不定积分也可以是变上限积分
级数求和:symsum(Sn,v,a,b)
>> syms k
symsum(1/k,1,inf)
 
ans =
 

Inf


泰勒展开:taylor(fx,v,n,v0) 求fx关于自变量v在v0处泰勒展开前n项

方程求根:solve

微分方程(组)求解:dsolve


符号计算推荐mathmatica


三维绘图:

plot3(x,y,z,'颜色+线型+点型',…)
网格曲面:mesh(X,Y,Z)
光滑曲面:surf(X,Y,Z)
使用meshgrid


简易命令:ezplot,ezsurf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值