Alter an Object to Account for Magnetic Declination (Generic)
Source:R/AllClass.R
applyMagneticDeclination.RdCurrent-measuring instruments that infer flow direction using magnetic
compasses require a correction for magnetic declination, in order to infer
currents with x and y oriented eastward and northward, respectively.
applyMagneticDeclination() is a generic function that handles this task by
altering velocity components (and heading values, if they exist). It works
for objects of the cm, adp and adv and cm
classes by calling applyMagneticDeclination,adp-method(),
applyMagneticDeclination,adv-method(), or
applyMagneticDeclination,cm-method(), respectively.
Arguments
- object
- declination
numeric value holding magnetic declination in degrees, positive for clockwise from north.
- debug
an integer specifying whether debugging information is to be printed during the processing. This is a general parameter that is used by many
ocefunctions. Generally, settingdebug=0turns off the printing, while higher values suggest that more information be printed. If one function calls another, it usually reduces the value ofdebugfirst, so that a user can often obtain deeper debugging by specifying higherdebugvalues.
Details
The returned value is a copy of object that has been modified in 4 ways.
(1) the horizontal components of velocity are rotated clockwise by
declination degrees. (2) If the object holds heading values, then
declination is added to them. (3) The north item in the metadata slot
is set to "geographic", and a warning is issued if this was also the value
in object. (4) The declination item in the metadata slot is set to
the value supplied to this function.
See also
Use magneticField() to determine the declination,
inclination and intensity at a given spot on the world, at a given time.
Other things related to magnetism:
applyMagneticDeclination,adp-method,
applyMagneticDeclination,adv-method,
applyMagneticDeclination,cm-method,
applyMagneticDeclination,oce-method,
magneticField()