watex.externals.z.correct4sensor_orientation#

watex.externals.z.correct4sensor_orientation(Z_prime, Bx=0, By=90, Ex=0, Ey=90, Z_prime_error=None)[source]#

Correct a Z-array for wrong orientation of the sensors.

Assume, E’ is measured by sensors orientated with the angles

E’x: a E’y: b

Assume, B’ is measured by sensors orientated with the angles

B’x: c B’y: d

With those data, one obtained the impedance tensor Z’:

E’ = Z’ * B’

Now we define change-of-basis matrices T,U so that

E = T * E’ B = U * B’

=> T contains the expression of the E’-basis in terms of E (the standard basis) and U contains the expression of the B’-basis in terms of B (the standard basis) The respective expressions for E’x-basis vector and E’y-basis vector are the columns of T. The respective expressions for B’x-basis vector and B’y-basis vector are the columns of U.

We obtain the impedance tensor in default coordinates as:

E’ = Z’ * B’ => T^(-1) * E = Z’ * U^(-1) * B

=> E = T * Z’ * U^(-1) * B => Z = T * Z’ * U^(-1)

Parameters:
  • Z_prime – impedance tensor to be adjusted

  • Bx (float (angle in degrees)) – orientation of Bx relative to geographic north (0) default is 0

  • By

  • Ex (float (angle in degrees)) – orientation of Ex relative to geographic north (0) default is 0

  • Ey (float (angle in degrees)) – orientation of Ey relative to geographic north (0) default is 90

  • Z_prime_error (np.ndarray(Z_prime.shape)) – impedance tensor error (std) default is None

Dtype Z_prime:

np.ndarray(num_freq, 2, 2, dtype=’np.complex128’)

Returns:

adjusted impedance tensor

Return type:

np.ndarray(Z_prime.shape, dtype=’np.complex128’)

Returns:

impedance tensor standard deviation in default orientation

Return type:

np.ndarray(Z_prime.shape, dtype=’real’)