Progess / Project 702 / Project Challenges

UTCI Calculation

Wow, this calculation is a little outrageous. The formula is a 6th order polynomial, that includes 84 terms and crosses that many lines of code! I am wondering if it is possible to simplify this somewhat. Luckily there is a regular pattern, and we can make an assumption to simplify this further (based on knowledge of our data).

Set va := 1 (explanation here)

The first 28 terms are a simple polynomial, so we can simplify this to the form:

kTa^6 + kTa^5 + kTa^4 + kTa^3 + kTa^2 + kTa + C \newline  where: \newline    \indent Ta \indent = ambient\; air\; temperature \newline    \indent k  \indent = coefficient\; of\; the\; term \newline    \indent C  \indent = constant\; term

This reduces the 28 term expression down to 7. This is a big win. The factors k are represented to an incredible degree of accuracy (10 d.p.) I think it would also be possible to shave some off these, but as Matthias points out we would have to have good reason for this, and explore the side effects thoroughly. So at this stage, we will work to this level of accuracy.

The second 56 terms are not quite as straightforward. They do however have a regular pattern (see the image to the right) that looks like:

k Pa + \newline  k Ta \times Pa + \newline  k Ta \times Ta \times Pa + \newline  k Ta \times Ta \times Ta \times Pa + \newline  ...

and so on. Intuitively, such a predictable pattern must have a well-known simplification, I just don’t know what that is! I am going to attempt to simplify it the hard way, but I have also asked a mathematician friend of mine if she recognises the pattern.


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