get_flux_g Function

public function get_flux_g(lon, lat, height, year, e, imname) result(flux)

Calculate the flux of trapped particles at a specific location and time. This is just a function version of the class method from radbelt_type.

Note

This routine is not efficient at all since it will reload all the files every time it is called.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: lon

geodetic longitude in degrees (east)

real(kind=wp), intent(in) :: lat

geodetic latitude in degrees (north)

real(kind=wp), intent(in) :: height

altitude in km above sea level

real(kind=wp), intent(in) :: year

decimal year for which geomagnetic field is to be calculated (e.g.:1995.5 for day 185 of 1995)

real(kind=wp), intent(in) :: e

minimum energy

integer, intent(in) :: imname

which method to use:

  • 1 -- particle species: electrons, solar activity: min
  • 2 -- particle species: electrons, solar activity: max
  • 3 -- particle species: protons, solar activity: min
  • 4 -- particle species: protons, solar activity: max

Return Value real(kind=wp)

The flux of particles above the given energy, in units of cm^-2 s^-1.


Calls

proc~~get_flux_g~~CallsGraph proc~get_flux_g radbelt_module::get_flux_g none~get_flux radbelt_module::radbelt_type%get_flux proc~get_flux_g->none~get_flux proc~get_flux_c_ radbelt_module::radbelt_type%get_flux_c_ none~get_flux->proc~get_flux_c_ proc~get_flux_g_ radbelt_module::radbelt_type%get_flux_g_ none~get_flux->proc~get_flux_g_ proc~aep8 trmfun_module::trm_type%aep8 proc~get_flux_c_->proc~aep8 proc~igrfc shellig_module::shellig_type%igrfc proc~get_flux_c_->proc~igrfc proc~get_flux_g_->proc~aep8 proc~igrf shellig_module::shellig_type%igrf proc~get_flux_g_->proc~igrf proc~get_data_file_dir~2 trmfun_module::trm_type%get_data_file_dir proc~aep8->proc~get_data_file_dir~2 proc~trara1 trmfun_module::trm_type%trara1 proc~aep8->proc~trara1 proc~feldcof shellig_module::shellig_type%feldcof proc~igrf->proc~feldcof proc~feldg shellig_module::shellig_type%feldg proc~igrf->proc~feldg proc~findb0 shellig_module::shellig_type%findb0 proc~igrf->proc~findb0 proc~shellg shellig_module::shellig_type%shellg proc~igrf->proc~shellg proc~feldc shellig_module::shellig_type%feldc proc~igrfc->proc~feldc proc~igrfc->proc~feldcof proc~igrfc->proc~findb0 proc~shellc shellig_module::shellig_type%shellc proc~igrfc->proc~shellc proc~extrashc shellig_module::extrashc proc~feldcof->proc~extrashc proc~get_data_file_dir shellig_module::shellig_type%get_data_file_dir proc~feldcof->proc~get_data_file_dir proc~getshc shellig_module::getshc proc~feldcof->proc~getshc proc~intershc shellig_module::intershc proc~feldcof->proc~intershc proc~stoer shellig_module::shellig_type%stoer proc~findb0->proc~stoer proc~shellc->proc~shellg proc~geo_to_cart shellig_module::geo_to_cart proc~shellg->proc~geo_to_cart proc~shellg->proc~stoer proc~trara2 trmfun_module::trm_type%trara2 proc~trara1->proc~trara2 proc~feldi shellig_module::shellig_type%feldi proc~stoer->proc~feldi

Called by

proc~~get_flux_g~~CalledByGraph proc~get_flux_g radbelt_module::get_flux_g interface~get_flux radbelt_module::get_flux interface~get_flux->proc~get_flux_g

Source Code

    function get_flux_g(lon, lat, height, year, e, imname) result(flux)

        real(wp), intent(in) :: lon !! geodetic longitude in degrees (east)
        real(wp), intent(in) :: lat !! geodetic latitude in degrees (north)
        real(wp), intent(in) :: height !! altitude in km above sea level
        real(wp), intent(in) :: year !! decimal year for which geomagnetic field is to
                                  !! be calculated (e.g.:1995.5 for day 185 of 1995)
        real(wp), intent(in) :: e !! minimum energy
        integer, intent(in) :: imname !! which method to use:
                                   !!
                                   !! * 1 -- particle species: electrons, solar activity: min
                                   !! * 2 -- particle species: electrons, solar activity: max
                                   !! * 3 -- particle species: protons, solar activity: min
                                   !! * 4 -- particle species: protons, solar activity: max
        real(wp) :: flux !! The flux of particles above the given energy, in units of cm^-2 s^-1.

        type(radbelt_type) :: radbelt

        flux = radbelt%get_flux(lon, lat, height, year, e, imname)

    end function get_flux_g