uf426 - interpolating an extremum of B¶
- subroutine uf426(bextr, aextr, ktype, ifail)¶
- Parameters:
bextr [real8,out] :: Magnetic field intensity at the extremum
aextr [real8,out] :: Altitude at the extremum
ktype [integer4,out] :: Type of extremum (-1; +1)
ifail [integer4,out] :: error flag (see Diagnostics)
Description¶
The subroutine
uf426()
interpolates an extremum of the magnetic field intensity along a magnetic field line. To be used, the common blockuc170
has to include at least three points and the last Runge-Kutta step had to overreach the extremum. The subroutineuf426()
combines parabolic interpolations and Runge-Kutta steps to determine the correct location of the extremum. Note that the two last points stored in the common blockuc170
can be modified and that a new point can be added by the subroutine.When the subroutine succeeds, the arguments
bextr
andaextr
are set to the magnetic field intensity and altitude at the extremum location, respectively. The argumentktype
is set to 1 when the extremum is a maximum and to -1 for a minimum. The index in the common blockuc170
corresponding to the extremum is stored in the argumentifail
.
Note
The subroutine takes into account the step size limit stplst
defined in the common block uc190
.
Diagnostics¶
-42601, two points are identical
-42602, B does not vary
-42603, too many iterations
-42604, -42605, problem with the Runge Kutta step
-42606, too many iterations
Common Blocks¶
Dependencies¶
Called by¶
Calls¶
See also¶
None
Reported Bugs¶
18-Dec-97(v1.11), Malfunction of subroutine
uf426()
Examples¶
None
UNILIB/tags/v3.02