geopotential_model_vector_coeff Derived Type

type, public, extends(geopotential_model) :: geopotential_model_vector_coeff

The models where the C,S coefficients are stored in vectors


Inherits

type~~geopotential_model_vector_coeff~~InheritsGraph type~geopotential_model_vector_coeff geopotential_model_vector_coeff type~geopotential_model geopotential_model type~geopotential_model_vector_coeff->type~geopotential_model

Inherited by

type~~geopotential_model_vector_coeff~~InheritedByGraph type~geopotential_model_vector_coeff geopotential_model_vector_coeff type~geopotential_model_mueller geopotential_model_mueller type~geopotential_model_mueller->type~geopotential_model_vector_coeff

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: name

model name

character(len=:), public, allocatable :: filename

model file name

integer, public :: nmax = 0

degree of the model

integer, public :: mmax = 0

order of the model

real(kind=wp), public :: re = zero

body radius [km]

real(kind=wp), public :: mu = zero

body grav. parameter [km3/s2]

real(kind=wp), public, dimension(:), allocatable :: c
real(kind=wp), public, dimension(:), allocatable :: s

Type-Bound Procedures

procedure, public :: initialize => read_geopotential_file

  • private subroutine read_geopotential_file(me, filename, nmax, mmax, status_ok)

    Author
    Jacob Williams
    Date
    9/20/2014

    Read the gravity coefficient file. Example file: ftp://ftp.csr.utexas.edu/pub/grav/EGM96.GEO.Z

    Arguments

    Type IntentOptional Attributes Name
    class(geopotential_model), intent(inout) :: me
    character(len=*), intent(in) :: filename
    integer, intent(in) :: nmax
    integer, intent(in) :: mmax
    logical, intent(out) :: status_ok

procedure, public :: destroy => destroy_geopotential_model

procedure(acc_function), public, deferred :: get_acc

  • subroutine acc_function(me, r, n, m, a) Prototype

    Interface to the acceleration function for the different methods

    Arguments

    Type IntentOptional Attributes Name
    class(geopotential_model), intent(inout) :: me
    real(kind=wp), intent(in), dimension(3) :: r
    integer, intent(in) :: n
    integer, intent(in) :: m
    real(kind=wp), intent(out), dimension(3) :: a

Source Code

    type,extends(geopotential_model),abstract,public :: geopotential_model_vector_coeff
        !! The models where the C,S coefficients are stored in vectors
        real(wp),dimension(:),allocatable :: c
        real(wp),dimension(:),allocatable :: s
    end type geopotential_model_vector_coeff