[PROJ] Plate motion models
Even Rouault
even.rouault at spatialys.com
Mon Feb 14 15:56:58 PST 2022
Steve,
>
> 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.
>
Good catch: fix done in
https://github.com/OSGeo/PROJ/commit/625d4b99e0b64b3ce5ba773e4236248506ae4f99.
There was also an error on one component of PCFC
Regarding the translation rates, I've done a proposed update in
https://github.com/OSGeo/PROJ/pull/3058. Would you mind trying
https://github.com/OSGeo/PROJ/blob/518cbe5387a7f192a25156543b299e852474e791/data/ITRF2008
with ITRF2008:NOAM_T and report if that works as expected (ideally
before tomorrow before PROJ 9.0 RC will be cut) ?
Even
> steve
>
> *From:* Steve Riddell
> *Sent:* Friday, February 11, 2022 3:27 PM
> *To:* Even Rouault <even.rouault at spatialys.com>; proj at lists.osgeo.org
> *Cc:* Kristian Evers <kreve at sdfe.dk>
> *Subject:* RE: [PROJ] Plate motion models
>
> 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.
>
> *From:* Steve Riddell
> *Sent:* Wednesday, February 9, 2022 3:43 PM
> *To:* Even Rouault <even.rouault at spatialys.com>; proj at lists.osgeo.org
> *Cc:* Kristian Evers <kreve at sdfe.dk>
> *Subject:* RE: [PROJ] Plate motion models
>
> Thank you again for the assistance. That was a huge help. It works as
> expected, based on the delivered ITRF2008/ITRF2014 init files.
>
> 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).
>
> Thanks again,
>
> steve
>
> *From:* Even Rouault <even.rouault at spatialys.com>
> *Sent:* Monday, February 7, 2022 9:18 AM
> *To:* Steve Riddell <sriddell at geocue.com>; proj at lists.osgeo.org
> *Subject:* Re: [PROJ] Plate motion models
>
> Hi Steve,
>
> 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:
>
> - conversion to cartesian coordinate space
>
> - apply the ITRF2000 to ITRF2014 transformation preserving observation
> epoch of 2022.1
>
> - 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
>
> - force the observation epoch to 2010
>
> - apply the ITRF2014 to ITRF2000 transformation (at epoch 2010)
>
> - conversion to lat, lon coordinate space
>
> echo -100 40 0 2022.1 | cct -d 8 +proj=pipeline \
> +step +proj=cart +ellps+GRS80 \
> +step +inv +init=ITRF2014:ITRF2000 \
> +step +inv +init=ITRF2014:NOAM +t_epoch=2010 \
> +step +proj=set +v_4=2010 \
> +step +init=ITRF2014:ITRF2000 \
> +step +inv +proj=cart +ellps+GRS80
>
> I get:
>
> -99.99999790 40.00000064 0.00755196 2010.0000
>
> If using ITRF2008 instead of ITRF2014, I get:
>
> -99.99999854 40.00000065 0.00909276 2010.0000
>
> I've also tried using a plate-fixed CRS as an intermediate using what
> is available in EPSG
>
> 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)
>
> (order is lat, lon here)
>
> $ 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"
> 40.00000067 -99.99999766 -0.00447640 2010.0000
>
> 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
>
> $ 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"
> 40.00000066 -99.99999765 -0.00447668 2010.0000
>
>
> So results are somewhat consistent, at least in the lat, lon space
> (not for z values)
>
> Best regards,
>
> Even
>
> Le 07/02/2022 à 14:49, Steve Riddell a écrit :
>
> 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?
>
> Thanks for any assistance!
>
> Steve
>
> _______________________________________________
>
> PROJ mailing list
>
> PROJ at lists.osgeo.org
>
> https://lists.osgeo.org/mailman/listinfo/proj
>
> --
> http://www.spatialys.com
> My software is free, but my time generally not.
--
http://www.spatialys.com
My software is free, but my time generally not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/proj/attachments/20220215/73f1188e/attachment-0001.html>
More information about the PROJ
mailing list