<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Steve,<o:p></o:p>
<blockquote type="cite"
cite="mid:BN6PR01MB240468B8E620874439488F46A6339@BN6PR01MB2404.prod.exchangelabs.com">
<div class="WordSection1">
<p class="MsoNormal">It turns out there was another reason,
besides translation rates, that was preventing me matching
HTDP results: for the NOAM plate, the z-rotation rate should
be -0.0001 as opposed to +0.0001. The ITRF2008 init file
needs to be updated.</p>
</div>
</blockquote>
<p>Good catch: fix done in
<a class="moz-txt-link-freetext" href="https://github.com/OSGeo/PROJ/commit/625d4b99e0b64b3ce5ba773e4236248506ae4f99">https://github.com/OSGeo/PROJ/commit/625d4b99e0b64b3ce5ba773e4236248506ae4f99</a>.
There was also an error on one component of PCFC</p>
<p>Regarding the translation rates, I've done a proposed update in
<a class="moz-txt-link-freetext" href="https://github.com/OSGeo/PROJ/pull/3058">https://github.com/OSGeo/PROJ/pull/3058</a>. Would you mind trying
<a class="moz-txt-link-freetext" href="https://github.com/OSGeo/PROJ/blob/518cbe5387a7f192a25156543b299e852474e791/data/ITRF2008">https://github.com/OSGeo/PROJ/blob/518cbe5387a7f192a25156543b299e852474e791/data/ITRF2008</a>
with ITRF2008:NOAM_T and report if that works as expected (ideally
before tomorrow before PROJ 9.0 RC will be cut) ?</p>
<p>Even<br>
</p>
<blockquote type="cite"
cite="mid:BN6PR01MB240468B8E620874439488F46A6339@BN6PR01MB2404.prod.exchangelabs.com">
<div class="WordSection1">
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">steve</p>
</div>
</blockquote>
<br>
<o:p> </o:p>
<blockquote type="cite"
cite="mid:BN6PR01MB240468B8E620874439488F46A6339@BN6PR01MB2404.prod.exchangelabs.com">
<div class="WordSection1">
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Steve Riddell <br>
<b>Sent:</b> Friday, February 11, 2022 3:27 PM<br>
<b>To:</b> Even Rouault
<a class="moz-txt-link-rfc2396E" href="mailto:even.rouault@spatialys.com"><even.rouault@spatialys.com></a>; <a class="moz-txt-link-abbreviated" href="mailto:proj@lists.osgeo.org">proj@lists.osgeo.org</a><br>
<b>Cc:</b> Kristian Evers <a class="moz-txt-link-rfc2396E" href="mailto:kreve@sdfe.dk"><kreve@sdfe.dk></a><br>
<b>Subject:</b> RE: [PROJ] Plate motion models<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">It did not occur to me initially, but all I
had to do was add +dx/dy/dz terms in the Helmert string for
NOAM in the init file. It works perfectly.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Steve Riddell <br>
<b>Sent:</b> Wednesday, February 9, 2022 3:43 PM<br>
<b>To:</b> Even Rouault <<a
href="mailto:even.rouault@spatialys.com"
moz-do-not-send="true" class="moz-txt-link-freetext">even.rouault@spatialys.com</a>>;
<a href="mailto:proj@lists.osgeo.org"
moz-do-not-send="true" class="moz-txt-link-freetext">proj@lists.osgeo.org</a><br>
<b>Cc:</b> Kristian Evers <<a
href="mailto:kreve@sdfe.dk" moz-do-not-send="true"
class="moz-txt-link-freetext">kreve@sdfe.dk</a>><br>
<b>Subject:</b> RE: [PROJ] Plate motion models<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thank you again for the assistance. That
was a huge help. It works as expected, based on the delivered
ITRF2008/ITRF2014 init files.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Perhaps it should be noted that the
delivered models support only 3-rotation parameters. The
paper, “ITRF2008 plate motion model, Z. Altamimi, et al.”, and
the HTDP documentation indicates that plates NOAM, PCFC, and
CARB, include translation rates as well:
(0.41,0.22,0.41)mm/yr. The practical difference then is
sub-centimeter, but noticeable when comparing with HTDP (over
areas not covered by HTDP’s velocity grids).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks again,<o:p></o:p></p>
<p class="MsoNormal">steve <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Even Rouault <<a
href="mailto:even.rouault@spatialys.com"
moz-do-not-send="true" class="moz-txt-link-freetext">even.rouault@spatialys.com</a>>
<br>
<b>Sent:</b> Monday, February 7, 2022 9:18 AM<br>
<b>To:</b> Steve Riddell <<a
href="mailto:sriddell@geocue.com" moz-do-not-send="true"
class="moz-txt-link-freetext">sriddell@geocue.com</a>>;
<a href="mailto:proj@lists.osgeo.org"
moz-do-not-send="true" class="moz-txt-link-freetext">proj@lists.osgeo.org</a><br>
<b>Subject:</b> Re: [PROJ] Plate motion models<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p>Hi Steve,<o:p></o:p></p>
<p>Assuming lon=-100 lat=40 z=0, I believe (not sure! and in
particular if that's geodetically meaningful to chain so many
transformations) you should use a pipeline like the following
one, which will do:<o:p></o:p></p>
<p>- conversion to cartesian coordinate space<o:p></o:p></p>
<p>- apply the ITRF2000 to ITRF2014 transformation preserving
observation epoch of 2022.1<o:p></o:p></p>
<p>- apply the ITRF2014:NOAM model using a target epoch of 2010
(hence the +inv, as naturally the transformation would use
+t_epoch as the "source") for a point at observation epoch of
2022.1<o:p></o:p></p>
<p>- force the observation epoch to 2010<o:p></o:p></p>
<p>- apply the ITRF2014 to ITRF2000 transformation (at epoch
2010)<o:p></o:p></p>
<p>- conversion to lat, lon coordinate space<o:p></o:p></p>
<p>echo -100 40 0 2022.1 | cct -d 8 +proj=pipeline \<br>
+step +proj=cart +ellps+GRS80 \ <br>
+step +inv +init=ITRF2014:ITRF2000 \<br>
+step +inv +init=ITRF2014:NOAM +t_epoch=2010 \<br>
+step +proj=set +v_4=2010 \<br>
+step +init=ITRF2014:ITRF2000 \<br>
+step +inv +proj=cart +ellps+GRS80<o:p></o:p></p>
<p>I get:<o:p></o:p></p>
<p style="margin-bottom:12.0pt">-99.99999790 40.00000064
0.00755196 2010.0000<o:p></o:p></p>
<p>If using ITRF2008 instead of ITRF2014, I get:<o:p></o:p></p>
<p> -99.99999854 40.00000065 0.00909276 2010.0000<o:p></o:p></p>
<p><o:p> </o:p></p>
<p>I've also tried using a plate-fixed CRS as an intermediate
using what is available in EPSG<o:p></o:p></p>
<p>First with NAD83(CORS96) since there's a direct
transformation for it in EPSG (not quite "direct" since when
looking at the comments, it already results from concatenation
of ITRF96>97 and IERS ITRF97>2000 transformations)<o:p></o:p></p>
<p>(order is lat, lon here)<o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">$ echo 40 -100
0 2022.1 | cs2cs -d 8 "ITRF2000" "NAD83(CORS96)" | cct -d 8
+proj=set +v_4=2010 | cs2cs -d 8 "NAD83(CORS96)" "ITRF2000"<br>
40.00000067 -99.99999766 -0.00447640 2010.0000<o:p></o:p></p>
<p>Or if using NAD83(2011) (there's a transformation between
NAD83(2011) and ITRF2008 in EPSG (concatenation of
ITRF96>97 and IERS ITRF97>2008 transformations), and
PROJ will use the ITRF2008 to ITRF2000 transformation in
addition<o:p></o:p></p>
<p class="MsoNormal">$ echo 40 -100 0 2022.1 | cs2cs -d 8
"ITRF2000" "NAD83(2011)" | cct -d 8 +proj=set +v_4=2010 |
cs2cs -d 8 "NAD83(2011)" "ITRF2000"<br>
40.00000066 -99.99999765 -0.00447668 2010.0000<o:p></o:p></p>
<p><br>
So results are somewhat consistent, at least in the lat, lon
space (not for z values)<o:p></o:p></p>
<p>Best regards,<o:p></o:p></p>
<p>Even<o:p></o:p></p>
<p><o:p> </o:p></p>
<div>
<p class="MsoNormal">Le 07/02/2022 à 14:49, Steve Riddell a
écrit :<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">The
data for the ITFR2008 & ITRF2014 plate motion models
are delivered with PROJ as init files. From the
documentation, 8.7, I think I see how an +init proj string
can be used for changing epochs between ITFR frames (e.g.
ITRF2000 to ITRF2005), but can someone please give an
example of using the plate models? For example, if I have
a point in ITRF2000 epoch 2022.1 and I want to use the
NOAM plate model to move it to 2010.0, what would be the
+init string? I’m assuming cct would be an appropriate
application for processing this string?<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Thanks
for any assistance!<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Steve<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>PROJ mailing list<o:p></o:p></pre>
<pre><a href="mailto:PROJ@lists.osgeo.org" moz-do-not-send="true" class="moz-txt-link-freetext">PROJ@lists.osgeo.org</a><o:p></o:p></pre>
<pre><a href="https://lists.osgeo.org/mailman/listinfo/proj" moz-do-not-send="true" class="moz-txt-link-freetext">https://lists.osgeo.org/mailman/listinfo/proj</a><o:p></o:p></pre>
</blockquote>
<pre>-- <o:p></o:p></pre>
<pre><a href="http://www.spatialys.com" moz-do-not-send="true" class="moz-txt-link-freetext">http://www.spatialys.com</a><o:p></o:p></pre>
<pre>My software is free, but my time generally not.<o:p></o:p></pre>
</div>
</blockquote>
<pre class="moz-signature" cols="72">--
<a class="moz-txt-link-freetext" href="http://www.spatialys.com">http://www.spatialys.com</a>
My software is free, but my time generally not.</pre>
</body>
</html>