线性代数1-向量相加,向量乘以标量

向量的基本操作

向量的基本操作包括:向量相加,向量乘以标量。

  • 标量
    标量(scalar):一个标量就是一个单独的数,我们在使用标量时,一般都要明确给出它是那种类型的数【1】。
    * a,其中 a 。
    从图像上说,向量乘以标量,是使得向量拉伸或者收缩了。例如,如果a>1,就是将向量拉伸了a倍;如果 0,就是使得向量收缩到了原来的1/a。这一拉伸或者收缩的过程用英语描述就是scale,因此称这个实数a称为scalar

实数域公理

  • 元素0
    在实数域 中,它是由元素0组成的向量:=
  • 元素1
    在实数域 中,它是由元素1组成的向量:=

上述运算遵守实数域公理

  • 结合律
  • 交换律
  • 分配律
  • 单元性(定义加上零乘以一
  • 逆元(定义加减逆元乘除逆元

python代码演示

绘制二维向量

# Import NumPy and Matplotlib
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt

# Define vector v 
v = np.array([1,1])

# Plots vector v as blue arrow with red dot at origin (0,0) using Matplotlib

# Creates axes of plot referenced 'ax'
ax = plt.axes()

# Plots red dot at origin (0,0)
ax.plot(0,0,'or')

# Plots vector v as blue arrow starting at origin 0,0
ax.arrow(0, 0, *v, color='b', linewidth=2.0, head_width=0.20, head_length=0.25)

# Sets limit for plot for x-axis
plt.xlim(-2,2)

# Set major ticks for x-axis
major_xticks = np.arange(-2, 3)
ax.set_xticks(major_xticks)


# Sets limit for plot for y-axis
plt.ylim(-1, 2)

# Set major ticks for y-axis
major_yticks = np.arange(-1, 3)
ax.set_yticks(major_yticks)

# Creates gridlines for only major tick marks
plt.grid(b=True, which='major')

# Displays final plot
plt.show()

将二维向量与标量相乘并绘制结果

# Define vector v 
v = np.array([1,1])

# Define scalar a
a = 3

# TODO 1.: Define vector av - as vector v multiplied by scalar a
av = v * a

# Plots vector v as blue arrow with red dot at origin (0,0) using Matplotlib

# Creates axes of plot referenced 'ax'
ax = plt.axes()

# Plots red dot at origin (0,0)
ax.plot(0,0,'or')

# Plots vector v as blue arrow starting at origin 0,0
ax.arrow(0, 0, *v, color='b', linewidth=2.5, head_width=0.30, head_length=0.35)

# TODO 2.: Plot vector av as dotted (linestyle='dotted') vector of cyan color (color='c') 
# using ax.arrow() statement above as template for the plot 
ax.arrow(0, 0, *av, color='c', linestyle='dotted', linewidth=2.5, head_width=0.30, head_length=0.35)


# Sets limit for plot for x-axis
plt.xlim(-2, 4)

# Set major ticks for x-axis
major_xticks = np.arange(-2, 4)
ax.set_xticks(major_xticks)


# Sets limit for plot for y-axis
plt.ylim(-1, 4)

# Set major ticks for y-axis
major_yticks = np.arange(-1, 4)
ax.set_yticks(major_yticks)

# Creates gridlines for only major tick marks
plt.grid(b=True, which='major')

# Displays final plot
plt.show()

将两个向量相加并绘制结果

# Define vector v 
v = np.array([1,1])

# Define vector w
w = np.array([-2,2])

# TODO 1.: Define vector vw by adding vectors v and w 
vw = None

# Plot that graphically shows vector vw (color='b') - which is the result of 
# adding vector w(dotted cyan arrow) to vector v(blue arrow) using Matplotlib

# Creates axes of plot referenced 'ax'
ax = plt.axes()

# Plots red dot at origin (0,0)
ax.plot(0,0,'or')

# Plots vector v as blue arrow starting at origin 0,0
ax.arrow(0, 0, *v, color='b', linewidth=2.5, head_width=0.30, head_length=0.35)

# Plots vector w as cyan arrow with origin defined by vector v
ax.arrow(v[0], v[1], *w, linestyle='dotted', color='c', linewidth=2.5, 
         head_width=0.30, head_length=0.35)

# TODO 2.: Plot vector vw as black arrow (color='k') with 3.5 linewidth (linewidth=3.5)
# starting vector v's origin (0,0)
vw = v + w
ax.arrow(0, 0, *vw, linestyle='dotted', color='k', linewidth=3.5, 
         head_width=0.30, head_length=0.35)

# Sets limit for plot for x-axis
plt.xlim(-3, 2)

# Set major ticks for x-axis
major_xticks = np.arange(-3, 2)
ax.set_xticks(major_xticks)


# Sets limit for plot for y-axis
plt.ylim(-1, 4)

# Set major ticks for y-axis
major_yticks = np.arange(-1, 4)
ax.set_yticks(major_yticks)

# Creates gridlines for only major tick marks
plt.grid(b=True, which='major')

# Displays final plot
plt.show()

【1】https://blog.csdn.net/baishuo8/article/details/81165078

你可能感兴趣的:(线性代数1-向量相加,向量乘以标量)