sBase_evalDOF_s Function

private function sBase_evalDOF_s(sf, x, deriv, DOFs) result(y)

simply evaluate function or derivative at point x

Type Bound

t_sBase

Arguments

Type IntentOptional Attributes Name
class(t_sBase), intent(in) :: sf

self

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

point positions in [0,1]

integer, intent(in) :: deriv

derivative (=0: solution)

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

array of all degrees of freedom

Return Value real(kind=wp)


Calls

proc~~sbase_evaldof_s~~CallsGraph proc~sbase_evaldof_s t_sBase%sBase_evalDOF_s proc~sbase_eval t_sBase%sBase_eval proc~sbase_evaldof_s->proc~sbase_eval proc~sbase_evaldof_base t_sBase%sBase_evalDOF_base proc~sbase_evaldof_s->proc~sbase_evaldof_base eval_basis eval_basis proc~sbase_eval->eval_basis eval_basis_and_n_derivs eval_basis_and_n_derivs proc~sbase_eval->eval_basis_and_n_derivs lagrangeinterpolationpolys lagrangeinterpolationpolys proc~sbase_eval->lagrangeinterpolationpolys proc~sgrid_find_elem t_sGrid%sGrid_find_elem proc~sbase_eval->proc~sgrid_find_elem

Called by

proc~~sbase_evaldof_s~~CalledByGraph proc~sbase_evaldof_s t_sBase%sBase_evalDOF_s proc~base_evaldof_x t_base%base_evalDOF_x proc~base_evaldof_x->proc~sbase_evaldof_s proc~eval_prof_r eval_prof_r proc~eval_prof_r->proc~sbase_evaldof_s proc~get_field Get_Field proc~get_field->proc~sbase_evaldof_s proc~gvec_to_jorek_prepare gvec_to_jorek_prepare proc~gvec_to_jorek_prepare->proc~sbase_evaldof_s proc~gvec_to_jorek_prepare->proc~get_field proc~lambda_solve Lambda_solve proc~lambda_solve->proc~sbase_evaldof_s proc~readstatefilefromascii ReadStateFileFromASCII proc~readstatefilefromascii->proc~sbase_evaldof_s proc~sbase_new sBase_new proc~readstatefilefromascii->proc~sbase_new proc~base_new Base_new proc~readstatefilefromascii->proc~base_new proc~sbase_test sBase_test proc~sbase_test->proc~sbase_evaldof_s proc~sbase_test->proc~sbase_new interface~readstate ReadState interface~readstate->proc~readstatefilefromascii proc~eval_iota_r eval_iota_r proc~eval_iota_r->proc~eval_prof_r proc~eval_phi_r eval_phi_r proc~eval_phi_r->proc~eval_prof_r proc~eval_phiprime_r eval_phiPrime_r proc~eval_phiprime_r->proc~eval_prof_r proc~eval_pres_r eval_pres_r proc~eval_pres_r->proc~eval_prof_r proc~init_la_from_solution Init_LA_from_Solution proc~init_la_from_solution->proc~lambda_solve proc~sbase_init t_sBase%sBase_init proc~sbase_init->proc~sbase_test proc~init_gvec_to_jorek init_gvec_to_jorek proc~init_gvec_to_jorek->interface~readstate proc~init_base Init_Base proc~init_gvec_to_jorek->proc~init_base proc~initsolutionmhd3d t_functional_mhd3d%InitSolutionMHD3D proc~initsolutionmhd3d->proc~init_la_from_solution proc~restartfromstate RestartFromState proc~restartfromstate->interface~readstate proc~sbase_copy t_sBase%sBase_copy proc~sbase_copy->proc~sbase_init proc~sbase_new->proc~sbase_init proc~base_copy t_base%base_copy proc~base_copy->proc~sbase_copy proc~base_new->proc~sbase_new proc~initsolution~2 InitSolution proc~initsolution~2->proc~initsolutionmhd3d proc~rungvec rungvec proc~rungvec->proc~initsolutionmhd3d proc~initmhd3d t_functional_mhd3d%InitMHD3D proc~rungvec->proc~initmhd3d proc~init_base->proc~base_new proc~initmhd3d->proc~base_new proc~start_rungvec start_rungvec proc~start_rungvec->proc~rungvec proc~transform_sfl_init t_transform_sfl%transform_SFL_init proc~transform_sfl_init->proc~base_new program~gvec GVEC program~gvec->proc~rungvec proc~init Init proc~init->proc~initmhd3d proc~transform_sfl_new transform_sfl_new proc~transform_sfl_new->proc~transform_sfl_init program~gvec_post GVEC_POST program~gvec_post->proc~initmhd3d

Source Code

FUNCTION sBase_evalDOF_s(sf,x,deriv,DOFs) RESULT(y)
! MODULES
IMPLICIT NONE
!-----------------------------------------------------------------------------------------------------------------------------------
! INPUT VARIABLES
  CLASS(t_sbase), INTENT(IN   ) :: sf     !! self
  REAL(wp)      , INTENT(IN   ) :: x      !! point positions in [0,1]
  INTEGER       , INTENT(IN   ) :: deriv  !! derivative (=0: solution)
  REAL(wp)      , INTENT(IN   ) :: DOFs(:)  !! array of all degrees of freedom
!-----------------------------------------------------------------------------------------------------------------------------------
! OUTPUT VARIABLES
  REAL(wp)                      :: y
!-----------------------------------------------------------------------------------------------------------------------------------
! LOCAL VARIABLES
  INTEGER                       :: iElem
  REAL(wp)                      :: base_x(0:sf%deg)
!===================================================================================================================================
IF(SIZE(DOFs,1).NE.sf%nBase) CALL abort(__STAMP__, &
             'nDOF not correct when calling sBase_evalDOF_s')
  CALL sf%eval(x,deriv,iElem,base_x)
  y=sf%evalDOF_base(iElem,base_x,DOFs)

END FUNCTION sbase_evalDOF_s