jacchia_roberts_utilities Module

Math utilities for Jacchia-Roberts atmospheric density model.


Uses

  • module~~jacchia_roberts_utilities~~UsesGraph module~jacchia_roberts_utilities jacchia_roberts_utilities module~jacchia_roberts_kinds jacchia_roberts_kinds module~jacchia_roberts_utilities->module~jacchia_roberts_kinds iso_fortran_env iso_fortran_env module~jacchia_roberts_kinds->iso_fortran_env

Used by

  • module~~jacchia_roberts_utilities~~UsedByGraph module~jacchia_roberts_utilities jacchia_roberts_utilities module~space_weather_module space_weather_module module~space_weather_module->module~jacchia_roberts_utilities proc~find_cstar_roots_original find_cstar_roots_original proc~find_cstar_roots_original->module~jacchia_roberts_utilities module~jacchia_roberts_module jacchia_roberts_module module~jacchia_roberts_module->module~space_weather_module

Functions

private pure function julian_day(y, m, d)

Author
Jacob Williams

Returns the Julian day number (i.e., the Julian date at Greenwich noon) on the specified YEAR, MONTH, and DAY.

Read more…

Arguments

Type IntentOptional Attributes Name
integer(kind=ip), intent(in) :: y

year (YYYY)

integer(kind=ip), intent(in) :: m

month (MM)

integer(kind=ip), intent(in) :: d

day (DD)

Return Value integer


Subroutines

public pure subroutine roots(a, na, croots, irl)

Finds the roots of a polynomial using Newton's method

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: a(:)

Array of polynomial coefficients (lowest power first)

integer(kind=ip), intent(in) :: na

Number of coefficients

real(kind=dp), intent(inout) :: croots(:,:)

Initial guesses and output roots (real, imaginary)

integer(kind=ip), intent(in) :: irl

Number of roots to solve for

public pure subroutine deflate_polynomial(c, n, root, c_new)

Reduces the order of a polynomial by division

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: c(:)

Polynomial coefficients

integer(kind=ip), intent(in) :: n

Order + 1 of polynomial

real(kind=dp), intent(in) :: root

A single real root of the polynomial

real(kind=dp), intent(inout) :: c_new(:)

Output array with new coefficients

public pure subroutine date_to_mjd(year, month, day, mjd)

Convert calendar date to Modified Julian Date (MJD)

Arguments

Type IntentOptional Attributes Name
integer(kind=ip), intent(in) :: year
integer(kind=ip), intent(in) :: month
integer(kind=ip), intent(in) :: day
real(kind=dp), intent(out) :: mjd