平移矩阵中的数学思考

《webgl编程指南》中,"平移矩阵"中相关值的得出

是基于"矩阵和向量相乘所得的等式"与"向量表达式"组成一个方程组

x'=ax+by+cz+d

x'=x+Tx

书中说,根据上面的方程组,可以很容易得出

a=1、b=0、c=0、d=Tx

0、问题来了!

我也确实可以看出,a=1、b=0、c=0、d=Tx,是上述方程组的一个解

但是,我觉得这种方式很不"数学"很不"严谨" !!

也没有用严谨的手段来证明,只有这1个解!!(我这篇文章也没有证明)

下面写出自己的一些思考和推导过程

1、定义和概念:

正确的定义和概念,就可以极大的推进问题的解决

上述方程组中,我觉得有这么几类数据:

|--------|----------|---------------------------------------|
| 类型 | 相关变量 | 备注 |
| "自由"变量 | x、y、z、x' | 可以随意赋值为任何数 |
| 未知常量 | a、b、c、d | 要解出"未知常量" 不是求x、y、z的值 (一般方程是求xyz值) |
| 已知常量 | Tx | 可以当做一个已知常数来对待 |

2、取值互相不约束

上述方程中x、y、z的取值,是互相不限制

(x想取什么值,就取什么值,不需要考虑y或z是什么值)

备注:

下述方程组中,x、y的值就是互相制约和限制(x想取什么值,需要考虑y已经取了什么值)

23x+17y=63

17x+23y=57

3、方案1:

基于1的结论,我可以随便给出x、y、z的值

给出4组值,就会组成4个等式,然后求4个"未知常量"

4、方案2:

因为x、y、z可以取任意值,可以取一个特殊值,比如0

来快速求解出"未知常量"

把上述方程组,改成等式:ax+by+cz+d=x+Tx

**情形A:**x=0;y=0;z=0;

带入等式:0a+0b+0c+d=0+Tx

结果:d=Tx

**情形B:**x=0;y=0;z=1;

带入等式:0a+0b+1c+d=0+Tx

结果:c=Tx-d

因为:Tx=d

所以:c=0

**情形C:**x=0;y=1;z=0;

带入等式:0a+1b+0c+d=0+Tx

结果:b=0

**情形D:**x=1;y=0;z=0;

带入等式:1a+0b+0c+d=1+Tx

结果:a=1

至此:

才算严格的证明了:

a=1、b=0、c=0、d=Tx是方程的一个解!

(数学水平一般,不知道这个推导对不对,欢迎大家指正)

相关推荐
会博通·代码搬运工13 小时前
会博通API对接实战:工程企业文档分布式采集系统的技术实现与Python SDK详解
开发语言·分布式·python·线性代数·矩阵·架构·电子档案合规
AI科技星14 小时前
全域光速运动理论体系 (GAQ-UFT)——范式重构、核心方程与传统物理的本质分野
人工智能·线性代数·机器学习·重构·数据挖掘·回归·ai科技星
小小帅呀14 小时前
CUDA编程实战12:原子操作与高性能直方图——从正确累加到低冲突并行更新
c++·人工智能·线性代数·矩阵
hai31524754315 小时前
操作系统矩阵化:资源状态机的形式化定义与实现
线性代数·矩阵
@syh.1 天前
【贪心】矩阵消除游戏
算法·游戏·矩阵
lilihewo2 天前
LED 扫描接法(动态扫描/矩阵驱动)
线性代数·矩阵
乱七八糟的屋子2 天前
【C++数值计算】Armadillo超详细入门教程
c++·线性代数·数值计算·科学计算·矩阵运算·armadillo
kobesdu2 天前
从零推导FAST-LIO的观测雅可比矩阵
人工智能·算法·矩阵
LayZhangStrive3 天前
线性代数 - 第1章 行列式
人工智能·线性代数·机器学习
CreBee4 天前
CreBee功能大全:新媒体矩阵运营有哪些能力?
矩阵·新媒体运营·媒体