**Summary **

Natural Area Coding System^{TM} is a new geodetic system to

standardize and integrate geodetic datums, geographic coordinates, geographic area codes, map grids, addresses and postal codes in the world.

The system employs revolutionary approaches:

1) It unifies the concepts of geodetic points, line sections, areas, and three-dimensional regions.

2) It employs the 30 most popular characters in the world instead of ten digits to produce the most efficient codes.

3) It uses only one geodetic datum: WGS-84 to avoid confusions arisen from variations of datums.

4) It creates one standard representation for all the geographic objects mentioned above.

These approaches make Natural Area Coding System^{TM} superior over traditional systems.

The system generates Natural Area Codes (NACs) that can represent point locations, lines, areas on the earth surface, 3D blocks underground and in the space. When representing a geodetic location to the same resolution, a NAC requires only half of the number of characters required by a set of longitude/latitude or UTM coordinates. Using NACs to represent line sections, rectangles or three-dimensional regions can save even more in required characters compared with other systems.

NACs can be used as Universal Addresses^{TM} for all locations in the world, Global Postal Codes^{TM} for automatically sorting all mail to final mail boxes in the world, and Universal Map Grids^{TM} for all kinds of maps in all scales and projections. Natural Area Coding System has unified all these representations to greatly simplify communication between different disciplines of science, different services and industries, different languages, and different countries. Therefore, Natural Area Codes are also called Universal Addresses, Universal Area Codes, Global Postal Codes, Universal Postal Codes.

**Definition **

`Natural Area Coding System is a new geodetic`

system with its origin set at the earth gravity center and axis extending to the infinitely distant universe. It employs a character set consisting of all digits (0 to 9) and all English capital consonants since these characters are the most popular characters used in the world. Each character in the character set represents an integer ranging from 0 to 29, as shown in the following table:

Character | Integer |

0 | 0 |

1 | 1 |

2 | 2 |

3 | 3 |

4 | 4 |

5 | 5 |

6 | 6 |

7 | 7 |

8 | 8 |

9 | 9 |

B | 10 |

C | 11 |

D | 12 |

F | 13 |

G | 14 |

H | 15 |

J | 16 |

K | 17 |

L | 18 |

M | 19 |

N | 20 |

P | 21 |

Q | 22 |

R | 23 |

S | 24 |

T | 25 |

V | 26 |

W | 27 |

X | 28 |

Z | 29 |

A Natural Area Code (NAC) consists of three character strings separated by blank spaces. The first character string represents longitude, the second string represents latitude, and the third represents altitude. The system divides the whole range of longitude (from -180 to 180 degrees), latitude (from – 90 to 90 degrees) and altitude (from the earth center to the infinite outer space) into 30 discrete divisions respectively, each of which is named by one character from the character set according to the order of the characters. Each resulting division is further divided into 30 subdivisions, and each of the subdivisions is named by one character too. The division process can continue to the third , fourth, and other levels. The resulting 3D divisions are called NAC blocks. Therefore, a first level NAC block can be represented by a NAC of three characters separated by two blank spaces respectively, each of which represents the character string for longitude, latitude and altitude respectively, for example,

NAC: 5 6 7

A second level NAC block can be represented by a NAC of six characters to form three character strings: the first two characters represent longitude, the third and fourth characters represent latitude, and the last two characters altitude. A blank space is placed between these strings, for example,

NAC: JB KH LN

which represents a NAC block at the second level, in which the characters J, K and L represent coordinates of a first level NAC block which contains the second level NAC block, and the characters B, H and N are the relative coordinates of the second level NAC block in the first level NAC block. A region formed by sides at different division levels can be represented by a single NAC too. Any three NAC character strings is a NAC which represents a well defined region in the universe.

If the third string of a NAC is omitted, the resulting NAC represents an area on the earth surface. Any two NAC character strings is a NAC representing a well defined area on the earth. When the sides are very different in length, a rectangular area will turn to be a line section automatically. When all the sides are small, a rectangular area will become a point location. Therefore, a NAC can represent a point location anywhere in the universe, a line section of constant longitude or constant latitude on the earth, an area bounded by constant longitude and constant latitude anywhere on the earth and a three-dimensional region bounded by constant longitude, constant latitude and constant altitude anywhere in the universe.

**Conversion From (Longitude, Latitude, Altitude) to NAC**

The NAC of a region that contains a geodetic point expressed by longitude, latitude and altitude coordinates in the WGS-84 system can be determined by the following algorithm:

LONG = (Longitude + 180)/360

x_{1} = Integer part of( LONG*30)

x_{2} = Integer part of(( LONG*30-x_{1})*30)

x_{3} = Integer part of((( LONG*30-x_{1})*30-x_{2})*30)

x_{4} = Integer part of((((LONG*30-x_{1})*30-x_{2})*30-x_{3})*30)

…

LAT = (Latitude + 90)/180

y_{1} = Integer part of( LAT*30 )

y_{2} = Integer part of(( LAT*30-y_{1})*30)

y_{3} = Integer part of((( LAT*30-y_{1})*30-y_{2})*30)

y_{4} = Integer part of((((LAT*30-y_{1})*30-y_{2})*30-y_{3})*30)

…

ALT = Arctan(Altitude/R)/90

z_{1} = Integer part of( ALT*30)

z_{2} = Integer part of(( ALT*30-z_{1})*30)

z_{3} = Integer part of((( ALT*30-z_{1})*30-z_{2})*30)

z_{4} = Integer part of((((ALT*30-z_{1})*30-z_{2})*30-z_{3})*30)

…

where Longitude is positive in the eastern hemisphere but

negative in the western; Latitude is positive in the northern hemisphere but negative in the southern; both Longitude and Latitude are in degrees plus decimals; Altitude is measured along the gravitational force line from the center of the geoid of the earth in kilometers; the symbol * is the multiplication sign; x_{1}, x_{2}, x_{3}, x_{4}, …, y_{1}, y_{2}, y_{3}, y_{4}, …, z_{1}, z_{2}, z_{3}, z_{4}, … are integers ranging from 0 to 29 here; Arctan( ) is the arctangent function with value in degrees; R is in km the distance from the earth center along the

gravitational force line to the geoid surface and can be approximated by the earth radius at the location:

R = sqrt[b^{2}+(a^{2}-b^{2})/(1+b^{2}/a^{2}*tan^{2}(Latitude))]

or more accurately the distance from the gravitation center to the geoid surface along a parabola passing the gravitation center and perpendicular to the geoid surface:

C_{1} = [1 – 2*(1 – b^{2}/a^{2})]*tan(Latitude)

C_{2} = (1-b^{2}/a^{2})*tan(Latitude)*sqrt[a^{2}+b^{2}*tan^{2}(Latitude)]/a^{2}

C_{3} = 2*a*C_{2}/sqrt[1+b^{2}/a^{2}*tan^{2}(Latitude)]+C_{1}

C_{4} = C_{3}*sqrt(1+C_{3}^{2})+Asinh(C_{3})

C5 = C_{1}*sqrt(1+C_{1}^{2})+Asinh(C_{1})

R = (C_{4} – C_{5})/4/C_{2}

where a is the semi-major earth axis (ellipsoid equatorial radius) equal to 6378.1370 km; b is the semi-minor earth axis (ellipsoid polar radius) equal to 6356.7523 km; sqrt( ) is the square root function; tan( ) is a triangular tangent function; Asinh( ) is the inverse hyperbolic sine function; the symbol / is the division sign.

Once x_{1}, x_{2}, x_{3}, x_{4}, …, y_{1}, y_{2}, y_{3}, y_{4}, …, z_{1}, z_{2}, z_{3}, z_{4}, … are calculated, the corresponding characters can be found from the Table of NAC Characters and Integers Correspondence:

X_{1}, X_{2}, X_{3}, X_{4}, …, Y_{1}, Y_{2}, Y_{3}, Y_{4}, …, Z_{1}, Z_{2}, Z_{3}, Z_{4}, ….

Then, the Natural Area Code of the region is written as

NAC: X_{1}X_{2}X_{3}X_{4}… Y_{1}Y_{2}Y_{3}Y_{4}… Z_{1}Z_{2}Z_{3}Z_{4}…

with a blank space between any two character strings. The first character string of a NAC represents longitude, the second string represents latitude, and the third represents altitude. If a NAC has only two character strings, it represents an area on the earth surface with the two character strings representing the longitude and latitude respectively, as defined above, for example,

NAC: 8KD8 PGGK

represents a 25 by 50 meter area in the White House, while

NAC: 8KD8 PGGK H000

represents a region of 25 meters wide, 50 meters long and 25 meters high measured from the geoid surface under the White House. The number of characters to be used in a character string of a NAC representing the geodetic point is determined by the required resolution or the resolution of the original coordinates of the longitude, latitude and altitude. A NAC using more characters represents a smaller area or region. The smallest area or region containing the geodetic point is the one of the size equal to the error range of the coordinates. When a NAC is used to represent a geodetic point, it contains the information of both location and its error range.

**Conversion From NAC to (Longitude, Latitude, Altitude)**

If the NAC of a region is known, then the longitude, latitude and altitude of the southwestern lower corner of the region can be calculated by the following procedure:

First, convert all characters X_{1}, X_{2}, X_{3}, X_{4}, … Y_{1}, Y_{2}, Y_{3}, Y_{4}, … Z_{1}, Z_{2}, Z_{3}, Z_{4}, … into integers x_{1}, x_{2}, x_{3}, x_{4}, … y_{1}, y_{2}, y_{3}, y_{4}, … z_{1}, z_{2}, z_{3}, z_{4}, … according to the Table of NAC Characters and Integers Correspondence. Then use the following formulae to calculate coordinates:

Longitude = (x_{1}/30+x_{2}/30^{2}+x_{3}/30^{3}+x_{4}/30^{4}+…)*360-180

Latitude = (y_{1}/30+y_{2}/30^{2}+y_{3}/30^{3}+y_{4}/30^{4}+…)*180-90

f = (a – b)/a ;

e = 2*f – f^{2} ;

N = a/sqrt(1 – e^{2}*sin^{2}(Latitude)) ;

R = N*sqrt[1 – e^{2}*(2-e^{2})*sin^{2}(Latitude)]

Altitude = R*tan((z_{1}/30+z_{2}/30^{2}+z_{3}/30^{3}+z_{4}/30^{4}+…)*90)-R

`The northeastern upper corner of the region can be`

calculated by repeating the same procedure with the same integers except adding 1 to the integer corresponding to the last character of each string of the NAC. Then, the region can be completely determined by the coordinates of these two geodetic points.

**NAC Algebra **

In Natural Area Coding System, several algebraic rules have been introduced to simplify the notations and operations of NACs. Some of the rules are defined in the following, where symbol = represents the equivalency and symbol + represents the sum of

two NAC regions or areas.

Definition a: If there are a series of neighboring NAC regions in the universe, which exactly fill a region bounded by surfaces of constant longitude, constant latitude and constant altitude, then the whole region can be represented by a single group NAC which uses a hyphen to link the relative coordinate characters of the first NAC with the relative coordinate characters of the last NAC in each direction with multiple NAC regions respectively, for example:

NAC: NHJ-K TH KJH = NAC: NHJ TH KJH + NAC: NHK TH KJH

NAC: NHJ-K TH-J KJH = NAC: NHJ TH KJH + NAC: NHK TH KJH + NAC: NHJ TJ KJH + NAC: NHK TJ KJH

NAC: NHJ-K TH-J KJH-J = NAC: NHJ TH KJH + NAC: NHK TH KJH + NAC: NHJ TJ KJH + NAC: NHK TJ KJH + NAC: NHJ TH KJJ + NAC: NHK TH KJJ + NAC: NHJ TJ KJJ + NAC: NHK TJ KJJ

The number of characters after the hyphen in a character string represents the number of the characters of the relative coordinate. The characters before the hyphen in a character string represent the first NAC region coordinate in this direction. The characters before the hyphen with its last characters replaced by the characters after the hyphen in the character string represent the last NAC region coordinate in this direction. For example,

NAC: NHJ-LV TH KJH

represents a three-dimensional region which starts from the region of

NAC: NHJ TH KJH

and ends by the region of

NAC: NLV TH KJH

that is,

NAC: NHJ-LV TH KJH = NAC: NHJ-Z TH KJH + NAC: NJ0-Z TH KJH + NAC: NK0-Z TH KJH + NAC: NL0-V TH KJH.

The rule is the same for NACs with hyphens in two or three character strings, such as:

NAC: FP-GV TH-VK HJK = NAC: FP-Z TH-Z HJK + NAC: G0-V TH-Z HJK + NAC: FP-Z V0-K HJK + NAC: G0-V V0-K HJK

When a NAC with 0-Z at the end of its character string, these three characters can be omitted in the character string provided there are some characters left in the character string, for example:

NAC: JJ0-Z KKL HG = NAC: JJ KKL HG

NAC: JJ0-Z KKL0-Z HG0-Z = NAC: JJ KKL HG

When the character following the hyphen in a NAC character string represents a number smaller than the number represented by the corresponding one proceeding the hyphen in the character string, it should be interpreted with the rotation rule. For example,

NAC: W8C-8 Q90 = NAC: W8C-Z Q90 + NAC: W90-8 + Q90

NAC: GZJ-1K G8L = NAC: GZJ-Z G8L + NAC: H00-Z G8L + NAC: H10-K G8L

When the rotation happens to the first character of the first character string of a NAC (i.e. the string representing longitude), the rotation should be interpreted across the 180 degree meridian line. For example,

NAC: ZF-9 HK = NAC: ZF-Z HK + NAC: 00-9 HK

An exponent has been introduced to represent the repetition of one same character in a NAC coordinate string, for example:

NAC: RGJJJJK RDF FDS = NAC: RGJ(4)K RDF FDS

NAC: RGGGH HFF ZZZZZ = NAC: RG(3)H HF(2) Z(5)

The exponential expressions will be useful only in representing far distant objects in the universe.

Definition b: If there are a series of neighboring NAC areas on the earth which exactly fill an area bounded by lines of constant longitude and constant latitude, then the whole area can be represented by a single group NAC which uses a hyphen to link the relative coordinate characters of the first NAC with the relative coordinate characters of the last NAC in each direction with multiple NAC areas respectively. The exponential expression can be applied to the two-dimensional NAC too. There are special cases which need be further explained. A group NAC such as

NAC: HJ K0-Z

can be simplified as

NAC: HJ K

since 0-Z covers all NAC divisions in the higher level division, but

NAC: 0-Z HF

is not allowed to be written into

NAC: HF

because any simplification is only to shorten the coordinate string but not remove the whole string. With the above definitions, the concept of NAC regions has been extended to include any regions in the universe, bounded by surfaces of constant longitude, constant latitude and constant altitude, and the concept of NAC areas has been extended to include any areas on the earth, bounded by lines of constant longitude and constant latitude. Every NAC region or NAC area can be expressed by a single group NAC. Since the side ratios and size of a NAC area or region can be any values, a NAC in fact can represent any point in the universe, any line section of constant longitude or constant latitude on the earth, any area bounded by lines of constant longitude and constant latitude on the earth, any region bounded by surfaces of constant longitude, constant latitude and constant altitude in the universe.

**Calculation of Distance between Two NACs **

If the NACs of any two areas on the earth surface have been given as: NAC_{1} and NAC_{2}, then the earth surface distance between the centers of these two areas can be calculated as follows:

1. First, calculate the longitude, latitude and the local earth radius of NAC_{1} and NAC_{2}: a_{1}, b_{1}, R_{1} and a_{2}, b_{2}, R_{2} respectively using the above formulae;

2. Then calculate the distance S between them approximately as follows:

S = Rav*Arccos(cosb_{1}*cosa_{1}*cosb_{2}*cosa_{2}+cosb_{1}*sina_{1}*cosb_{2}*sina_{2} + sinb_{1}*sinb_{2})

where Rav = (R_{1} + R_{2})/2.

**Calculation of the Time Difference between Two NACs**

The natural Time difference between these two areas can be calculated by the following equation:

DT = (a1-a2)*24/360

where the positive value means area 1 has the day staring DT hours earlier than area 2.

**Important Advantages**

Natural Area Coding System has special advantages over all other geodetic systems. First, it integrates the concepts of geodetic points, line sections, areas and regions and generates a unified form to represent all these geodetic units.

Second, it generates extremely short coordinates for all these geodetic units to save storage size, for examples: For a geodetic point, the following are equivalent:

NAC: 2CHD Q87M

Longitude West 151.3947, Latitude North 43.6508

For a line section, the following are equivalent:

NAC: 2C Q87M

Piont 1: Longitude West 151.5902, Latitude North 43.6508

Point 2: Longitude West 151.1902, Latitude North 43.6508

For an area, the following are equivalent:

NAC: 2C Q8

Northwest corner: Longitude West 151.5902, Latitude North 43.8033

Southwest corner: Longitude West 151.5902, Latitude North 43.6033

Northeast corner: Longitude West 151.1902, Latitude North 43.8033

Southeast corner: Longitude West 151.1902, Latitude North 43.6033

For a three-dimensional region, the following are equivalent:

NAC: 2C Q8 H000

In WGS-84, it is expressed by The bottom surface has the height = 0 meter above the geoid surface and four corners on the surface are:

Northwest corner: Longitude West 151.5902, Latitude North 43.8033

Southwest corner: Longitude West 151.5902, Latitude North 43.6033

Northeast corner: Longitude West 151.1902, Latitude North 43.8033

Southeast corner: Longitude West 151.1902, Latitude North 43.6033

The upper surface has the height of 25 meters above the geoid surface and four corners on the surface are:

Northwest corner: Longitude West 151.5902, Latitude North 43.8033

Southwest corner: Longitude West 151.5902, Latitude North 43.6033

Northeast corner: Longitude West 151.1902, Latitude North 43.8033

Southeast corner: Longitude West 151.1902, Latitude North 43.6033

The efficiency of Natural Area Coding System is so significant that it can save 50% of memory for geodetic points, 75% for line sections, 87% for NAC areas and 94% for NAC regions.

Third, the simple NAC can be used to a represent map both in digital and hard copy forms. If the NAC is used for digital map then all the geodetic coordinates of the map can be saved by the relative NAC to save another 50% memory and make the database of maps extremely efficient in retrieving and storing maps. If the NAC is used to name a hardcopy map, then the maps will be very well shelved which will be very conveniently retrieved and placed.

Fourth, an eight-character NAC is an ideal universal address for postal services, delivery services, emergency services and taxi services because it can specify an area less than 25 by 50 meters anywhere in the world.

Fifth, a ten-character NAC is a perfect property identity code for each property in the world, which specify a reference area less than 0.8 by 1.6 meters on a property anywhere in the world.