我想要将分子存储在内存中。这些可以是简单的分子:
Methane (CH4)
C-H bond-length: 108.7 pm
H-H angle: 109 degrees
还有更复杂的分子,比如扑热息痛(C8H9NO2):
我该如何将分子及其所有键长和角度存储在内存中?
将原子结构存储在数组中是一个好主意吗?还是有更好的方法?
我想要将分子存储在内存中。这些可以是简单的分子:
Methane (CH4)
C-H bond-length: 108.7 pm
H-H angle: 109 degrees
还有更复杂的分子,比如扑热息痛(C8H9NO2):
我该如何将分子及其所有键长和角度存储在内存中?
将原子结构存储在数组中是一个好主意吗?还是有更好的方法?
考虑到您正在建模一个链接结构,似乎使用链接数据结构是最合适的表示方法。但我不太懂化学,无法猜测每个项目需要存储哪些有趣的数据。
一开始听起来很像通常存储图形的非常略微修改版本--节点和链接,每个都有关联的数据。在图形中,与链接相关的典型数据是该链接的“成本”,但在这种情况下,听起来您将存储一个向量(角度和长度)。
vector
还是其他什么来存储它,都是完全不同的问题。 - Jerry Coffin你会对这些分子进行任何计算,还是只是绘制它们?如果你有任何严格计算的意图,那么我不建议使用Objective C。为了获得最佳性能,你应该将角度、长度和连接存储在普通数组中,并进行所有必要的记账以跟踪每个元素。如果涉及大量计算,那么使用高级数据结构等来保存分子信息的这些类型的应用程序运行非常缓慢。