matlab基础学习(3)

一、复数的矢量解释

对于复数z = 2 + i * 3,可以用矢量图来表示,代码如下:

>> z = 2 + i * 3

z =

  2.00000000000000 + 3.00000000000000i

>> xcoords = [origin(1) real(z)]

xcoords =

     0     2

>> ycoords = [origin(2) imag(z)]

ycoords =

     0     3

>> plot(xcoords, ycoords);
>> 

所画的矢量图如下:



二、 matlab中平均值的求法

1.存储在行矢量或列矢量x中的信号x,其平均值的求法如下:

mean = sum(x) / N

代码如下:

>> x = [5 2 8 5]

x =

     5     2     8     5

>> mu = sum(x)/N

>> N = 4

N =

     4

>> mu = sum(x)/N

mu =

     5

>> 

2. 如果x是一个二维的矩阵,包含N的元素,那么该和的求法如下:

mean = sum(sum(x))/N

代码如下:

>> z =[     5     2     8     5
     2     4     5     1]

z =

     5     2     8     5
     2     4     5     1

>> N = 8

N =

     8

>> mu = sum(sum(x))/N

mu =

   2.50000000000000

>> 

对于3维的矩阵,平均值的求法如下

mean = (sum(sum(sum(x))) /N

其他维数依次类推


给定一个矩阵x,求其中包含的元素个数的方法如下:

N = prod (size(x));


3.对于高维的矩阵,求其平均值的方法如下:

N = prod(size(x)) %高维矩阵x中包含的所有元素

mean = sum(x(;)) / N  %其中x(:)是把高维矩阵转换为一维矢量。


代码实现如下:

>> z=[     5     2     8     5
     2     4     5     1
	 3 	   7	 10    12
	 7	   9     15		20]

z =

     5     2     8     5
     2     4     5     1
     3     7    10    12
     7     9    15    20

>> size(z)

ans =

     4     4

>> N = prod(size(z))

N =

    16

>> z(:)

ans =

     5
     2
     3
     7
     2
     4
     7
     9
     8
     5
    10
    15
     5
     1
    12
    20

>> mean = sum(z(:)) / N

mean =

   7.18750000000000

>> 
注:在matlab中还有一个常用的函数length(), 其用来计算行矢量或者列矢量的元素个数。


三、计算信号能力和功率

相似的方式,计算信号x的能量,如下所示:

Ex = x(:)' * x(:)

Ex = sum(conj(x(:) .* x(:))

Ex = sum(abs(x(:)).^2)

代码实现如下:

>> x = [  5
     2
     3
     7
     2
     4
     7
     9
     8
     5
    10
    15
     5
     1
    12
    20
]

x =

     5
     2
     3
     7
     2
     4
     7
     9
     8
     5
    10
    15
     5
     1
    12
    20

>> Ex = x(:)' * x(:)

Ex =

        1221

>> Ex = sum(conj(x(:)) .* x(:))

Ex =

        1221

>> Ex = sum(abs(x(:)) .^2)

Ex =

        1221

>> 

四、平均功率的计算(每个样点的能量)计算方法如下:

Px = Ex / N



2级范数的计算为
xL2 = sqrt(Ex)

xL2 = norm(x)


1级范围为
xL1 = sum(abs(x))
或xL1 = norm(x, 1)


无限范数(切比雪夫范数)计算为:
xLInf = max(abs(x))

xLInf = norm(x, Inf)


通常, P级范数的计算为
xLp = norm(x, p)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值