matlab学习笔记


一、求x^2-3x+1=0的根

1.方法一: 使用多项式求根函数roots

p=[1,-3,1];
x=roots(p)
x=2.6180
  0.3820
x=-5:0.1:5;//产生x向量从-5到5 布长为0.1
y1=x.*x-3*x+1;求函数值y1
y2=zeros(size(x));产生跟x大小相同的零向量
plot(x,y1,x,y2);画x关于y的图

在这里插入图片描述

方法二:利用fzero()函数求方程在某个初始点附近的实根

f=@(x) x*x-3*x+1;//利用matlab的匿名函数,来定义f(x)
x1=fzero(f,0.5) // 在f(x)=0在x=0.5和在x=2.5的实根
x1=
	0.3820
x2=fzero(f,2.5)
x2=
	2.6180

方法三:利用最优化工具箱中的方程求根函数fsolve。

f=@(x) x*x-3*x+1;
x1=fsolve(f, 0.5, optimset('Display', 'off'))//设置优化参数

x2=fsolve(f, 2.5, optimset('Display', 'off'))//设置优化参数
# 二、使用步骤
## 1.引入库

方法四:利用solve函数求方程的符号解,即求得的解是一个表达式。

syms x//定义符号函数x
x=solve(x^2-3*x+1)//求根(符号解)

x=eval(x)//将符号解转化成数值解

二、数值类型

1.整型

x=int8(129)  //127最大值  
x=127
x=unit8(129)  //没有超过256无符号类型的最大值
x=129			

2.浮点型

>>class(4)
ans=double
>>class(single(4))转为单精度
>>ans=single
>>class(double(4))转为双精度
ans=double

3.复数

real()函数: 求复数的实部
imag()函数: 求复数的虚部

三、数值数据的输出格式

format 格式符 改变数值类型,只是影响数据输出格式,而不影响数据的计算和存储

四、常用的数学函数

(1)函数的调用格式:
函数名(函数自变量的值)
(2)exp()求自然指数
(3)常用函数的应用
①三角函数有以弧度为单位和以角度为单位,如果以角度为单位的函数就在函数名后面加d
②abs()函数可以求实数的绝对值,复数的模、字符串的ascall码值
③round函数按照四舍五入的规则取整
④ceil函数是向上取整,取大于等于
⑤floor函数是向下取整,取小于等于
⑥fix函数是固定取靠近0的那个整数
⑦rem()取余

例1  分别求一个三位正整数的个位数字、十位数字和百位数字。

m=345;

m1=rem(m,10)

m2=rem(fix(m/10),10)

m3=fix(m/100)

⑧isprime()取素数

例2  求[1,100]区间的所有素数。

x=1:100;

k=isprime(x);

k1=find(k);

p=x(k1)

五、矩阵

1.直接建立法

a=[1,2,3;4,5,6;7,8,9];

2.利用已经建立好的矩阵再去建立矩阵

a=[1,2,3;4,5,6;7,8,9];
b=[-1,-2,-3;-4,-5,-6;-7,-8,-9];
c=[a,b;b,a];

3.冒号表达式

(1)
在这里插入图片描述
(2)
在这里插入图片描述
(3)结构矩阵和单元矩阵
①结构矩阵
在这里插入图片描述
②单元矩阵
将所有元素用大括号括起来就是单位矩阵

六、结构的引用方式
(1)通过下标来引用
a(4,5) 如果超出现有矩阵的大小,矩阵会自动扩展,未赋值的部分会赋值为0
(2)通过序号来引用
a(3) 表示矩阵中的元素a(1,2)
以m行n列为例,矩阵a(i,j)的序号为(j-1)乘m+i
sub2ind 将矩阵中的行列下标转换为序号
ind2sub 将矩阵中的序号转换为行列
在这里插入图片描述
S=size(A) size(A)是包含矩阵A的行数和列数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(3)利用冒泡排序获得子矩阵
在这里插入图片描述

(4)x=[]可以将矩阵置空
(5)改变矩阵的形状
reshape(A,m,n):在矩阵总元素保持不变的前提下,将矩阵A重新排成m×n的二维矩阵

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值