InitFunctional Subroutine

public subroutine InitFunctional(sf, which_functional)

Uses

  • proc~~initfunctional~~UsesGraph proc~initfunctional InitFunctional module~modgvec_mhd3d MODgvec_MHD3D proc~initfunctional->module~modgvec_mhd3d module~modgvec_c_functional MODgvec_c_functional module~modgvec_mhd3d->module~modgvec_c_functional module~modgvec_globals MODgvec_Globals module~modgvec_mhd3d->module~modgvec_globals module~modgvec_c_functional->module~modgvec_globals iso_fortran_env iso_fortran_env module~modgvec_globals->iso_fortran_env

initialize the type functional with number of elements

Arguments

Type IntentOptional Attributes Name
class(t_functional), intent(inout), ALLOCATABLE :: sf

self

integer, intent(in) :: which_functional

Calls

proc~~initfunctional~~CallsGraph proc~initfunctional InitFunctional init init proc~initfunctional->init

Called by

proc~~initfunctional~~CalledByGraph proc~initfunctional InitFunctional proc~init Init proc~init->proc~initfunctional proc~rungvec rungvec proc~rungvec->proc~initfunctional program~gvec_post GVEC_POST program~gvec_post->proc~initfunctional proc~start_rungvec start_rungvec proc~start_rungvec->proc~rungvec program~gvec GVEC program~gvec->proc~rungvec

Source Code

SUBROUTINE InitFunctional(sf, which_functional)
! MODULES
USE MODgvec_MHD3D, ONLY :t_functional_mhd3d
IMPLICIT NONE
!-----------------------------------------------------------------------------------------------------------------------------------
! INPUT VARIABLES
  INTEGER       , INTENT(IN   ) :: which_functional
!-----------------------------------------------------------------------------------------------------------------------------------
! OUTPUT VARIABLES
  CLASS(t_functional), ALLOCATABLE,INTENT(INOUT) :: sf !! self
!-----------------------------------------------------------------------------------------------------------------------------------
! LOCAL VARIABLES
!===================================================================================================================================
  SELECT CASE(which_functional)
  CASE(1)
    ALLOCATE(t_functional_mhd3d :: sf)
  CASE DEFAULT
    CALL abort(__STAMP__, &
         "this functional choice does not exist (MHD3D=1) !")
  END SELECT

  sf%which_functional=which_functional
  CALL sf%init()

END SUBROUTINE InitFunctional