IPIM
 All Classes Files Functions Variables Pages
Data Types | Public Member Functions | List of all members
module_fieldline Module Reference

Define fieldline structure, contains routines to process it, interface to read it. More...

Data Types

type  fieldline_type
 nsize: length of fieldline arrays curv : curvlinear abscissa (m) alt : altitude (m) r : radial distance (normalised by Rastre) lon : longitude (degree) lat : latitude (degree) bnorm: magnetic field norm (T) br : B radial (T) bp : B zonal (T) bt ! B meridional (T) More...
 

Public Member Functions

subroutine maximum_altitude (fieldline, zmax, imax)
 Find the maximum altitude and its index.
 
real *8 function expansion_factor (fieldline, ialt_in)
 Compute the expansion factor at some altitude. More...
 
subroutine order_fieldline (fieldline)
 Rearrange orientation of a fieldline. More...
 
logical function is_closed (fieldline)
 Check if a fieldline is closed or open. More...
 
subroutine split_fieldline (x, x_s, x_n)
 Split a closed magnetic fieldline into its 2 hemispheres. More...
 
subroutine print_fieldline (x, fid)
 Print a fieldline_type in an already open file.
 
subroutine allocate_fieldline (x)
 Allocate fieldline_type.
 
subroutine deallocate_fieldline (x)
 Deallocate fieldline_type.
 

Detailed Description

Define fieldline structure, contains routines to process it, interface to read it.

Member Function/Subroutine Documentation

real*8 function module_fieldline::expansion_factor ( type(fieldline_type), intent(in)  fieldline,
integer, intent(in)  ialt_in 
)

Compute the expansion factor at some altitude.

Parameters
[in]fieldlinetype(fieldline)
[in]ialt_inindex altitude where the factor is computed

expansion_factor = (R(1)/R(ialt_in))^2*(Bnorm(1)/Bnorm(ialt_in))

Here is the caller graph for this function:

logical function module_fieldline::is_closed ( type(fieldline_type fieldline)

Check if a fieldline is closed or open.

Close if zmax .gt. fieldlinealt(1) .and. zmax .gt. fieldlinealt(fieldlinensize)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine module_fieldline::order_fieldline ( type(fieldline_type fieldline)

Rearrange orientation of a fieldline.

For open fieldline:
bottom at ialt == 1
For close fieldline:
first index is in Southern hemisphere or at least southern than last index

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine module_fieldline::split_fieldline ( type(fieldline_type), intent(in)  x,
type(fieldline_type x_s,
type(fieldline_type x_n 
)

Split a closed magnetic fieldline into its 2 hemispheres.

Apex at Rmax or Bmin (index = nmax).

  • s0: x%curv(1)
  • s1: x%curv(nmax)
  • s2: x%curv(nmax+1)
  • stot: x%curv(x%nsize)

First hemisphere (Southern or Southest)

  • Index from 1 to nmax
  • Curv increase from s0 to s1

Second hemisphere (Northern or Northest)

  • Index from 1 to x%nsize-nmax
  • Curv decrease from stot to s2

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this module was generated from the following file: