irfpy.mercury.boundary
¶
Boundary model.
Magnetopause:
mp_xyz_aMSO_winslow13
Bow shock:
bs_xyz_aMSO_winslow13
- class irfpy.mercury.boundary.BoundaryTuple(theta, phi, x, y, z)¶
Bases:
tuple
The returned type for the boundary model.
- Parameters:
theta – Theta array (radians)
phi – Phi array (radians)
x – x
y – y
z – z
- phi¶
Alias for field number 1
- theta¶
Alias for field number 0
- x¶
Alias for field number 2
- y¶
Alias for field number 3
- z¶
Alias for field number 4
- class irfpy.mercury.boundary.Magnetopause_Winslow13(rss=1.45, alpha=0.5, zd=0.196)[source]¶
Bases:
object
The magnetopause model by Winslow 2013
The model is described by two angles, \(\theta\) and \(\phi\). In the aMSO frame,
\[r = R_{ss} \left(\]rac{2}{1+cos heta} ight)^lpha
\[x = r\cos heta\]\[y = r\cos\phi\]\[z = r\sin\phi + z_d\]Not well-tested.
>>> mp = Magnetopause_MSM_Winslow13() >>> t, p, x, y, z = mp.xyz() >>> # x, y = mp.xy() # This method is not yet implemented >>> y, z = mp.yz() >>> x, z = mp.xz()
Initialize with (average) parameters
- Parameters:
rss – Rss in the unit of Rm.
alpha – alpha
zd – zd, the offset of the dipole (defaut, 0.196 Rm, for aMSO frame). If zd=0, aMSM frame.
See
mp_xyz_aMSO_winslow13()
for more details.- xyz(theta_array=None, phi_array=None)[source]¶
Getting x, y, and z
- Parameters:
theta_array – Array of theta to calculate, in radians. (0 to pi)
phi_array – Array of phi to calculate, in radians. (0 to 2pi)
- equator(theta_array=None)¶
- terminator(phi_array=None)¶
Return the x=0 slice, i.e., terminator plane
- noon_midnight(theta_array=None)¶
Return the y=0 slice, i.e., noon midnight meridian plane.
y=0 slice.
- class irfpy.mercury.boundary.Magnetopause_MSM_Winslow13(rss=1.45, alpha=0.5)[source]¶
Bases:
Magnetopause_Winslow13
Magnetopause in the MSM frame.
Not well-tested.
>>> mp = Magnetopause_MSM_Winslow13() >>> t, p, x, y, z = mp.xyz() >>> x, y = mp.xy() >>> y, z = mp.yz() >>> x, z = mp.xz()
Initialize with (average) parameters
- Parameters:
rss – Rss in the unit of Rm.
alpha – alpha
zd – zd, the offset of the dipole (defaut, 0.196 Rm, for aMSO frame). If zd=0, aMSM frame.
See
mp_xyz_aMSO_winslow13()
for more details.
- irfpy.mercury.boundary.mp_xyz_aMSO_winslow13(theta_array=None, phi_array=None, rss=1.45, alpha=0.5, zd=0.196)[source]¶
Winslow [2013] Magnetopause model
- Parameters:
theta_array – Array of theta to calculate, in radians. (0 to pi)
phi_array – Array of phi to calculate, in radians. (0 to 2pi)
rss – Rss in the unit of Rm.
alpha – alpha
zd – zd, the offset of the dipole (0.196 Rm). If zd=0, aMSM frame.
- Returns:
Array of boundary. (theta, phi, x, y, z). In Rm.
- Return type:
>>> t, p, x, y, z = mp_xyz_aMSO_winslow13()
- irfpy.mercury.boundary.bs_xyz_aMSO_winslow13(theta_array=None, phi_array=None, zd=0.196, X0=0.5, e=1.04, p=2.75)[source]¶
Winslow [2013] bow shock model
- Parameters:
theta_array – Array of theta to calculate, in radians. (0 to pi)
phi_array – Array of phi to calculate, in radians. (0 to 2pi)
zd – zd, the offset of the dipole (0.196 Rm)
X0 – X0 in the unit of Rm.
e – e
p – p
- Returns:
Array of boundary. (theta, phi, x, y, z). In Rm.
- Return type:
>>> t, p, x, y, z = bs_xyz_aMSO_winslow13()