set_geopotential Subroutine

public subroutine set_geopotential(state, time_level)

Uses

  • proc~~set_geopotential~~UsesGraph proc~set_geopotential set_geopotential module~physical_constants physical_constants proc~set_geopotential->module~physical_constants module~model_state model_state proc~set_geopotential->module~model_state module~params params module~physical_constants->module~params module~types types module~physical_constants->module~types module~horizontal_diffusion horizontal_diffusion module~model_state->module~horizontal_diffusion module~model_state->module~types module~geometry geometry module~model_state->module~geometry module~spectral spectral module~model_state->module~spectral module~implicit implicit module~model_state->module~implicit module~params->module~types module~horizontal_diffusion->module~params module~horizontal_diffusion->module~types module~horizontal_diffusion->module~geometry iso_fortran_env iso_fortran_env module~types->iso_fortran_env module~geometry->module~params module~geometry->module~types module~spectral->module~params module~spectral->module~types module~spectral->module~geometry module~fourier fourier module~spectral->module~fourier module~implicit->module~params module~implicit->module~horizontal_diffusion module~implicit->module~types module~implicit->module~geometry module~fourier->module~params module~fourier->module~types module~fourier->module~geometry module~legendre legendre module~fourier->module~legendre module~legendre->module~params module~legendre->module~types module~legendre->module~geometry

Computes spectral geopotential from spectral temperature T and spectral topography phis, as in GFDL Climate Group GCM. The result is updated in the state%phi variable.

Arguments

Type IntentOptional AttributesName
type(ModelState_t), intent(inout) :: state
integer, intent(in) :: time_level

Calls

proc~~set_geopotential~~CallsGraph proc~set_geopotential set_geopotential proc~get_geopotential get_geopotential proc~set_geopotential->proc~get_geopotential

Called by

proc~~set_geopotential~~CalledByGraph proc~set_geopotential set_geopotential proc~get_grid_point_tendencies get_grid_point_tendencies proc~get_grid_point_tendencies->proc~set_geopotential proc~get_spectral_tendencies get_spectral_tendencies proc~get_spectral_tendencies->proc~set_geopotential proc~get_tendencies get_tendencies proc~get_tendencies->proc~get_grid_point_tendencies proc~get_tendencies->proc~get_spectral_tendencies proc~step step proc~step->proc~get_tendencies proc~do_single_step do_single_step proc~do_single_step->proc~step proc~first_step first_step proc~first_step->proc~step proc~step~2 step proc~step~2->proc~do_single_step proc~initialize_state initialize_state proc~initialize_state->proc~first_step proc~init init proc~init->proc~initialize_state

Contents

Source Code


Source Code

    subroutine set_geopotential(state, time_level)
        use physical_constants, only : rgas
        use model_state, only : ModelState_t

        type(ModelState_t), intent(inout) :: state
        integer, intent(in) :: time_level

        state%phi = get_geopotential(state%t(:, :, :, time_level), &
                state%phis, state%xgeop1, state%xgeop2, &
                state%mod_geometry%hsg, state%mod_geometry%fsg)

    end subroutine set_geopotential