This document summarizes and compares two object-oriented programming models - a polymorphic model and a template-based model - for implementing scalar, vector, and tensor variables for 1D to 3D calculations. The current Complex Systems Platform (CSP) library uses a template-based model with individual template classes for each variable type, which has issues with interoperability between classes. As an alternative, the author created a polymorphic model to address these interoperability issues, but found it was slower than the template model based on speed benchmarking tests. Both models showed no difference in storage requirements. While the polymorphic model solves interoperability, it comes at the cost of runtime speed.