chaosmagpy.coordinate_utils.q_response_1D¶
- chaosmagpy.coordinate_utils.q_response_1D(periods, sigma, radius, n, kind=None)[source]¶
Compute the response for a spherically layered conductor in an inducing external field of a single spherical harmonic degree.
- Parameters:
- periodsndarray or float, shape (m,)
Oscillation period of the inducing field in seconds.
- sigmandarray, shape (k,)
Conductivity of spherical shells, starting with the outermost in (S/m).
- radiusndarray, shape (k,)
Radius of the interfaces in between the layers, starting with outermost layer in kilometers (i.e. conductor surface, see Notes).
- nint
Spherical degree of inducing external field.
- kind{‘quadratic’, ‘constant’}, optional
Approximation for “quadratic” layers (layers of sigma with inverse quadratic dependence on radius) or “constant” layers (layers of constant sigma, last layer will be set to infinity irrespective of its value in
sigma[-1]
).
- Returns:
- Cndarray, shape (m,)
C-response in (km), complex.
- rho_andarray, shape (m,)
Electrical surface resistance in (\(\Omega m\)).
- phindarray, shape (m,)
Proportional to phase angle of C-response in degrees.
- Qndarray, shape (m,)
Q-response, complex.
Notes
- Option
kind='quadratic'
: The following shows how the conductivity is defined in the sphercial shells:
radius[0]
>= r >radius[1]
:sigma[0]
* (radius[0]
/ r ) * * 2radius[1]
>= r >radius[2]
:sigma[1]
* (radius[1]
/ r ) * * 2…radius[k-1]
>= r > 0 :sigma[k-1]
* (radius[k-1]
/ r ) * * 2Courtesy of A. Grayver. Code based on Kuvshinov & Semenov (2012).
- Option
kind='constant'
: The following shows how the conductivity is defined in the sphercial shells:
radius[0]
>= r >radius[1]
:sigma[0]
radius[1]
>= r >radius[2]
:sigma[1]
…radius[k-1]
>= r > 0 :sigma[k-1]
=np.inf
(\(\sigma\) = inf)There are
k
sphercial shells of uniform conductivity with radius in (km) and conductivity \(\sigma\) in (S/m).The last shell corresponds to the sphercial core whose conductivity is set to infinity regardless of the provided
sigma[-1]
.The program should work also for very small periods, where it models the response of a layered plane conductor
Python version: August 2018, Clemens KlossMatlab version: November 2000, Nils OlsenOriginal Fortran program: Peter Weidelt