克利福德代数中的数值计算:输入与实体
在克利福德代数的数值计算中,内存使用情况、实体类型以及输入方式都是重要的方面。下面将详细介绍这些内容。
1. 内存使用与实体类型
1.1 内存使用情况
在某些情况下,不需要扩展内存,内存扩展次数报告为零,此时内存的总大小等于初始大小。如果需要扩展内存,总大小将大于初始大小。打印信息时的空闲内存量(空闲计数)在这种情况下与总大小相同,这是因为所有使用过的内存都已被回收。如果严格遵循回收机制,但这些数值不相同,可能意味着存在编程错误,可作为有用的诊断指标。
“空闲起始”值是未分配内存链表的根索引,该值应在 0 到总内存值减 1 的范围内。如果超出此范围,则内部内存结构可能已损坏,通常是由于例程使用不当造成的,且损坏通常会在代码中发生的位置附近被检测和报告。
峰值内存大小显示实际使用的内存量。在某些情况下,仅使用了一个组件,这表明初始分配可以远小于 50。对于任何应用程序所需的内存量,最好先进行猜测,然后根据报告的值在后期调整初始分配。
1.2 实体类型
克利福德代数除了支持 0 级标量外,还支持更复杂的实体,如下表所示:
| 等级 | 维度 | 实体 |
| ---- | ---- | ---- |
| 0 | 任意 | 标量 |
| 1 | 1 或更多 | 向量 |
| 0, 2 | 2 | 双复数 |
| 0, 2 | 3 | 四元数 |
| 0, 2 | 3 | 泡利矩阵 |
| 2 | 4 | 电磁场 |
| 任意 | 任意 | 数组 |
| 任意/某些
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



