矩阵旋转入门

首先,需要知道一个物体现有的宽度,高度和深度 —— 换句话讲,它是三个轴上每个轴分量的大小。当然可以建立一个 3×1 的矩阵:
w h d
我们知道 w, h, d 代表宽度(width),高度(height)和深度(depth)。下面需要缩放这个矩阵:
sx 0 0
0 sy 0
0 0 sz
首先,需要知道一个物体现有的宽度,高度和深度 —— 换句话讲,它是三个轴上每个轴分量的大小。当然可以建立一个 3×1 的矩阵:
w h d
我们知道 w, h, d 代表宽度(width),高度(height)和深度(depth)。下面需要缩放这个矩阵:
sx 0 0
0 sy 0
0 0 sz
这里 sx, sy, sz 是对应轴上的缩放比例。它们都将是分数或小数,1.0 为 100%,2.0 为 200%,0.5 为 50%,等等。稍后大家会看到为什么矩阵是用这种形式分布的。
要知道,矩阵乘法是为了让两个矩阵相乘,第一个矩阵的列数必需与另一个矩阵的行数相同。只要符合这个标准,第一个矩阵可以有任意多个行,第二个矩阵可以有任意多个列。本例中,由于第一个矩阵有三列(w, h, d),因此缩放矩阵就有三行。那么它们如何进行乘法运算呢?让我们来看一下这个模式:

 

  sx 0 0
w h d*0 sy 0
  0 0 sz

 

矩阵的计算结果如下:
(w*sx + h*0 + d*0) (w*0 + h*sy + d*0) (w*0 + h*0 + d*sz)

我们将第一个矩阵的第一行(u, v, w)与第二个矩阵每行的第一个元素相乘。将它们加起来就得到了结果的第一行的第一个元素。在第二个矩阵的第二列(b, e, h)中使用相同的方法就得到了第二列的结果。
如果第一个矩阵的行数大于 1,就要在第二行中重复上述动作,就会得到第二行的结果:

 

u v w a b c
x y z*d e f
  g h i
就得到了这个 3×2 的矩阵:
(u*a + v*d + w*g) (u*b + v*e + w*h) (u*c + v*f + w*i)
(x*a + y*d + z*g) (x*b + y*e + z*h) (x*c + y*f + z*i)
现在让我们看一些实际中用到的矩阵乘法 —— 坐标旋转。希望通过这个缩放的例子会让它看起来更加清晰。

使用矩阵进行坐标旋转
首先,要挖出我们的 3D 点矩阵:
x y z
它保存了该点所有的坐标。当然,还要有一个旋转矩阵。我们可以在三个轴的任意一轴上进行旋转。我们将分别创建每种旋转的矩阵。先从 x 轴旋转矩阵开始:
1 0 0
0 cos sin
0 -sin cos
这里有一些正余弦值,“sin 和 cos 是什么?”很明显,这就是我们要旋转的角度的正余弦值。如果让这个点旋转 45 度,则这两个值就是 45 的正弦和余弦值。(当然,在代码中要使用弧度制)现在,我们让该矩阵与一个 3D 点的矩阵相乘,看一下结果。

 

  1 0 0
x y z*0 cos sin
  0 -sin cos
由此得到:
(x*1 + y*0 + z*0) (x*0 + y*cos - z*sin) (x*0 + y*sin + z*cos)
整理后结果如下:
(x) (y*cos - z*sin) (z*cos + y*sin)
这句话用 ActionScript 大略可以翻译成:
x = x;
y = Math.cos(angle) * y - Math.sin(angle) * z;
z = Math.cos(angle) * z + Math.sin(angle) * y;
回忆一下第十章,在讨论坐标旋转时,我们会看到这实际上就是 x 轴的坐标旋转。不要惊讶,矩阵数学只是观察和组织各种公式和方程的不同方法。至此,要创建一个 y 轴旋转的矩阵就非常容易了:
cos 0 sin
0 1 0
-sin 0 cos
最后,z 轴的旋转为:
cos sin 0
-sin cos 0
0 0 1
这是一个很好的尝试,用 x, y, z 的矩阵乘以每个旋转矩阵的单位,证明所得到的结果与第十章的坐标旋转公式完全相同。
内容概要:本文围绕并网与离网模式下的风光互补制氢合成氨系统,开展容量配置与调度优化的建模与仿真研究,基于Python代码实现核心技术复现。研究聚焦于风能与太阳能发电的波动性特征,结合电解水制氢及氢气合成氨的能量转换环节,构建综合能源系统的多目标优化模型,兼顾经济性、能源利用率与系统稳定性。通过引入先进的优化算法与Cplex等求解工具,对系统关键设备容量进行优化配置,并实现多时段运行调度的精细化决策,推动可再生能源高效转化为绿色化工产品,为“电-氢-氨”一体化系统的设计与运行提供科学依据和技术支撑。; 适合人群:具备一定Python编程能力和优化建模基础,从事新能源系统、氢能利用、综合能源系统规划与运行等方向研究的科研人员、高校研究生及工程技术人员。; 使用场景及目标:①用于风光制氢合成氨系统的容量规划、运行策略制定与经济性评估;②支撑高水平学术论文的模型复现、算法验证与创新研究,提升对多能互补系统协同优化机制的理解与实践能力; 阅读建议:建议结合Cplex等优化求解器运行代码,深入理解模型构建过程中的目标函数设计与约束条件表达,重点关注可再生能源出力不确定性处理与能量转换效率建模,并参考相关文献进一步拓展优化算法与场景分析维度。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值