m.datum.shift(1)	      Grass User's Manual	      m.datum.shift(1)



NNAAMMEE
       mm..ddaattuumm..sshhiifftt  - Datum shift program.
       _(_G_R_A_S_S _D_a_t_a _I_m_p_o_r_t_/_P_r_o_c_e_s_s_i_n_g _P_r_o_g_r_a_m_)

SSYYNNOOPPSSIISS
       mm..ddaattuumm..sshhiifftt llaatt==_d_d_._m_m_._s_s{_n|_s} lloonn==_d_d_._m_m_._s_s{_e|_w} hh==_h_e_i_g_t_h _a_b_o_v_e _e_l_l_i_p_-
       _s_o_i_d
       iidd==_i_n_p_u_t___d_a_t_u_m oodd==_o_u_t_p_u_t___d_a_t_u_m
       iiss==_i_n_p_u_t___s_p_h_e_r_o_i_d ooss==_o_u_t_p_u_t___s_p_h_e_r_o_i_d ddxx==_x_s_h_i_f_t ddyy==_y_s_h_i_f_t ddzz==_z_s_h_i_f_t
       --bb _u_s_e _b_l_o_c_k _s_h_i_f_t _m_e_t_h_o_d

       --mm _u_s_e _M_o_l_o_d_e_n_s_k_y _f_o_r_m_u_l_a

       --ww _u_s_e _B_u_r_s_a _W_o_l_f _7 _p_a_r_a_m_e_t_e_r _t_r_a_n_s_f_o_r_m_a_t_i_o_n _(_n_o_t _y_e_t _i_m_p_l_e_m_e_n_t_e_d_)


DDEESSCCRRIIPPTTIIOONN
       _m_._d_a_t_u_m_._s_h_i_f_t returns geographic coordinates based on a different datum
       (and spheroid/ellipsoid) than the one used to obtain the original coor-
       dinates.


       The input and output spheroids, _i_s and _o_s, are the  spheroids  for  two
       different  datums.  The input spheroid is the one on which the original
       coordinates are based. The output spheroid is that on which the	resul-
       tant  coordinates  will be based. The "shifting" occurs between the two
       datums.	The shift values, _d_x, _d_y, and _d_z, are constants. They indicate
       the  mean  differences  between	points	in the second datum versus the
       first as measured in meters.


       If both input and output datum _i_d and _o_d are listed in the system datum
       table, it is sufficient to provide input and output datum for the datum
       shift. The shift values, _d_x, _d_y and _d_z are read from the datum table.


       The list of datums and spheroids available is somewhat dynamic.	It may
       not  contain  exactly  the ones listed below.  To determine the current
       list of possible spheroids, type in the command:  mm..ddaattuumm..sshhiifftt	llaatt==_0_n
       lloonn==_0_w ddxx==_0 ddyy==_0 ddzz==_0 iiss==_h_e_l_p ooss==_h_e_l_p

       A list of available spheroids will be printed on the screen.  To deter-
       mine the  current  list	of  possible  datums,  type  in  the  command:
       mm..ddaattuumm..sshhiifftt llaatt==_0_n lloonn==_0_w iidd==_h_e_l_p oodd==_h_e_l_p

       If  the datum or spheroid desired is not on the list, the values should
       be added to the system datum.table or ellipse.table.


       The height above the ellipsoid is  usually  not	known  in  GRASS.  You
       should  approximate this by zero (default for _h). Obviously the result-
       ing height is not a reasonable value.

EEXXAAMMPPLLEE
       mm..ddaattuumm..sshhiifftt llaatt==_0_n lloonn==_1_7_5_w iiss==_c_l_a_r_k_6_6 ooss==_w_g_s_7_2 ddxx==_-_2_2 ddyy==_1_5_7 ddzz==_1_7_6



       Results: 3
	      lat=0.00.05.72999N

	      lon=174.59.55.004133W

	      (h  =  107 [m])



NNOOTTEESS
       Essentially, the program  follows  these  steps	for  the  block  shift
       method.	 The original point, as defined by a latitude and a longitude,
       is converted to geocentric coordinates.	The shift values are added  to
       the  geocentric	coordinates.   The summed values are then converted to
       latitude and longitude based on the output spheroid.


       The Molodensky method uses a one-step calculation without converting to
       and  from geocentric coordinates. The Molodensky formula may be inaccu-
       rate for latitudes near the poles. The  coordinate  conversion  library
       will  take  this into account and use the block shift formula for those
       latitudes.


       Some hints on accuracy:

       Generally the accuracy depends on the transformation  method  used  and
       the  accuracy and spatially applicability of the parameters supplied to
       the transformation function.  You always must check if the  formula  is
       applicable to your problem and supplies the needed accuracy!

       block shift with cartesian coordinates ~ 10 m

       molodensky transformation ~ 5 m

       bursa-wolf transformation ~ 1 m

       3d  similarity  transformation ~ 1 m (needs national similarity parame-
       ters)

       multiple regression equation (MRE) transformation,
       other methods up to 10 cm (generally not needed for GRASS)

       The transformation parameters in datum.table  are  meant  to  transform
       from  local  datum  to  wgs84 with the Block shift method or Molodensky
       function. (reverse the sign for the reverse transformation  from  wgs84
       to  the local datum).  All transformations need input and output ellip-
       soid for the calculation of Rm and Rn.
       You can not use the parameters for the Block shift and Molodensky  for-
       mula with any other datum shift formula. The Bursa-Wolf datum transfor-
       mation needs 7 parameters (3 xyz-shift, 3 xyz-rotational, 1 scale  fac-
       tor),  which  can  not be used with any other formula.  Specifically do
       not use the 3 xyz-shift parameters for the Bursa-  Wolf	transformation
       with  the  Block shift or Molodensky formula, as the parameters are not
       independent from another.


       For a brief discussion of spheroids and datums see _m_._l_l_2_u.  For a brief
       discussion of geocentric coordinates see _m_._l_l_2_g_c.


       This remains under testing and is still an experimental program.

SSEEEE AALLSSOO
       _m_._g_c_2_l_l

       _m_._l_l_2_g_c

       _m_._l_l_2_u

       _m_._u_2_l_l

       _s_._i_n_._g_a_r_m_i_n_._s_h

       _v_._i_n_._g_a_r_m_i_n_._s_h


AAUUTTHHOORR
       Michael Shapiro, U.S.Army Construction Engineering Research Laboratory
       Andreas Lange, andreas.lange@rhein-main.de

       _L_a_s_t _c_h_a_n_g_e_d_: _$_D_a_t_e_: _2_0_0_2_/_0_5_/_2_3 _1_0_:_2_3_:_3_0 _$



GRASS 5.0						      m.datum.shift(1)
