Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,16 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Start by importing the following GeodePy Functions and Modules:"
"Start by importing the following Functions and Modules (datetime is used for the representation of epochs):"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 55,
"metadata": {},
"outputs": [],
"source": [
"from datetime import date\n",
"from geodepy.constants import itrf14togda20, itrf14to05\n",
"from geodepy.transform import *"
]
Expand All @@ -35,7 +36,7 @@
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 56,
"metadata": {},
"outputs": [],
"source": [
Expand All @@ -52,7 +53,7 @@
},
{
"cell_type": "code",
"execution_count": 4,
"execution_count": 57,
"metadata": {},
"outputs": [
{
Expand All @@ -61,7 +62,7 @@
"(-23.67011015602, 133.88552163574)"
]
},
"execution_count": 4,
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -80,7 +81,7 @@
},
{
"cell_type": "code",
"execution_count": 5,
"execution_count": 58,
"metadata": {},
"outputs": [
{
Expand All @@ -89,7 +90,7 @@
"(-4052042.792092285, 4212825.645301948, -2545098.3015855583)"
]
},
"execution_count": 5,
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -109,14 +110,14 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 59,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Transformation: From 'ITRF2005' to 'ITRF2014'\n",
"Reference Epoch: 2010.0\n",
"Reference Epoch: datetime.date(2010, 1, 1)\n",
" tx: -0.0026m + -0.0003m/yr\n",
" ty: -0.001m + -0.0m/yr\n",
" tz: 0.0023m + 0.0001m/yr\n",
Expand All @@ -126,7 +127,7 @@
" rz: -0.0\" + -0.0\"/yr"
]
},
"execution_count": 6,
"execution_count": 59,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -139,19 +140,19 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Before we can use this, we need to get our coordinates into the Reference Epoch of the transformation we plan to use (in this case, 2010.0). Because Bob is in Australia, we need to use the Australian Plate Motion Model to do this. It's parameters are in `itrf14togda20`:"
"Before we can use this, we need to get our coordinates into the Reference Epoch of the transformation we plan to use (in this case, 2010.0 or the 1st Jan 2010). Because Bob is in Australia, we need to use the Australian Plate Motion Model to do this. It's parameters are in `itrf14togda20`:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 60,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Transformation: From 'ITRF2014' to 'GDA2020'\n",
"Reference Epoch: 2020\n",
"Reference Epoch: datetime.date(2020, 1, 1)\n",
" tx: 0m + 0m/yr\n",
" ty: 0m + 0m/yr\n",
" tz: 0m + 0m/yr\n",
Expand All @@ -161,7 +162,7 @@
" rz: 0\" + 0.00120716\"/yr"
]
},
"execution_count": 7,
"execution_count": 60,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -179,7 +180,7 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 61,
"metadata": {},
"outputs": [
{
Expand All @@ -188,7 +189,7 @@
"(-4052042.792092285, 4212825.645301948, -2545098.3015855583)"
]
},
"execution_count": 8,
"execution_count": 61,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -199,22 +200,22 @@
},
{
"cell_type": "code",
"execution_count": 9,
"execution_count": 62,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-4052042.3995643803, 4212825.696887399, -2545098.841140103)"
"(-4052042.3994570016, 4212825.69690139, -2545098.841287901)"
]
},
"execution_count": 9,
"execution_count": 62,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x2, y2, z2 = conform14(x, y, z, 2030, itrf14togda20)\n",
"x2, y2, z2 = conform14(x, y, z, date(2030, 1, 1), itrf14togda20)\n",
"x2, y2, z2"
]
},
Expand All @@ -235,16 +236,16 @@
},
{
"cell_type": "code",
"execution_count": 10,
"execution_count": 63,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-4052042.398436501, 4212825.692011599, -2545098.8364986125)"
"(-4052042.3983291225, 4212825.692025591, -2545098.8366464106)"
]
},
"execution_count": 10,
"execution_count": 63,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -258,29 +259,29 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"This gives us Bob's Cartesian Coordinates in ITRF2014 at epoch 20100.\n",
"This gives us Bob's Cartesian Coordinates in ITRF2014 at epoch 2010.0.\n",
"#### Part 4: Moving to the Final Epoch\n",
"The final tranformation is moving Bob's epoch to it's final destination (2020.0) using `itrf14togda20`. As the period of movement (2010.0 to 2020.0) is the same (+10.0 years), we use the same `to_epoch` of 2030.0 as in Part 2:"
]
},
{
"cell_type": "code",
"execution_count": 11,
"execution_count": 64,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-4052042.005908563, 4212825.743596989, -2545099.376053138)"
"(-4052042.0056938054, 4212825.743624971, -2545099.376348734)"
]
},
"execution_count": 11,
"execution_count": 64,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x4, y4, z4 = conform14(x3, y3, z3, 2030, itrf14togda20)\n",
"x4, y4, z4 = conform14(x3, y3, z3, date(2030, 1, 1), itrf14togda20)\n",
"x4, y4, z4"
]
},
Expand All @@ -295,16 +296,16 @@
},
{
"cell_type": "code",
"execution_count": 12,
"execution_count": 65,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-23.67012075907436, 133.88551541372001, 587.5785021279007)"
"(-23.670120761985057, 133.8855154120127, 587.5785029223189)"
]
},
"execution_count": 12,
"execution_count": 65,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -323,16 +324,16 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 66,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(53, 386352.6117, 7381851.1177)"
"(53, 386352.6116, 7381851.1174)"
]
},
"execution_count": 13,
"execution_count": 66,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -351,16 +352,16 @@
},
{
"cell_type": "code",
"execution_count": 14,
"execution_count": 67,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(53, 386352.6117, 7381851.1177, 587.5785021279007)"
"(53, 386352.6116, 7381851.1174, 587.5785029223189)"
]
},
"execution_count": 14,
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -378,16 +379,16 @@
},
{
"cell_type": "code",
"execution_count": 15,
"execution_count": 68,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(53, 386352.6117, 7381851.1177, 587.5785021279007)"
"(53, 386352.6116, 7381851.1174, 587.5785029223189)"
]
},
"execution_count": 15,
"execution_count": 68,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -399,7 +400,7 @@
},
{
"cell_type": "code",
"execution_count": 16,
"execution_count": 69,
"metadata": {},
"outputs": [
{
Expand All @@ -408,7 +409,7 @@
"(53, 386353.2371, 7381852.2967, 587.5814)"
]
},
"execution_count": 16,
"execution_count": 69,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -427,16 +428,16 @@
},
{
"cell_type": "code",
"execution_count": 18,
"execution_count": 70,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(53, 386352.6117, 7381851.1177, 587.5785021279007)"
"(53, 386352.6116, 7381851.1174, 587.5785029223189)"
]
},
"execution_count": 18,
"execution_count": 70,
"metadata": {},
"output_type": "execute_result"
}
Expand All @@ -445,9 +446,9 @@
"def bobtransform(zone, east, north, ell_ht):\n",
" lat, lon, psf, grid_conv = grid2geo(zone, east, north)\n",
" x, y, z = llh2xyz(lat, lon, ell_ht)\n",
" x2, y2, z2 = conform14(x, y, z, 2030, itrf14togda20)\n",
" x2, y2, z2 = conform14(x, y, z, date(2030, 1, 1), itrf14togda20)\n",
" x3, y3, z3 = conform7(x2, y2, z2, -itrf14to05)\n",
" x4, y4, z4 = conform14(x3, y3, z3, 2030, itrf14togda20)\n",
" x4, y4, z4 = conform14(x3, y3, z3, date(2030, 1, 1), itrf14togda20)\n",
" lat_end, lon_end, ell_ht_end = xyz2llh(x4, y4, z4)\n",
" hem_end, zone_end, east_end, north_end, psf_end, grid_conv_end = geo2grid(lat_end, lon_end)\n",
" return zone_end, east_end, north_end, ell_ht_end\n",
Expand Down
16 changes: 13 additions & 3 deletions geodepy/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,14 +158,24 @@ def iers2trans(itrf_from, itrf_to, ref_epoch, tx, ty, tz, sc, rx, ry, rz, d_tx,
round(d_sc / 1000, 8),
round(-d_rx / 1000, 8), round(-d_ry / 1000, 8), round(-d_rz / 1000, 8))

# GDA1994 to GDA2020 Transformation Parameters from GDA2020 Tech Manual v1.1.1
# GDA1994 to GDA2020 Transformation Parameters from GDA2020 Tech Manual v1.2

gda94to20 = Transformation('GDA1994', 'GDA2020', 0,
0.06155, -0.01087, -0.04019, -0.009994, -0.0394924, -0.0327221, -0.0328979)

# ITRF2014 to GDA2020 (Australian Plate Motion Model) Transformation Parameters from GDA2020 Tech Manual v1.2. The
# model was derived using 109 ARGN and AuScope GNSS CORS which were used to define the RVS.

itrf14togda20 = Transformation('ITRF2014', 'GDA2020', date(2020, 1, 1),
0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0.00150379, 0.00118346, 0.00120716)
0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0.00150379, 0.00118346, 0.00120716)

# ATRF to GDA2020 (Australian Plate Motion Model) Transformation Parameters (as advised by N. Brown, Geoscience
# Australia). The model was derived using 109 ARGN and AuScope GNSS CORS which were used to define the RVS.

atrf_gda2020 = Transformation('ATRF', 'GDA2020', date(2020, 1, 1),
0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0.00150379, 0.00118346, 0.00120716)

# GDA1994 to ITRF Transformation Parameters from Dawson and Woods (2010)
# AGD66 and AGD84 to GDA94 Transformation Parameters from GDA94 Tech Manual v2.4
Expand Down
Loading