Skip to content

Quantity System Types Architecture

September 16, 2011

Today I am going to talk about the types that the Quantity System contains in its runtime

I should make a distinction between two labels now:

  • Quantity System Framework: is the library responsible about Quantities and their units. It forms the required functionality that holds the necessary classes for embedding units and quantities in your application.
  • Quantity System: is the runtime that is built over the framework, that is evolving with time and its main concern is a new vision to apply the mathematics as a unit aware expressions.


I admit that I am learning mathematics again while programming this marvelous library, I learnt the compiler theory, parsing techniques, object oriented, and how can I apply it to physical applications.

I will try also to shorten my posts and increasing them to indicate the features that I’ve implemented so far. Also you (Dear reader) may encounter a lot of my thinking during the writings in this blog.

However let’s avoid my philosophy view of what I am doing and dive directly into the architecture.

Qs Types

There is a complex type that called QsScalar which serve the basic calculation type in Qs.

The architecture of types that is calculated is illustrated on the next diagram

Figure 1: Logical Relation between Qs Scalar and Tensor




The scalar in quantity is a single quantity that holds a defined set of fields beside the unit of that field.



The field is simply a Ring (Mathematical Point of View) or (Entity if I am talking from a programmer point of view)

Integer Numbers are a field, Real Numbers are a field, Rational Numbers are a field, Irrational Numbers are fields also.

But the concept of field goes beyond these samples also, because you can find Functions as Field.

The following diagram will illustrate the Scalar Object supported fields in Quantity System

Figure 2: Supported Mathematical Fields in QsScalar Type


Real Number


Rational Number

Which contains {Numerator, Denominator}


Complex Number

Which contains 2 components {Real Value, Imaginary Value}



Which contains 4 compnents {Real, i, j, k}


Symbolic variables that help in symbolic calculations



Referring to the function as a single quantity that can be added or subtracted


As I promised that’s all for now J

In the next posts, I will talk about the rest functionalities of Quantity System. So be tuned J


From → Uncategorized

Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: